.story{--panel:min(42vw, 620px);--scene-top:var(--header-h,68px);position:relative}.story-track{z-index:0;position:absolute;inset:0}.story-sticky{top:var(--scene-top);height:calc(100vh - var(--scene-top));position:sticky;overflow:hidden}.scene-frame{background:var(--ground);position:absolute;inset:0}.scene-frame:after{content:"";width:calc(var(--panel) + 120px);pointer-events:none;background:linear-gradient(90deg,#f7f6ef00 0,#f7f6efe6 120px,#f7f6eff7 100%);position:absolute;top:0;bottom:0;right:0}.scene-art{left:0;right:calc(var(--panel) + 40px);position:absolute;top:52px;bottom:116px}.scene-art svg{width:100%;height:100%;display:block;overflow:visible}.scene-art text{font-family:var(--font-geist-sans), sans-serif}.scene-frame .v{opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transform:translateY(-6px)}.scene-frame .lab.v{--d:.42s;transform:translateY(4px)}.scene-frame[data-stage="0"] .s0,.scene-frame[data-stage="1"] :is(.s1,.g1,.mo),.scene-frame[data-stage="2"] :is(.s2,.g1,.g2),.scene-frame[data-stage="3"] :is(.s3,.g1,.g2,.g3),.scene-frame[data-stage="4"] :is(.s4,.g1,.g2,.g3,.g4),.scene-frame[data-stage="5"] :is(.s5,.g1,.g2,.g3,.g4){opacity:1;transition-delay:var(--d,0s);transform:none}.scene-frame .money{animation:1.4s linear infinite story-money}.scene-frame .energy{animation:1s linear infinite story-energy}@keyframes story-money{to{stroke-dashoffset:-22px}}@keyframes story-energy{to{stroke-dashoffset:-13px}}.story-dots{top:16px;right:calc(var(--panel) + 64px);z-index:2;background:#eef1e6eb;border-radius:20px;gap:2px;padding:2px;display:flex;position:absolute}.story-dots a{width:32px;height:32px;color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:11px;text-decoration:none;transition:background .25s,color .25s;display:grid}.story-dots a[aria-current=step]{background:var(--ink);color:var(--paper)}.story-hud{left:24px;right:calc(var(--panel) + 64px);z-index:2;position:absolute;bottom:24px}.story-hud .detail{max-width:54ch;color:var(--ink);margin:0 0 10px 8px;font-size:14px;line-height:1.5;display:none}.scene-frame[data-stage="1"] .detail[data-s="1"],.scene-frame[data-stage="2"] .detail[data-s="2"],.scene-frame[data-stage="3"] .detail[data-s="3"],.scene-frame[data-stage="4"] .detail[data-s="4"],.scene-frame[data-stage="5"] .detail[data-s="5"]{display:block}.story-key{border:1px solid var(--rule);color:var(--text-muted);background:#fffffad9;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 14px;font-size:11.5px;display:flex}.story-key .row{color:#9aa39d;align-items:center;gap:6px;transition:color .6s;display:inline-flex}.story-key .dot{border:1.5px solid #b9c0bb;border-radius:50%;width:7px;height:7px}.story-key .legend{gap:14px;margin-left:auto;display:inline-flex}.story-key .legend span{align-items:center;gap:6px;display:inline-flex}.story-key i{width:20px;display:block}.story-key .k-money{border-top:3px dotted var(--gold)}.story-key .k-energy{border-top:2px dashed #2f9e62}.story-key .k-grid{border-top:2px solid var(--grid-blue)}.scene-frame[data-stage="1"] .row1,.scene-frame[data-stage="2"] :is(.row1,.row2),.scene-frame[data-stage="3"] :is(.row1,.row2,.row3),.scene-frame:is([data-stage="4"],[data-stage="5"]) :is(.row1,.row2,.row3,.row4){color:var(--ink)}.scene-frame[data-stage="1"] .row1 .dot,.scene-frame[data-stage="2"] :is(.row1,.row2) .dot,.scene-frame[data-stage="3"] :is(.row1,.row2,.row3) .dot,.scene-frame:is([data-stage="4"],[data-stage="5"]) :is(.row1,.row2,.row3,.row4) .dot{border-color:var(--forest);background:var(--forest)}.scene-frame[data-stage="1"] .row1,.scene-frame[data-stage="2"] .row2,.scene-frame[data-stage="3"] .row3,.scene-frame[data-stage="4"] .row4{color:var(--forest);font-weight:700}.story-copy{z-index:2;width:var(--panel);margin-left:auto;padding:0 64px 0 0;position:relative}.story .ch{min-height:calc(100vh - var(--scene-top));scroll-margin-top:var(--scene-top);flex-direction:column;justify-content:center;align-items:flex-start;padding:96px 0;display:flex}.story .ch .eyebrow{letter-spacing:1.4px;text-transform:uppercase;color:var(--forest);margin:0 0 20px;font-size:11px;font-weight:600}.story .ch h1{letter-spacing:-1.6px;max-width:none;margin:0;font-size:clamp(38px,4.2vw,60px);line-height:1.06}.story .ch h2{letter-spacing:-1.4px;margin:0;font-size:clamp(32px,3.5vw,50px);line-height:1.06}.story .ch .lead{color:var(--text-muted);max-width:40ch;margin:24px 0 0;font-size:16px;line-height:1.65}.story .ch>.tool-card,.story .ch>.program-example,.story .ch>.site-block,.story .ch>.ch-link{width:100%;max-width:46ch;margin-top:26px}.story .ch>.program-example{padding:20px 22px}.story .ch>.program-example .example-values>div{padding:10px 0}.story .ch-link{color:var(--forest);text-underline-offset:3px;font-size:14px;font-weight:600}.story .ch .story-cta{background:var(--forest);color:#fffef6;border-radius:4px;align-items:center;gap:18px;margin-top:28px;padding:15px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.story .ch .story-cta:hover{background:var(--forest-deep);transform:translateY(-2px)}.ch-still{display:none}.reveal{padding-bottom:.06em;display:block;overflow:hidden}.reveal>span{transition:transform .9s cubic-bezier(.2,.8,.2,1);display:block}@media (min-width:861px){.story[data-ready] .ch:not(.seen) .reveal>span{transform:translateY(108%)}}@media (max-width:860px){.story-track{display:none}.story-copy{width:auto;margin:0;padding:0 20px}.story .ch{border-bottom:1px solid var(--rule);min-height:0;padding:40px 0 56px}.story .ch:first-child{padding-top:28px}.story .ch h1{letter-spacing:-1.2px;font-size:38px}.story .ch h2{letter-spacing:-.9px;font-size:31px}.story .ch .lead{max-width:none;font-size:15.5px}.story .ch>.tool-card,.story .ch>.program-example,.story .ch>.site-block{max-width:none}.ch-still{aspect-ratio:1.15;background:var(--ground);width:calc(100% + 40px);margin:0 -20px 26px;display:block;position:relative;overflow:hidden}.ch-still .scene-frame:after,.ch-still .story-dots,.ch-still .story-hud{display:none}.ch-still .scene-art{inset:-4% -14%}.ch-still .lab .pl{transform-box:fill-box;transform-origin:50%;transform:scale(1.5)}.ch-still .lab .pl path,.ch-still .lab .pl circle{display:none}}@media (prefers-reduced-motion:reduce){.scene-frame .v,.reveal>span,.story-dots a{transition:none}.scene-frame .money,.scene-frame .energy{animation:none}.story[data-ready] .ch:not(.seen) .reveal>span{transform:none}}.story-after{z-index:3;background:var(--paper);position:relative}.outcomes{border-top:1px solid var(--rule);grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px;padding-block:72px;display:grid}.outcomes h2{letter-spacing:-1px;margin:0;font-size:32px}.outcomes h3{margin:0 0 10px;font-size:15px;font-weight:600}.outcomes p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.7}.outcomes .eyebrow{margin-bottom:14px}@media (max-width:860px){.outcomes{grid-template-columns:1fr;padding-block:48px}}.scene-still{aspect-ratio:1.05;background:var(--ground);border-radius:6px;margin:0;position:relative;overflow:hidden}.scene-still .scene-frame:after{display:none}.scene-still .scene-art{inset:0 -6%}.scene-still .scene-frame .v{transition:none}.page-hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:56px;padding-block:56px 48px;display:grid}.page-hero .lead{max-width:46ch}.page-hero h1{margin-bottom:20px}@media (max-width:860px){.page-hero{grid-template-columns:1fr;gap:28px;padding-block:32px}}.fact-row{border-top:1px solid var(--rule);grid-template-columns:repeat(3,1fr);gap:28px;margin:0;padding-block:28px 8px;display:grid}.fact-row dt{letter-spacing:1.3px;text-transform:uppercase;color:var(--forest);margin-bottom:8px;font-size:11px;font-weight:600}.fact-row dd{margin:0;font-size:15px;line-height:1.6}@media (max-width:860px){.fact-row{grid-template-columns:1fr;gap:18px}}.rise{transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}.rise[data-pending]{opacity:0;transform:translateY(18px)}@media (prefers-reduced-motion:reduce){.rise,.rise[data-pending]{opacity:1;transition:none;transform:none}}
