.elementor-widget-ccpw-person-profile {
	--ccpw-person-ink: var(--e-global-color-text, currentColor);
	--ccpw-person-heading: var(--e-global-color-primary, currentColor);
	--ccpw-person-accent: var(--e-global-color-accent, currentColor);
	--ccpw-person-muted: var(--e-global-color-secondary, currentColor);
	--ccpw-person-serif: var(--e-global-typography-primary-font-family, inherit);
	--ccpw-person-sans: var(--e-global-typography-text-font-family, inherit);
}
.ccpw-person-profile {
	--ccpw-person-media-width: 38%;
	display: grid;
	grid-template-columns: minmax(0, var(--ccpw-person-media-width)) minmax(0, 1fr);
	grid-template-areas: "media body";
	align-items: center;
	max-width: 100%;
	min-width: 0;
	color: var(--ccpw-person-ink);
	font-family: var(--ccpw-person-sans, inherit);
}
.ccpw-person-profile__media { grid-area: media; min-width: 0; }
.ccpw-person-profile__photo { display: block; width: 100%; aspect-ratio: 3/4; overflow: hidden; }
.ccpw-person-profile__photo > .ccpw-img__el { width: 100%; height: 100%; }
.ccpw-person-profile__body { grid-area: body; min-width: 0; }
.ccpw-person-profile__eyebrow { margin: 0 0 .7rem; color: var(--ccpw-person-accent); font-family: var(--ccpw-person-sans, inherit); }
.ccpw-person-profile__name { margin: 0 0 .25em; color: var(--ccpw-person-heading); font-family: var(--ccpw-person-serif, inherit); font-size: clamp(1.8rem, 1.3rem + 1.5vw, 3rem); line-height: 1.08; overflow-wrap: anywhere; }
.ccpw-person-profile__role { margin: 0 0 1rem; color: var(--ccpw-person-accent); font-family: var(--ccpw-person-sans, inherit); font-weight: 600; overflow-wrap: anywhere; }
.ccpw-person-profile__bio { color: var(--ccpw-person-ink); font-family: var(--ccpw-person-sans, inherit); line-height: 1.7; overflow-wrap: anywhere; }
.ccpw-person-profile__bio > :first-child { margin-top: 0; }
.ccpw-person-profile__bio > :last-child { margin-bottom: 0; }
.ccpw-person-profile__areas,
.ccpw-person-profile__credentials,
.ccpw-person-profile__attributes { list-style: none; padding: 0; }
.ccpw-person-profile__areas { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.25rem 0 0; }
.ccpw-person-profile__areas li { max-width: 100%; padding: .35em .85em; color: var(--ccpw-person-ink); border: 1px solid color-mix(in srgb, currentColor 20%, transparent); border-radius: 999px; overflow-wrap: anywhere; }
.ccpw-person-profile__credentials { display: grid; gap: .45rem; margin: 1.25rem 0 0; }
.ccpw-person-profile__credentials li { position: relative; padding-inline-start: 1.35em; color: var(--ccpw-person-ink); overflow-wrap: anywhere; }
.ccpw-person-profile__credentials li::before { position: absolute; inset-inline-start: 0; content: "✓"; color: var(--ccpw-person-accent); }
.ccpw-person-profile__attributes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0 0; }
.ccpw-person-profile__attribute { display: flex; align-items: flex-start; gap: .75rem; min-width: 0; }
.ccpw-person-profile__attribute-visual { display: inline-grid; place-items: center; flex: 0 0 auto; width: 1.75rem; height: 1.75rem; color: var(--ccpw-person-accent); font-size: 1.5rem; }
.ccpw-person-profile__attribute-icon,
.ccpw-person-profile__attribute-icon svg,
.ccpw-person-profile__attribute-icon img { display: block; width: 100%; height: 100%; object-fit: contain; fill: currentColor; }
.ccpw-person-profile__attribute-body { display: flex; flex-direction: column; min-width: 0; overflow-wrap: anywhere; }
.ccpw-person-profile__attribute-body > span { margin-top: .2rem; color: var(--ccpw-person-muted); }
.ccpw-person-profile__contact { display: flex; flex-wrap: wrap; gap: .6rem 1.25rem; margin-top: 1.5rem; }
.ccpw-person-profile__contact a { color: var(--ccpw-person-ink); text-decoration: none; border-bottom: 1px solid color-mix(in srgb, currentColor 25%, transparent); overflow-wrap: anywhere; }
.ccpw-person-profile__contact a:hover { color: var(--ccpw-person-accent); border-color: currentColor; }
.ccpw-person-profile__cta { display: inline-flex; align-items: center; justify-content: center; max-width: 100%; margin-top: 1.5rem; padding: .8em 1.4em; color: inherit; background: transparent; border: 1px solid currentColor; text-decoration: none; overflow-wrap: anywhere; }
.ccpw-person-profile :focus-visible { outline: 2px solid var(--ccpw-person-accent); outline-offset: 3px; }

