/* Shared editorial language; loaded only by stages, environments and team. */
:root .complutum-main--environments-template .complutum-env-philosophy__stage:has(.complutum-env-philosophy__composition) { display:block; }
:root .complutum-main--environments-template .complutum-env-philosophy__stage:has(.complutum-env-philosophy__composition) .complutum-env-philosophy__copy { width:100%; max-width:72rem; margin:0 auto 3rem; }
:root .complutum-main--environments-template .complutum-env-philosophy__copy .complutum-home-section-head { width:100%; max-width:none; }
:root .complutum-main--environments-template .complutum-env-philosophy__copy .complutum-home-section__title { width:100%; max-width:25ch; font-size:28px; text-wrap:balance; }
:root .complutum-main--environments-template .complutum-env-philosophy__copy .complutum-team-richtext { max-width:none; }
@media(min-width:768px) {
 :root .complutum-main--environments-template .complutum-env-philosophy__copy .complutum-home-section__title { font-size:42px; max-width:20ch; }
}
:root .complutum-main--environments-template .complutum-env-philosophy__composition { position:relative; isolation:isolate; width:100vw; height:420px; margin:0 calc(50% - 50vw); padding:0; border:0; border-radius:0; box-shadow:none; background:#fff; clip-path:none; overflow:hidden; opacity:1; transform:none; }
:root .complutum-main--environments-template .complutum-env-philosophy__composition img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:30% center; }
.env-composition-shapes { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
:root .complutum-main--environments-template .env-composition-quote { position:absolute; top:53%; left:62%; width:35%; translate:0 -50%; margin:0; padding:0; border:0; background:none; box-shadow:none; color:#555167; font-style:normal; text-align:center; }
:root .complutum-main--environments-template .env-composition-quote p { margin:0; font-size:19px; line-height:1.22; letter-spacing:0; }
:root .complutum-main--environments-template .env-composition-quote em { display:block; margin-top:.3rem; font-family:Georgia,serif; font-size:23px; line-height:1.12; color:#6f7838; }
.env-composition-quote::after { content:""; display:block; width:34px; height:2px; background:#788343; margin:1.1rem auto 0; }
@media(max-width:599px) {
 .env-composition-shapes { left:-25%; width:125%; }
 :root .complutum-main--environments-template .env-composition-quote { left:56%; width:41%; }
 :root .complutum-main--environments-template .env-composition-quote p { font-size:18px; }
}
@media(min-width:600px) {
 :root .complutum-main--environments-template .complutum-env-philosophy__composition { height:auto; aspect-ratio:16/9; }
 :root .complutum-main--environments-template .env-composition-quote { left:68%; width:30%; }
 :root .complutum-main--environments-template .env-composition-quote p { font-size:28px; }
 :root .complutum-main--environments-template .env-composition-quote em { font-size:34px; }
}
@media(min-width:1100px) {
 :root .complutum-main--environments-template .env-composition-quote p { font-size:44px; }
 :root .complutum-main--environments-template .env-composition-quote em { font-size:52px; }
}
@media(min-width:1600px) {
 :root .complutum-main--environments-template .env-composition-quote p { font-size:52px; }
 :root .complutum-main--environments-template .env-composition-quote em { font-size:62px; }
}
@media(prefers-reduced-motion:no-preference) {
 .complutum-env-philosophy__composition .env-composition-photo,
 .complutum-env-philosophy__composition .env-composition-shapes,
 .complutum-env-philosophy__composition .env-composition-quote { transition:transform 1200ms cubic-bezier(.22,1,.36,1),opacity 900ms ease; }
 .complutum-env-philosophy__composition:not(.is-visible) .env-composition-photo { transform:translateX(-22%); opacity:0; }
 .complutum-env-philosophy__composition:not(.is-visible) .env-composition-shapes,
 :root .complutum-main--environments-template .complutum-env-philosophy__composition:not(.is-visible) .env-composition-quote { transform:translateX(35%); opacity:0; }
}
:root .complutum-main--environments-template .complutum-section.complutum-env-practice { background:#fff; }
:root .complutum-main--environments-template .complutum-env-practice__stage { position:relative; display:block; padding:0; border:0; border-radius:0; box-shadow:none; background:none; isolation:isolate; overflow:visible; }
:root .complutum-main--environments-template .complutum-env-practice__stage::before,
:root .complutum-main--environments-template .complutum-env-practice__stage::after { display:none; }
:root .complutum-main--environments-template .complutum-env-practice__eyebrow { position:relative; z-index:3; margin:0 0 1rem; }
:root .complutum-main--environments-template .complutum-env-practice__copy { position:relative; z-index:2; padding:280px 0 0; background:none; border:0; box-shadow:none; }
:root .complutum-main--environments-template .complutum-env-practice__visual { position:absolute; top:1.5rem; left:-20px; width:calc(100% + 40px); height:330px; z-index:0; pointer-events:none; }
:root .complutum-main--environments-template .complutum-env-practice__visual .complutum-env-figure { width:100%; height:100%; min-height:0; margin:0; border:0; border-radius:0; box-shadow:none; aspect-ratio:auto; clip-path:none !important; mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 48%,transparent 100%); }
:root .complutum-main--environments-template .complutum-env-practice__visual .complutum-env-figure::before,
:root .complutum-main--environments-template .complutum-env-practice__visual .complutum-env-figure::after { display:none; }
:root .complutum-main--environments-template .complutum-env-practice__visual img { width:100%; height:100%; object-fit:cover; object-position:center; }
:root .complutum-main--environments-template .complutum-env-practice__list { gap:0; margin-top:1.5rem; }
:root .complutum-main--environments-template .complutum-env-practice__item { padding:1.25rem 0; border:0; border-top:1px solid #d7e2d8; background:none; border-radius:0; box-shadow:none; }
:root .complutum-main--environments-template .complutum-env-practice__marker { background:none; box-shadow:none; border:0; color:#789344; }
:root .complutum-main--environments-template .complutum-env-practice__item p { color:#52635c; }
@media(min-width:768px) {
 :root .complutum-main--environments-template .complutum-env-practice__copy { padding-top:360px; }
 :root .complutum-main--environments-template .complutum-env-practice__visual { height:420px; }
}
@media(min-width:1100px) {
 :root .complutum-main--environments-template .complutum-env-practice__eyebrow { margin-left:51%; }
 :root .complutum-main--environments-template .complutum-env-practice__copy { width:49%; margin-left:51%; padding-top:2rem; }
 :root .complutum-main--environments-template .complutum-env-practice__visual { inset:1rem auto 0 -5rem; width:73%; height:100%; max-height:800px; }
 :root .complutum-main--environments-template .complutum-env-practice__visual .complutum-env-figure { mask-image:linear-gradient(to left,transparent,#000 48%),linear-gradient(to bottom,transparent,#000 16%,#000 78%,transparent); mask-composite:intersect; }
}
.complutum-main--program-page-template .program-faq { position: relative; }
.complutum-main--program-page-template .program-faq__divider { position: absolute; top: 0; left: 0; width: 100%; height: 40px; pointer-events: none; }
@media (min-width: 768px) {
	.complutum-main--program-page-template .program-faq__divider { height: 56px; }
}
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav { gap: 0; border-block: 1px solid #ccd8ce; margin-block: 2rem; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link {
	position: relative; background: transparent; border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none;
	padding: 1.25rem 2.5rem; min-width: 0; transition: background-color 200ms ease, color 200ms ease;
}
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link + .complutum-program-stage-nav__link { border-top: 1px solid #ccd8ce; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link::before { content: "\2190"; position: absolute; left: .5rem; top: 50%; translate: 0 -50%; font-size: 1.5rem; color: #344f43; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link--next::before { content: "\2192"; left: auto; right: .5rem; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__meta { font-size: .7rem; color: #65756c; letter-spacing: 0; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__label { font-size: 1.1rem; color: #283e38; }
.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link:hover { background: #e4ece3; transform: none; box-shadow: none; }
.complutum-main--program-page-template .program-cta-final .complutum-button {
	min-height: 48px; box-sizing: border-box; padding: .85rem 1.35rem; border-radius: 6px; box-shadow: none; background-image: none; backdrop-filter: none;
	font-size: .95rem; transition: background-color 200ms ease, color 200ms ease;
}
.complutum-main--program-page-template .program-cta-final .complutum-button--primary { background: #344f43; border: 1px solid #344f43; color: #fff; }
.complutum-main--program-page-template .program-cta-final .complutum-button--primary:hover { background: #243b31; border-color: #243b31; transform: none; box-shadow: none; }
.complutum-main--program-page-template .program-cta-final .complutum-button--secondary { background: transparent; border: 1px solid #9ead9f; color: #344f43; }
.complutum-main--program-page-template .program-cta-final .complutum-button--secondary:hover { background: #e4ece3; transform: none; box-shadow: none; }
.complutum-main--program-page-template .program-cta-final :is(.complutum-button,.complutum-program-stage-nav__link):focus-visible { outline: 2px solid #344f43; outline-offset: 4px; }
@media (min-width: 768px) {
	.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.complutum-main--program-page-template .program-cta-final .complutum-program-stage-nav__link + .complutum-program-stage-nav__link { border-top: 0; border-left: 1px solid #ccd8ce; }
}
.complutum-main--program-page-template .program-page .program-environment--immersive {
	position: relative; isolation: isolate; overflow: clip; background: #f7faf5;
}
.program-environment--immersive .environment-backdrop { position: absolute; inset: 0; z-index: -1; overflow: hidden; }
.program-environment--immersive .environment-backdrop img { width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.08); }
.program-environment--immersive .environment-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(247,250,245,.58), rgba(247,250,245,.78) 45%, rgba(247,250,245,.84)); }
.complutum-main--program-page-template .program-page .program-environment--immersive .environment-layout { position: relative; display: block; overflow: visible; }
.program-environment--immersive .environment-layout > div { max-width: 42rem; margin: 0; }
.program-environment--immersive .environment-layout > div + div { margin-top: 1.75rem; }
.complutum-main--program-page-template .program-environment--immersive .environment-details__eyebrow { font-family: inherit; font-size: .8rem; font-weight: 700; text-transform: uppercase; color: #647f32; margin: 0 0 1rem; }
.program-environment--immersive .environment-details__copy p { margin: 0 0 1rem; }
@media (min-width: 1100px) {
	.complutum-main--program-page-template .program-page .program-environment--immersive { min-height: 44rem; }
	.program-environment--immersive .environment-layout > div { width: 55%; }
	.program-environment--immersive .environment-backdrop::after { background: linear-gradient(90deg, rgba(247,250,245,.86) 0%, rgba(247,250,245,.82) 42%, rgba(247,250,245,.45) 60%, rgba(247,250,245,.04) 85%); }
}
@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.program-environment--immersive { view-timeline: --environment-drift block; }
		.program-environment--immersive .environment-backdrop img { animation: environment-photo-drift linear both; animation-timeline: --environment-drift; animation-range: entry 0% exit 100%; }
	}
}
@keyframes environment-photo-drift {
	from { transform: scale(1.08) translateY(-3%); }
	to { transform: scale(1.08) translateY(3%); }
}
.has-complutum-motion .complutum-main--program-page-template .methodology-module.js-reveal-card { clip-path: none; }
.complutum-main--program-page-template .cms-timeline-section { overflow-x: clip; }
@media (prefers-reduced-motion: no-preference) {
	.has-complutum-motion .complutum-main--program-page-template .cms-timeline__item.complutum-reveal {
		opacity: 0;
		transform: translateX(100vw);
		clip-path: none;
		transition: opacity 650ms ease, transform 1050ms cubic-bezier(.2,.7,.2,1);
		transition-delay: 0s;
	}
	.has-complutum-motion .complutum-main--program-page-template .cms-timeline__item.complutum-reveal:nth-child(even) { transform: translateX(-100vw); }
	.has-complutum-motion .complutum-main--program-page-template .cms-timeline__item.complutum-reveal.is-visible { opacity: 1; transform: none; }
}
.complutum-main--environments-template .complutum-env-hero__media::after {
	inset: 0;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 0;
	background: linear-gradient(90deg, rgba(248, 244, 236, .5) 0%, rgba(248, 244, 236, .4) 42%, rgba(248, 244, 236, .16) 78%, rgba(248, 244, 236, .04) 100%);
	box-shadow: 0 18px 44px rgba(56, 46, 72, .05);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	pointer-events: none;
}
.complutum-main--environments-template .complutum-env-hero__media::before { content: none; background: none; }
.complutum-main--environments-template .complutum-env-hero__media img { filter: none; opacity: 1; }
.complutum-main--environments-template .complutum-env-hero__media img[src$="/ambientes-hero-casa.webp"] { object-position: center 68%; }
.complutum-main--environments-template .complutum-env-figure--philosophy img[src$="/ambiente-7-1280.webp"] { object-position: 20% center; }
:is(.complutum-main--program-page-template, .complutum-main--environments-template, .complutum-main--team-template) {
	--editorial-ink: #283e38;
	--editorial-muted: #52635c;
	--editorial-line: #dce5df;
	--editorial-wash: #f1f6f2;
	letter-spacing: 0;
}

.complutum-main--program-page-template .program-page {
	background: #fff;
	overflow-x: clip;
	color: var(--editorial-ink);
	section:not(.program-hero) { width: 100%; max-width: none; box-sizing: border-box; margin: 0; padding: 3.5rem 0; border: 0; border-radius: 0; box-shadow: none; scroll-margin-top: 6rem; }
	section:not(.program-hero) > .container { width: min(100% - 2.5rem, 1200px); max-width: 1200px; padding-inline: 0; }
	:is(.section-elevated, .methodology-module, .cms-timeline, .timeline-step, .environment-quote, .faq-item) { border-radius: 0; box-shadow: none; border: 0; background: transparent; }
	:is(.program-summary, .program-environment, .program-cta-final) { background: var(--editorial-wash); }
	:is(.program-methodology, .program-timeline, .program-faq) { background: #fff; }
	:is(.program-summary, .program-environment, .program-cta-final)::before,
	:is(.program-summary, .program-environment, .program-cta-final)::after,
	.cms-timeline::before { display: none; }
	h2 { font-size: 1.9rem; line-height: 1.22; letter-spacing: 0; color: var(--editorial-ink); }
	h3 { font-size: 1.4rem; line-height: 1.3; letter-spacing: 0; color: var(--editorial-ink); }
	p { line-height: 1.7; }
	.cms-timeline-section__inner { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
	.program-summary__cube { margin:0; width:100%; align-self:center; }
	.program-summary__cube img { display:block; width:100%; height:auto; }
	.cms-timeline-section__intro { max-width: none; padding: 0; }
	:is(.cms-timeline-section__eyebrow, .cms-timeline__eyebrow) { margin: 0 0 1rem; font-size: .8rem; font-weight: 700; letter-spacing: 0; text-transform: uppercase; color: #799a37; }
	.cms-timeline-section__title { max-width: 24ch; margin-block: .75rem 1rem; }
	.cms-timeline-section__copy { max-width: 54ch; color: var(--editorial-muted); }
	.cms-timeline-section__cta { display: inline-flex; align-items: center; gap: .75rem; margin-top: 1rem; padding: .5rem 0; border: 0; font-size: .9rem; line-height: 1.5; font-weight: 700; color: #799a37; letter-spacing: 0; text-transform: uppercase; text-decoration: none; }
	.cms-timeline-section__cta::before { display: none; }
	.cms-timeline-section__cta-icon::before { content: "\2192"; }
	.cms-timeline { padding: 0; }
	.cms-timeline__list { position: relative; display: grid; gap: .75rem; }
	.cms-timeline__list::before { content: none; }
	.cms-timeline__item { position: relative; display: grid; box-sizing: border-box; grid-template-columns: 2.5rem minmax(0, 1fr); align-items: start; padding: 1.25rem 1rem; border-top: 1px solid #b8c99e; background: #e6eddc; gap: 1rem; }
	.cms-timeline__item:nth-child(even) { background: #edf2e6; }
	.cms-timeline__marker { position: relative; z-index: 1; display: grid; place-items: center; box-sizing: border-box; width: 2.5rem; height: 2.5rem; inline-size: 2.5rem; block-size: 2.5rem; flex: 0 0 2.5rem; border-radius: 50%; border: 1px solid #a5bd7c; background: var(--editorial-wash); color: #799a37; font-size: .8rem; font-weight: 700; box-shadow: none; }
	.cms-timeline__content h3 { margin: 0; font-size: 1.2rem; }
	.cms-timeline__marker { min-width: 0; padding: 0; margin: 0; letter-spacing: 0; }
	.cms-timeline__content p { margin: .75rem 0 0; max-width: 48ch; font-size: 1rem; color: var(--editorial-muted); }
	.program-methodology > .container > .text-center { text-align: left; max-width: 44rem; margin: 0 0 2.5rem; }
	.methodology-module { position: relative; isolation: isolate; display: flex; flex-direction: column; gap: 1.75rem; padding: 0; margin: 0 0 3.5rem; overflow: visible; }
	.module-backdrop { position: absolute; z-index: -1; pointer-events: none; width: 100vw; height: 100%; left: calc((100% - 100vw) / 2); top: 0; color: #eef4ef; }
	.methodology-module:nth-of-type(even) .module-backdrop { color: color-mix(in srgb, #86a343 12%, white); transform: scaleX(-1); }
	.methodology-module:nth-of-type(3n) .module-backdrop { color: color-mix(in srgb, #dfd10d 12%, white); }
	.methodology-module:last-child { margin-bottom: 0; }
	.module-image { width: 100%; height: auto; aspect-ratio: 1.18; min-height: 0; margin: 0; order: 0; }
	.module-image img { width: 100%; height: 100%; object-fit: cover; }
	.module-text { width: 100%; padding: 0; order: 1; }
	.module-text h3 { margin: 0 0 1rem; }
	.module-text p { max-width: 58ch; color: var(--editorial-muted); }
	.environment-layout { gap: 1.5rem; }
	.environment-image { width: 100%; inline-size: 100%; height: auto; min-height: 0; aspect-ratio: 1.12; margin: 0; border-radius: 0; box-shadow: none; }
	.environment-text, .environment-details, .environment-action { padding: 0; }
	.environment-quote { padding: .25rem 0 .25rem 1.25rem; margin: 0; border-left: 2px solid #a5bd7c; }
	.environment-quote blockquote { padding: 0; margin: 0; border: 0; background: transparent; box-shadow: none; }
	.timeline-container { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 2rem; }
	.timeline-container::before { display: none; }
	.timeline-step { text-align: left; padding: 1.5rem 0; border-top: 1px solid var(--editorial-line); }
	.step-icon { width: 2.5rem; height: 2.5rem; margin: 0 0 1rem; background: #edf3e6; border: 0; box-shadow: none; color: var(--editorial-ink); font-size: 1rem; }
	.step-title { font-size: 1.3rem; margin-bottom: .75rem; }
	.faq-container { max-width: 1200px; }
	.faq-container > .text-center { text-align: left; }
	.faq-item { margin: 0; border-top: 1px solid var(--editorial-line); }
	.faq-item:last-child { border-bottom: 1px solid var(--editorial-line); }
	.faq-item summary { padding: 1.4rem 0; gap: 1.25rem; font-size: 1.05rem; line-height: 1.5; }
	.faq-icon { flex-shrink: 0; }
	.faq-content { padding: 0 0 1.5rem; color: var(--editorial-muted); }
	.program-cta-final .container { max-width: 54rem; }
	@media (min-width: 768px) {
		section:not(.program-hero) { padding-block: 4rem; }
		section:not(.program-hero) > .container { width: min(100% - 5rem, 1200px); }
		h2 { font-size: 2.3rem; }
		.module-image { max-width: 38rem; aspect-ratio: 1.35; }
		.timeline-container { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
	}
	@media (min-width: 1100px) {
		section:not(.program-hero) { padding-block: 5rem; }
		h2 { font-size: 2.65rem; }
		.cms-timeline-section__inner { grid-template-columns: 43% 47%; justify-content: space-between; align-items: start; }
		.cms-timeline-section__intro { padding-top: 2rem; }
		.methodology-module { display: block; min-height: 29rem; padding-top: 4rem; margin-bottom: 3rem; }
		.module-backdrop { top: -1rem; height: calc(100% + 2rem); }
		.module-image { position: absolute; top: 0; left: 0; width: 47%; height: 26rem; max-width: none; }
		.module-text { width: 43%; margin-left: 55%; }
		.methodology-module:nth-child(even) .module-image { left: auto; right: 0; }
		.methodology-module:nth-child(even) .module-text { margin-left: 3%; }
		.environment-layout { grid-template-columns: 44% 48%; justify-content: space-between; gap: 1.5rem 0; }
		.environment-image { align-self: center; aspect-ratio: 1.08; }
		.faq-container { display: grid; grid-template-columns: 34% 59%; justify-content: space-between; align-items: start; }
		.faq-container h2 { max-width: 14ch; }
	}
}

:is(.complutum-main--team-template, .complutum-main--environments-template) {
	.complutum-section:not(.complutum-team-hero):not(.complutum-env-hero) { padding-block: 3.5rem; background: var(--complutum-section-background-color, var(--editorial-section-bg, #fff)); }
	:is(.complutum-team-leadership, .complutum-team-collaboration, .complutum-env-practice, .complutum-env-ratio, .complutum-team-closing, .complutum-env-closing).complutum-section { --editorial-section-bg: var(--editorial-wash); }
	:is(.complutum-home-section__title, h3) { color: var(--editorial-ink); letter-spacing: 0; }
	.complutum-home-section__title { font-size: 1.9rem; line-height: 1.25; }
	.complutum-team-richtext { color: var(--editorial-muted); line-height: 1.75; }
	:is(.complutum-team-quote, .complutum-team-inline-quote, .complutum-team-closing__panel, .complutum-team-principle, .complutum-team-profile, .complutum-team-member, .complutum-env-quote, .complutum-env-benefit, .complutum-env-ratio__panel, .complutum-env-stat, .complutum-env-closing__panel) {
		border: 0; border-radius: 0; box-shadow: none; background: transparent; padding: 0;
	}
	:is(.complutum-team-quote, .complutum-team-inline-quote, .complutum-env-quote) { border-left: 2px solid #a5bd7c; padding: .25rem 0 .25rem 1.25rem; }
	.complutum-env-inline-quote { border: 0; border-left: 2px solid #a5bd7c; padding: .25rem 0 .25rem 1.25rem; border-radius: 0; background: transparent; box-shadow: none; }
	:is(.complutum-team-intro__details, .complutum-env-philosophy__details, .complutum-env-outdoors__details) { gap: .75rem 1.25rem; }
	:is(.complutum-team-intro__details, .complutum-env-philosophy__details, .complutum-env-outdoors__details) span { padding: .5rem 0; border: 0; border-bottom: 1px solid var(--editorial-line); border-radius: 0; background: transparent; letter-spacing: 0; }
	:is(.complutum-team-figure, .complutum-env-figure) { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
	.complutum-team-figure {
		mask-image: linear-gradient(to bottom, transparent, #000 10%, #000 76%, transparent), linear-gradient(to right, transparent, #000 10%, #000 90%, transparent);
		mask-composite: intersect;
	}
	:is(.complutum-team-figure--leadership, .complutum-team-figure--collaboration) { clip-path: none; min-height: 0; aspect-ratio: 1.2; }
	.complutum-team-figure--profile { clip-path: none; aspect-ratio: 1.25; }
	.complutum-team-profile__body { padding: 1.25rem 0 0; }
	:is(.complutum-team-profile, .complutum-team-principle, .complutum-team-member):hover { box-shadow: none; background: transparent; transform: none; }
	.complutum-team-principle { padding-block: 1.5rem; border-top: 1px solid var(--editorial-line); }
	.complutum-team-member { padding-block: 2.5rem; border-top: 1px solid var(--editorial-line); }
	.complutum-team-member__portrait { border: 0; border-radius: 50%; clip-path: circle(50%); mask-image: none; background: transparent; box-shadow: none; width: min(12rem, 100%); height: auto; aspect-ratio: 1; }
	.complutum-team-member__portrait::after { display: none; }
	.complutum-team-member__portrait img { border-radius: 0; mask-image: none; }
	.complutum-team-members__list { gap: 0; }
	.complutum-team-profiles__grid { gap: 2.5rem; }
	:is(.complutum-team-profiles, .complutum-team-members) .complutum-home-section-head {
		width: 100%; max-width: 54rem; margin-inline: 0; text-align: left; justify-items: start;
	}
	:is(.complutum-team-profiles, .complutum-team-members) .complutum-home-section__title { width: 100%; max-width: none; }
	.complutum-env-philosophy__stage::before { display: none; }
	.complutum-env-benefits__grid { gap: 0 2rem; }
	.complutum-env-benefit { padding-block: 1.5rem; border-top: 1px solid var(--editorial-line); }
	.complutum-env-stat { padding-block: 1.5rem; border-bottom: 1px solid var(--editorial-line); }
	.complutum-env-stat__value { color: var(--editorial-ink); }
	.complutum-env-ratio__stats { min-width: 0; }
	.cms-programs-chapter__copy { box-sizing: border-box; }
	.cms-programs-chapter__copy h3 { font-size: 1.65rem; line-height: 1.25; }
	.complutum-env-closing__panel::before, .complutum-team-closing__panel::before { display: none; }
	@media (min-width: 768px) {
		.complutum-section:not(.complutum-team-hero):not(.complutum-env-hero) { padding-block: 4rem; }
		.complutum-home-section__title { font-size: 2.3rem; }
		.complutum-env-benefits__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		.complutum-team-profiles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	}
	@media (min-width: 1100px) {
		.complutum-section:not(.complutum-team-hero):not(.complutum-env-hero) { padding-block: 5rem; }
		.complutum-home-section__title { font-size: 2.65rem; }
		.complutum-team-intro__stage { grid-template-columns: 48% 37%; justify-content: space-between; }
		.complutum-team-intro__aside { padding-top: 4rem; }
		.complutum-team-leadership__stage { position: relative; display: block; min-height: 34rem; }
		.complutum-team-leadership__copy { width: 48%; padding-top: 2rem; }
		.complutum-team-figure--leadership { position: absolute; right: 0; top: 0; width: 43%; height: 30rem; }
		.complutum-team-collaboration__stage { grid-template-columns: 45% 46%; justify-content: space-between; }
		.complutum-team-principles > .complutum-shell { grid-template-columns: 32% 58%; justify-content: space-between; }
		.complutum-team-principles .complutum-home-section-head { text-align: left; }
		.complutum-team-principles__grid { grid-template-columns: minmax(0, 1fr); margin: 0; }
		.complutum-team-member__body { text-align: left; }
		.complutum-team-profiles__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; align-items: start; }
		.complutum-team-profile { align-content: start; }
		.cms-programs-chapter__copy h3 { font-size: 2rem; }
		.complutum-env-philosophy__stage { grid-template-columns: 47% 43%; justify-content: space-between; }
		.complutum-env-philosophy__aside { padding-top: 3rem; }
		.complutum-env-practice__stage { grid-template-columns: 44% 48%; justify-content: space-between; }
		.complutum-env-outdoors__stage { grid-template-columns: 44% 49%; justify-content: space-between; }
	}
}

/* Native scroll timelines enhance supported browsers without hiding content. */
@supports (animation-timeline: view()) {
	@media (min-width: 1100px) and (prefers-reduced-motion: no-preference) {
		.complutum-main--program-page-template .methodology-module {
			view-timeline: --editorial-photo block;
		}
		.complutum-main--program-page-template .module-image img {
			animation: editorial-photo-drift linear both;
			animation-timeline: --editorial-photo;
			animation-range: entry 0% exit 100%;
		}
	}
}
@keyframes editorial-photo-drift {
	from { transform: scale(1.06) translateY(-2%); }
	to { transform: scale(1.06) translateY(2%); }
}
:root .complutum-main--environments-template .complutum-env-outdoors__stage {
 position:relative; display:block; padding:0; border:0; border-radius:0; box-shadow:none; background:none; isolation:isolate; overflow:visible;
}
:root .complutum-main--environments-template .complutum-env-outdoors__stage::before,
:root .complutum-main--environments-template .complutum-env-outdoors__stage::after { display:none; }
:root .complutum-main--environments-template .complutum-env-outdoors__eyebrow { position:relative; z-index:3; margin:0 0 1rem; }
:root .complutum-main--environments-template .complutum-env-outdoors__copy { position:relative; z-index:2; padding:280px 0 0; background:none; border:0; box-shadow:none; }
:root .complutum-main--environments-template .complutum-env-outdoors__visual { position:absolute; top:-1.25rem; left:-20px; width:calc(100% + 40px); height:374px; z-index:0; pointer-events:none; }
:root .complutum-main--environments-template .complutum-env-outdoors__visual .complutum-env-figure { width:100%; height:100%; min-height:0; margin:0; border:0; border-radius:0; box-shadow:none; aspect-ratio:auto; clip-path:none !important; mask-image:linear-gradient(to bottom,transparent,#000 26%,#000 48%,transparent 100%); }
:root .complutum-main--environments-template .complutum-env-outdoors__visual .complutum-env-figure::before,
:root .complutum-main--environments-template .complutum-env-outdoors__visual .complutum-env-figure::after { display:none; }
:root .complutum-main--environments-template .complutum-env-outdoors__visual img { width:100%; height:100%; object-fit:cover; object-position:center 42%; }
:root .complutum-main--environments-template .complutum-env-outdoors__details { display:block; }
:root .complutum-main--environments-template .complutum-env-outdoors__details span { display:block; padding:.9rem 0; }
@media(min-width:768px) {
 :root .complutum-main--environments-template .complutum-env-outdoors__copy { padding-top:360px; }
 :root .complutum-main--environments-template .complutum-env-outdoors__visual { height:464px; }
}
@media(min-width:1100px) {
 :root .complutum-main--environments-template .complutum-env-outdoors__stage { min-height:650px; }
 :root .complutum-main--environments-template .complutum-env-outdoors__copy { width:46%; padding-top:3rem; }
 :root .complutum-main--environments-template .complutum-env-outdoors__visual { inset:1rem -5rem 0 auto; width:75%; height:100%; }
 :root .complutum-main--environments-template .complutum-env-outdoors__visual .complutum-env-figure { mask-image:linear-gradient(to right,transparent,#000 50%),linear-gradient(to bottom,transparent,#000 16%,#000 78%,transparent); mask-composite:intersect; }
}

/* A closer desktop rhythm connects the three cultivated qualities. */
@media(min-width:1100px) {
 .program-page .program-methodology > .container > .text-center { max-width:880px; margin-bottom:32px; }
 .program-page .program-methodology .methodology-module { min-height:350px; box-sizing:border-box; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:24px 0; margin-bottom:20px; }
 .program-page .program-methodology .module-image { width:46%; height:340px; top:50%; left:3%; right:auto; transform:translateY(-50%); }
 .program-page .program-methodology .module-text { position:relative; width:44%; margin-left:50%; padding:20px 0; }
 .program-page .program-methodology .methodology-module:nth-child(even) .module-image { right:3%; left:auto; }
 .program-page .program-methodology .methodology-module:nth-child(even) .module-text { margin-left:6%; }
 .program-page .program-methodology .module-text h3 { color:#5d536d; font-size:28px; font-weight:500; line-height:1.25; margin:0 0 18px; }
 .program-page .program-methodology .module-text p { color:#696077; font-size:17px; line-height:1.7; max-width:46ch; margin:0 0 18px; }
 .program-page .program-methodology .module-backdrop { top:-12px; height:calc(100% + 24px); opacity:.65; mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent); }
 .program-page .program-methodology .module-text::before { content:""; display:block; width:44px; height:2px; margin-bottom:20px; background:#8fa84a; opacity:.65; }
}

/* The cube shares the introduction's white canvas rather than a separate frame. */
.program-page--secondary #descubrir { background:#fff; overflow:clip; }
.program-page--secondary #descubrir .cms-timeline-section__inner { position:relative; isolation:isolate; display:block; }
.program-page--secondary #descubrir .cms-timeline-section__intro { position:relative; z-index:2; }
.program-page--secondary #descubrir .program-summary__cube { position:relative; width:calc(100% + 40px); margin:20px -20px 0; height:290px; overflow:hidden; mask-image:linear-gradient(180deg,transparent,#000 15%,#000 78%,transparent); }
.program-page--secondary #descubrir .program-summary__cube img { width:100%; height:135%; max-width:none; object-fit:cover; object-position:center top; filter:brightness(1.07) saturate(1.04); }
@media(min-width:1100px) {
 .program-page--secondary #descubrir .cms-timeline-section__inner { min-height:660px; }
 .program-page--secondary #descubrir .cms-timeline-section__intro { width:47%; }
 .program-page--secondary #descubrir .program-summary__cube { position:absolute; inset:0 -12% 0 auto; width:78%; height:100%; margin:0; }
 .program-page--secondary #descubrir .program-summary__cube img { height:120%; object-position:60% top; }
 .program-page--secondary #descubrir .program-summary__cube::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fff,rgba(255,255,255,.94) 15%,rgba(255,255,255,.25) 39%,transparent 55%,transparent 90%,#fff); pointer-events:none; }
}
.program-page--childrens-house #descubrir { background:#fff; overflow:clip; }
.program-page--childrens-house #descubrir .cms-timeline-section__inner { position:relative; isolation:isolate; display:grid; grid-template-columns:1fr; }
.program-page--childrens-house #descubrir .cms-timeline-section__intro { position:relative; z-index:2; }
.program-page--childrens-house #descubrir .program-summary__cube { position:relative; width:calc(100% + 40px); margin:0 -20px; height:400px; mask-image:linear-gradient(180deg,transparent,#000 18%,#000 75%,transparent); }
.program-page--childrens-house #descubrir .program-summary__cube img { width:100%; height:100%; object-fit:cover; object-position:65% 52%; }
@media(min-width:1100px) {
 .program-page--childrens-house #descubrir .cms-timeline-section__inner { display:block; min-height:620px; }
 .program-page--childrens-house #descubrir .cms-timeline-section__intro { width:48%; }
 .program-page--childrens-house #descubrir .program-summary__cube { position:absolute; inset:0 -8% 0 auto; width:74%; height:100%; margin:0; mask-image:linear-gradient(180deg,transparent,#000 16%,#000 80%,transparent); }
 .program-page--childrens-house #descubrir .program-summary__cube::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fff,rgba(255,255,255,.94) 14%,rgba(255,255,255,.25) 40%,transparent 56%,transparent 88%,#fff); pointer-events:none; }
}
.program-page--elementary #descubrir { background:#fff; overflow:clip; }
.program-page--elementary #descubrir .cms-timeline-section__inner { position:relative; isolation:isolate; }
.program-page--elementary #descubrir .cms-timeline-section__intro { position:relative; z-index:2; }
.program-page--elementary #descubrir .program-summary__cube { position:relative; width:calc(100% + 80px); margin:-30px -40px 0; mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); }
.program-page--elementary #descubrir .program-summary__cube::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,#fff,transparent 22%,transparent 78%,#fff); }
@media(min-width:1100px) {
 .program-page--elementary #descubrir .cms-timeline-section__inner { display:block; min-height:600px; }
 .program-page--elementary #descubrir .cms-timeline-section__intro { width:48%; }
 .program-page--elementary #descubrir .program-summary__cube { position:absolute; width:95%; right:-25%; top:0; bottom:0; margin:0; mask-image:linear-gradient(90deg,transparent,#000 20%,#000 88%,transparent); }
 .program-page--elementary #descubrir .program-summary__cube img { width:100%; height:100%; object-fit:cover; object-position:left center; }
 .program-page--elementary #descubrir .program-summary__cube::after { background:linear-gradient(90deg,#fff,rgba(255,255,255,.84) 15%,rgba(255,255,255,.25) 29%,transparent 43%),linear-gradient(180deg,#fff,transparent 15%,transparent 84%,#fff); }
}
