:root{font-family:Segoe UI Variable,Segoe UI,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#edf1ef;background:#0d0f0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{min-height:100%;margin:0;background:radial-gradient(circle at 24% 18%,rgba(97,104,98,.18),transparent 28rem),radial-gradient(circle at 78% 74%,rgba(117,84,54,.14),transparent 30rem),linear-gradient(135deg,#111515,#090b0b 56%,#141311)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:none;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 78%);mask-image:linear-gradient(to bottom,black,transparent 78%)}button{height:34px;min-width:58px;padding:0 12px;border:1px solid rgba(237,241,239,.18);border-radius:7px;color:#f3f5f3;background:#edf1ef0f;font:inherit;font-size:12px;font-weight:720;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}button:hover,button[aria-pressed=true]{border-color:#e08f489e;background:#be682a33}button:active{transform:translateY(1px) scale(.98)}button:focus-visible{outline:2px solid #e08f48;outline-offset:3px}#scrollExperience{position:relative;min-height:720vh}#pinStage{position:sticky;top:0;width:100%;height:100dvh;overflow:hidden;background:radial-gradient(circle at 55% 52%,rgba(231,238,236,.08),transparent 34rem),linear-gradient(160deg,#141817fa,#070909fa)}#viewport{position:absolute;top:0;right:0;bottom:0;left:0}canvas{display:block;width:100%;height:100%}.stage-topbar{position:absolute;inset:20px 22px auto;z-index:8;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;pointer-events:none}.stage-topbar>div,.stage-controls{pointer-events:auto}.eyebrow{margin:0 0 7px;color:#c78952;font-size:11px;font-weight:780;letter-spacing:0;text-transform:uppercase}h1{margin:0;color:#f6f4ec;font-size:clamp(28px,4vw,66px);line-height:.92;font-weight:850}#modelMeta{margin:10px 0 0;color:#a9b1ad;font-size:13px}.stage-controls{display:flex;flex-direction:column;align-items:flex-end;gap:9px;max-width:min(620px,52vw)}.mode-controls,.view-controls{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.mode-controls{padding:4px;border:1px solid rgba(237,241,239,.12);border-radius:8px;background:#090b0b85}.mode-controls button{min-width:82px}.story-copy{position:absolute;left:clamp(18px,4vw,54px);bottom:clamp(46px,8vh,94px);z-index:8;display:grid;grid-template-columns:48px minmax(0,560px);gap:16px;align-items:start;pointer-events:none}.story-content{min-width:0}#phaseIndex{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(224,143,72,.62);border-radius:7px;color:#f0b578;background:#e08f4821;font-size:13px;font-weight:850;font-variant-numeric:tabular-nums}#phaseKicker{margin:0 0 8px;color:#c78952;font-size:12px;font-weight:780}#phaseTitle{margin:0;max-width:9.5ch;color:#f3f2eb;font-size:clamp(34px,5.2vw,76px);line-height:.93;font-weight:860;text-wrap:balance}#phaseText{max-width:44ch;margin:14px 0 0;color:#c6ccc8;font-size:clamp(15px,1.35vw,18px);line-height:1.48}html[data-mode=parts] #phaseTitle{max-width:8.5ch;font-size:clamp(34px,4.4vw,58px)}html[data-mode=parts] #phaseText{max-width:37ch}.phase-strip{position:absolute;right:22px;bottom:26px;z-index:8;display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;max-width:520px;pointer-events:none}.phase-strip span{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid rgba(237,241,239,.14);border-radius:7px;color:#939d98;background:#edf1ef0b;font-size:11px;font-weight:780;transition:color .18s ease,border-color .18s ease,background .18s ease}.phase-strip span.active{color:#fff8ee;border-color:#e08f4894;background:#e08f482e}.scroll-meter{position:absolute;left:0;bottom:0;z-index:9;width:100%;height:4px;background:#edf1ef14}#scrollMeterBar{display:block;width:0%;height:100%;background:linear-gradient(90deg,#e08f48,#f1d496);transform-origin:left center}#calloutLayer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.callout{position:absolute;max-width:190px;padding:7px 9px;border:1px solid rgba(237,241,239,.18);border-radius:7px;color:#f7fbfc;background:#090b0bb8;box-shadow:0 16px 44px #00000047;font-size:12px;font-weight:760;line-height:1.25;opacity:0;transform:translate(-50%,-50%) scale(.94);transition:opacity .16s ease,transform .16s ease}.callout.active{opacity:1;transform:translate(-50%,-50%) scale(1)}#status{position:absolute;right:22px;top:126px;z-index:8;max-width:min(520px,calc(100vw - 44px));padding:9px 11px;border:1px solid rgba(237,241,239,.12);border-radius:7px;color:#dbe3df;background:#0d0f0fc7;font-size:13px}#status.hidden{display:none}body.is-motion-only{height:100dvh;min-height:100dvh;overflow:hidden;background:#050708}body.is-motion-only:before,body.is-motion-only .stage-topbar,body.is-motion-only .story-copy,body.is-motion-only .phase-strip,body.is-motion-only .scroll-meter,body.is-motion-only #calloutLayer,body.is-motion-only #status{display:none!important}body.is-motion-only #scrollExperience{height:100dvh;min-height:100dvh}body.is-motion-only #pinStage{position:relative;height:100dvh;background:radial-gradient(circle at 62% 48%,rgba(232,239,236,.06),transparent 28rem),linear-gradient(160deg,#0b0d0d,#040606)}body.is-motion-only #viewport{top:0;right:0;bottom:0;left:0}@media(max-width:860px){#scrollExperience{min-height:650vh}.stage-topbar{inset:16px 16px auto;flex-direction:column;gap:14px}.stage-controls{align-items:flex-start;max-width:100%}.mode-controls,.view-controls{justify-content:flex-start}.story-copy{left:16px;right:16px;bottom:42px;grid-template-columns:42px 1fr;gap:12px}#phaseIndex{width:42px;height:42px}#phaseTitle{max-width:9ch;font-size:clamp(28px,10vw,44px)}#phaseText{max-width:31ch;font-size:14px;margin-top:10px}.phase-strip,#calloutLayer{display:none}#status{top:auto;right:16px;bottom:16px;max-width:calc(100vw - 32px)}}
