@font-face{font-family:Inter;src:url('fonts/inter-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-latin-700-normal.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-latin-600-italic.woff2') format('woff2');font-style:italic;font-weight:600;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-latin-700-italic.woff2') format('woff2');font-style:italic;font-weight:700;font-display:swap}
:root{--ink:#0F1010;--paper:#D8DADB;--muted:#787C7C;--earth:#7E5B47;--copper:#B98A6B;--title-size:clamp(2rem,3.15vw,2.75rem);--body-size:clamp(1.0625rem,1.25vw,1.125rem);--copy-width:32rem;--gutter:7vw;color-scheme:dark;font-family:Inter,Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0;background:var(--ink);scrollbar-color:var(--earth) var(--ink)}
body{margin:0;color:var(--paper);background:var(--ink);overflow-x:clip}
p,h1,h2{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--copper);outline-offset:6px}
::selection{background:var(--copper);color:var(--ink)}
.skip{position:fixed;z-index:100;left:1rem;top:-5rem;background:var(--paper);color:var(--ink);padding:1rem}.skip:focus{top:1rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.header{position:fixed;z-index:30;top:0;inset-inline:0;padding:2rem 4.5vw;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.header a{pointer-events:auto}.header .brand,.header nav{text-shadow:0 2px 12px rgba(15,16,16,.8)}
.brand{font-size:clamp(1.25rem,1.75vw,1.75rem);font-weight:600;letter-spacing:-.035em;line-height:1.1}
.brand span{display:block;margin-top:.5rem;font-size:.78rem;font-weight:400;letter-spacing:0}
.header nav{display:flex;align-items:center;gap:2.8rem;font-size:.94rem}
.nav-cta{display:flex;gap:1rem;align-items:center;position:relative;padding:.4rem 0}
.nav-cta:after{content:'';position:absolute;height:1px;background:var(--paper);bottom:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.nav-cta:hover:after{transform:scaleX(1)}
#cinema{display:none;position:fixed;inset:0;z-index:0;background:var(--ink);overflow:hidden;pointer-events:none}.enhanced #cinema{display:block}
#fallback-scene,#world-canvas{position:absolute;inset:0;width:100%;height:100%}
#world-canvas{opacity:0;transition:opacity .3s}#cinema.webgl-ready #world-canvas{opacity:1}
#fallback-scene img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:60% 50%;will-change:transform,opacity;animation:breathe 17s ease-in-out infinite alternate}
@keyframes breathe{from{scale:1}to{scale:1.009}}
#fallback-b{opacity:0}#fallback-scene #fallback-passage{display:none;inset:auto;top:50%;object-fit:fill;transform:translate(-50%,-50%);z-index:2}
#fallback-scene #fallback-portrait{display:none}
.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,16,16,.28),transparent 78%),linear-gradient(180deg,rgba(15,16,16,.2),transparent 45%,rgba(15,16,16,.5));opacity:calc(1 - var(--room-entry,0))}
.scene-occluder{display:none}
main{position:relative;z-index:1}.chapter{position:relative;min-height:100svh}
.stage{position:relative;min-height:100svh;display:flex;align-items:center;padding:8rem var(--gutter);isolation:isolate;overflow:clip}
.reading-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.55}
.stage:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,16,16,.74),rgba(15,16,16,.1)),linear-gradient(transparent 55%,var(--ink))}
.copy{width:100%;min-width:0;max-width:var(--copy-width);position:relative}
.copy h1,.copy h2,.body-copy{width:100%;max-width:none}
.copy h1{font-size:clamp(2rem,3.65vw,3.25rem);line-height:1.1;letter-spacing:-.035em;font-weight:400;margin-bottom:1.5rem}
.copy h2,.faq-intro h2{font-size:var(--title-size);line-height:1.12;letter-spacing:-.03em;font-weight:400;margin-bottom:1.5rem}
.copy h1,.copy h2,.faq-intro h2{text-wrap:balance}
.reading-line{display:block}.compound{white-space:nowrap}
.copy h1 strong{font-weight:700}.copy h2 strong,.faq-intro h2 strong{font-weight:600}
.copy h2 strong{white-space:nowrap}
.copy h1 strong,.copy h2 strong,.faq-intro h2 strong{color:var(--copper);font-style:italic}
.body-copy{font-size:var(--body-size);line-height:1.6;letter-spacing:0;text-wrap:pretty;hyphens:none}
.body-copy p+p{margin-top:.8em}
.story-start{display:inline-flex;margin-top:1.75rem;gap:1.25rem;font-size:.875rem;align-items:center}.story-start span{font-size:1.2rem}
.chapter-1 .stage{justify-content:flex-end}
.chapter-2 .stage{justify-content:center}.chapter-2 .copy{text-align:center}
.chapter-4 .copy,.chapter-5 .copy,.chapter-6 .copy{width:min(43vw,var(--copy-width))}
.chapter-4 .reading-image,.chapter-5 .reading-image,.chapter-6 .reading-image{left:auto;right:0;width:66%;object-fit:cover;object-position:80% center}
.chapter-4 .stage:before,.chapter-5 .stage:before,.chapter-6 .stage:before{background:linear-gradient(90deg,var(--ink),rgba(15,16,16,.85) 35%,transparent 85%)}
.credentials{color:var(--copper);font-size:.875rem;line-height:1.7;margin-top:1.35rem}.credentials strong{color:var(--paper);font-weight:600}
.session-facts{list-style:none;display:flex;flex-wrap:wrap;gap:1.35rem;padding:0;margin:1.5rem 0 0;color:var(--copper);font-size:.9375rem}
.session-facts li{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.session-facts svg{width:1.2rem;height:1.2rem;flex:none}
.cta{display:inline-flex;inline-size:max-content;max-inline-size:100%;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.25rem;border-radius:100px;color:var(--ink);background:var(--paper);font-size:1rem;font-weight:500;line-height:1.4;transition:background .2s,transform .2s}
.cta>span:last-child{flex:none;font-size:1.1em}.cta:hover{background:white;transform:translateY(-2px)}.cta:active{transform:scale(.98)}
.chapter-6 .cta{margin-top:1.5rem}.contact-note{font-size:.8125rem;line-height:1.5;margin-top:.75rem}
.faq-link{display:inline-flex;gap:1rem;margin-top:1.4rem;font-size:.875rem;line-height:1.5}
.enhanced .chapter{height:180svh;min-height:0}.enhanced .chapter-0{height:175svh}.enhanced .chapter-2{height:170svh}.enhanced .chapter-5{height:150svh}.enhanced .chapter-6{height:125svh}
.enhanced .stage{position:sticky;top:0;height:100svh;min-height:0;overflow:visible}.enhanced .reading-image,.enhanced .stage:before{display:none}
.enhanced .chapter.flow{height:auto;min-height:100svh}.enhanced .chapter.flow .stage{height:auto;min-height:100svh;position:relative;overflow:visible}
.portrait-room{position:absolute;inset:0;visibility:hidden;pointer-events:none;isolation:isolate}
.portrait-room:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.76) 6.5%,transparent 22%)}
.portrait-room:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7) 5%,transparent 70%)}
.portrait-room video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:80% 50%}
.room-passage{position:absolute;top:50%;transform:translate(-50%,-50%);display:none;object-fit:fill}
#cinema.webgl-ready .portrait-room,#cinema.webgl-ready .room-passage{display:none}
.faq-shade{position:absolute;inset:0;background:var(--ink);opacity:0;z-index:5;pointer-events:none}
.experience-controls{display:none;position:fixed;z-index:40;bottom:1.3rem;left:4.5vw;right:4.5vw;justify-content:space-between;align-items:center;pointer-events:none}
.enhanced .experience-controls{display:flex}.experience-controls button{pointer-events:auto;font-size:.8125rem;min-width:44px;min-height:44px;padding:.65rem 0}
.preferences,.progress-tools{display:flex;align-items:center;gap:1.5rem}.progress-tools{gap:1.1rem}.progress-tools>span{font-size:.75rem;font-variant-numeric:tabular-nums;letter-spacing:.08em}
#next{display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid rgba(216,218,219,.45);border-radius:50%;font-size:1.2rem}
#sound{display:flex;align-items:center;gap:.65rem}.sound-icon{display:flex;align-items:center;gap:3px;height:16px}
.sound-icon i{width:2px;height:7px;background:var(--paper)}.sound-icon i:nth-child(2){height:13px}.sound-icon i:nth-child(3){height:10px}
[aria-pressed=true] .sound-icon i{animation:meter .95s ease-in-out infinite alternate}[aria-pressed=true] .sound-icon i:nth-child(2){animation-delay:-.7s}[aria-pressed=true] .sound-icon i:nth-child(3){animation-delay:-.3s}
@keyframes meter{from{transform:scaleY(.4)}to{transform:scaleY(1)}}
.reading-progress{position:fixed;z-index:45;left:0;bottom:0;width:100%;height:2px;pointer-events:none}.reading-progress i{height:100%;display:block;background:var(--copper);transform:scaleX(0);transform-origin:left}
.faq-section{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1.4fr;align-content:start;gap:6vw;padding:8rem 8vw 4rem}
.faq-intro h2{font-size:clamp(1.625rem,2.4vw,2.25rem);line-height:1.2;margin-bottom:0}
.faq-intro>p{font-size:1rem;line-height:1.6;max-width:24rem}.faq-intro .cta{margin-top:1.5rem}
.faq-list details{border-top:1px solid rgba(216,218,219,.25);padding:1.5rem 0}.faq-list details:last-child{border-bottom:1px solid rgba(216,218,219,.25)}
.faq-list summary{list-style:none;display:flex;gap:1.25rem;align-items:center;justify-content:space-between;cursor:pointer;font-size:1.0625rem;line-height:1.5;font-weight:500}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:1.4rem;font-weight:400;color:var(--copper)}.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{font-size:1rem;line-height:1.7;max-width:38rem;padding:1rem 2rem 0 0}
.footer{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1.4fr;align-items:start;gap:9vw;padding:3rem 8vw 7rem;font-size:.83rem}
.footer p{line-height:1.7}.footer-identity .brand{display:inline-block}.footer-identity>p{margin-top:1.2rem}.back-top{display:inline-flex;align-items:center;gap:1rem;margin-top:1.8rem}
.footer-safety{max-width:38rem;font-size:.875rem;line-height:1.7}.footer-safety .safety-title{font-size:1rem;font-weight:500;margin-bottom:.85rem}
.footer-safety p a{text-decoration:underline;text-underline-offset:.22em;text-decoration-color:var(--copper)}
.safety-source{display:inline-block;color:var(--copper);font-size:.8rem;margin-top:.9rem;line-height:1.6}
.in-faq .progress-tools{display:none}.in-faq .experience-controls{background:linear-gradient(transparent,var(--ink) 70%);bottom:0;left:0;right:0;padding:1.5rem 4.5vw 1rem}
@media(max-width:1100px) and (min-width:901px){.chapter-4 .copy,.chapter-5 .copy,.chapter-6 .copy{width:min(45vw,var(--copy-width))}}
@media(max-width:900px){
 :root{--title-size:clamp(1.75rem,7.7vw,2.25rem);--body-size:1rem;--gutter:6vw}
 .header{padding:1.5rem 6vw}.brand{font-size:1.25rem}.brand span{font-size:.6875rem;margin-top:.4rem}
 .header nav{gap:0;font-size:.8125rem}.header nav>a:first-child{display:none}.nav-cta{gap:.65rem}
 .stage{padding:7rem var(--gutter);justify-content:center}
 .copy h1{font-size:clamp(2rem,8.2vw,2.625rem);margin-bottom:1.25rem}
 .copy h2{line-height:1.14;margin-bottom:1.25rem}.body-copy{line-height:1.6}.body-copy p+p{margin-top:.8em}
 .chapter-4 .stage,.chapter-5 .stage,.chapter-6 .stage{padding:42svh var(--gutter) 6rem;align-items:flex-start;justify-content:center}
 .chapter-4 .copy,.chapter-5 .copy,.chapter-6 .copy{width:100%}
 .portrait-room:after{background:linear-gradient(0deg,rgba(0,0,0,.64) 38%,transparent 85%)}
 .credentials{font-size:.875rem;margin-top:1.25rem}
 .experience-controls{bottom:0;left:0;right:0;padding:.75rem 6vw .5rem;background:linear-gradient(transparent,rgba(15,16,16,.85) 90%)}
 .preferences{gap:1rem}.progress-tools{gap:.65rem}.experience-controls button{font-size:.75rem}.progress-tools>span{font-size:.6875rem}
 .session-facts{gap:1.2rem;font-size:.875rem}.session-facts li{gap:.45rem}.session-facts svg{width:1.1rem;height:1.1rem}
 .chapter-4 .reading-image,.chapter-5 .reading-image,.chapter-6 .reading-image{width:100%;height:100%;object-position:80% 50%}
 .chapter-4 .stage:before,.chapter-5 .stage:before,.chapter-6 .stage:before{background:linear-gradient(0deg,rgba(0,0,0,.64) 38%,transparent 85%)}
 .faq-section{padding:6rem 6vw 3rem;gap:1.5rem}.footer{padding-inline:6vw}
}
@media(max-width:700px){
 .faq-section{grid-template-columns:1fr}.faq-intro .cta{margin-top:1rem}.faq-list details{padding:1.3rem 0}
 .faq-list summary{font-size:1rem}.footer{grid-template-columns:1fr;gap:2.5rem;padding-top:1.5rem;font-size:.8125rem}
}
@media(max-width:360px){:root{--title-size:1.75rem}.brand{font-size:1.15rem}.header nav{font-size:.75rem}.preferences{gap:.75rem}.session-facts{gap:.85rem}}
@media(max-height:700px) and (min-width:901px){.stage{padding-block:6rem}:root{--title-size:clamp(2rem,3.15vw,2.5rem);--body-size:1rem}.body-copy{line-height:1.5}}
.motion-reduced .chapter{height:auto;min-height:100svh}.motion-reduced .stage{position:relative;min-height:100svh;height:auto}
.motion-reduced .reading-image,.motion-reduced .stage:before{display:block}.motion-reduced #cinema{visibility:hidden}.motion-reduced .sound-icon i{animation:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.enhanced .chapter{height:auto;min-height:100svh}.enhanced .stage{position:relative;min-height:100svh;height:auto}.enhanced .reading-image,.enhanced .stage:before{display:block}.enhanced #cinema{display:none}}
