.journey-world{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .6s}.journey-world canvas{width:100%;height:100%;display:block}.journey-ready .journey-world{opacity:1}.journey-ready .hero-visual>.poster{opacity:0}.journey-ready .hero-visual>.scene-shade{z-index:2;background:linear-gradient(90deg,#111820a6,transparent 85%),linear-gradient(0deg,#111820a3,transparent 55%)}
.journey-narrative{--journey-show:0;position:absolute;inset:0;z-index:4;pointer-events:none;opacity:var(--journey-show);visibility:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:90px 6% 65px;color:#fff}.journey-ready .journey-narrative{visibility:visible}.journey-narrative a{pointer-events:auto}.journey-chapters{position:absolute;right:6%;top:55px;display:flex;gap:28px;font-size:9px;letter-spacing:.1em;color:#ffffff80}.journey-chapters span{padding:10px 0;border-bottom:1px solid transparent}.journey-chapters .active{color:#fff;border-color:#b8cee8}.journey-caption{max-width:740px;text-shadow:0 2px 28px #07132155}.journey-caption .eyebrow{color:#d6e0eb}.journey-caption h2{font-size:clamp(45px,5.8vw,88px);margin:25px 0 20px;line-height:1.08}.journey-caption h2 em{color:#d2dce8}.journey-caption p{max-width:390px;font-size:13px;line-height:1.9;color:#e1e5e9}.journey-skip{position:absolute;right:6%;bottom:55px;padding:10px 0;font-size:10px;border-bottom:1px solid #ffffff50}.journey-end{max-width:390px;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s;margin-top:25px;visibility:hidden}.journey-end.shown{opacity:1;transform:none;visibility:visible}.journey-end a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff50;padding-top:18px;font-size:12px;gap:35px}.journey-end span{font-size:25px}.hero-content{position:relative;z-index:3}.journey-narrative[style*="--journey-show: 0;"] a{pointer-events:none}
@media(max-width:700px){.journey-ready .hero-visual>.scene-shade{background:linear-gradient(0deg,#111820e6,transparent 90%),linear-gradient(90deg,#11182066,transparent)}.journey-narrative{padding:130px 6% 95px}.journey-chapters{top:35px;left:6%;right:6%;gap:0;justify-content:space-between;font-size:8px}.journey-caption h2{font-size:47px;margin-top:20px}.journey-caption p{font-size:12px;max-width:300px}.journey-skip{left:6%;right:auto;bottom:32px}.journey-end{margin-top:20px}.journey-end a{font-size:11px}.journey-caption .eyebrow{font-size:8px}}
@media(prefers-reduced-motion:reduce){.journey-world,.journey-narrative{display:none}}
.hero .journey-world canvas{opacity:1}
.film-scroll-ready .hero-visual>.scene-shade{opacity:calc(1 - var(--journey-final,0));transition:none}
.journey-ready .hero-visual>.scene-shade{background:linear-gradient(180deg,#11182055,transparent 30%),linear-gradient(90deg,#111820a6,transparent 85%),linear-gradient(0deg,#111820a3,transparent 55%)}
@media(max-width:700px){.journey-ready .hero-visual>.scene-shade{background:linear-gradient(180deg,#11182080,transparent 35%),linear-gradient(0deg,#111820e6,transparent 90%),linear-gradient(90deg,#11182066,transparent)}}
.scene-reference .site-header,.scene-reference .hero-content,.scene-reference .journey-narrative,.scene-reference .scroll-progress,.scene-reference .back-to-top{display:none!important}.scene-reference .hero{height:100svh;min-height:0;max-height:none}.scene-reference .hero-visual>.scene-shade{display:none!important}
.manifesto .poster,.manifesto .scene-visual video{object-position:right center;transform:none;filter:none;opacity:1}
.manifesto .scene-shade{background:linear-gradient(0deg,rgba(15,18,23,.64),transparent 45%),linear-gradient(90deg,rgba(15,18,23,.78),rgba(15,18,23,.24) 52%,rgba(15,18,23,.02) 78%)}
@media(max-width:700px){.manifesto .scene-visual{background:#191715}.manifesto .poster,.manifesto .scene-visual video{width:170%;height:auto;aspect-ratio:16/9;left:-70%;top:43%;object-position:right center}.manifesto .scene-shade{background:linear-gradient(180deg,#191715 15%,#191715b0 43%,#19171520 70%,#19171599)}.manifesto-type{margin-top:70px}.manifesto-bottom{margin-top:180px}}

/* Lighter home-video overlay; keep the existing fade at the final close-up. */
.hero .hero-visual>.scene-shade{opacity:.65}
.hero.film-scroll-ready .hero-visual>.scene-shade{opacity:calc(.65 * (1 - var(--journey-final,0)))}
