/* Commercial priorities: original Epic palette, open images and scroll depth. */
.hero-offer{display:grid;gap:7px;border-left:4px solid var(--yellow);padding-left:20px;margin-bottom:28px;max-width:29em}
.hero-offer>span{font-size:1rem;font-weight:700;color:var(--yellow);line-height:1.3}
.hero-offer>strong{font-family:EpicWide,EpicSans,sans-serif;font-size:clamp(1.4rem,2.15vw,2.3rem);line-height:1.1;letter-spacing:-.025em;color:var(--yellow)}
.scene-copy .hero-offer-terms{font-size:.875rem;line-height:1.45;max-width:32em;color:#f1efff;margin-top:22px}
.hero-offer-terms a{text-underline-offset:4px}
.hero-priorities{display:flex;flex-wrap:wrap;gap:13px 24px;max-width:38em;margin-top:20px}
.hero-priorities a{font-size:.9375rem;line-height:1.45;font-weight:700;color:#fff;text-underline-offset:5px}

/* Personal equipment appears after the programme and implementation chapters. */
body[data-design="a"] .laptop-showcase{display:block;margin:0;padding:clamp(48px,5vw,80px) var(--pad) 0;background:var(--violet);color:#fff;overflow:hidden}
.laptop-showcase,.flagship-showcase{max-width:none}
.laptop-heading{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);align-items:end;gap:42px;margin-bottom:40px}
.laptop-heading .eyebrow{color:var(--yellow)}
.laptop-heading h2{font-size:clamp(2rem,6.8vw,7.2rem);line-height:1.04;letter-spacing:-.045em;margin:0}
.laptop-heading>p{max-width:25em;font-size:clamp(1.125rem,1.7vw,1.5rem);line-height:1.5;margin-bottom:8px}
.laptop-stage{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);width:calc(100% + 2*var(--pad));margin-left:calc(-1*var(--pad))}
.laptop-showcase .laptop-stage figure{position:relative;margin:0;overflow:hidden;min-height:470px;background:var(--ink);isolation:isolate}
.laptop-showcase .laptop-stage figure img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:55% center}
.laptop-stage figure:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#090c26d9,transparent);z-index:1;pointer-events:none}
.laptop-showcase .laptop-stage figcaption{position:absolute;left:var(--pad);right:28px;bottom:30px;margin:0;color:#fff;font-family:EpicWide,EpicSans,sans-serif;font-size:clamp(1.3rem,2.4vw,2.3rem);font-weight:700;line-height:1.15;z-index:2}
.laptop-showcase .laptop-copy{margin:0;padding:45px var(--pad) 45px 40px;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.laptop-copy .laptop-included{font-size:clamp(1.5rem,2.8vw,2.3rem);line-height:1.15;margin-bottom:24px}
.laptop-included strong{font-family:EpicWide,EpicSans,sans-serif;font-size:clamp(2rem,3.3vw,3.4rem);letter-spacing:-.03em;color:var(--yellow)}
.laptop-showcase .laptop-copy>p:not(.small-note){font-size:1.125rem;line-height:1.5}
.laptop-showcase .laptop-copy>.laptop-included{font-size:clamp(1.5rem,2.8vw,2.3rem);line-height:1.15}
body[data-design="a"] .laptop-showcase .laptop-copy .clean-list li{border-color:#ffffff45;font-size:1rem;color:#fff;padding:13px 0 13px 27px}
body[data-design="a"] .laptop-showcase .laptop-copy .clean-list li:before{color:var(--cyan)}
.laptop-showcase .laptop-copy .button{margin-top:28px;max-width:100%;font-size:1rem;line-height:1.4}
.laptop-showcase .laptop-copy .text-link{margin-top:22px;line-height:1.4}
body[data-design="a"] .laptop-showcase .laptop-copy .small-note{color:#dad8ec;font-size:.875rem;line-height:1.5;margin-top:26px;max-width:29em}

/* Pictures meet the edges of their chapter, without postcard borders. */
.best-showcase .best-panel{width:calc(100% + 2*var(--pad));margin-left:calc(-1*var(--pad));grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}
.best-showcase .best-scene{border:0;box-shadow:none;overflow:hidden}
.best-showcase .best-scene img{top:-6%;height:112%;inset-inline:0;object-fit:cover}
.best-showcase .best-copy{padding:45px var(--pad) 45px 38px}
.digital-montage{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);width:calc(100% + 2*var(--pad));margin-left:calc(-1*var(--pad));gap:0;align-items:stretch}
.digital-montage .digital-main-photo,.digital-montage .digital-vr-photo{position:relative;inset:auto;width:auto;height:clamp(430px,45vw,700px);border:0;margin:0;transform:none;box-shadow:none;background:var(--ink);color:#fff;overflow:hidden;isolation:isolate}
.digital-montage .digital-main-photo img,.digital-montage .digital-vr-photo img{position:absolute;left:0;top:-6%;width:100%;height:112%;aspect-ratio:auto;object-fit:cover;object-position:center}
.digital-main-photo:after,.digital-vr-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#090c26e6,transparent);z-index:1;pointer-events:none}
.digital-montage figure figcaption{position:absolute;left:30px;right:25px;bottom:25px;padding:0;margin:0;max-width:none;font-size:1rem;line-height:1.45;color:#fff;font-weight:700;z-index:2}
.digital-montage .label-platform{top:24px;bottom:auto;left:var(--pad);right:auto;font-size:1rem;z-index:3}
.digital-montage .label-district{display:none}
.wonderlab-showcase .teacher-photo{position:relative;margin:45px calc(-1*var(--pad)) 0;width:calc(100% + 2*var(--pad));height:clamp(450px,48vw,700px);overflow:hidden;isolation:isolate}
.wonderlab-showcase .teacher-photo img{position:absolute;left:0;top:-6%;height:112%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:center 35%}
.teacher-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(0deg,#090c26e6,transparent);z-index:1;pointer-events:none}
.wonderlab-showcase .teacher-photo figcaption{position:absolute;left:var(--pad);right:var(--pad);bottom:32px;padding:0;background:transparent;color:#fff;z-index:2}
.extended-feature{width:calc(100% + 2*var(--pad));margin-left:calc(-1*var(--pad));border:0;box-shadow:none}
#extended-day .extended-feature figure{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.extended-feature figure img{position:absolute;left:0;top:-6%;height:112%;width:100%;object-fit:cover}
#extended-day .extended-copy{max-width:26em}

/* Original product materials are the spectacle: keep their content intact. */
.book-product-scene{position:relative;perspective:1400px;margin:45px calc(-1*var(--pad)) 0;padding:20px var(--pad) 0;background:#fff}
.book-product-scene img{display:block;width:100%;height:auto;max-width:1350px;margin:auto;object-fit:contain;transform-origin:center 60%}
.book-product-scene figcaption{font-family:EpicWide,EpicSans,sans-serif;font-size:clamp(1.3rem,2.6vw,2.5rem);line-height:1.2;font-weight:700;letter-spacing:-.025em;padding:30px 0 15px;max-width:26em}
.inkfinity-showcase .book-spread{grid-template-columns:1fr 1fr;gap:0;margin-top:30px;background:none}
.inkfinity-showcase .book-spread button{color:var(--ink);background:transparent;border-bottom:3px solid #090c2630;overflow:visible;text-align:left}
.inkfinity-showcase .book-spread button[aria-selected="true"]{border-color:var(--violet)}
.inkfinity-showcase .book-tab-title,.inkfinity-showcase [aria-selected="true"] .book-tab-title{padding:22px 25px 22px 0;background:transparent;color:var(--ink)}
.book-tab-title strong{font-size:clamp(1.25rem,2.8vw,2rem)}
.book-tab-title .book-tab-state{color:var(--violet)}
.platform-stage{display:block;perspective:1500px;margin-top:42px;min-height:0}
.platform-photo{position:relative;overflow:visible;background:none;margin:0;aspect-ratio:auto}
.platform-product-link{display:block;position:relative;transform-origin:center;line-height:0}
.platform-photo img{position:relative;inset:auto;width:100%;height:auto;object-fit:contain;border:0;box-shadow:none}
.platform-photo:after{display:none}
.platform-photo figcaption{position:static;padding:25px 0 0;margin:0;color:#fff;font-size:1rem;font-weight:400;line-height:1.5}
.platform-product-action{position:static;display:inline-block;margin-top:25px;padding:16px 22px;background:var(--violet);color:#fff;font-size:1rem;font-weight:700;line-height:1.4;max-width:100%}
.platform-stage .platform-map{padding:35px 40px;margin-top:30px;display:block}
.platform-stage .platform-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:30px}
.platform-stage .platform-flow li+li{border-top:0;padding-top:0}
.platform-stage .platform-flow strong{font-size:1.2rem}
.platform-stage .platform-flow-line{margin-top:30px}

@media(max-width:960px){
 .hero-priorities{max-width:none}
 .laptop-heading{display:block;max-width:none}
 .laptop-heading h2{font-size:clamp(2rem,7.2vw,5rem)}
 .laptop-heading>p{margin:25px 0 0;max-width:35em}
 .laptop-stage{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
 .laptop-showcase .laptop-copy{padding:32px 25px}
 .laptop-included strong{font-size:2.2rem}
 .best-showcase .best-panel{grid-template-columns:1fr}
 .best-showcase .best-copy{padding:35px var(--pad)}
 .best-showcase .best-scene{min-height:0;height:480px}
 .digital-montage{grid-template-columns:1fr 1fr}
 .digital-montage .digital-main-photo,.digital-montage .digital-vr-photo{height:430px}
 .digital-montage figure figcaption{left:24px;right:22px;font-size:.9375rem}
 .wonderlab-showcase .teacher-photo figcaption{grid-template-columns:1fr;gap:16px}
 .book-product-scene{padding-left:0;padding-right:0}
 .book-product-scene figcaption{padding-left:var(--pad);padding-right:var(--pad)}
 .platform-product-action{font-size:.9375rem;padding:12px 16px}
}
@media(max-width:640px){
 .hero-offer{padding-left:15px;margin-bottom:27px}
 .hero-offer>span{font-size:.9375rem}
 .hero-offer>strong{font-size:clamp(1.3rem,5.7vw,1.65rem)}
 .hero-priorities{display:grid;gap:13px;margin-top:25px}
 .scene-copy .hero-offer-terms{margin-top:20px}
 body[data-design="a"] .laptop-showcase{padding-top:55px}
 .laptop-heading h2{font-size:clamp(1.85rem,7.6vw,3.05rem)}
 .laptop-heading>p{font-size:1.0625rem;line-height:1.5}
 .laptop-stage{display:block}
 .laptop-showcase .laptop-stage figure{min-height:0;height:auto;aspect-ratio:1.5}
 .laptop-showcase .laptop-stage figure img{object-position:center}
 .laptop-showcase .laptop-stage figcaption{font-size:1.2rem;bottom:22px}
 .laptop-showcase .laptop-copy{padding:32px var(--pad) 42px}
 .laptop-showcase .laptop-copy .button{width:100%;justify-content:center;font-size:.9375rem}
 .best-showcase .best-scene{height:auto;aspect-ratio:1.5}
 .best-showcase .best-scene figcaption{left:var(--pad);right:var(--pad);bottom:20px}
 .best-showcase .best-glyph{font-size:3.75rem}
 .best-scene-caption{font-size:1.125rem;max-width:13em}
 .digital-montage{display:block}
 .digital-montage .digital-main-photo,.digital-montage .digital-vr-photo{height:auto;aspect-ratio:1.4}
 .digital-montage .digital-main-photo img,.digital-montage .digital-vr-photo img{object-position:center}
 .digital-montage .label-platform{font-size:.9375rem;top:18px}
 .digital-montage figure figcaption{left:var(--pad);right:var(--pad);bottom:20px;font-size:.875rem}
 .wonderlab-showcase .teacher-photo{height:auto;aspect-ratio:1.15;margin-top:30px}
 .wonderlab-showcase .teacher-photo img{object-position:center}
 .wonderlab-showcase .teacher-photo figcaption{bottom:22px;gap:10px}
 .teacher-photo figcaption>span{font-size:.9375rem;line-height:1.45}
 .wonderlab-showcase .teacher-photo figcaption strong{font-size:1.4rem}
 .book-product-scene{margin-top:28px}
 .book-product-scene figcaption{font-size:1.2rem;padding-top:22px}
 .inkfinity-showcase .book-tab-title{padding:20px 10px 20px 0;gap:8px}
 .book-tab-title strong{font-size:1.2rem;line-height:1.25}
 .platform-product-action{position:static;display:block;max-width:none;font-size:.9375rem;padding:16px 18px;text-align:center}
 .platform-photo figcaption{font-size:.875rem;padding-top:18px}
 .platform-stage .platform-map{padding:26px 24px}
 .platform-stage .platform-flow{grid-template-columns:1fr;gap:22px}
 .platform-stage .platform-flow li+li{border-top:1px solid #090c2645;padding-top:20px}
}
@media(max-width:700px){
 #extended-day .extended-feature{display:block;min-height:0;padding:0}
 #extended-day .extended-feature figure{position:relative;inset:auto;z-index:0;height:auto;min-height:0;aspect-ratio:1.5}
 #extended-day .extended-feature figure img{object-position:center}
 #extended-day .extended-feature:after{display:none}
 #extended-day .extended-copy{max-width:none;padding:32px var(--pad) 40px;background:var(--ink)}
}

/* Quote requests preserve the selected modality without publishing amounts. */
.contact-form-fields [hidden]{display:none}
#modalidades .plan-copy .button{line-height:1.4}
@media(max-width:700px){
 #modalidades .plan-copy .button{width:100%;justify-content:center;text-align:center}
}

/* Flagship and contact close the same Epic narrative, with restrained accents. */
#escuela-bandera.flagship-showcase{max-width:var(--max);margin:auto;padding:clamp(64px,6.5vw,100px) var(--pad);background:#10142f;color:#fff;border-top:1px solid #65518b;overflow:hidden}
#escuela-bandera .flagship-feature{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:38px 65px;padding:0;border:0;background:none}
#escuela-bandera .flagship-heading{grid-column:1;grid-row:1;min-width:0}
#escuela-bandera .flagship-heading .eyebrow{color:var(--cyan)}
#escuela-bandera .flagship-heading h2{font-family:EpicSans,Arial,sans-serif;font-size:clamp(2rem,4.3vw,4.2rem);line-height:1.08;letter-spacing:-.04em;color:#fff;margin:0 0 26px}
#escuela-bandera .flagship-heading>p:last-child{font-size:1.125rem;line-height:1.6;max-width:31em}
#escuela-bandera .flagship-value{grid-column:2;grid-row:1;min-width:0;margin:0;padding-top:4px}
#escuela-bandera .flagship-commission{display:flex;align-items:center;gap:clamp(16px,2vw,32px);margin-bottom:20px}
#escuela-bandera .flagship-commission strong{display:block;font-family:EpicWide,Arial,sans-serif;font-size:clamp(4.5rem,7.5vw,7.5rem);line-height:1.05;letter-spacing:-.05em;color:var(--cyan);margin:0;flex:0 0 auto}
#escuela-bandera .flagship-commission strong span{font-size:.55em;margin-left:7px}
#escuela-bandera .flagship-signal{display:block;width:clamp(96px,11vw,170px);height:auto;flex:0 1 auto;min-width:70px;overflow:visible}
#escuela-bandera .flagship-value p{font-size:1.0625rem;line-height:1.6;color:#e8e5f3;max-width:27em}
#escuela-bandera .flagship-value .button{background:var(--cyan);color:var(--ink);font-size:.9375rem;line-height:1.4;margin-top:25px;max-width:100%}
#escuela-bandera .flagship-value .button:hover{background:#fff}
#escuela-bandera .flagship-roles{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:8px 0 0;padding:0;list-style:none}
#escuela-bandera .flagship-roles li{border-top:1px solid #65518b;padding:23px 0 0;margin:0;min-width:0}
#escuela-bandera .flagship-roles strong{display:block;font-size:1.2rem;line-height:1.35;margin-bottom:10px;color:#fff}
#escuela-bandera .flagship-roles span{display:block;font-size:1rem;line-height:1.6;color:#dfd9ed;max-width:30em}
#escuela-bandera .flagship-terms{grid-column:1/-1;margin:0;font-size:.875rem;line-height:1.55;color:#d3cbe5;max-width:70em}
#contacto.contact-epic-close{background:var(--ink);color:#fff;max-width:var(--max);border-top:1px solid #3d335c;padding:clamp(68px,7vw,110px) var(--pad)}
#contacto .contact-acquisition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(38px,5vw,80px);align-items:start;margin-top:0}
#contacto .contact-promise{min-width:0}
#contacto .contact-promise .eyebrow{color:var(--cyan);margin-bottom:24px}
#contacto #contact-title{font-family:EpicSans,Arial,sans-serif;font-size:clamp(2rem,4.1vw,4rem);font-weight:800;line-height:1.08;letter-spacing:-.04em;margin:0}
#contacto #contact-title span{color:var(--cyan)}
#contacto .contact-intro{font-size:1.125rem;line-height:1.6;margin-top:26px;color:#e8e5f3;max-width:31em}
#contacto .contact-promise ul{list-style:none;padding:0;margin-top:26px}
#contacto .contact-promise li{border-top:1px solid #3c3658;padding:15px 0 0;font-size:1rem;line-height:1.6;color:#dfd9ed;margin-top:15px}
#contacto .contact-promise .text-link{color:var(--cyan);font-size:1rem;line-height:1.4;margin-top:23px}
#contacto .contact-email{color:#d5cce9;font-size:.9375rem;line-height:1.5;margin-top:15px}
#contacto .school-contact-form{margin:0;background:transparent;padding:0 0 0 clamp(28px,3vw,48px);border-left:1px solid #65518b;min-width:0}
#contacto .contact-form-heading{font-size:1.25rem;line-height:1.4;font-weight:700;margin:0 0 28px;color:#fff}
#contacto .contact-form-fields{gap:24px 20px}
#contacto .contact-form-fields label{color:#f0edf8}
#contacto .contact-form-fields input,#contacto .contact-form-fields select{background:#151c38;color:#fff;border:1px solid #7b7596;border-radius:0;min-height:54px;font-size:1rem;line-height:1.4}
#contacto .contact-form-fields select{color-scheme:dark}
#contacto .contact-form-fields input::placeholder{color:#bdb7cf;opacity:1}
#contacto .contact-form-fields input:focus-visible,#contacto .contact-form-fields select:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-color:var(--cyan)}
#contacto .school-contact-form>.button{margin-top:28px;font-size:1rem;line-height:1.4}
#contacto .contact-form-note{color:#d5cce9;font-size:.875rem;line-height:1.6;margin-top:18px}
@media(max-width:960px){
 #escuela-bandera .flagship-feature{gap:34px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
 #escuela-bandera .flagship-heading h2{font-size:clamp(2rem,4.5vw,3rem)}
 #escuela-bandera .flagship-roles{gap:24px}
 #contacto .contact-acquisition{grid-template-columns:1fr;gap:42px}
 #contacto #contact-title{font-size:clamp(2rem,5.5vw,3.5rem)}
 #contacto .school-contact-form{padding:34px 0 0;border-left:0;border-top:1px solid #65518b;margin:0}
}
@media(max-width:700px){
 #escuela-bandera .flagship-feature{display:block}
 #escuela-bandera .flagship-heading h2{font-size:clamp(1.9rem,7.8vw,3.2rem)}
 #escuela-bandera .flagship-value{margin-top:32px;padding-top:0}
 #escuela-bandera .flagship-commission{gap:22px}
 #escuela-bandera .flagship-commission strong{font-size:5rem}
 #escuela-bandera .flagship-signal{width:115px}
 #escuela-bandera .flagship-value .button{width:100%;justify-content:center;text-align:center}
 #escuela-bandera .flagship-roles{display:block;margin-top:36px}
 #escuela-bandera .flagship-roles li+li{margin-top:23px}
 #escuela-bandera .flagship-terms{margin-top:26px}
 #contacto #contact-title{font-size:clamp(1.9rem,7.8vw,3.2rem)}
 #contacto .contact-intro,#escuela-bandera .flagship-heading>p:last-child{font-size:1.0625rem;line-height:1.6}
 #contacto .contact-form-heading{font-size:1.2rem;margin-bottom:24px}
}

/* Compact chapter introductions: copy follows the title rather than an empty column. */
#contenido .chapter-intro{display:block;min-width:0;margin:0 0 30px;padding:0}
#contenido .chapter-intro .eyebrow{max-width:none;margin:0 0 14px;padding:0}
#contenido .chapter-intro h2{font-size:clamp(2rem,4.6vw,5rem);line-height:1.06;letter-spacing:-.045em;margin:0;max-width:none}
#contenido .chapter-intro>p:not(.eyebrow){font-size:1.125rem;line-height:1.55;max-width:70ch;justify-self:start;margin:18px 0 0;padding:0}
#contenido .book-title h2{font-size:clamp(1.8rem,4.2vw,4.5rem);line-height:1.12}
#contenido .laboratory-scene,#contenido .teacher-photo{margin-top:0}
#ecosistema{display:block;margin-top:clamp(32px,4vw,48px)}
#ecosistema .eyebrow{margin:0 0 14px}
#ecosistema h3{font-size:clamp(1.8rem,3.3vw,3.25rem);max-width:34ch}
#ecosistema>p:last-child{max-width:70ch;margin-top:16px}

/* A project that the school can share: an open scene alongside the benefits. */
#valor-escuela{padding-bottom:0;min-height:0}
#valor-escuela .value-heading h2{font-size:clamp(2rem,4.1vw,4.3rem)}
#valor-escuela .value-stage{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);width:calc(100% + 2*var(--pad));margin-left:calc(-1*var(--pad))}
#valor-escuela .value-project-photo{position:relative;overflow:hidden;isolation:isolate;min-height:480px;background:var(--ink)}
#valor-escuela .value-project-photo img{position:absolute;top:-6%;left:0;width:100%;height:112%;object-fit:cover;object-position:60% center}
#valor-escuela .value-project-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(0deg,#090c26e8,transparent);pointer-events:none}
#valor-escuela .value-project-photo figcaption{position:absolute;left:var(--pad);right:24px;bottom:30px;color:#fff;font-size:clamp(1.3rem,2vw,2rem);line-height:1.15;font-weight:700;z-index:1;max-width:22em}
#valor-escuela .value-benefits{display:flex;flex-direction:column;justify-content:center;gap:24px;max-width:none;margin:0;padding:32px var(--pad) 36px 36px}
#valor-escuela .value-benefits p{margin:0;padding:0;border:0;line-height:1.55;font-size:1rem}
#valor-escuela .value-benefits p+p{border-top:1px solid #090c2640;padding-top:20px}
#valor-escuela .value-benefits strong{font-size:1.25rem;line-height:1.3;margin-bottom:10px}

/* Inkfinity is shown in use in each format; the dossier product image stays intact. */
#libros .book-product-scene{margin-top:0;padding-top:0}
#libros .book-product-scene img{max-width:1100px}
#libros .book-product-scene figcaption{font-size:clamp(1.3rem,2vw,2rem);padding-top:20px;padding-bottom:0}
#libros .book-spread{display:grid;grid-template-columns:repeat(2,max-content);gap:18px;border-bottom:1px solid var(--line);margin-top:28px}
#libros .book-spread button{padding:0 18px 0 0;min-height:62px;border-bottom-width:3px}
#libros .book-tab-title{display:flex;align-items:center;gap:14px;padding:16px 0;margin:0}
#libros .book-tab-title strong{font-size:1.375rem;line-height:1.3}
#libros .book-tab-state{font-size:.8125rem;margin:0;color:#5d2bdd}
#libros .book-panel{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,4vw,55px);align-items:start;margin-top:28px}
#libros .book-mode-visual{position:relative;aspect-ratio:1.5;overflow:hidden;background:var(--ink);isolation:isolate}
#libros .book-mode-visual img{position:absolute;top:-6%;left:0;width:100%;height:112%;object-fit:cover;object-position:center}
#libros .book-mode-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#090c26d9,transparent);pointer-events:none}
#libros .book-mode-visual figcaption{position:absolute;left:24px;right:24px;bottom:22px;color:#fff;font-size:1.125rem;line-height:1.4;font-weight:700;z-index:1}
#libros .book-mode-detail{min-width:0}
#libros .book-mode-copy{margin:0}
#libros .book-mode-copy .eyebrow{font-size:.8125rem;margin-bottom:12px}
#libros .book-mode-copy h3{font-size:clamp(1.5rem,2.1vw,2.2rem);line-height:1.15;margin-bottom:16px}
#libros .book-mode-copy>p:not(.eyebrow){font-size:1rem;line-height:1.55;max-width:44ch}
#libros .book-learning-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 0;padding:0}
#libros .book-learning-path span{font-size:.75rem;line-height:1.4;letter-spacing:0}
#libros .book-learning-path strong{font-size:1rem;line-height:1.4}
#libros .book-mode-detail>.text-link{margin-top:16px}
#libros .book-identity-note{margin-top:26px;padding-top:20px}

/* A restrained product stage, with the actual dossier graphic at readable scale. */
#plataforma-epic .platform-map{padding:0;margin:0;border:0;overflow:visible;background:none;color:#fff}
#plataforma-epic .platform-stage{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:clamp(34px,4.5vw,70px);margin:0;min-height:0;perspective:1500px}
#plataforma-epic .platform-photo{min-width:0;margin:0;padding:10px 0 0;overflow:visible;aspect-ratio:auto}
#plataforma-epic .platform-product-link{display:block;line-height:0;text-decoration:none;transform-origin:center}
#plataforma-epic .platform-screen{position:relative;max-width:780px;isolation:isolate}
#plataforma-epic .platform-screen:before{content:"";position:absolute;inset:12px -10px -12px 10px;z-index:-1;border:1px solid #42dcd9b5;background:#7440f530;transform:rotate(1.6deg);pointer-events:none}
#plataforma-epic .platform-screen img{position:relative;inset:auto;width:100%;height:auto;max-width:100%;object-fit:contain;box-shadow:0 16px 45px #00000035}
#plataforma-epic .platform-focus{position:absolute;left:20.6%;top:16.8%;bottom:2.8%;width:18.2%;border:2px solid var(--cyan);border-radius:9px;box-shadow:0 0 0 2px #090c2640,0 0 15px #42dcd945;pointer-events:none;transition:left .35s ease}
#plataforma-epic [data-profile-focus="1"] .platform-focus{left:39.8%}
#plataforma-epic [data-profile-focus="2"] .platform-focus{left:59.1%}
#plataforma-epic [data-profile-focus="3"] .platform-focus{left:78.4%}
.no-motion #plataforma-epic .platform-focus{transition:none}
@media(prefers-reduced-motion:reduce){#plataforma-epic .platform-focus{transition:none}}
#plataforma-epic .platform-product-action{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;max-width:100%;background:var(--violet);font-size:.9375rem;line-height:1.4;padding:14px 18px;margin-top:26px}
#plataforma-epic .platform-product-action>span{font-size:1.35rem}
#plataforma-epic .platform-photo figcaption{position:static;font-size:.9375rem;line-height:1.5;padding:16px 0 0;color:#dcd7ed;max-width:44ch}
#plataforma-epic .platform-console{min-width:0}
#plataforma-epic .platform-map-word{font-family:EpicSans,Arial,sans-serif;font-size:1.5rem;line-height:1.2;letter-spacing:-.02em;color:var(--cyan);font-weight:700;margin:0}
#plataforma-epic .profile-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 24px;border:0}
#plataforma-epic .profile-tabs button{display:block;min-width:0;min-height:46px;padding:12px 15px;border:1px solid #7861ab;background:#161b37;border-radius:7px;color:#fff;font-size:1rem;line-height:1.35;text-align:center;font-weight:700}
#plataforma-epic .profile-tabs button[aria-selected="true"]{background:var(--cyan);border-color:var(--cyan);color:var(--ink)}
#plataforma-epic .profile-tabs button:hover:not([aria-selected="true"]){border-color:var(--cyan);background:#252041}
#plataforma-epic .profile-panel{display:block;min-height:0;margin:0}
#plataforma-epic .profile-identity{align-self:start}
#plataforma-epic .profile-identity h3{font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.17;margin-bottom:12px;max-width:none}
#plataforma-epic .profile-identity>p{font-size:1rem;line-height:1.55;max-width:44ch}
#plataforma-epic .profile-features{margin-top:20px}
#plataforma-epic .profile-features li{display:block;padding:12px 0;border-color:#65518b}
#plataforma-epic .profile-features h4{font-size:1rem;line-height:1.35;margin:0 0 6px}
#plataforma-epic .profile-features p{font-size:.9375rem;line-height:1.5;margin:0}
#plataforma-epic .platform-journey{margin-top:32px;padding:24px 28px;background:#1b1b40}
#plataforma-epic .platform-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:0 0 20px;padding:0}
#plataforma-epic .platform-flow li{border:0;padding:0}
#plataforma-epic .platform-flow span{font-size:.8125rem;margin-bottom:7px;color:var(--cyan);letter-spacing:.04em}
#plataforma-epic .platform-flow strong{font-size:1.125rem;line-height:1.35}
#plataforma-epic .platform-flow-line{height:3px;margin:0;background:#ffffff25}
#plataforma-epic .platform-flow-line>span{background:var(--cyan)}
#plataforma-epic .platform-bottom{margin-top:24px;padding-top:20px;align-items:start}

/* The after-class programme shows a project rather than another text-only block. */
#extended-day .extended-program{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,4vw,55px);margin-top:32px;align-items:start}
#extended-day .extended-project-photo{position:relative;aspect-ratio:1.5;min-width:0;overflow:hidden;background:var(--ink);isolation:isolate}
#extended-day .extended-project-photo img{position:absolute;top:-6%;left:0;width:100%;height:112%;object-fit:cover;object-position:center}
#extended-day .extended-project-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#090c26d9,transparent);pointer-events:none}
#extended-day .extended-project-photo figcaption{position:absolute;bottom:22px;left:24px;right:24px;z-index:1;color:#fff;font-size:1.125rem;line-height:1.4;font-weight:700}
#extended-day .extended-activities{display:flex;flex-direction:column;gap:20px;margin:0}
#extended-day .extended-activities article{border-top-width:2px;padding-top:16px}
#extended-day .extended-activities h3{font-size:1.375rem;line-height:1.25;margin-bottom:10px}
#extended-day .extended-activities p{font-size:1rem;line-height:1.55;margin:0}
#extended-day .extended-value{gap:36px;margin-top:28px;padding-top:24px}
#extended-day .extended-value p{margin:0}
#extended-day .extended-value strong{margin-bottom:10px}
#extended-day .extended-tail{display:flex;align-items:flex-start;gap:36px;margin-top:28px}
#extended-day .extended-details{flex:1;min-width:0;margin:0}
#extended-day .extended-contact{margin:6px 0 0;flex:0 1 19em;font-size:1rem;line-height:1.4}

/* The five implementation steps fill one shared sequence, without an orphan column. */
#implementacion{display:block}
#implementacion .implementation-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;margin:0}
#implementacion .implementation-steps li{display:block;min-width:0;padding:20px 0 0;border-top:2px solid var(--violet)}
#implementacion .implementation-steps li>span{display:block;margin-bottom:14px;font-size:1rem}
#implementacion .implementation-steps h3{font-size:1.25rem;line-height:1.25;margin-bottom:12px}
#implementacion .implementation-steps p{font-size:.9375rem;line-height:1.6}
#implementacion .implementation-summary{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:48px;margin-top:32px;padding-top:26px;border-top:1px solid var(--line);align-items:start}
#implementacion .investment-note{margin:0;padding:0;border:0;gap:18px}
#implementacion .investment-note h3{font-size:1.25rem;line-height:1.3}
#implementacion .alliance-trajectory{grid-column:auto;margin:0;padding:0;border:0}
#implementacion .alliance-trajectory .eyebrow{font-size:.8125rem;margin-bottom:16px}
#implementacion .alliance-trajectory ol{gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}
#implementacion .alliance-trajectory li>span{font-size:.75rem;margin-bottom:8px}
#implementacion .alliance-trajectory strong{font-size:1.25rem;line-height:1.35}
#implementacion .continuity-note{margin-top:18px;font-size:.875rem;line-height:1.5}
#modalidades .plan-panel{padding-top:28px;padding-bottom:28px;gap:clamp(28px,4vw,55px);align-items:start}

@media(max-width:960px){
 #valor-escuela .value-stage{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
 #libros .book-panel{grid-template-columns:1fr;gap:26px}
 #libros .book-mode-visual{aspect-ratio:1.65}
 #valor-escuela .value-benefits{padding:28px var(--pad) 30px 26px;gap:20px}
 #valor-escuela .value-project-photo{min-height:490px}
 #plataforma-epic .platform-stage{grid-template-columns:1fr;gap:30px}
 #plataforma-epic .platform-photo{max-width:650px;width:100%;margin:0 auto}
 #plataforma-epic .platform-console{max-width:none}
 #plataforma-epic .profile-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
 #plataforma-epic .profile-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 #plataforma-epic .profile-identity>p{max-width:70ch}
 #extended-day .extended-program{grid-template-columns:1fr;gap:26px}
 #extended-day .extended-project-photo{aspect-ratio:1.8}
 #implementacion .implementation-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
 #implementacion .implementation-summary{grid-template-columns:1fr;gap:26px}
}
@media(max-width:700px){
 #contenido .chapter-intro{margin-bottom:24px}
 #contenido .chapter-intro h2{font-size:clamp(1.9rem,7.8vw,3.3rem);line-height:1.08}
 #contenido .chapter-intro>p:not(.eyebrow){font-size:1.0625rem;margin-top:16px}
 #contenido .book-title h2{font-size:clamp(1.3rem,5.7vw,2.7rem);line-height:1.17;letter-spacing:-.035em}
 #valor-escuela .value-heading h2{font-size:clamp(1.9rem,7.8vw,3.3rem)}
 #valor-escuela .value-stage{display:block}
 #valor-escuela .value-project-photo{min-height:0;aspect-ratio:1.5}
 #valor-escuela .value-project-photo figcaption{font-size:1.2rem;bottom:22px}
 #valor-escuela .value-benefits{padding:28px var(--pad) 34px}
 #libros .book-spread{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}
 #libros .book-spread button{padding:0;min-height:54px}
 #libros .book-tab-title{display:block;padding:14px 0}
 #libros .book-tab-title strong{font-size:1.125rem}
 #libros .book-tab-state{display:none}
 #libros .book-panel{grid-template-columns:1fr;gap:24px;margin-top:24px}
 #libros .book-mode-visual{aspect-ratio:1.5}
 #libros .book-mode-visual figcaption,#extended-day .extended-project-photo figcaption{left:20px;right:20px;bottom:18px;font-size:1rem}
 #libros .book-learning-path{gap:14px;margin-top:20px}
 #libros .book-learning-path span{font-size:.6875rem}
 #libros .book-learning-path strong{font-size:.9375rem}
 #plataforma-epic .profile-tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}
 #plataforma-epic .profile-features{display:block}
 #plataforma-epic .platform-stage{gap:26px}
 #plataforma-epic .platform-product-action{display:flex;padding:14px 16px}
 #plataforma-epic .platform-map-word{font-size:1.375rem}
 #plataforma-epic .platform-journey{padding:22px 20px;margin-top:26px}
 #plataforma-epic .platform-flow{grid-template-columns:1fr;gap:20px}
 #plataforma-epic .platform-flow li+li{border-top:1px solid #65518b;padding-top:16px}
 #plataforma-epic .platform-bottom{display:block}
 #plataforma-epic .platform-bottom .text-link{margin-top:18px}
 #extended-day .extended-program{grid-template-columns:1fr;gap:24px;margin-top:26px}
 #extended-day .extended-project-photo{aspect-ratio:1.5}
 #extended-day .extended-activities{gap:20px}
 #extended-day .extended-value{grid-template-columns:1fr;gap:22px;margin-top:24px}
 #extended-day .extended-tail{display:block;margin-top:24px}
 #extended-day .extended-contact{margin-top:16px}
 #implementacion .implementation-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 #implementacion .implementation-steps li:last-child{grid-column:1/-1;max-width:none}
 #implementacion .implementation-summary{margin-top:26px;padding-top:24px}
 #implementacion .alliance-trajectory ol{gap:14px}
 #implementacion .alliance-trajectory strong{font-size:1.0625rem}
}
@media(max-width:480px){
 #libros .book-learning-path{grid-template-columns:1fr;gap:0}
 #libros .book-learning-path li{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:baseline;gap:16px;padding:12px 0}
 #libros .book-learning-path span{margin:0}
}
@media(max-width:380px){
 #implementacion .alliance-trajectory ol{grid-template-columns:1fr;gap:12px}
 #implementacion .alliance-trajectory li{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;align-items:baseline}
 #implementacion .alliance-trajectory li>span{margin:0}
}

/* Direct contact stays in the viewport, outside the scroll animation layers. */
.whatsapp-float{position:fixed;right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:50;display:grid;place-items:center;width:60px;height:60px;border:2px solid #fff;border-radius:50%;background:#128c4e;color:#fff;text-decoration:none;box-shadow:0 6px 24px #090c264d;transition:background-color .18s ease}
.whatsapp-float svg{display:block;width:32px;height:36px;pointer-events:none}
.whatsapp-float:hover{background:#0b7140}
.whatsapp-float:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 7px var(--ink),0 6px 24px #090c264d}
.whatsapp-float-label{position:absolute;right:calc(100% + 12px);padding:8px 14px;border:1px solid #ffffff40;border-radius:8px;background:var(--ink);color:#fff;font-size:.9375rem;line-height:1.4;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease}
.whatsapp-float:hover .whatsapp-float-label,.whatsapp-float:focus-visible .whatsapp-float-label{opacity:1;visibility:visible}
@media(max-width:700px){.whatsapp-float{right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;height:56px}.whatsapp-float svg{width:30px;height:34px}}
@media(hover:none){.whatsapp-float-label{display:none}}
@media(prefers-reduced-motion:reduce){.whatsapp-float,.whatsapp-float-label{transition:none}}
.no-motion .whatsapp-float,.no-motion .whatsapp-float-label{transition:none}

/* Laboratory equipment continues the photographic stage in one open band. */
.lab-equipment{margin-top:32px;scroll-margin-top:110px}
.lab-equipment>h3{max-width:38ch;font-size:clamp(1.4rem,2.1vw,2rem);line-height:1.25;letter-spacing:-.025em}
.lab-equipment-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;list-style:none;margin:24px 0 0;padding:0}
.lab-equipment-list li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:16px;min-width:0;border-top:2px solid #42dcd970;padding-top:20px}
.lab-equipment-icon{display:block;width:32px;height:32px;fill:none;stroke:var(--cyan);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lab-equipment-list h4{margin:0 0 10px;font-size:1.25rem;line-height:1.3;font-weight:700;color:#fff}
.lab-equipment-list p{margin:0;max-width:65ch;font-size:1rem;line-height:1.55;color:#e4e1f1}
.lab-equipment-note{margin-top:20px;font-size:.875rem;line-height:1.5;color:#d8d3e8}
@media(max-width:899px){.lab-equipment-list{grid-template-columns:1fr;gap:20px}.lab-equipment{margin-top:26px}}

/* The figure and a new project scene form one open Epic campaign. */
.school-impact{position:relative;isolation:isolate;overflow:clip;padding:0;background:var(--ink);color:#fff}
.impact-stage{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;min-height:clamp(360px,34vw,520px);padding:clamp(36px,4vw,64px) var(--pad)}
.impact-scene{position:absolute;inset:0 0 0 34%;overflow:hidden;background:#10142f}
.impact-scene img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:62% 48%;transform-origin:62% 48%}
.impact-scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ink) 0%,var(--ink) 32%,#090c26e6 40%,#090c2600 62%),linear-gradient(0deg,#090c26c4 0%,#090c2600 35%)}
.school-impact h2{position:relative;z-index:2;min-width:0;margin:0;font-family:EpicSans,Arial,sans-serif;letter-spacing:-.02em}
.impact-prefix{display:flex;align-items:center;gap:14px;font-size:1.125rem;font-weight:700;line-height:1.4;letter-spacing:0;color:#fff}
.impact-prefix:before{content:"";width:32px;height:3px;background:var(--cyan)}
.school-impact .impact-number{display:block;margin-top:-.1em;padding-bottom:.14em;font-family:EpicWide,EpicSans,sans-serif;font-size:clamp(3.25rem,9vw,9rem);font-weight:800;line-height:.75;letter-spacing:-.055em;white-space:nowrap;color:var(--cyan)}
.impact-statement{display:block;max-width:22ch;margin-top:12px;font-size:clamp(1.375rem,2.3vw,2.125rem);font-weight:700;line-height:1.25;color:#fff}
.impact-statement em{font-style:normal;color:var(--cyan)}
.impact-trace{position:absolute;z-index:1;right:0;bottom:0;width:74%;height:clamp(80px,12vw,170px);overflow:visible;pointer-events:none;fill:none;stroke:var(--cyan);stroke-width:2}
.impact-trace path{vector-effect:non-scaling-stroke}
.impact-invitation{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding:28px var(--pad) 32px;border-top:1px solid #42dcd950;border-bottom:1px solid #42dcd950;background:var(--ink)}
.school-impact .impact-question{max-width:30ch;margin:0;font-size:clamp(1.5rem,2.8vw,2.5rem);line-height:1.18;letter-spacing:-.025em}
.impact-question em{font-style:normal;color:var(--cyan)}
.impact-invitation .button{gap:24px;max-width:100%;min-height:56px}
@media(min-width:1600px){.impact-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}
@media(max-width:899px){.impact-stage{grid-template-columns:1fr;min-height:0;padding:32px var(--pad) 0;gap:28px}.school-impact h2{grid-row:1}.impact-scene{position:relative;grid-row:2;inset:auto;margin:0 calc(-1*var(--pad));aspect-ratio:3/2}.impact-scene img{object-position:62% 48%}.impact-scene-shade{display:none}.school-impact .impact-number{font-size:clamp(3.25rem,14.6vw,6.5rem)}.impact-statement{max-width:26ch;font-size:clamp(1.375rem,3.8vw,1.875rem);margin-top:10px}.impact-trace{width:100%;height:28%;bottom:0;stroke-width:1.5}.impact-invitation{grid-template-columns:1fr;gap:20px;padding-top:24px;padding-bottom:28px}.school-impact .impact-question{max-width:30ch;font-size:clamp(1.5rem,4.5vw,2rem)}.impact-invitation .button{justify-self:start}}
@media(prefers-reduced-motion:reduce){.impact-invitation .button{transition:none}}
.no-motion .impact-invitation .button{transition:none}
