:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{background:#000;margin:0;padding:0;font-family:Jost,Futura,system-ui,sans-serif;overflow-x:clip}#root{position:relative}:root{--black:#000;--ivory:#ece6d6;--stone:#9a9383;--gold:#b8975a;--gold-soft:#b8975a59;--burgundy:#6e1423;--rule:#ece6d62e;--font-display:"Bodoni Moda", "Didot", "Bodoni MT", serif;--font-text:"Jost", "Futura", system-ui, sans-serif;--gutter:clamp(1.25rem, 4vw, 3.5rem)}a:focus-visible{outline:1px solid var(--gold);outline-offset:4px}.topnav{z-index:50;padding:1.5rem var(--gutter);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.topnav>*{pointer-events:auto}.brand{color:var(--ivory);align-items:baseline;gap:.6rem;text-decoration:none;display:flex}.brand-mark{font-family:var(--font-display);color:var(--gold);font-size:1.5rem;font-style:italic;font-weight:500}.brand-name{font-family:var(--font-text);letter-spacing:.32em;text-transform:uppercase;font-size:.8rem;font-weight:400}.nav-link{font-family:var(--font-text);letter-spacing:.06em;color:var(--ivory);border-bottom:1px solid var(--gold-soft);padding-bottom:.2rem;font-size:.85rem;text-decoration:none;transition:border-color .25s,color .25s}.nav-link:hover{color:var(--gold);border-color:var(--gold)}.scroll-track{position:relative}.stage-sticky{--finale:0;background:var(--black);width:100%;height:100svh;position:sticky;top:0;overflow:hidden}.stage{position:absolute;inset:0;overflow:hidden}.stage-layer{object-fit:cover;will-change:opacity, transform;width:100%;height:100%;position:absolute;inset:0}.stage-vignette{pointer-events:none;background:linear-gradient(#0000 44%,#0000008c 74%,#000 100%),linear-gradient(#000000b3 0%,#0000 24%);position:absolute;inset:0}.stage-scrim{pointer-events:none;opacity:calc(var(--finale) * .62);background:#000;position:absolute;inset:0}.overlay{pointer-events:none;padding:0 var(--gutter) clamp(2.5rem, 7vh, 5rem);color:var(--ivory);opacity:clamp(0, calc(1 - var(--finale) * 2), 1);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.overlay-text{max-width:44rem;animation:.9s both settle}.chapter{font-family:var(--font-display);color:var(--gold);margin-bottom:.9rem;font-size:1.05rem;font-style:italic}.overlay-text h1{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 .9rem;font-size:clamp(2.9rem,8.5vw,7rem);font-weight:400;line-height:.95}.overlay-text p{max-width:30rem;font-family:var(--font-text);color:var(--stone);margin:0;font-size:1.1rem;font-weight:300;line-height:1.5}.specs{border-top:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));margin:2.2rem 0 0;display:grid}.spec{padding:1rem 1.25rem 0 0}.spec+.spec{border-left:1px solid var(--rule);padding-left:1.25rem}.spec dt{font-family:var(--font-text);letter-spacing:.04em;color:var(--stone);font-size:.8rem;font-weight:400}.spec dd{font-family:var(--font-display);font-variant-numeric:lining-nums;color:var(--ivory);margin:.35rem 0 0;font-size:clamp(1.15rem,2.4vw,1.7rem);font-weight:400;line-height:1.1}.scroll-hint{right:var(--gutter);font-family:var(--font-display);color:var(--stone);font-size:1rem;font-style:italic;position:absolute;bottom:clamp(2.5rem,7vh,5rem)}@keyframes settle{0%{opacity:0}to{opacity:1}}.rail{right:var(--gutter);opacity:clamp(0, calc(1 - var(--finale) * 2), 1);flex-direction:column;align-items:flex-end;gap:.85rem;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.rail-item{align-items:center;gap:.6rem;display:flex}.rail-index{font-family:var(--font-display);color:#ece6d661;font-size:.85rem;transition:color .4s}.rail-tick{background:var(--rule);width:.9rem;height:1px;transition:background .4s,width .4s}.rail-item.active .rail-index{color:var(--gold)}.rail-item.active .rail-tick{background:var(--gold);width:2.2rem}.finale{text-align:center;padding:0 var(--gutter);color:var(--ivory);opacity:clamp(0, calc(var(--finale) * 2 - 1), 1);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.is-finale .finale{pointer-events:auto}.finale-mark{font-family:var(--font-display);color:var(--gold);border-bottom:1px solid var(--gold-soft);min-width:4rem;margin-bottom:1.6rem;padding-bottom:1.1rem;font-size:2rem;font-style:italic}.finale h2{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(2.6rem,8vw,6.5rem);font-weight:400;line-height:1}.finale p{max-width:30rem;font-family:var(--font-text);color:var(--stone);margin:1.4rem 0 0;font-size:1.1rem;font-weight:300;line-height:1.5}.finale-link{font-family:var(--font-text);letter-spacing:.08em;color:var(--ivory);border:1px solid var(--gold);margin-top:2.4rem;padding:.95rem 2.2rem;font-size:.95rem;text-decoration:none;transition:background .3s,color .3s}.finale-link:hover{background:var(--gold);color:var(--black)}@media (aspect-ratio>=1){.stage-vignette{background:linear-gradient(90deg,#000000c7 0%,#00000059 34%,#0000 60%),linear-gradient(#0000 48%,#00000080 76%,#000 100%),linear-gradient(#000000b3 0%,#0000 22%)}.overlay-text h1{font-size:clamp(2.9rem,6.2vw,6.5rem)}}@media (width<=640px){.rail,.scroll-hint{display:none}.spec,.spec+.spec{padding-right:.6rem}.spec+.spec{padding-left:.6rem}}@media (prefers-reduced-motion:reduce){.overlay-text{animation:none}}
