/* Review pass — chrome, motion, hero, two-ways, footer. Loaded last; overrides earlier sheets. */
:root{--bar:76px;--ftr:64px;--ez2:cubic-bezier(.22,.8,.3,1)}

/* ---------- nav ---------- */
.topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(16px,2.4vw,40px);background:linear-gradient(180deg,rgba(6,16,30,.94),rgba(6,16,30,.72) 62%,rgba(6,16,30,0))}
.logo{gap:12px;color:var(--ink)}
.logo .atom{width:40px;height:40px}
.logo .word{font-size:22px;letter-spacing:-1.2px}
.nv{display:flex;align-items:center;justify-content:center;gap:clamp(14px,1.6vw,30px);min-width:0}
.nv a{position:relative;display:inline-flex;align-items:center;gap:8px;padding:10px 0;font-family:var(--body);font-size:15px;font-weight:500;color:var(--grey);white-space:nowrap;transition:color .15s ease}
/* nav glyphs: sit beside the word, move once on hover, settle */
.ni{width:17px;height:17px;flex:none;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;color:var(--grey-dim);transition:color .2s ease}
.nv a:hover .ni,.nv a.on .ni{color:var(--purple-lt)}
.ni *{transform-box:fill-box;transition:transform .45s var(--ez2),opacity .3s ease,stroke-dashoffset .5s var(--ez2),fill .25s ease}
.ni-prod .l1{transform-origin:center}.nv a:hover .ni-prod .l1{transform:translateY(-1.6px)}.nv a:hover .ni-prod .l3{transform:translateY(1.6px)}
.ni-film .pl{fill:currentColor;stroke:none;transform-origin:center}.nv a:hover .ni-film .pl{transform:translateX(1px) scale(1.15)}
.ni-lock .sh{transform-origin:100% 100%;transform:translateY(0)}.nv a:hover .ni-lock .sh{animation:niLock .6s var(--ez2)}
@keyframes niLock{0%{transform:none}40%{transform:translateY(-1.8px)}100%{transform:none}}
.ni-plan rect{transform-origin:50% 100%}.nv a:hover .ni-plan rect{animation:niBar .5s var(--ez2) both}.nv a:hover .ni-plan .b2{animation-delay:.07s}.nv a:hover .ni-plan .b3{animation-delay:.14s;fill:currentColor}
@keyframes niBar{from{transform:scaleY(.35)}to{transform:none}}
.ni-onb circle{fill:var(--navy)}.nv a:hover .ni-onb circle{fill:currentColor}.nv a:hover .ni-onb .n2{transition-delay:.1s}.nv a:hover .ni-onb .n3{transition-delay:.2s}
.ni-sig .sg{stroke-dasharray:1;stroke-dashoffset:0}.nv a:hover .ni-sig .sg{animation:niDraw .7s var(--ez2)}
@keyframes niDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.ni-doc .dl{stroke-dasharray:1;stroke-dashoffset:0}.nv a:hover .ni-doc .dl{animation:niDraw .4s var(--ez2) both}.nv a:hover .ni-doc .d2{animation-delay:.1s}.nv a:hover .ni-doc .d3{animation-delay:.2s}
.nv a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:var(--purple-lt);transform:scaleX(0);transition:transform .2s var(--ez2)}
.nv a:hover{color:var(--ink)}
.nv a.on{color:var(--ink)}.nv a.on::after{transform:none}
.nv-r{display:flex;align-items:center;gap:14px}
.nc-core{position:relative;width:7px;height:7px;flex:none;border-radius:50%;background:#fff;box-shadow:0 0 6px 1px rgba(255,255,255,.7)}
.nc-core i{position:absolute;inset:0;border-radius:50%;border:1px solid #fff;animation:ncRing 3.6s ease-out infinite}
@keyframes ncRing{0%{opacity:.7;transform:scale(1)}55%,100%{opacity:0;transform:scale(2.8)}}
.nv-menu{display:none;align-items:center;gap:8px;height:44px;padding:0 14px;border:1px solid var(--line-str);border-radius:8px;background:rgba(16,35,61,.6);color:var(--ink);font-size:14px;font-weight:500}
.nv-menu i{display:block;width:16px;height:2px;background:currentColor;box-shadow:0 5px 0 currentColor,0 -5px 0 currentColor}
@media(max-width:1300px){.nv a[data-k="pOnb"],.nv a[data-k^="p6"]{display:none}}
@media(max-width:1060px) and (min-width:901px){.nv .ni{display:none}}
@media(max-width:900px){
.topbar{grid-template-columns:auto minmax(0,1fr) auto}
.nv{position:fixed;top:var(--bar);left:12px;right:12px;flex-direction:column;align-items:stretch;gap:0;padding:8px;border:1px solid var(--line-str);border-radius:12px;background:rgba(10,22,40,.97);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s ease,transform .2s var(--ez2)}
.nv a,.nv a[data-k]{display:block;padding:14px 12px;font-size:16px}.nv a::after{display:none}.nv a.on{background:rgba(91,79,207,.18);border-radius:8px}
body.nv-open .nv{opacity:1;transform:none;pointer-events:auto}
.nv-menu{display:inline-flex}
}
@media(max-width:480px){.logo .word{font-size:18px}.logo .atom{width:34px;height:34px}}

/* ---------- page dots removed; the nav carries "where am I" ---------- */
.dots{display:none!important}
.kick::before{width:18px;height:1px;border-radius:0;background:currentColor;box-shadow:none;opacity:.7}
.spec li::before{display:none}.spec li{padding-left:0}

/* next-page cue + back pill share one language */
.cue{position:fixed!important;left:auto!important;top:auto!important;right:var(--mx)!important;bottom:22px!important;width:auto!important;height:40px!important;padding:0 16px!important;gap:10px!important;border:1px solid var(--line-str)!important;border-radius:8px!important;background:rgba(10,22,40,.9)!important;transform:none!important;transition:opacity .2s ease,border-color .15s ease!important}
.cue.on{transform:none!important}
.cue::before,.cue::after,.cue-ic,.cue-pr{display:none!important}
.cue-t,.cue-ar{display:inline-flex!important}
.cue-t b{font-family:var(--body);font-size:13.5px;font-weight:500;color:var(--ink)}
.cue-ar{color:var(--grey);font-size:14px;animation:none!important}
.cue:hover{border-color:rgba(127,119,221,.6)!important}
.spback{position:fixed;left:var(--mx);bottom:22px;z-index:46;display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 16px 0 12px;border:1px solid var(--line-str);border-radius:8px;background:rgba(10,22,40,.9);color:var(--ink);font-family:var(--body);font-size:13.5px;font-weight:500;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s ease,transform .2s var(--ez2),border-color .15s ease}
.spback.on{opacity:1;transform:none;pointer-events:auto}
.spback:hover{border-color:rgba(127,119,221,.6)}
.spback svg{width:16px;height:16px;color:var(--purple-lt)}
.spback small{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey)}
@media(max-width:560px){.cue{display:none!important}.spback{bottom:14px}}

/* ---------- page transition: a calm cross-fade, no sweep, no blur ---------- */
/* a soft wash of light passes the way you travel */
.sp-warp .w-line,.sp-warp .w-streaks{display:none}
.sp-warp .w-band{height:60vh;background:linear-gradient(180deg,rgba(91,79,207,0),rgba(91,79,207,.07) 45%,rgba(22,201,144,.035) 60%,rgba(91,79,207,0))}
.sp-warp.on.dn .w-band{animation:wBandDn 1.3s cubic-bezier(.45,.05,.35,1) forwards}
.sp-warp.on.up .w-band{animation:wBandUp 1.3s cubic-bezier(.45,.05,.35,1) forwards}
.sp-warp .w-glow{background:radial-gradient(60% 40% at 50% 50%,rgba(91,79,207,.08),transparent 70%)}
.sp-warp.on .w-glow{animation:wGlow 1.3s ease-in-out forwards}
.page{transform:translate3d(0,18px,0);filter:none;transition:opacity .45s ease,transform .7s var(--ez2),visibility 0s linear .7s}
.page.live{transform:none;filter:none;animation:none;transition:opacity .55s ease .15s,transform .7s var(--ez2) .1s,visibility 0s}
.page.past{transform:translate3d(0,-18px,0);filter:none;opacity:0}

/* ---------- page 0 · calmer intro ---------- */
.photons i{box-shadow:0 0 6px 1px rgba(127,119,221,.6);animation-duration:1.4s}
.mk .core{animation-name:flashSoft}
@keyframes flashSoft{0%{opacity:0;transform:scale(.6)}100%{opacity:1;transform:scale(1)}}
.wordmark span{animation-timing-function:cubic-bezier(.22,.8,.3,1)}
.hint .ln{animation-duration:3.6s}

/* ---------- page 1 · hero: claim on the left, a falling star carries it into a vertical graph ---------- */
#p1{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:0}
.hx{width:100%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-rows:auto;column-gap:clamp(32px,4vw,80px);row-gap:clamp(20px,4vh,48px);align-content:center;align-items:center;justify-items:stretch;text-align:left}
.hx-l{position:relative;z-index:1;align-self:center}
#p1 .kick{margin-bottom:min(28px,3vh);font-size:max(12px,min(14px,1.8vh))}
.hook{font-size:max(30px,min(5.1vw,9.4vh,108px));line-height:1.03}
.hln-i{white-space:nowrap}
.hook .w{overflow:visible;padding-bottom:0;margin-bottom:0}
.hook .w i,.page.live .hook .w i{transform:none!important;transition:none!important}
.hln{display:block;perspective:900px;perspective-origin:0 -40%}
.hln-i{display:inline-block;transform-origin:0 0;transform:rotateX(-82deg) translate3d(-.15em,-.12em,0);opacity:0;filter:blur(3px);transition:transform .95s cubic-bezier(.2,1.25,.3,1),opacity .45s ease,filter .5s ease}
.hln.on .hln-i,#p1.seen .hln-i{transform:none;opacity:1;filter:none}
.hln-i em{font-style:normal;color:var(--purple-lt);transition:color .6s ease,text-shadow .6s ease}
/* the phrase is read as the line is drawn beneath it */
@property --pa{syntax:"<number>";inherits:true;initial-value:0}
#p1.g-u .hln-i em{color:transparent;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(90deg,#dcd8ff 0,#dcd8ff calc(var(--up,0) * 100% - 8%),#fff calc(var(--up,0) * 100%),var(--purple-lt) calc(var(--up,0) * 100% + 6%),var(--purple-lt) 100%);filter:drop-shadow(0 0 calc(var(--up,0) * 10px + var(--pa) * 10px) rgba(22,201,144,calc(.12 + var(--pa) * .5)))}
#p1.g-uok .hln-i em{background-image:linear-gradient(100deg,#dcd8ff 0,#dcd8ff 22%,#f4f2ff 44%,#c4f5e3 50%,#f4f2ff 56%,#dcd8ff 78%,#dcd8ff 100%);background-size:240% 100%;background-position:100% 0;animation:phShine 9s cubic-bezier(.45,.05,.35,1) 1.2s infinite}
@keyframes phShine{0%{background-position:100% 0}35%,100%{background-position:0 0}}
#p1.ph-pulse{animation:phPulse 1.6s ease-out}
@keyframes phPulse{0%{--pa:0}30%{--pa:1}100%{--pa:0}}
.hln-i em{position:relative}
.hln-i em::after{content:"";position:absolute;right:-.12em;bottom:.06em;width:.16em;height:.16em;border-radius:50%;background:#fff;box-shadow:0 0 10px 3px rgba(180,174,240,.9),0 0 22px 6px rgba(127,119,221,.45);opacity:0;transform:scale(.2)}
#p1.g-uok .hln-i em::after{animation:phSpark 1.6s ease-out forwards}
#p1.g-go .hln-i em::after{animation:phSpark 1.6s ease-out forwards,phLeave .6s ease-in forwards}
@keyframes phSpark{0%{opacity:0;transform:scale(.2)}35%{opacity:1;transform:scale(1.2)}100%{opacity:.7;transform:scale(.8)}}
@keyframes phLeave{to{opacity:0;transform:scale(.2) translateX(.4em)}}
.hook .caret{display:inline-block;width:.07em;height:.82em;margin-left:.08em;margin-right:-.15em;vertical-align:-.04em;background:var(--purple-lt);border-radius:1px;box-shadow:0 0 12px rgba(127,119,221,.8);animation:caret 1s steps(1) infinite}
.hook.typed .caret{animation:caret 1s steps(1) 1,caretOut .3s ease 1s forwards}
@keyframes caret{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes caretOut{to{opacity:0}}
/* svg layer: underline, curving line, a comet that rests at each step */
.hg-svg{position:absolute;left:0;top:0;z-index:2;pointer-events:none;overflow:visible}
.hg-svg path{fill:none;stroke-linecap:round}
.hg-u{stroke:#16C990;stroke-width:2.2;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 6px rgba(22,201,144,.6));transition:stroke-dashoffset .9s cubic-bezier(.5,0,.2,1)}
#p1.g-u .hg-u{stroke-dashoffset:0}
.hg-ln{stroke:rgba(127,119,221,.38);stroke-width:1.3;stroke-dasharray:1;stroke-dashoffset:1}
.hg-l0{stroke:rgba(127,119,221,.26)}
.hg-ln.done{stroke:rgba(127,119,221,.5);transition:stroke 1.2s ease}
.hg-fl{stroke:rgba(200,196,255,.75);stroke-width:1.4;stroke-dasharray:1.5 13;opacity:0;transition:opacity 1.6s ease;animation:hgFlow 7s linear infinite}
#p1.g-all .hg-fl{opacity:.55}
.hg-f0{animation-duration:9s}
@keyframes hgFlow{to{stroke-dashoffset:-145}}
.hg-comet{opacity:0;transition:opacity .5s ease}
.hg-comet.on{opacity:1}
.hg-comet.settle{opacity:0;transition:opacity 2.4s ease}
.hg-tl{fill:#d9d6ff;filter:drop-shadow(0 0 3px rgba(127,119,221,.9))}
.hg-comet.rest .hg-tl{opacity:0;transition:opacity .4s ease}
.hg-head{fill:#fff;filter:drop-shadow(0 0 3px rgba(255,255,255,.8)) drop-shadow(0 0 7px rgba(127,119,221,.7))}
.hg-halo{opacity:.7;transform-box:fill-box;transform-origin:center;transition:transform .6s cubic-bezier(.2,1.4,.3,1)}
.hg-comet.move .hg-halo{transform:scale(.75)}
.hg-comet.rest .hg-halo{animation:hgBreath 2.2s ease-in-out infinite}
@keyframes hgBreath{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.35);opacity:.38}}
.hg-ring{fill:none;stroke:rgba(200,196,255,.5);stroke-width:1;opacity:0;transform-box:fill-box;transform-origin:center}
.hg-comet.rest .hg-ring{animation:hgRing 2.2s ease-out infinite}
.hg-comet.rest .hg-ring2{animation-delay:1.1s}
@keyframes hgRing{0%{opacity:.8;transform:scale(.6)}100%{opacity:0;transform:scale(2.6)}}
@media(prefers-reduced-motion:reduce){.hg-comet{display:none}.hg-fl{animation:none}}
.hg-gd{stroke:none}
.hg-w{fill:none;stroke-linecap:round;stroke-linejoin:round}
.hg-wu.wa{stroke:rgba(22,201,144,.55);stroke-width:1.1}
.hg-wu.wb{stroke:rgba(180,174,240,.45);stroke-width:1.1}
.hg-ws.wa{stroke:rgba(160,152,244,.32);stroke-width:1}
.hg-ws.wb{stroke:rgba(22,201,144,.26);stroke-width:1}
.hg-sp{fill:#fff;opacity:0;transform-box:fill-box;transform-origin:center;animation:hgSpark 2.8s ease-in-out infinite}
@keyframes hgSpark{0%,100%{opacity:0;transform:scale(.4)}45%{opacity:.85;transform:scale(1);filter:drop-shadow(0 0 3px rgba(200,196,255,.9))}60%{opacity:.2;transform:scale(.7)}}
/* the vertical graph */
.vg{position:relative;z-index:1;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(28px,5.6vh,64px);align-self:center}
.vg-st{position:relative}
.vg-st::before{content:"";position:absolute;left:-22px;right:-18px;top:-16px;bottom:-16px;z-index:-1;border-radius:8px;pointer-events:none;background:radial-gradient(90% 120% at 0 0,rgba(22,201,144,.13),rgba(127,119,221,.06) 45%,transparent 75%);border:1px solid rgba(22,201,144,.18);opacity:0}
.vg-st.on::before{animation:vgGlow 3.4s ease-out}
@keyframes vgGlow{0%{opacity:0}18%{opacity:1}100%{opacity:0}}
.vg-st{display:grid;grid-template-columns:14px minmax(0,1fr);column-gap:18px;align-items:start}
.hg-n{position:relative;width:14px;height:14px;margin-top:3px;border-radius:50%;border:1.5px solid var(--purple-lt);background:var(--navy);opacity:0;transform:scale(.3);transition:opacity .4s ease,transform .8s cubic-bezier(.2,1.6,.3,1),background .5s ease,border-color .5s ease,box-shadow .5s ease}
.vg-st.on .hg-n,.vg-end.on .hg-n{opacity:1;transform:none;background:#16C990;border-color:#16C990;box-shadow:0 0 14px rgba(22,201,144,.6)}
.hg-n::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:1px solid #16C990;opacity:0}
.hg-n.hit::after{animation:hgHit 1.6s ease-out}
.vg-st.on .hg-n{animation:hgNode 4.5s ease-in-out 2s infinite}
@keyframes hgNode{0%,100%{box-shadow:0 0 14px rgba(22,201,144,.6)}50%{box-shadow:0 0 22px rgba(22,201,144,.85),0 0 0 4px rgba(22,201,144,.12)}}
.hg-n.hit::before{content:"";position:absolute;inset:-2px;border-radius:50%;border:1px solid #16C990;opacity:0;animation:hgHit 1.6s ease-out .35s}
@keyframes hgHit{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(3.4)}}
.vg-c{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.vg-c>*,.vg-end>*:not(.hg-n){opacity:0;transform:translateX(-18px);filter:blur(4px);transition:opacity .9s ease,transform 1.1s var(--ez2),filter .9s ease}
.vg-end>*:not(.hg-n){transform:translateY(10px)}
.vg-st.on .vg-c>*,.vg-end.on>*{opacity:1;transform:none;filter:none}
.vg-st.on .vg-c>*:nth-child(1){transition-delay:.25s}.vg-st.on .vg-c>*:nth-child(2),.vg-end.on>*:nth-child(3){transition-delay:.5s}
.vg-st.on .vg-c>*:nth-child(3),.vg-end.on>*:nth-child(4){transition-delay:.85s}
.vg-st.on .vg-c>*:nth-child(4){transition-delay:1.2s}
#p1 .num{margin:0;font-family:var(--mono);font-size:11.5px;letter-spacing:.22em;color:var(--purple-lt)}
#p1 h2{font-size:max(19px,min(clamp(21px,1.8vw,28px),3.4vh));line-height:1.18;letter-spacing:-.02em;font-weight:700;white-space:normal}
.hg-f{display:flex;flex-wrap:wrap;gap:6px}
.hg-f span{padding:3px 9px;border:1px solid var(--line-str);border-radius:6px;font-family:var(--mono);font-size:max(10.5px,min(11.5px,1.5vh));letter-spacing:.12em;text-transform:uppercase;color:var(--grey);opacity:0;transform:translateY(6px);transition:opacity .4s ease,transform .5s var(--ez2),color .4s,border-color .4s}
.vg-st.on .hg-f span{opacity:1;transform:none;color:var(--ink)}
.hg-f span{transition-duration:.6s,.7s,.5s,.5s}.hg-f span:nth-child(1){transition-delay:1s}.hg-f span:nth-child(2){transition-delay:1.22s}.hg-f span:nth-child(3){transition-delay:1.44s}.hg-f span:nth-child(4){transition-delay:1.66s}.hg-f span:nth-child(5){transition-delay:1.88s}
.vg-st.on .hg-f span{animation:hgChip 1.4s ease both}.vg-st.on .hg-f span:nth-child(1){animation-delay:1.1s}.vg-st.on .hg-f span:nth-child(2){animation-delay:1.32s}.vg-st.on .hg-f span:nth-child(3){animation-delay:1.54s}.vg-st.on .hg-f span:nth-child(4){animation-delay:1.76s}.vg-st.on .hg-f span:nth-child(5){animation-delay:1.98s}
@keyframes hgChip{0%,30%{border-color:var(--line-str)}55%{border-color:rgba(127,119,221,.8);box-shadow:0 0 14px -4px rgba(127,119,221,.9)}100%{border-color:var(--line-str);box-shadow:none}}
.hg-d{max-width:40ch;font-size:max(13.5px,min(15px,1.9vh));line-height:1.5;color:var(--grey);text-wrap:pretty}
.hg-d em{font-style:normal;color:#E0A82E}
.hg-sig{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:1px solid rgba(22,201,144,.3);border-radius:8px;background:rgba(13,158,114,.08);font-size:13px;color:var(--grey);white-space:nowrap}
.hg-sig b{color:var(--ink);font-weight:600}
.hg-sig code{font-family:var(--mono);font-size:11.5px;color:var(--teal-br)}
.hg-ck{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(22,201,144,.18);color:#16C990}
.hg-ck svg{width:12px;height:12px}
.hg-ck path{stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .6s ease 1.7s}
.hg-sig{transform-origin:0 50%}.vg-st.on .hg-sig{animation:hgStamp .5s cubic-bezier(.2,1.6,.3,1) 1.2s backwards}
@keyframes hgStamp{from{transform:scale(1.18);opacity:0}}
.vg-st.on .hg-ck path{stroke-dashoffset:0}
/* the conclusion, bottom centre */
.vg-end{grid-column:1/-1;margin-top:max(24px,4.4vh);position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.vg-end .hg-n{margin:0 0 4px}
.hg-who{position:relative;display:flex;justify-content:flex-start;gap:clamp(28px,3vw,48px);margin-top:4px}
.hw-bar{position:absolute;top:0;left:25%;right:25%;height:1px;background:linear-gradient(90deg,rgba(127,119,221,.55),rgba(22,201,144,.55));transform:scaleX(0);transition:transform .7s var(--ez2) .45s}
.vg-end.on .hw-bar{transform:none}
.hg-who span{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .6s var(--ez2)}

.vg-st.on .hg-who span{opacity:1;transform:none}
.hg-who span{transition-duration:.8s,1s}.vg-st.on .hg-who span:nth-of-type(1){transition-delay:1s}.vg-st.on .hg-who span:nth-of-type(2){transition-delay:1.35s}
.vg-st.on .hg-who img{animation:hgRecv 1.6s ease-out 1.6s both}
@keyframes hgRecv{0%{filter:drop-shadow(0 0 13px rgba(127,119,221,.42))}40%{filter:drop-shadow(0 0 22px rgba(127,119,221,1)) brightness(1.3)}100%{filter:drop-shadow(0 0 13px rgba(127,119,221,.42))}}
.hg-who img{height:min(44px,5.2vh);width:auto;margin-bottom:6px;filter:drop-shadow(0 0 13px rgba(127,119,221,.42))}
.hg-who img.ag{transform:scale(1.1);transform-origin:50% 100%}
.hg-who b{font-family:var(--mono);font-size:max(11px,min(12px,1.6vh));letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500}
.hg-who small{font-family:var(--mono);font-size:max(10.5px,min(11px,1.45vh));letter-spacing:.08em;text-transform:uppercase;color:var(--grey)}
#p1 .rule,#p1 .beam,#p1 .st::after{display:none}
@media(max-height:720px){.hx{row-gap:2.4vh}.vg{gap:3vh}.vg-c{gap:6px}.hg-d{font-size:12.5px;line-height:1.4}.hg-who{padding-top:12px}.hg-who img{height:3.8vh;margin-bottom:3px}#p1 h2{font-size:max(16px,3vh)}.vg-end{gap:5px}}
@media(max-height:600px){.hg-d{display:none}.hg-who small{display:none}}
@media(max-width:1000px){.hln-i{white-space:normal}.hook{font-size:max(26px,min(5vw,6vh))}.vg{flex-direction:row;gap:28px}.vg-st{flex:1 1 0;min-width:0}.vg-end{margin-top:12px}#p1 .kick{margin-bottom:10px}}
@media(max-width:1000px) and (max-height:680px){.hg-d,.hg-who small{display:none}.hg-who img{height:32px}.vg-end{gap:4px}.hg-who{padding-top:6px}}
@media(max-width:620px){.vg{flex-direction:column}}
@media(max-width:1000px){.hln-i{white-space:normal}.hook{font-size:max(26px,min(5vw,6vh))}.hx{grid-template-columns:1fr;grid-template-rows:none;row-gap:18px;align-content:center}.hg-svg{display:none}.vg-c>*,.vg-end>*,.hg-f span,.hg-who span{opacity:1!important;transform:none!important}.hg-n{opacity:1;transform:none}.vg-end{align-items:flex-start;text-align:left}.hg-who{justify-content:flex-start}.hw-bar{display:none}.hg-who span::before{display:none}}


/* ---------- footer: no sweeping background line ---------- */
.sf-scs::before{display:none!important}
.sf-word span,.page.act2 .sf-word span{animation:none!important;background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important}
.sf-atom{display:block;width:44px;height:44px;flex:none}

/* founder photo slot over the initials */
.cl-fsig image-slot{position:absolute;inset:4px;width:auto;height:auto;border-radius:50%;overflow:hidden}
/* security statements get their glyph */
.ss-n{display:flex;align-items:center;gap:10px}
.ss-i{width:22px;height:22px;flex:none;color:var(--purple-lt)}
.ss:hover .ss-i,.ss:focus-visible .ss-i{color:var(--teal-br)}

/* ---------- pricing ---------- */
.pips{display:none!important}
/* lone wolf: one slower drawing, then it rests — no twinkles or pulses */
.gx-lone .sk,.gx-lone .tp{display:none}
.gx-lone .wo{transition:stroke-dashoffset 2.4s cubic-bezier(.45,.05,.3,1) .3s}
.pzv-home.on .gx-lone .wo{animation:none}
.gx-lone .sep{transition:stroke-dashoffset 1.2s var(--ez2) 1.7s}
.gx-lone .wf{transition:opacity 1s ease 2.2s}
.gx-lone .bear,.gx-lone .ein,.gx-lone .nose{transition:opacity .7s ease 2.4s}
.gx-lone .brow{transition:opacity .6s ease 2.6s}
.gx-lone .tr{transition:stroke-dashoffset 1s var(--ez2);transition-delay:calc(var(--i) * 110ms + 2.4s)}
.gx-lone .nd{transition:opacity .5s ease;transition-delay:calc(var(--i) * 110ms + 3.1s)}
.pzv-home.on .gx-lone .nd{animation:none}
.gx-lone .weye{transition:opacity .8s ease 3.8s}
.gx-lone .eh{animation:none;opacity:.6}

@media(prefers-reduced-motion:reduce){.hook .tc{visibility:visible}.hook .caret{display:none}}

/* step 01: from your files to a module */
.hg-code{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%;padding:10px 12px;border:1px solid var(--line-str);border-radius:8px;background:rgba(8,20,38,.7)}
.hc-fs{display:flex;flex-direction:column;gap:3px;font-family:var(--mono);font-size:max(10.5px,min(11.5px,1.5vh));line-height:1.35;color:var(--grey);white-space:nowrap}
.hc-dir{color:var(--grey-dim);font-size:.92em}
.hc-f{position:relative;padding-left:12px;color:var(--ink);opacity:0;transform:translateX(-6px);transition:opacity .5s ease,transform .6s var(--ez2);transition-delay:calc(1s + var(--i) * .25s)}
.hc-f::before{content:"";position:absolute;left:1px;top:50%;width:6px;height:1px;background:var(--grey-dim)}
.vg-st.on .hc-f{opacity:1;transform:none}
.hc-br{width:34px;height:58px;flex:none;align-self:flex-end;overflow:visible}
.hc-br path{fill:none;stroke:rgba(127,119,221,.55);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .8s var(--ez2) 1.9s}
.vg-st.on .hc-br path{stroke-dashoffset:0}
.hc-mod{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border:1px solid rgba(127,119,221,.55);border-radius:6px;background:rgba(91,79,207,.16);opacity:0;transform:scale(.9);transform-origin:0 50%;transition:opacity .5s ease 2.5s,transform .7s cubic-bezier(.2,1.5,.3,1) 2.5s}
.vg-st.on .hc-mod{opacity:1;transform:none}
.hc-mod{min-width:0}.hc-mod b{font-size:13px;font-weight:600;color:var(--ink)}
.hc-mod small{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--purple-lt);white-space:nowrap}
.vg-st[data-s="1"] .hg-f span:nth-child(1){transition-delay:3s}.vg-st[data-s="1"] .hg-f span:nth-child(2){transition-delay:3.15s}.vg-st[data-s="1"] .hg-f span:nth-child(3){transition-delay:3.3s}.vg-st[data-s="1"] .hg-f span:nth-child(4){transition-delay:3.45s}.vg-st[data-s="1"] .hg-f span:nth-child(5){transition-delay:3.6s}
.vg-st.on[data-s="1"] .hg-f span:nth-child(1){animation-delay:3.1s}.vg-st.on[data-s="1"] .hg-f span:nth-child(2){animation-delay:3.25s}.vg-st.on[data-s="1"] .hg-f span:nth-child(3){animation-delay:3.4s}.vg-st.on[data-s="1"] .hg-f span:nth-child(4){animation-delay:3.55s}.vg-st.on[data-s="1"] .hg-f span:nth-child(5){animation-delay:3.7s}
.hg-f span{font-size:max(10px,min(10.5px,1.4vh));padding:2px 7px}
@media(max-height:720px){.hg-code{padding:7px 10px}.hc-br{height:48px}}
@media(max-width:1000px){.hc-br,.hc-dir{display:none}.hg-code{flex-direction:column;align-items:flex-start}.hc-fs{flex-direction:row;flex-wrap:wrap;gap:2px 8px;white-space:normal}.hc-f{padding-left:0}.hc-f::before{display:none}}

/* the graph as a wide ">" — 02 steps out to the right */
@media(min-width:1001px){
.vg{gap:clamp(30px,6vh,72px)}
.vg-st[data-s="2"]{margin-left:clamp(56px,7vw,130px)}
.vg-st[data-s="1"],.vg-st[data-s="3"]{margin-right:clamp(24px,3vw,60px)}
#p1 .vg h2{font-size:max(20px,min(clamp(24px,2.2vw,34px),4vh))}
#p1 .num{font-size:12.5px}
.hg-d{font-size:max(14px,min(16px,2vh))}
.hg-n{width:16px;height:16px}.vg-st{grid-template-columns:16px minmax(0,1fr)}
.hg-who img{height:min(52px,6vh)}
}

/* step 03: "knowledge" flows into the team and the agents */
#p1 .hg-t1,#p1 .hg-t2{font-family:var(--disp);font-weight:700;letter-spacing:-.02em;line-height:1.18;color:var(--ink)}
#p1 .hg-t2{font-size:max(17px,min(clamp(19px,1.6vw,26px),3.2vh));color:var(--grey)}
.hg-kw{color:transparent;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(100deg,#dcd8ff 0,#dcd8ff 30%,#c4f5e3 50%,#dcd8ff 70%,#dcd8ff 100%);background-size:260% 100%;background-position:100% 0}
#p1.g-kf .hg-kw{animation:phShine 6s cubic-bezier(.45,.05,.35,1) infinite}
.vg-st[data-s="3"] .hg-who{margin-top:22px;gap:clamp(36px,4vw,64px)}
.hg-kf{fill:none;stroke:rgba(200,196,255,.6);stroke-width:1.2;stroke-linecap:round;stroke-dasharray:1.5 7;opacity:0;transition:opacity 1s ease;animation:hgKf 2.4s linear infinite}
@keyframes hgKf{to{stroke-dashoffset:-34}}
#p1.g-kf .hg-kf{opacity:.8}
#p1.g-kf .hg-who img{animation:hgRecv 3.2s ease-in-out infinite}

.hg-kw{position:relative;display:inline-block}
.hg-kw::after{content:"";position:absolute;left:0;right:0;bottom:-.04em;height:2px;border-radius:2px;background:linear-gradient(90deg,#16C990,#b4aef0);box-shadow:0 0 8px rgba(22,201,144,.5);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.5,0,.2,1) 1s}
.vg-st.on .hg-kw::after{transform:none}
.vg-st[data-s="3"] .hg-who{margin-top:26px}

.hg-who{align-items:center}
.hg-pa{font-style:normal;font-family:var(--disp);font-weight:700;font-size:max(17px,min(clamp(19px,1.7vw,26px),3.2vh));letter-spacing:-.02em;line-height:1.15;color:var(--ink);max-width:7em;opacity:0;transform:translateX(-8px);transition:opacity .8s ease 1.8s,transform 1s var(--ez2) 1.8s}
.vg-st.on .hg-pa{opacity:1;transform:none}
@media(min-width:1001px){#p1 .vg-st[data-s="3"] .hg-t1{white-space:nowrap;font-size:max(18px,min(1.9vw,3.6vh,30px))}}
.vg-st[data-s="3"] .hg-who{margin-top:34px}
.hg-who{flex-wrap:wrap;row-gap:14px}
.vg-st[data-s="3"] .hg-who{gap:14px clamp(22px,2.6vw,48px)}
.hg-pa{flex:1 0 7em;max-width:none}
@media(max-width:1000px){.hg-pa{flex-basis:100%}}
@media(max-width:1000px){.hg-sig{white-space:normal;flex-wrap:wrap;max-width:100%;row-gap:2px}}
.hg-pa{align-self:flex-start;margin-top:-18px;line-height:1.18}
@media(min-width:1001px){#p1 .vg-st[data-s="3"] .hg-pa{font-size:max(18px,min(1.9vw,3.6vh,30px))}}
@media(max-width:1000px){.hg-pa{margin-top:0}}
@media(min-width:1001px){.hx{grid-template-columns:minmax(0,1.38fr) minmax(0,.62fr)}.hook{font-size:max(32px,min(5.45vw,10.4vh,116px));line-height:1.02}#p1 .kick{font-size:max(13px,min(16px,2vh))}}
@media(min-width:1001px){
.vg-st[data-s="1"]{margin-left:clamp(-90px,-5vw,-40px);margin-right:0}
.vg-st[data-s="1"] h2{font-size:max(22px,min(clamp(26px,2.5vw,38px),4.4vh))!important}
.vg-st[data-s="1"] .hg-code{padding:12px 16px;gap:12px}
.vg-st[data-s="1"] .hc-fs{font-size:max(12px,min(13.5px,1.75vh))}
.vg-st[data-s="1"] .hc-br{width:42px;height:66px}
.vg-st[data-s="1"] .hc-mod{padding:9px 13px}.vg-st[data-s="1"] .hc-mod b{font-size:15px}.vg-st[data-s="1"] .hc-mod small{font-size:11.5px}
.vg-st[data-s="1"] .hg-f span{font-size:max(11px,min(12px,1.6vh));padding:3px 9px}
}
@media(min-width:1001px){
.vg-st[data-s="1"]{margin-left:clamp(-140px,-8vw,-60px)}
.vg-st[data-s="1"] h2{font-size:max(24px,min(clamp(28px,2.8vw,42px),4.8vh))!important}
.vg-st[data-s="1"] .num{font-size:14px}
.vg-st[data-s="1"] .hg-code{padding:14px 18px;gap:14px}
.vg-st[data-s="1"] .hc-fs{font-size:max(13px,min(14.5px,1.9vh))}
.vg-st[data-s="1"] .hc-br{width:48px;height:72px}
.vg-st[data-s="1"] .hc-mod{padding:10px 15px}.vg-st[data-s="1"] .hc-mod b{font-size:16.5px}.vg-st[data-s="1"] .hc-mod small{font-size:12px}
.vg-st[data-s="1"] .hg-f span{font-size:max(11.5px,min(13px,1.7vh));padding:3px 10px}
}
@media(min-width:1001px){
.hx{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)}
.hook{font-size:max(32px,min(4.95vw,10vh,106px))}
.vg-st[data-s="1"]{margin-left:clamp(-90px,-5vw,-40px)}
}
@media(min-width:1001px){
.vg-st[data-s="2"] h2{font-size:max(24px,min(clamp(28px,2.8vw,42px),4.8vh))!important}
.vg-st[data-s="2"] .num{font-size:14px}
.vg-st[data-s="2"] .hg-d{font-size:max(15px,min(17.5px,2.2vh));line-height:1.5;max-width:30em}
.vg-st[data-s="2"] .hg-sig{font-size:max(12px,min(13.5px,1.8vh));padding:5px 12px}
}
@media(min-width:1001px){
#p1 .vg-st[data-s="3"] .hg-t1,#p1 .vg-st[data-s="3"] .hg-pa{font-size:max(22px,min(2.3vw,4.2vh,38px))}
.vg-st[data-s="3"] .num{font-size:14px}
.vg-st[data-s="3"] .hg-who img{height:min(68px,7.6vh)}
.vg-st[data-s="3"] .hg-who b{font-size:max(12px,min(14px,1.8vh))}
.vg-st[data-s="3"] .hg-who small{font-size:max(11.5px,min(12.5px,1.65vh))}
}
@media(min-width:1001px){.vg-st[data-s="1"]{margin-left:calc(clamp(-90px,-5vw,-40px) - 100px)}}
@media(min-width:1001px){.vg-st[data-s="3"]{position:relative;left:-150px}}
/* staircase: 01 → 02 → 03, each a step further right */
@media(min-width:1001px){
.vg-st[data-s="1"]{margin-left:clamp(-200px,-10vw,-90px)!important;margin-right:0!important}
.vg-st[data-s="2"]{margin-left:clamp(-80px,-4vw,-30px)!important;margin-right:0!important}
.vg-st[data-s="3"]{left:0!important;margin-left:clamp(30px,2.5vw,50px)!important;margin-right:0!important}
}
/* the phrase, defined: 01 02 03 marked on its underline as each step lights */
.hg-dt{opacity:0;transform-box:fill-box;transition:opacity .6s ease}
.hg-dt.on{opacity:1}
.hg-dt line{stroke:rgba(200,196,255,.45);stroke-width:1}
.hg-dt circle{fill:#dcd8ff;opacity:.9}
.hg-dt.on circle{animation:hgDtPop .9s ease-out}
@keyframes hgDtPop{0%{r:6;fill:#16C990;opacity:1}100%{r:2.4;fill:#dcd8ff;opacity:.9}}
.hg-dt text{font-family:var(--mono);font-size:11px;letter-spacing:.12em;fill:rgba(200,196,255,.75);text-anchor:middle}
