/* Final creative pass: real classroom imagery and acceptance letters carry the depth. */
html.opening-pending{overflow:hidden}
#opening-scene{display:none;position:fixed;inset:0;z-index:100;background:#10271f;color:#f3f5e9;overflow:hidden;isolation:isolate}
.opening-pending #opening-scene{display:block}
#opening-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.opening-shade{position:absolute;inset:0;background:linear-gradient(90deg,#10271fe8 0%,#10271f50 53%,#10271f10 100%);pointer-events:none;transition:opacity .8s}
.opening-kicker{position:absolute;top:clamp(30px,6vh,72px);left:clamp(24px,6vw,110px);font:700 11px Arial,sans-serif;letter-spacing:.25em;color:#dce8bf}
.opening-question{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);text-align:center;display:grid;justify-items:center;gap:6px;transition:opacity .45s,transform .9s;white-space:nowrap}
.opening-question small{font:600 clamp(18px,2vw,28px) var(--serif);letter-spacing:.12em}
.opening-question strong{font:400 clamp(150px,29vw,430px)/.8 var(--serif);color:var(--lime);text-shadow:0 0 80px #e8f3b266}
.opening-question span{font:500 clamp(12px,1.2vw,17px) var(--serif);letter-spacing:.1em}
.opening-words{position:absolute;inset:0;pointer-events:none;font:700 clamp(10px,1.15vw,16px) Arial,sans-serif;letter-spacing:.24em;color:#eef6d3b3}
.opening-words span{position:absolute;opacity:0;transform:translate3d(0,35px,0) scale(.7);filter:blur(8px);transition:opacity .55s,transform .85s,filter .85s}
.opening-words span:nth-child(1){top:18%;left:14%}.opening-words span:nth-child(2){top:34%;right:12%}.opening-words span:nth-child(3){bottom:22%;left:17%}.opening-words span:nth-child(4){bottom:13%;right:15%}
.opening-pending.phase-thinking .opening-words span{opacity:.85;transform:none;filter:none}
.opening-pending.phase-thinking .opening-question{transform:translate(-50%,-50%) scale(.75);opacity:.7}
.opening-pair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(88vw,920px);display:flex;align-items:center;justify-content:space-between;gap:24px;opacity:0;transition:opacity .65s,transform .8s;pointer-events:none}
.opening-pair span{font:700 clamp(10px,1.1vw,15px) Arial,sans-serif;letter-spacing:.18em;padding:20px;border-top:1px solid #dce8bf7a;min-width:25%}
.opening-pair span:last-child{text-align:right}.opening-pair b{font:800 clamp(65px,12vw,165px)/1 Arial,sans-serif;letter-spacing:-.13em;color:var(--lime)}
.opening-pending.phase-dialogue .opening-question{opacity:0;transform:translate(-50%,-50%) scale(1.5)}
.opening-pending.phase-dialogue .opening-pair{opacity:1;transform:translate(-50%,-50%) scale(1.03)}
.opening-pending.phase-dialogue .opening-words span{opacity:.23;filter:blur(3px)}
.opening-finale{position:absolute;left:clamp(24px,6vw,110px);top:37%;opacity:0;transform:translateY(40px);transition:opacity .7s,transform .8s;display:grid;font-weight:800;font-size:clamp(55px,7vw,112px);line-height:1.25;letter-spacing:-.09em;text-shadow:0 8px 30px #0b21198a}
.opening-finale strong{color:var(--lime);font-family:var(--serif)}
.opening-pending.phase-breakthrough .opening-question,.opening-pending.phase-breakthrough .opening-pair,.opening-pending.phase-breakthrough .opening-words{opacity:0}
.opening-pending.phase-breakthrough .opening-finale{opacity:1;transform:none}
.opening-pending.phase-breakthrough .opening-shade{opacity:1}
.opening-bottom{position:absolute;bottom:clamp(24px,5vh,52px);left:clamp(24px,6vw,110px);right:clamp(24px,6vw,110px);display:flex;align-items:center;justify-content:space-between;gap:15px;font:700 10px Arial,sans-serif;letter-spacing:.2em}
.opening-bottom button{border:1px solid #e7f1d37a;background:#10271f66;color:#f2f6df;padding:11px 15px;cursor:pointer;font:700 11px var(--sans);letter-spacing:.04em}
.opening-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#d8e8ae30}.opening-progress span{display:block;width:0;height:100%;background:var(--lime)}
.opening-pending.opening-leave #opening-scene{opacity:0;transition:opacity .5s;pointer-events:none}
.hero{position:relative;grid-template-columns:49% 51%;isolation:isolate}.hero-copy{z-index:2;padding-top:clamp(60px,8vh,110px);padding-bottom:30px;background:linear-gradient(90deg,var(--deep) 88%,#10271fee);overflow:visible}.hero h1{font-size:clamp(60px,6.35vw,110px);line-height:1.13;text-shadow:0 5px 25px #0c20198c}.hero-small{margin-top:30px}.hero-image{min-height:min(780px,calc(100svh - 102px));background:#1d372c}.hero-image>img{filter:saturate(.86) contrast(1.04);object-position:30% center}.hero-image:after{background:linear-gradient(90deg,#10271f8c,transparent 22%),linear-gradient(0deg,#10271fb8,transparent 52%)}.hero-light{position:absolute;z-index:2;top:0;bottom:0;left:0;width:2px;background:linear-gradient(180deg,transparent 2%,var(--lime) 47%,transparent 90%);box-shadow:0 0 22px 5px #e8f5ba8c;pointer-events:none}
.hero-index button{background:transparent;border:0;color:inherit;padding:0;font:inherit;letter-spacing:inherit;cursor:pointer}.hero-index button:hover{color:var(--lime)}
.manifesto{position:relative}.dialogue-feature{position:relative;perspective:1100px;overflow:hidden}.dialogue-feature figure img{transition:transform .9s;transform:scale(calc(1.06 - var(--dialogue-progress,0)*.06))}.dialogue-feature-copy{position:relative;z-index:1}.dialogue-number{transform:translate3d(calc((1 - var(--dialogue-progress,0))*-15px),0,0);transition:transform .1s}.dialogue-pair{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;transform-style:preserve-3d}.dialogue-pair span{font:700 9px Arial,sans-serif;letter-spacing:.11em;color:#4b6554;max-width:39%;border-top:1px solid #8da68a;padding-top:10px;transform:translate3d(calc((1 - var(--dialogue-progress,0))*-30px),0,calc((1 - var(--dialogue-progress,0))*-55px)) rotateY(10deg)}.dialogue-pair span:last-child{text-align:right;transform:translate3d(calc((1 - var(--dialogue-progress,0))*30px),0,calc((1 - var(--dialogue-progress,0))*-55px)) rotateY(-10deg)}.dialogue-pair i{font:600 13px var(--serif);color:var(--forest);white-space:nowrap;opacity:var(--dialogue-progress,0)}.dialogue-prompt{margin-top:20px}
.results{overflow:visible}.proof-journey{height:390svh;position:relative;background:#10271f}.proof-stage{position:sticky;top:76px;height:calc(100svh - 76px);min-height:540px;padding:0;display:block;background:radial-gradient(ellipse at 50% 42%,#355641 0,#10271f 65%);overflow:hidden}.proof-stage:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10271f96,transparent 20%,transparent 80%,#10271f96);z-index:1;pointer-events:none}#proof-canvas{display:none;position:absolute;inset:0;width:100%;height:100%;z-index:0}.proof-ready #proof-canvas{display:block}.proof-ready .proof-rail{visibility:hidden;pointer-events:none}.proof-ready .proof-stage-label strong{font-size:clamp(80px,12vw,190px);opacity:.38}.proof-stage-label{z-index:3;top:23px}.proof-focus{display:none;position:absolute;z-index:3;left:clamp(24px,6vw,110px);bottom:clamp(45px,8vh,100px);padding:17px 28px 17px 0;border-top:1px solid #dce9ba90;color:white;pointer-events:none;min-width:280px;text-shadow:0 3px 15px #06150e}.proof-ready .proof-focus{display:grid;gap:5px}.proof-focus span{font:700 10px Arial,sans-serif;letter-spacing:.18em;color:var(--lime)}.proof-focus strong{font:700 clamp(24px,2.8vw,42px)/1.4 var(--serif)}.proof-focus small{font-size:11px;color:#d4e0d4}.proof-progress{display:none;position:absolute;z-index:3;bottom:0;left:0;right:0;height:4px;background:#e4f1bd2a}.proof-ready .proof-progress{display:block}.proof-progress span{display:block;background:var(--lime);height:100%;width:0}.proof-rail{min-height:650px}.results-footer{position:relative;z-index:2;background:#10271f}
.reviews{position:relative;overflow:hidden}.review-themes article{transform:translate3d(0,35px,0);opacity:.35;filter:blur(2px);transition:opacity .8s,transform .8s,filter .8s}.review-themes article.voice-in{transform:none;opacity:1;filter:none}.rating{transform:translate3d(0,20px,0);transition:transform .9s}.reviews.voice-active .rating{transform:none}.reviews:before{content:'';position:absolute;width:min(43vw,620px);height:min(43vw,620px);right:-20%;top:-25%;background:radial-gradient(circle,#cfdcbd80,transparent 68%);pointer-events:none}
.rating span{font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--forest)}.rating small{font-weight:400;letter-spacing:0}
.film{position:relative;display:block;min-height:max(760px,100svh);isolation:isolate;background:#10271f}.film-visual{position:absolute;inset:0;min-height:0;z-index:-1}.film-visual img{object-position:center 44%;filter:saturate(.72) contrast(1.08);transform:scale(1.05);transition:transform .8s}.film.film-active .film-visual img{transform:scale(1)}.film-visual:after{background:linear-gradient(90deg,#0b211af0 0%,#0b211aa0 41%,#0b211a44 75%),linear-gradient(0deg,#06160fb0,transparent 50%)}.film-curtain{position:absolute;inset:0;background:#10271f;z-index:2;transform:translateY(calc((1 - var(--film-progress,0))*100%));pointer-events:none;opacity:.8}.film-copy{position:relative;z-index:2;max-width:800px;padding:clamp(95px,13vh,160px) clamp(24px,6vw,110px) 90px}.film h2{font-size:clamp(47px,5.4vw,82px);line-height:1.32;text-shadow:0 6px 26px #06150e}.film-copy>p:not(.section-eyebrow){font-size:15px}.film-play{background:#e5f2bb;color:#10271f;border:0;min-width:300px;padding:15px 20px;box-shadow:0 15px 45px #061a1380}.film-play:hover{background:#f4fbd2}.film-visual span{z-index:3;right:clamp(24px,5vw,90px);left:auto}
.teachers{position:relative}.teacher-feature figure img{transform:scale(1.04);transition:transform .9s}.teachers .teacher-feature:hover figure img{transform:scale(1)}.course-list a:hover strong{color:var(--forest)}
.footer-top img{height:auto}
@media(max-width:760px){
  .opening-kicker{font-size:8px;top:30px}.opening-question strong{font-size:45vw}.opening-question small{font-size:18px}.opening-question span{font-size:12px}.opening-words span:nth-child(1){top:21%;left:8%}.opening-words span:nth-child(2){top:33%;right:6%}.opening-words span:nth-child(3){bottom:20%;left:8%}.opening-words span:nth-child(4){bottom:11%;right:7%}.opening-words{font-size:9px}.opening-pair{width:92vw;gap:5px}.opening-pair span{font-size:8px;padding:10px 2px}.opening-pair b{font-size:17vw}.opening-finale{top:39%;font-size:clamp(48px,13vw,65px)}.opening-bottom{font-size:8px;bottom:25px}.opening-bottom button{font-size:10px}
  .hero{display:flex;flex-direction:column}.hero-copy{min-height:620px;padding:48px 24px 24px;background:var(--deep)}.hero h1{font-size:clamp(51px,13vw,64px);line-height:1.22}.hero-small{margin-top:46px}.hero-image{min-height:420px}.hero-light{height:2px;width:100%;bottom:auto;top:0;background:linear-gradient(90deg,transparent,var(--lime),transparent)}
  .dialogue-feature figure{min-height:370px}.dialogue-feature-copy{padding-top:28px}.dialogue-pair span{font-size:10px;line-height:1.5}.dialogue-pair i{font-size:17px;font-style:normal}.dialogue-number{font-size:105px}
  .proof-journey{height:440svh}.proof-stage{top:67px;height:calc(100svh - 67px);min-height:0}.proof-stage-label{top:20px}.proof-ready .proof-stage-label strong{font-size:55px}.proof-focus{left:24px;bottom:50px;right:24px;min-width:0;padding-top:10px}.proof-focus strong{font-size:24px}.proof-focus small{font-size:10px}.proof-rail{min-height:0}.proof-ready .proof-rail{display:none}
  .review-themes article{opacity:1;filter:none;transform:none}.reviews:before{display:none}
  .film{min-height:780px}.film-copy{padding:65px 24px 75px;max-width:none}.film-visual{order:initial}.film-visual img{object-position:34% center}.film-visual:after{background:linear-gradient(180deg,#10271f85 0%,#10271fed 50%,#10271ff0 100%)}.film-visual span{left:24px;right:auto;bottom:22px}.film h2{font-size:clamp(36px,9.3vw,47px);line-height:1.42}.film-play{min-width:min(100%,310px)}.film-chapters{margin-top:35px}
}
@media(max-width:390px){.hero h1{font-size:51px}.hero-copy{min-height:600px}.film h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){#opening-scene{display:none!important}.hero-index button{display:none}.proof-journey{height:auto}.proof-stage{position:relative;top:auto;height:auto;min-height:650px}.proof-ready #proof-canvas{display:none}.proof-ready .proof-rail{display:flex;visibility:visible;pointer-events:auto}.proof-ready .proof-focus,.proof-ready .proof-progress{display:none}.review-themes article{transform:none;opacity:1;filter:none}.film-curtain{display:none}}
