[id]{scroll-margin-top:var(--nav)}.stage-wrap{margin-top:calc(-1 * var(--nav));position:relative}.stage{z-index:0;pointer-events:none;background:radial-gradient(1100px 560px at 50% -12%, #e820481a, transparent 62%), var(--ink-1000);height:100svh;margin-bottom:-100svh;position:sticky;top:0;overflow:hidden}.stage-canvas{width:100%;height:100%}.stage-scrim{background:linear-gradient(90deg,#000000d1 0%,#00000073 30%,#0000 50%),linear-gradient(#0000 80%,#0009 100%);position:absolute;inset:0}.stage-overlay{position:absolute;inset:0}.no-webgl .stage-canvas,.no-webgl .stage-overlay{display:none}.splat-loading{font:400 12px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg-3);place-content:center;justify-items:center;gap:14px;padding-left:34vw;display:grid;position:absolute;inset:0}.splat-spinner{border:2px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.measure-label,.pin-anchor{opacity:0;transition:opacity .35s var(--ease-standard);will-change:transform;position:absolute;top:0;left:0}.measure-label.is-on,.pin-anchor.is-on{opacity:1}.measure-label{font:700 11px/1 var(--font-mono);color:#fff;white-space:nowrap;border:1px solid var(--line-crimson);box-shadow:var(--shadow-glow-crimson);background:#0a1218e0;border-radius:999px;padding:4px 8px;translate:-50% -50%}.pin-anchor{align-items:flex-end;gap:8px;display:flex}.pin{border:1.5px solid var(--accent);transform-origin:50% 100%;background:#0a1218db;border-radius:4px 4px 0;place-items:center;width:28px;height:28px;display:grid;translate:-50% -100%;rotate:-45deg;box-shadow:0 4px 14px #00000080}.pin-num{font:700 9px/1 var(--font-mono);color:var(--accent);rotate:45deg}.pin-label{font:600 12px/1 var(--font-sans);color:var(--fg-1);white-space:nowrap;border:1px solid var(--line-2);background:#0a1218d1;border-radius:6px;padding:5px 9px;translate:-18px -34px}.scene-pill{border:1px solid var(--line-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-2);background:#080e14d1;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;display:flex;position:absolute;bottom:28px;left:16px}.scene-pill-dot{width:7px;height:7px;animation:pulse 2.2s var(--ease-standard) infinite;background:#6fce9c;border-radius:50%;box-shadow:0 0 0 2px #6fce9c2e}@keyframes pulse{50%{opacity:.4}}.scene-pill-text{flex-direction:column;gap:1px;display:flex}.scene-pill-eyebrow{font:700 9px/1.2 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.scene-pill-title{font:600 12px/1.2 var(--font-sans);color:var(--fg-1);white-space:nowrap}.scene-pill-divider{background:var(--line-2);width:1px;height:22px}.scene-pill-mono{font:400 11px/1 var(--font-mono);color:var(--fg-2);white-space:nowrap;font-variant-numeric:tabular-nums}.toolpill{border:1px solid var(--line-2);box-shadow:var(--shadow-3), var(--shadow-inset-hi);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;transition:opacity .4s var(--ease-standard), translate .4s var(--ease-standard);background:#080e14e0;border-radius:999px;align-items:center;gap:2px;padding:6px;display:flex;position:absolute;bottom:28px;left:50%;translate:-50% 12px}.toolpill.is-on{opacity:1;pointer-events:auto;translate:-50%}.tp-btn{width:42px;height:42px;color:var(--fg-2);transition:all var(--dur-hover);border-radius:999px;place-items:center;display:grid;position:relative}.tp-btn:hover{color:var(--fg-1);background:#ffffff0f}.tp-btn-active,.tp-btn-active:hover{background:var(--accent);color:#fff;box-shadow:0 4px 14px #e8204859}.tp-tooltip{font:500 11px/1 var(--font-sans);color:var(--fg-1);background:var(--ink-800);border:1px solid var(--line-2);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--dur-hover);box-shadow:var(--shadow-2);border-radius:6px;padding:5px 10px;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50%}.tp-btn:hover .tp-tooltip,.tp-btn:focus-visible .tp-tooltip,.tp-btn-active .tp-tooltip{opacity:1}.rightrail{top:calc(var(--nav) + 16px);opacity:0;width:300px;transition:opacity .4s var(--ease-standard), translate .4s var(--ease-standard);position:absolute;right:16px;translate:12px}.rightrail.is-on{opacity:1;translate:0}.rr-row{opacity:.35;transition:opacity .4s var(--ease-standard), translate .4s var(--ease-standard), border-color .25s var(--ease-standard), background .25s var(--ease-standard);translate:10px}.rr-row.is-in{opacity:1;translate:0}@media (prefers-reduced-motion:no-preference){.rr-row.is-in .row-badge{animation:badge-ping .7s var(--ease-standard)}.pill-swap{animation:pill-swap .4s var(--ease-standard)}.tp-btn-active{animation:.4s cubic-bezier(.34,1.56,.64,1) tp-pop}.pin-anchor.is-on .pin{animation:.5s cubic-bezier(.34,1.56,.64,1) pin-drop}.pin-anchor.is-on .pin-label{animation:rise .45s var(--ease-standard) .12s backwards}.measure-label.is-on{animation:.4s cubic-bezier(.34,1.56,.64,1) label-pop}}@keyframes pill-swap{0%{opacity:0;translate:0 5px}}@keyframes tp-pop{0%{scale:.82}}@keyframes pin-drop{0%{opacity:0;scale:.2}}@keyframes label-pop{0%{scale:.7}}.rr-ev{gap:5px;min-width:0;display:grid}.rr-pills{align-items:center;gap:6px;display:flex}.hero{z-index:1;min-height:100svh;padding:calc(var(--nav) + 48px) var(--gutter) 120px;align-items:center;display:grid;position:relative}.hero-copy{max-width:40rem}.hero h1{font-size:clamp(2.75rem,5.6vw,4.75rem);font-weight:800;line-height:1.02}.hero h1 em{color:var(--accent);font-style:normal}.hero-lede{max-width:34rem;color:var(--fg-3);margin-top:22px;font-size:17px}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.hero-meta{color:var(--fg-4);margin-top:28px;font-size:12px}.h1-line{margin-bottom:-.2em;padding-bottom:.2em;display:block;overflow:hidden}.h1-line>span{display:inline-block}.hero h1 em{display:inline-block;position:relative}.hero h1 em:after{content:"";border:2px solid var(--accent);opacity:.85;border-top:0;height:.12em;position:absolute;bottom:-.02em;left:.04em;right:.04em}@media (prefers-reduced-motion:no-preference){.h1-line>span{animation:.95s cubic-bezier(.16,1,.3,1) both line-up}.h1-line:nth-child(2)>span{animation-delay:.12s}.hero h1 em:after{animation:.9s cubic-bezier(.65,0,.35,1) .85s both tape}.hero-copy>:not(h1){animation:rise .8s var(--ease-standard) both}.hero-copy>:nth-child(2){animation-delay:.32s}.hero-copy>:nth-child(3){animation-delay:.42s}.hero-copy>:nth-child(4){animation-delay:.56s}.hero-actions .btn-ghost svg{animation:nudge 2.4s var(--ease-standard) 1.6s infinite}}@keyframes line-up{0%{translate:0 105%}}@keyframes tape{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes rise{0%{opacity:0;translate:0 12px}}@keyframes nudge{0%,60%,to{translate:0}30%{translate:0 3px}}.story{z-index:1;position:relative}.step{min-height:150svh;padding:0 var(--gutter)}.step-card{top:max(calc(var(--nav) + 32px), 22svh);max-width:26rem;transition:border-color .5s var(--ease-standard), box-shadow .5s var(--ease-standard);margin:22svh 0;position:sticky;overflow:hidden}.step.is-active .step-card{border-color:var(--line-3)}.step-card .card-head{position:relative}.step-card .card-head:after{content:"";background:linear-gradient(90deg, var(--accent), #e8204859);transform-origin:0;opacity:0;height:1px;transition:opacity .4s;position:absolute;bottom:-1px;left:0;right:0;scale:0 1;box-shadow:0 0 8px #e8204899}.step.is-active .step-card .card-head:after{scale:var(--sp,0) 1;opacity:1}@media (prefers-reduced-motion:no-preference){.step-body>*{transition:opacity .6s var(--ease-standard), translate .6s var(--ease-standard)}.step:not(.is-active) .step-body>*{opacity:.25;translate:0 10px}.step.is-active .step-body>:nth-child(2){transition-delay:80ms}.step.is-active .step-body>:nth-child(3){transition-delay:.16s}.step.is-active .step-tool .row-badge{animation:badge-ping .7s var(--ease-standard)}.step.is-active .manifest dl div{animation:rise .5s var(--ease-standard) both}.step.is-active .manifest dl div:nth-child(2){animation-delay:.3s}.step.is-active .manifest dl div:nth-child(3){animation-delay:.36s}.step.is-active .manifest dl div:nth-child(4){animation-delay:.42s}.step.is-active .manifest dl div:nth-child(5){animation-delay:.48s}.step.is-active .manifest dl div:nth-child(6){animation-delay:.54s}.step.is-active .manifest dl div:first-child{animation-delay:.24s}}@keyframes badge-ping{0%{box-shadow:0 0 #e820488c}to{box-shadow:0 0 0 10px #e8204800}}.step-tool{align-items:center;gap:10px;display:flex}.step-tool .row-badge{border-radius:8px;width:28px;height:28px}.step-body{padding:18px 18px 20px}.step h2{margin-bottom:12px;font-size:clamp(1.5rem,2.1vw,1.875rem);font-weight:700}.step p{color:var(--fg-3);font-size:15px}.manifest{box-shadow:none;background:#ffffff06;margin-top:18px}.manifest dl{margin:0;padding:6px 14px 10px}.manifest dl div{border-bottom:1px solid var(--line-1);font:400 11px/1.3 var(--font-mono);justify-content:space-between;gap:12px;padding:6px 0;display:flex}.manifest dl div:last-child{border-bottom:0}.manifest dt{color:var(--fg-4)}.manifest dd{color:var(--fg-2);margin:0}.section{z-index:1;background:var(--ink-900);padding:clamp(80px, 10vw, 140px) var(--gutter);border-top:1px solid var(--line-1);position:relative}.section>*{max-width:var(--max);margin-left:auto;margin-right:auto}.section h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:700}.section-head{grid-template-columns:1fr 1fr;align-items:end;gap:24px 64px;margin-bottom:40px;display:grid}.section-head p{color:var(--fg-3);max-width:46ch}.list-card .card-body{gap:8px;padding:10px}.cap-row{grid-template-columns:34px 1fr auto;align-items:start;padding:14px}.cap-row h3{letter-spacing:0;margin-bottom:4px}.cap-row .row-sub{max-width:70ch}.local{grid-template-columns:1.1fr 1fr;align-items:center;gap:40px 72px;display:grid}.local>*{margin:0}.local{padding-left:max(var(--gutter), calc((100% - var(--max)) / 2));padding-right:max(var(--gutter), calc((100% - var(--max)) / 2))}.local-badge{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--line-crimson);border-radius:12px;place-items:center;margin-bottom:22px;display:inline-grid;position:relative}.local-badge:after{content:"";border-radius:inherit;border:1px solid var(--accent);opacity:0;pointer-events:none;position:absolute;inset:-1px}@media (prefers-reduced-motion:no-preference){.local-badge.is-revealed:after{animation:ring 2.8s var(--ease-standard) .8s infinite}}@keyframes ring{0%{opacity:.7;scale:1}70%,to{opacity:0;scale:1.6}}.local h2{max-width:13ch;font-size:clamp(2.2rem,4.2vw,3.5rem);font-weight:800}.local p{color:var(--fg-3);max-width:46ch;margin-top:18px}.kv{border:1px solid var(--line-1);background:#ffffff06;border-radius:8px;justify-content:space-between;gap:16px;padding:12px;font-size:14px;display:flex}.kv span:first-child{color:var(--fg-3)}.kv span:last-child{font-weight:600}.req-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.req{grid-template-columns:34px 1fr;padding:14px}.req-k{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-4);margin-bottom:3px;font-size:11px;font-weight:600;display:block}.closing{z-index:1;min-height:88svh;padding:120px var(--gutter);background:radial-gradient(1100px 560px at 50% 112%, #e820481f, transparent 62%), var(--ink-1000);border-top:1px solid var(--line-1);align-items:center;display:grid;position:relative;overflow:hidden}.closing-canvas{width:100%;height:100%;position:absolute;inset:0}.closing:after{content:"";pointer-events:none;background:linear-gradient(90deg,#000000d9 0%,#00000059 45%,#0000 70%);position:absolute;inset:0}.closing-copy{z-index:1;max-width:34rem;margin-left:max(0px, calc((100% - var(--max)) / 2));position:relative}.closing h2{font-size:clamp(2.2rem,4.2vw,3.5rem);font-weight:800}.closing p{color:var(--fg-3);margin:18px 0 30px}@media (width<=959px){.stage-scrim{background:linear-gradient(#0000 35%,#0000008c 60%,#000000e6 100%)}.splat-loading{padding:0 0 30vh}.hero{align-items:end;padding-bottom:96px}.step{align-items:flex-end;padding:0 12px;display:flex}.step-card{width:100%;max-width:none;margin:0 0 84px;top:auto;bottom:84px}.scene-pill{left:12px;right:12px;top:calc(var(--nav) + 12px);justify-content:flex-start;bottom:auto}.scene-pill-text,.scene-pill-divider:first-of-type,.scene-pill .scene-pill-divider{display:none}.toolpill{bottom:16px}.tp-btn{width:38px;height:38px}.tp-tooltip,.rightrail{display:none}.section-head,.local,.req-grid{grid-template-columns:1fr}.closing:after{background:linear-gradient(#0000 20%,#0006 45%,#000000e6 100%)}.closing{align-items:end}}@media (width>=960px) and (width<=1200px){.req-grid{grid-template-columns:1fr 1fr}}
