

.track{position:relative}
.sc{position:relative;padding:84px 0}
.sc-in{max-width:1180px;margin:0 auto;padding:0 44px;width:100%;position:relative;z-index:1}
.sh1{font-family:var(--em-font-display);font-weight:800;letter-spacing:-.045em;line-height:.98;font-size:clamp(40px,6.2vw,86px);text-wrap:balance;margin:16px 0 22px}
.sh2{font-family:var(--em-font-display);font-weight:800;letter-spacing:-.04em;line-height:1.02;font-size:clamp(30px,4.2vw,56px);text-wrap:balance;margin:14px 0 18px}
.sc .lede{max-width:62ch}
.scroll-hint{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);font-family:var(--em-font-mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--em-text-muted);display:flex;align-items:center;gap:10px}
.scroll-hint::after{content:"";width:1px;height:26px;background:linear-gradient(var(--em-accent),transparent)}
.float-chip{position:absolute;left:var(--x);top:var(--y);z-index:0;pointer-events:none;padding:9px 16px;border:1px solid var(--em-line);border-radius:999px;background:color-mix(in oklab,var(--em-surface) 76%,transparent);font-family:var(--em-font-mono);font-size:11px;letter-spacing:.1em;color:var(--em-text-muted);backdrop-filter:blur(6px);white-space:nowrap;opacity:.35}
@media (max-width:1400px){.float-chip{display:none}}


.hub{position:relative;width:min(1040px,92vw);aspect-ratio:1000/560;margin:26px auto 0}
.hub-l{position:absolute;inset:0;width:100%;height:100%}
.hub-l path{stroke:color-mix(in oklab,var(--em-accent) 46%,transparent);stroke-width:1.3;fill:none}
.hub-c{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;z-index:2}
.hub-c b{font-family:var(--em-font-display);font-size:20px;font-weight:800;letter-spacing:-.03em}
.hub-c small{font-size:12.5px;color:var(--em-text-dim)}
.hub-s{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;z-index:1;left:var(--sx);top:var(--sy)}
.hub-s b{font-size:13px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.hub-s small{font-size:10.5px;color:var(--em-text-muted);white-space:nowrap;margin-top:-3px}


.lad{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:34px}
.lad-i{border:1px solid var(--em-line);border-radius:20px;background:var(--em-surface);padding:20px 16px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.lad-i b{font-size:15px;font-weight:800;letter-spacing:-.02em}
.lad-i small{font-size:12px;color:var(--em-text-dim);line-height:1.45}
.lad-arrow{display:none}


.aih{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:52px;align-items:center;margin-top:10px}
.aih-t{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.aih ul{display:grid;gap:13px;margin-top:8px}
.aih ul li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:12px;color:var(--em-text-dim);font-size:15.5px;align-items:start}
.aih ul li::before{content:"";width:8px;height:8px;margin-top:7px;border-radius:3px;background:var(--em-accent)}
.aih ul li b{color:var(--em-text)}


.fab{display:grid;gap:9px;max-width:760px;margin:30px auto 0}
.fab-r{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--em-line);border-radius:16px;background:var(--em-surface);padding:15px 20px}
.fab-r b{font-size:14.5px;font-weight:700;display:flex;align-items:center;gap:11px}
.fab-r b::before{content:"";width:8px;height:8px;border-radius:3px;background:var(--fc,var(--em-accent))}
.fab-r small{font-family:var(--em-font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--em-text-muted);text-align:right}


.pri{position:relative;min-height:250px;margin-top:8px}
.pri-b{display:flex;flex-direction:column;gap:12px;max-width:30ch}
.pri-b .sh2{margin:0}
.pri-b p{color:var(--em-text-dim);font-size:16.5px;max-width:52ch}
.pri-n{font-family:var(--em-font-mono);font-size:11px;letter-spacing:.2em;color:var(--em-text-faint)}


.story-nav{display:none}


html.story-live .track{height:calc(var(--scn) * 175vh)}
html.story-live .stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:clip}
html.story-live .sc{position:absolute;inset:0;display:grid;align-items:center;padding:86px 0 40px;visibility:hidden;opacity:0}
html.story-live .sc.on{visibility:visible}
html.story-live [data-fx]{will-change:transform,opacity}
html.story-live .sc [data-fx]{opacity:0}
html.story-live .stage .aurora{display:block}
html.story-live .story-nav{display:flex;position:fixed;right:26px;top:50%;transform:translateY(-50%);flex-direction:column;gap:9px;z-index:40}
.story-nav button{width:34px;height:12px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:flex-end;padding:0}
.story-nav button i{width:14px;height:3px;border-radius:999px;background:var(--em-line-strong);transition:width .3s var(--em-ease),background .3s var(--em-ease)}
.story-nav button:hover i{background:var(--em-text-dim)}
.story-nav button[aria-current="true"] i{width:30px;background:var(--em-accent)}
.story-nav button:focus-visible{outline:2px solid var(--em-accent);outline-offset:2px;border-radius:6px}
html.story-live .sbar{position:fixed;left:0;top:0;height:2px;background:var(--em-accent);width:0;z-index:60}


html:not(.story-live) .sc{border-top:1px solid var(--em-line)}
html:not(.story-live) .sc:first-child{border-top:0}
html:not(.story-live) .scroll-hint,html:not(.story-live) .sbar{display:none}
html:not(.story-live) .float-chip{display:none}
html:not(.story-live) .hub{aspect-ratio:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%}
html:not(.story-live) .hub-l{display:none}
html:not(.story-live) .hub-c,html:not(.story-live) .hub-s{position:static;transform:none;border:1px solid var(--em-line);border-radius:18px;background:var(--em-surface);padding:16px 12px}
html:not(.story-live) .hub-c{grid-column:1/-1;flex-direction:row;justify-content:center}

@media (max-width:900px){
  .lad{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aih{grid-template-columns:minmax(0,1fr);gap:26px}
  .sc-in{padding:0 26px}
}
@media (max-width:640px){
  .lad{grid-template-columns:minmax(0,1fr)}
  html:not(.story-live) .hub{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.pri-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px}
.pri-c{border:1px solid var(--em-line);border-radius:20px;background:var(--em-surface);padding:24px 26px;display:flex;flex-direction:column;gap:9px;text-align:left}
.pri-c h3{font-size:clamp(16px,1.35vw,19px);letter-spacing:-.02em;line-height:1.2}
.pri-c p{color:var(--em-text-dim);font-size:14px;line-height:1.55;max-width:52ch}
.pri-n{font-family:var(--em-font-mono);font-size:11px;letter-spacing:.14em;color:var(--p-ink)}
@media (max-width:900px){.pri-g{grid-template-columns:minmax(0,1fr)}.pri-c{padding:18px 20px}}
@media (max-height:760px){.pri-c p{font-size:13px}.pri-c{gap:6px;padding:16px 20px}}
