.story{background:var(--surface);border-bottom:1px solid var(--border);height:360vh;position:relative}.st-sticky{align-items:center;height:calc(100vh - 76px);display:flex;position:sticky;top:76px;overflow:hidden}.st-grid{grid-template-columns:.86fr 1.14fr;align-items:center;gap:56px;width:min(1200px,100% - 48px);display:grid}.st-copy{padding-left:28px;position:relative}.st-copy .eyebrow{margin-left:-28px}.st-copy h2{margin-bottom:28px;margin-left:-28px}.st-rail{background:var(--border);width:2px;position:absolute;top:150px;bottom:150px;left:0}.st-rail-fill{background:var(--rl-blue);height:0;transition:height .1s linear;position:absolute;inset:0 0 auto}.st-steps{gap:18px;margin:0;padding:0;list-style:none;display:grid}.st-step h3{transition:opacity .45s}.st-step:not(.is-active) h3{opacity:.6}.st-step .n{font:500 11.5px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--link)}.st-step h3{font-family:var(--font-serif);letter-spacing:-.01em;margin:4px 0 6px;font-size:clamp(30px,1.2rem + 1.4vw,42px);font-style:italic;font-weight:400}.st-step p{color:var(--muted);max-height:0;margin:0;font-size:15.5px;transition:max-height .5s;overflow:hidden}.st-step.is-active p{max-height:9em}.st-stats{border-top:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:28px;margin-top:28px;padding-top:20px;display:flex}.st-stats div{display:grid}.st-num{font:600 34px/1 var(--font-sans);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}.st-lab{font:500 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:6px}.st-stats small{font:400 11px var(--font-mono);color:var(--muted)}.st-more{margin:20px 0 0;font-size:15px}.st-stage{background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:24px;margin:0;padding:12px;position:relative}.st-svg{width:100%;height:auto;max-height:calc(100vh - 210px);display:block}.st-cap{font:500 11.5px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:space-between;padding:6px 10px 2px;display:flex}.st-phase{color:var(--link)}.st-hint{align-items:center;gap:8px;transition:opacity .4s;display:inline-flex}.st-hint:after{content:"";background:currentColor;width:1px;height:14px;animation:1.6s ease-in-out infinite hint}@keyframes hint{0%,to{opacity:.3;transform:translateY(-3px)}50%{opacity:1;transform:translateY(3px)}}.st-tangle{stroke:var(--muted);stroke-opacity:.55;stroke-width:1.2px;stroke-dasharray:3 5}.st-link{stroke:var(--rl-blue);stroke-width:1.6px;stroke-dasharray:300;stroke-dashoffset:300px}.st-pulse{fill:var(--rl-blue);opacity:0}.st-hub{opacity:0}.st-hub rect{fill:var(--tint);stroke:var(--rl-blue);stroke-opacity:.4}.st-halo{fill:none;stroke:var(--rl-blue);stroke-opacity:.18}.st-node rect{fill:var(--surface);stroke:var(--border-strong);transition:stroke .4s,fill .4s}.st-node circle{fill:var(--muted);transition:fill .4s}.st-node text{fill:var(--ink);font:500 12.5px var(--font-sans)}.st-abs text{fill:var(--text)}.story.is-connected .st-kept rect,.story.is-connected .st-new rect{stroke:var(--rl-blue);stroke-opacity:.55}.story.is-connected .st-kept circle,.story.is-connected .st-new circle{fill:var(--rl-blue)}.st-badge rect{fill:#fef3c7;stroke:#f59e0b;stroke-opacity:.5}.st-badge text{fill:#92400e;font:500 11px var(--font-mono)}:root[data-theme=dark] .st-badge rect{fill:#3a2a0a;stroke:#f59e0b}:root[data-theme=dark] .st-badge text{fill:#fcd34d}@media (max-width:900px){.story{height:330vh}.st-sticky{align-items:flex-start;height:calc(100vh - 66px);padding-top:18px;top:66px}.st-grid{grid-template-columns:1fr;gap:14px;width:calc(100% - 32px)}.st-stage{border-radius:18px;order:-1;padding:6px}.st-svg{max-height:46vh}.st-copy{padding-left:0}.st-copy .eyebrow,.st-copy h2{margin-left:0}.st-copy .eyebrow{margin-bottom:8px}.st-copy h2{margin-bottom:10px;font-size:26px}.st-rail,.st-stats small,.st-more{display:none}.st-steps{display:block}.st-step{display:none}.st-step.is-active{display:block}.st-step h3{font-size:30px}.st-stats{gap:20px;margin-top:12px;padding-top:12px}.st-num{font-size:26px}.st-node text{font-size:19px}.st-badge{display:none}}@media (prefers-reduced-motion:reduce){.story{height:auto}.st-sticky{height:auto;padding:96px 0;position:static}.st-step h3,.st-step,.st-step p{opacity:1;max-height:none;transition:none;display:block}.st-hint{display:none}.st-rail-fill,.st-node rect,.st-node circle{transition:none}}