.elementor-widget-ccpw-person-profile.ccpw-person-profile--media-right .ccpw-person-profile { grid-template-columns: minmax(0, 1fr) minmax(0, var(--ccpw-person-media-width)); grid-template-areas: "body media"; }
.elementor-widget-ccpw-person-profile.ccpw-person-profile--layout-stack .ccpw-person-profile { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
.elementor-widget-ccpw-person-profile.ccpw-person-profile--layout-stack.ccpw-person-profile--stack-media .ccpw-person-profile { grid-template-areas: "media" "body"; }
.elementor-widget-ccpw-person-profile.ccpw-person-profile--layout-stack.ccpw-person-profile--stack-content .ccpw-person-profile { grid-template-areas: "body" "media"; }
.elementor-widget-ccpw-person-profile.ccpw-person-profile--layout-editorial .ccpw-person-profile__body { position: relative; z-index: 1; padding: clamp(1.5rem, 3vw, 3rem); background: color-mix(in srgb, currentColor 4%, transparent); }

.ccpw-preset-editorial-dorado .ccpw-person-profile__name,
.ccpw-preset-alto-contraste-carbon .ccpw-person-profile__name,
.ccpw-preset-marfil-calido .ccpw-person-profile__name,
.ccpw-preset-minimal-sobrio .ccpw-person-profile__name { color: var(--ccpw-preset-fg); font-family: var(--ccpw-preset-title-font); }
.ccpw-preset-editorial-dorado .ccpw-person-profile__eyebrow,
.ccpw-preset-editorial-dorado .ccpw-person-profile__role,
.ccpw-preset-alto-contraste-carbon .ccpw-person-profile__eyebrow,
.ccpw-preset-alto-contraste-carbon .ccpw-person-profile__role,
.ccpw-preset-marfil-calido .ccpw-person-profile__eyebrow,
.ccpw-preset-marfil-calido .ccpw-person-profile__role { color: var(--ccpw-preset-accent); }

@media (max-width: 1024px) {
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-split .ccpw-person-profile,
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-editorial .ccpw-person-profile { grid-template-columns: minmax(0, var(--ccpw-person-media-width)) minmax(0, 1fr); grid-template-areas: "media body"; align-items: center; }
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-split.ccpw-tablet-person-profile--media-right .ccpw-person-profile,
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-editorial.ccpw-tablet-person-profile--media-right .ccpw-person-profile { grid-template-columns: minmax(0, 1fr) minmax(0, var(--ccpw-person-media-width)); grid-template-areas: "body media"; }
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-stack .ccpw-person-profile { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-stack.ccpw-tablet-person-profile--stack-media .ccpw-person-profile { grid-template-areas: "media" "body"; }
	.elementor-widget-ccpw-person-profile.ccpw-tablet-person-profile--layout-stack.ccpw-tablet-person-profile--stack-content .ccpw-person-profile { grid-template-areas: "body" "media"; }
}
@media (max-width: 767px) {
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-split .ccpw-person-profile,
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-editorial .ccpw-person-profile { grid-template-columns: minmax(0, var(--ccpw-person-media-width)) minmax(0, 1fr); grid-template-areas: "media body"; align-items: center; }
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-split.ccpw-mobile-person-profile--media-right .ccpw-person-profile,
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-editorial.ccpw-mobile-person-profile--media-right .ccpw-person-profile { grid-template-columns: minmax(0, 1fr) minmax(0, var(--ccpw-person-media-width)); grid-template-areas: "body media"; }
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-stack .ccpw-person-profile { grid-template-columns: minmax(0, 1fr); align-items: stretch; }
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-stack.ccpw-mobile-person-profile--stack-media .ccpw-person-profile { grid-template-areas: "media" "body"; }
	.elementor-widget-ccpw-person-profile.ccpw-mobile-person-profile--layout-stack.ccpw-mobile-person-profile--stack-content .ccpw-person-profile { grid-template-areas: "body" "media"; }
}
