@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-italic.CsGl1sm0.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/ibm-plex-sans-latin-700-normal.Bxkt5Cjx.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-700-normal.Bth3BMcD.woff)format("woff")}@font-face{font-family:IBM Plex Sans Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-condensed-latin-500-normal.BqaLkUoX.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-latin-500-normal.BLe87hIu.woff)format("woff")}@font-face{font-family:IBM Plex Sans Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-condensed-latin-600-normal.CRd5VyFf.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-latin-600-normal.6XnkKYvF.woff)format("woff")}@font-face{font-family:IBM Plex Sans Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/ibm-plex-sans-condensed-latin-700-normal.D8r4s4aS.woff2)format("woff2"),url(/_astro/ibm-plex-sans-condensed-latin-700-normal.D3enqrvP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-600-normal.BgSNZQsw.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-600-normal.DWFSQ4vo.woff)format("woff")}:root{--bg:#f4f3ee;--surface:#fcfcfb;--surface-2:#eeece5;--ink:#0b0b0b;--ink-2:#3d3b36;--ink-3:#625f57;--line:#dbd8ce;--line-2:#c9c5b8;--rule:#0b0b0b0e;--accent:#eb6834;--accent-ink:#b0411a;--accent-soft:#fbe3d6;--on-accent:#0b0b0b;--pink:#e87ba4;--pink-ink:#a3375f;--pink-soft:#f9e1ea;--amber:#b97a00;--amber-ink:#875800;--amber-soft:#f5e6c3;--good:#277146;--good-soft:#dcefe1;--pip-shell:#fffaf2;--pip-line:#1b1a17;--pip-visor:#24211d;--pip-glow:#ffcfb3;--pip-lens:#ffe3a6;--pip-tool:#5a564e;--pip-paper:#fff;--shadow:0 1px 0 #0b0b0b0a,0 10px 30px -16px #281e1447;--f-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-cond:"IBM Plex Sans Condensed","Arial Narrow","IBM Plex Sans",system-ui,sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;--r:12px;--max:1240px;--focus-ring:#eb6834;--focus-width:2px;--focus-offset:2px;--target-min:24px;--motion:.4s;--motion-ease:cubic-bezier(.2,.8,.2,1);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d0d0d;--surface:#1a1a19;--surface-2:#232321;--ink:#f2f0ea;--ink-2:#d0cdc4;--ink-3:#a39f95;--line:#2f2e2b;--line-2:#403e3a;--rule:#ffffff09;--accent:#eb6834;--accent-ink:#ff8d60;--accent-soft:#3a2015;--on-accent:#0b0b0b;--pink:#e87ba4;--pink-ink:#f3a6c4;--pink-soft:#3a1d29;--amber:#e0a630;--amber-ink:#efc062;--amber-soft:#33280f;--good:#6cc790;--good-soft:#15291c;--pip-shell:#f7f0e4;--pip-paper:#f4f1ea;--shadow:0 1px 0 #00000080,0 12px 30px -16px #000c;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d0d0d;--surface:#1a1a19;--surface-2:#232321;--ink:#f2f0ea;--ink-2:#d0cdc4;--ink-3:#a39f95;--line:#2f2e2b;--line-2:#403e3a;--rule:#ffffff09;--accent:#eb6834;--accent-ink:#ff8d60;--accent-soft:#3a2015;--on-accent:#0b0b0b;--pink:#e87ba4;--pink-ink:#f3a6c4;--pink-soft:#3a1d29;--amber:#e0a630;--amber-ink:#efc062;--amber-soft:#33280f;--good:#6cc790;--good-soft:#15291c;--pip-shell:#f7f0e4;--pip-paper:#f4f1ea;--shadow:0 1px 0 #00000080,0 12px 30px -16px #000c;color-scheme:dark}.pip[data-pip-theme=light]{--pip-shell:#fffaf2;--pip-paper:#fff}.pip[data-pip-theme=dark]{--pip-shell:#f7f0e4;--pip-paper:#f4f1ea}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px}[hidden]{display:none!important}body{background-color:var(--bg);background-image:repeating-linear-gradient(to bottom,transparent 0 31px,var(--rule) 31px 32px);color:var(--ink);font:400 16px/1.55 var(--f-sans);overflow-x:hidden}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:60;background:var(--surface);position:fixed;inset:0 0 auto}h1,h2,h3,h4{text-wrap:balance;letter-spacing:-.018em;margin:0;font-weight:600;line-height:1.12}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);border-radius:6px}[tabindex="-1"]:focus{outline:none}.wrap{max-width:var(--max);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0 auto}.skip{z-index:99;background:var(--ink);color:var(--bg);border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:16px}.mono{font-family:var(--f-mono);font-feature-settings:"zero" 1}.tnum{font-variant-numeric:tabular-nums}.kicker{font:600 12.5px/1.2 var(--f-cond);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3)}.kicker.hot{color:var(--accent-ink)}.lede{color:var(--ink-2);max-width:62ch;font-size:clamp(17px,1.6vw,19px);line-height:1.6}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.nav{top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:saturate(1.2)blur(10px);border-bottom:1px solid var(--line);position:sticky}.nav .wrap{align-items:center;gap:20px;min-height:64px;display:flex}.brand{letter-spacing:-.02em;flex:none;align-items:center;gap:10px;font-size:19px;font-weight:700;text-decoration:none;display:flex}.brand .pip{--s:38px}.brand b{font-weight:700}.brand span.tld{color:var(--accent-ink);font-weight:600}.navlinks{gap:4px;margin:0 0 0 12px;padding:0;list-style:none;display:flex}.navlinks a{color:var(--ink-2);white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:15px;font-weight:500;text-decoration:none;display:block}.navlinks a:hover{background:var(--surface-2);color:var(--ink)}.navlinks a[aria-current=page]{color:var(--ink);background:var(--surface-2);box-shadow:inset 0 -2px 0 var(--accent)}.nav-right{align-items:center;gap:8px;margin-left:auto;display:flex}.iconbtn{border:1px solid var(--line);background:var(--surface);cursor:pointer;height:38px;color:var(--ink-2);border-radius:9px;align-items:center;gap:6px;padding:0 12px;font-size:13.5px;display:inline-flex}.iconbtn:hover{border-color:var(--line-2);color:var(--ink)}.iconbtn svg{width:16px;height:16px}.menu-btn,.menu-panel{display:none}@media (width>=821px) and (width<=1000px){.navlinks{gap:2px;margin-left:4px}.navlinks a{padding:8px 9px}.theme-cycle .lbl{display:none}}@media (width<=820px){.navlinks{display:none}.menu-btn{display:inline-flex}.theme-cycle .lbl{display:none}.menu-panel:not([hidden]){border-top:1px solid var(--line);background:var(--surface);display:block}.menu-panel ul{gap:2px;margin:0;padding:8px 0 14px;list-style:none;display:grid}.menu-panel a{border-bottom:1px solid var(--line);padding:12px 4px;font-weight:500;text-decoration:none;display:block}.menu-panel a[aria-current=page]{color:var(--accent-ink)}}@media (width<=420px){.nav .wrap{gap:8px}.nav-right{gap:6px}.brand{gap:7px}.brand .pip{--s:32px}.brand .word{font-size:17px}.btn.sm{padding:0 11px}.iconbtn{padding:0 9px}}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 20px;font-size:15.5px;font-weight:600;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 1px #0000001f,inset 0 -2px #00000024}.btn.primary:hover{background:color-mix(in srgb,var(--accent) 88%,var(--ink))}.btn.ghost{background:var(--surface);border-color:var(--line-2);color:var(--ink)}.btn.ghost:hover{border-color:var(--ink-3)}.btn.sm{border-radius:9px;height:38px;padding:0 14px;font-size:14px}.btn.ink{background:var(--ink);color:var(--bg)}.btn svg{flex:none;width:16px;height:16px}main{display:block}.view{padding-block:0 24px}.section{padding-block:clamp(48px,7vw,88px) 0}.sec-head{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:end;gap:24px 48px;margin-bottom:32px;display:grid}.sec-head h2{font-size:clamp(28px,3.4vw,40px)}.sec-head .kicker{margin-bottom:12px}@media (width<=820px){.sec-head{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.chip{height:24px;font:500 12px/1 var(--f-mono);border:1px solid var(--line);color:var(--ink-2);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.chip.dot:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.chip.ok{color:var(--good);background:var(--good-soft);border-color:#0000}.chip.go{color:var(--accent-ink);background:var(--accent-soft);border-color:#0000}.chip.ask{color:var(--pink-ink);background:var(--pink-soft);border-color:#0000}.chip.wait{color:var(--amber-ink);background:var(--amber-soft);border-color:#0000}.illus{font:600 11px/1 var(--f-cond);letter-spacing:.12em;text-transform:uppercase;color:var(--amber-ink);background:var(--amber-soft);border-radius:5px;align-items:center;gap:6px;padding:5px 8px;display:inline-flex}.bar{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;height:8px;overflow:hidden}.bar>i{height:100%;width:var(--v,0%);background:var(--accent);border-radius:inherit;transition:width 1.2s cubic-bezier(.2,.8,.2,1);display:block}.bar.ok>i{background:var(--good)}.pip{width:var(--s,96px);aspect-ratio:1;flex:none;max-width:100%;line-height:0;display:inline-block}.pip svg{width:100%;height:100%;overflow:visible}.ps{fill:var(--pip-shell);stroke:var(--pip-line);stroke-width:3px;stroke-linejoin:round}.pa{fill:var(--accent);stroke:var(--pip-line);stroke-width:3px;stroke-linejoin:round}.pstrap{fill:none;stroke:var(--accent);stroke-width:6px;stroke-linecap:round}.pg{fill:var(--pip-lens);stroke:var(--pip-line);stroke-width:3px}.ph{fill:none;stroke:#fff;stroke-width:2.2px;stroke-linecap:round;opacity:.9}.pl{fill:none;stroke:var(--pip-line);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.pv{fill:var(--pip-visor);stroke:var(--pip-line);stroke-width:3px}.pk{fill:var(--pink);opacity:.85}.pe{fill:var(--pip-glow)}.pm{fill:none;stroke:var(--pip-glow);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.pmf{fill:var(--pip-glow)}.parm{fill:none;stroke:var(--pip-line);stroke-width:10px;stroke-linecap:round}.parm-i{fill:none;stroke:var(--pip-shell);stroke-width:4.5px;stroke-linecap:round}.pt{fill:var(--pip-tool);stroke:var(--pip-line);stroke-width:2.5px;stroke-linejoin:round}.ppaper{fill:var(--pip-paper);stroke:var(--pip-line);stroke-width:2.5px;stroke-linejoin:round}.pcheck{fill:none;stroke:var(--good);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.pbub{fill:var(--pip-paper);stroke:var(--pip-line);stroke-width:2.5px;stroke-linejoin:round}.pbub-t{font:700 17px var(--f-mono);fill:var(--pink-ink)}.cf1{fill:var(--accent)}.cf2{fill:var(--pink)}.cf3{fill:var(--amber)}.spark{fill:var(--amber);stroke:var(--pip-line);stroke-width:1.5px;stroke-linejoin:round}.motion{fill:none;stroke:var(--ink-3);stroke-width:2.2px;stroke-linecap:round}.prop{transform-origin:60px 11px;animation:.5s linear infinite spin}@keyframes spin{0%,to{transform:scaleX(1)}50%{transform:scaleX(.15)}}.pip.bob svg{animation:3.2s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.hero{padding-block:clamp(36px,6vw,72px) 8px}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(28px,5vw,64px);display:grid}.hero h1{letter-spacing:-.035em;margin:18px 0 22px;font-size:clamp(38px,6.2vw,74px);font-weight:600;line-height:1}.hero h1 em{color:var(--accent-ink);white-space:nowrap;font-style:normal;position:relative}.hero h1 em:after{content:"";background:var(--accent);opacity:.55;border-radius:2px;height:.09em;position:absolute;bottom:.04em;left:0;right:0}.cta-row{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero-meta{font:500 13px/1.3 var(--f-mono);color:var(--ink-3);flex-wrap:wrap;gap:8px 18px;margin-top:28px;display:flex}.hero-meta span{align-items:center;gap:8px;display:inline-flex}.hero-meta span:before{content:"";background:var(--accent);border-radius:1px;width:6px;height:6px;transform:rotate(45deg)}@media (width<=900px){.hero-grid{grid-template-columns:1fr}}.strip{padding:20px;position:relative;overflow:visible}.strip-top{border-bottom:1px dashed var(--line-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-bottom:14px;display:flex}.strip-body{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding-top:16px;display:grid}.strip-body .pip{--s:104px}.strip h3{margin-bottom:6px;font-size:19px}.strip .note{color:var(--ink-2);font-size:14.5px}.strip .counts{font:500 12.5px var(--f-mono);color:var(--ink-3);justify-content:space-between;margin:14px 0 6px;display:flex}.strip .counts b{color:var(--ink);font-weight:600}.ticks{grid-template-columns:repeat(26,1fr);gap:3px;margin-top:12px;display:grid}.ticks i{background:var(--surface-2);border:1px solid var(--line);border-radius:2px;height:16px}.ticks i.on{background:var(--accent);border-color:#0000;animation:.4s backwards pop}.ticks i.on:first-child{animation-delay:0s}.ticks i.on:nth-child(2){animation-delay:45ms}.ticks i.on:nth-child(3){animation-delay:90ms}.ticks i.on:nth-child(4){animation-delay:.135s}.ticks i.on:nth-child(5){animation-delay:.18s}.ticks i.on:nth-child(6){animation-delay:.225s}.ticks i.on:nth-child(7){animation-delay:.27s}.ticks i.on:nth-child(8){animation-delay:.315s}.ticks i.on:nth-child(9){animation-delay:.36s}.ticks i.on:nth-child(10){animation-delay:.405s}.ticks i.on:nth-child(11){animation-delay:.45s}.ticks i.on:nth-child(12){animation-delay:.495s}.ticks i.on:nth-child(13){animation-delay:.54s}.ticks i.on:nth-child(14){animation-delay:.585s}.ticks i.on:nth-child(15){animation-delay:.63s}.ticks i.on:nth-child(16){animation-delay:.675s}.ticks i.on:nth-child(17){animation-delay:.72s}.ticks i.on:nth-child(18){animation-delay:.765s}.ticks i.on:nth-child(19){animation-delay:.81s}.ticks i.on:nth-child(20){animation-delay:.855s}.ticks i.on:nth-child(21){animation-delay:.9s}.ticks i.on:nth-child(22){animation-delay:.945s}.ticks i.on:nth-child(23){animation-delay:.99s}.ticks i.on:nth-child(24){animation-delay:1.035s}.ticks i.on:nth-child(25){animation-delay:1.08s}.ticks i.on:nth-child(26){animation-delay:1.125s}@keyframes pop{0%{opacity:0;transform:scaleY(.2)}}.strip-foot{border-top:1px solid var(--line);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:16px;padding-top:12px;font-size:13.5px;display:flex}.strip-foot a{color:var(--accent-ink);font-weight:600;text-decoration:none}.strip-foot a:hover{text-decoration:underline}.strip-tag{position:absolute;top:-12px;right:18px}@media (width<=460px){.strip-body{grid-template-columns:1fr}.strip-body .pip{--s:84px}}.proof{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(40px,6vw,64px);display:grid}.proof div{color:var(--ink-2);gap:4px;padding:18px 18px 18px 0;font-size:14px;display:grid}.proof div+div{border-left:1px solid var(--line);padding-left:18px}.proof b{color:var(--ink);font-size:15px;font-weight:600}@media (width<=820px){.proof{grid-template-columns:1fr 1fr}.proof div:nth-child(3){border-left:0;padding-left:0}.proof div:nth-child(n+3){border-top:1px solid var(--line)}}@media (width<=460px){.proof{grid-template-columns:1fr}.proof div,.proof div+div{border-left:0;padding-left:0}.proof div+div{border-top:1px solid var(--line)}}.svc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.svc{grid-template-rows:auto auto 1fr auto;gap:10px;padding:22px 22px 20px;transition:transform .2s,border-color .2s;display:grid;position:relative}.svc:hover{border-color:var(--line-2);transform:translateY(-2px)}.svc .code{font:500 11.5px var(--f-mono);color:var(--ink-3);position:absolute;top:20px;right:20px}.svc .ico{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-ink);border-radius:10px;place-items:center;display:grid}.svc .ico svg{width:22px;height:22px}.svc h3{margin-top:6px;font-size:19px}.svc p{color:var(--ink-2);font-size:15px}.svc .fit{color:var(--ink-3);border-top:1px dashed var(--line-2);padding-top:10px;font-size:13.5px}.svc .fit b{font:600 11.5px var(--f-cond);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-right:6px}@media (width<=980px){.svc-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.svc-grid{grid-template-columns:1fr}}.route{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:0;padding:26px 0 4px;display:grid;position:relative}.route:before{content:"";border-top:2px dashed var(--line-2);position:absolute;top:42px;left:4%;right:4%}.route li{text-align:center;justify-items:center;gap:8px;font-size:14px;font-weight:600;list-style:none;display:grid;position:relative}.route li .n{background:var(--surface);border:2px solid var(--ink);width:34px;height:34px;font:600 12px var(--f-mono);z-index:1;border-radius:50%;place-items:center;display:grid;position:relative}.route li.fac .n{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.route li small{font:400 12.5px/1.35 var(--f-sans);color:var(--ink-3);max-width:15ch;display:block}.route-wrap{padding:8px 24px 24px}@media (width<=760px){.route{grid-template-columns:1fr;grid-auto-flow:row;gap:14px;padding-left:4px}.route:before{border-top:0;border-left:2px dashed var(--line-2);inset:20px auto 20px 21px}.route li{text-align:left;grid-template-columns:auto 1fr;place-items:center start;column-gap:14px}.route li small{grid-column:2;max-width:none}}.pip-states{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.pstate{text-align:center;justify-items:center;gap:10px;padding:18px 14px 16px;display:grid}.pstate .pip{--s:118px}.pstate h3{font-size:16px}.pstate p{color:var(--ink-2);font-size:13.5px}.pstate .chip{margin-top:2px}@media (width<=980px){.pip-states{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.pip-states{grid-template-columns:1fr 1fr}.pstate .pip{--s:96px}}.pip-intro{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;display:grid}.pip-intro .pip{--s:150px}@media (width<=600px){.pip-intro{grid-template-columns:1fr}.pip-intro .pip{--s:110px}}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.case-sm{grid-template-rows:auto auto 1fr auto;gap:12px;padding:20px;display:grid}.case-sm h3{font-size:18px}.case-sm p{color:var(--ink-2);font-size:14.5px}.case-sm .meta{font:500 12.5px var(--f-mono);color:var(--ink-3);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.case-sm .tag{font:600 11.5px var(--f-cond);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-ink)}.textlink{color:var(--accent-ink);font-weight:600;text-decoration:none}.textlink:hover{text-decoration:underline}@media (width<=980px){.case-grid{grid-template-columns:1fr 1fr}}@media (width<=640px){.case-grid{grid-template-columns:1fr}}footer.site{border-top:1px solid var(--line);background:var(--surface);margin-top:clamp(56px,8vw,96px)}.range{width:100%;max-width:100%;height:auto;color:var(--line-2);display:block}.foot{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:28px;padding-block:28px 36px;display:grid}.foot h4{font:600 12px var(--f-cond);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}.foot ul{gap:6px;margin:0;padding:0;font-size:14.5px;list-style:none;display:grid}.foot a{color:var(--ink-2);text-decoration:none}.foot a:hover{color:var(--ink);text-decoration:underline}.foot .coords{font:500 12.5px/1.7 var(--f-mono);color:var(--ink-3);margin-top:10px}.foot-base{border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:8px;padding-block:14px 22px;font-size:13px;display:flex}.foot-legal{flex-wrap:wrap;gap:4px 14px;display:flex}.foot-legal a{color:var(--ink-3)}.foot-legal a:hover{color:var(--ink)}@media (width<=820px){.foot{grid-template-columns:1fr 1fr}}@media (width<=460px){.foot{grid-template-columns:1fr}}.page-head{gap:16px;padding-block:clamp(36px,6vw,64px) 0;display:grid}.page-head h1{letter-spacing:-.03em;max-width:20ch;font-size:clamp(34px,5vw,58px)}.pipeline{margin-top:36px;padding:26px 22px 22px;overflow:hidden}.pipe{grid-template-columns:repeat(5,minmax(0,1fr)) minmax(0,3.4fr) minmax(0,1fr);align-items:stretch;gap:10px;display:grid;position:relative}.pipe:before{content:"";border-top:2px dashed var(--line-2);z-index:0;position:absolute;top:50%;left:3%;right:3%}.stn{z-index:1;border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:center;border-radius:10px;align-content:center;justify-items:center;gap:8px;min-width:0;padding:16px 8px;transition:border-color .2s,transform .2s,background .2s;display:grid;position:relative}.stn:hover{border-color:var(--ink-3);transform:translateY(-2px)}.stn[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.stn .n{font:600 11.5px var(--f-mono);color:var(--ink-3)}.stn b{overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.stn.lit{animation:7s ease-in-out infinite lit}.pipe>.stn:first-child{animation-delay:0s}.pipe>.stn:nth-child(2){animation-delay:.55s}.pipe>.stn:nth-child(3){animation-delay:1.1s}.pipe>.stn:nth-child(4){animation-delay:1.65s}.pipe>.stn:nth-child(5){animation-delay:2.2s}.pipe>.stn:nth-child(6){animation-delay:2.75s}.pipe>.stn:nth-child(7){animation-delay:3.3s}@keyframes lit{0%,8%,to{box-shadow:0 0 #0000}4%{box-shadow:0 0 0 3px var(--accent-soft)}}.factory{z-index:1;border:2px solid var(--accent);background:var(--surface);cursor:pointer;text-align:left;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);align-items:center;gap:8px;padding:12px 12px 10px;display:grid;position:relative}.factory[aria-pressed=true]{background:var(--accent-soft)}.factory .lbl{align-content:center;gap:6px;padding-left:6px;display:grid}.factory .lbl b{font-size:16px}.factory .lbl small{color:var(--ink-2);font-size:12.5px;line-height:1.4}.loop{justify-self:center;width:100%;min-width:150px;max-width:200px;height:auto}.loop text{font:600 11px var(--f-sans);fill:var(--ink)}.loop .ring{fill:none;stroke:var(--line-2);stroke-width:2px;stroke-dasharray:4 5}.loop .node{fill:var(--surface);stroke:var(--ink);stroke-width:2px;transition:fill .3s,stroke .3s}.loop .node.on{fill:var(--accent);stroke:var(--accent)}.loop .ctr{font:600 10px var(--f-mono);fill:var(--ink-3)}.loop .ctr-n{font:600 16px var(--f-mono);fill:var(--ink)}.loop .arrow{fill:var(--ink-3)}.runner{transform-origin:110px 110px;transition:transform .85s cubic-bezier(.5,0,.3,1)}.runner circle{fill:var(--accent);stroke:var(--surface);stroke-width:3px}.pipe.flat{grid-template-columns:repeat(6,minmax(0,1fr))}.proof.sandbox{margin-top:0}.tray{font:500 11.5px var(--f-mono);color:var(--ink-3);border-top:1px dashed var(--line-2);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:4px;padding:6px 6px 0;display:flex}.tray i{background:var(--surface-2);border:1px solid var(--line-2);border-radius:2px;width:10px;height:10px}.tray i.on{background:var(--good);border-color:#0000}@media (width<=1060px){.pipe{grid-template-columns:repeat(5,minmax(0,1fr))}.factory,.pipe>.stn:last-child{grid-column:1/-1}.pipe:before{display:none}.pipe.flat{grid-template-columns:repeat(3,minmax(0,1fr))}.pipe.flat>.stn:last-child{grid-column:auto}}@media (width<=600px){.pipe{grid-template-columns:1fr 1fr}.pipe>.stn:nth-child(5){grid-column:1/-1}.pipe.flat{grid-template-columns:1fr 1fr}.pipe.flat>.stn:nth-child(5){grid-column:auto}.factory{grid-template-columns:1fr}.factory .lbl{padding:4px}}.stages{counter-reset:st;gap:14px;margin-top:28px;display:grid}.stage{grid-template-columns:150px minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px;padding:22px;scroll-margin-top:96px;transition:border-color .3s,box-shadow .3s;display:grid}.stage.flash{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.stage .num{font:600 13px var(--f-mono);color:var(--ink-3)}.stage .num b{font:600 21px var(--f-sans);overflow-wrap:anywhere;color:var(--ink);letter-spacing:-.02em;margin-top:4px;display:block}.stage p{color:var(--ink-2);font-size:15px}.stage h4{font:600 11.5px var(--f-cond);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.stage .get{font-size:15px;font-weight:500}.stage .you{color:var(--ink-2);font-size:15px}.stage.fac{border:2px solid var(--accent)}.subloop{grid-column:2/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:4px;display:grid}.subloop div{border:1px dashed var(--line-2);color:var(--ink-2);background:var(--bg);border-radius:10px;padding:12px;font-size:14px}.subloop b{color:var(--ink);align-items:center;gap:8px;margin-bottom:4px;font-size:14.5px;display:flex}.subloop b .pip{--s:30px}@media (width<=980px){.stage{grid-template-columns:1fr 1fr}.stage>.num,.stage>.what{grid-column:1/-1}.subloop{grid-column:1/-1;grid-template-columns:1fr 1fr}}@media (width<=560px){.stage,.subloop{grid-template-columns:1fr}}.matrix-wrap{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow);margin-top:24px;overflow-x:auto}table.matrix{border-collapse:collapse;width:100%;min-width:860px;font-size:14px}.matrix th,.matrix td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:14px 16px}.matrix thead th{font:600 12px var(--f-cond);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);background:var(--surface-2);position:sticky;top:0}.matrix tbody th{font:600 13px var(--f-mono);color:var(--accent-ink);white-space:nowrap;width:110px}.matrix td{color:var(--ink-2)}.matrix tr:last-child>*{border-bottom:0}.matrix td+td,.matrix th+th,.matrix th+td{border-left:1px solid var(--line)}.same{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;font-size:14px;display:flex}.filters{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.filters button{border:1px solid var(--line-2);background:var(--surface);cursor:pointer;height:36px;color:var(--ink-2);border-radius:999px;padding:0 14px;font-size:14px;font-weight:500}.filters button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cases{gap:18px;margin-top:22px;display:grid}.case{grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);display:grid;overflow:hidden}.case-side{border-right:1px solid var(--line);background:var(--surface-2);align-content:start;gap:14px;padding:24px;display:grid}.case-side h2{font-size:24px}.case-side .where{font:500 13px var(--f-mono);color:var(--ink-3)}.case-side .type{font:600 12px var(--f-cond);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}.pieces{grid-template-columns:repeat(auto-fill,minmax(12px,1fr));gap:3px;max-width:240px;display:grid}.pieces i{aspect-ratio:1;background:var(--accent);opacity:.85;border-radius:2px}.pieces i.m{background:var(--ink)}.pieces-cap{font:500 12px var(--f-mono);color:var(--ink-3)}.case-main{grid-template-columns:1fr 1fr;align-content:start;gap:18px 28px;padding:24px;display:grid}.case-main h3{font:600 11.5px var(--f-cond);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.case-main p,.case-main li{color:var(--ink-2);font-size:15px}.case-main ul{gap:4px;margin:0;padding-left:18px;display:grid}.case-main .wide{grid-column:1/-1}.timeline-pill{font:600 14px var(--f-mono);background:var(--accent-soft);color:var(--accent-ink);border-radius:9px;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.disclaim{color:var(--ink-3);max-width:80ch;margin-top:18px;font-size:14px}@media (width<=900px){.case{grid-template-columns:1fr}.case-side{border-right:0;border-bottom:1px solid var(--line)}}@media (width<=560px){.case-main{grid-template-columns:1fr}}.rise{animation:.6s cubic-bezier(.2,.8,.2,1) backwards rise}.rise.d1{animation-delay:80ms}.rise.d2{animation-delay:.16s}.rise.d3{animation-delay:.24s}.rise.d4{animation-delay:.32s}@keyframes rise{0%{opacity:.001;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}.sprite{width:0;height:0;position:absolute;overflow:hidden}.sw2{stroke-width:2px}.sw24{stroke-width:2.4px}.sw25{stroke-width:2.5px}.sw35{stroke-width:3.5px}.sw5{stroke-width:5px}.o35{opacity:.35}.fo55{fill-opacity:.55}.lede>p+p{margin-top:.6em}.route-more{text-align:center;margin-top:14px}.pip-intro{margin-bottom:28px}.pip-intro h2{margin:10px 0 12px;font-size:clamp(28px,3.4vw,40px)}.case-sm h3{margin-top:6px}.more{margin-top:18px}.stages{padding:0;list-style:none}.factory .lbl .mono{color:var(--ink-3);font-size:11.5px}.tray .tray-cells{display:contents}.pieces-cap{margin-top:6px}.foot .blurb{color:var(--ink-2);max-width:40ch;margin-top:12px;font-size:14.5px}.foot .coords a{color:inherit}.next-link{margin-top:18px}.textlink,.foot ul a,.foot .coords a,.foot-legal a,.strip-foot a{min-height:var(--target-min);line-height:var(--target-min);display:inline-block}html:not(.js) .needs-js{display:none!important}@media (width<=820px){html:not(.js) .nav .wrap{flex-wrap:wrap;row-gap:0}html:not(.js) .navlinks{width:100%;margin-left:0;padding-bottom:8px;display:flex}}
