@font-face{font-family:Geist;src:url(/fonts/geist-latin-wght.woff2)format("woff2-variations"),url(/fonts/geist-latin-wght.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-wght.woff2)format("woff2-variations"),url(/fonts/jetbrains-mono-latin-wght.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}@font-face{font-family:Geist Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);size-adjust:104%;ascent-override:92%;descent-override:22%;line-gap-override:0%}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--obsidian:#080d18;--midnight:#111b30;--midnight-2:#16233d;--midnight-3:#1d2c4a;--cyan:#43d5f4;--cyan-strong:#7ae2f8;--cyan-deep:#0e7a93;--ice:#f5f8fc;--slate:#a9b9cd;--slate-2:#c6d2e0;--copper:#dfa86c;--copper-soft:#f0c896;--ok:#56e0a0;--warn:#f2c35b;--danger:#ff8a7a;--bg:var(--obsidian);--surface:var(--midnight);--surface-2:var(--midnight-2);--surface-3:var(--midnight-3);--text:var(--ice);--text-muted:var(--slate);--accent:var(--cyan);--accent-2:var(--copper);--line:#a9b9cd29;--line-strong:#a9b9cd52;--focus:#7ae2f8;--font-sans:"Geist", "Geist Fallback", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--fs-hero:clamp(2.75rem, 1.6rem + 4.6vw, 6rem);--fs-h2:clamp(2.125rem, 1.45rem + 2.6vw, 4rem);--fs-h3:clamp(1.375rem, 1.18rem + .6vw, 2rem);--fs-h4:clamp(1.125rem, 1.05rem + .3vw, 1.3125rem);--fs-lede:clamp(1.1875rem, 1.1rem + .4vw, 1.4375rem);--fs-body:clamp(1.0625rem, 1.03rem + .12vw, 1.1875rem);--fs-small:.9375rem;--fs-label:clamp(.8125rem, .79rem + .1vw, .9375rem);--fs-button:clamp(.9375rem, .92rem + .1vw, 1.0625rem);--lh-tight:1.04;--lh-head:1.12;--lh-body:1.6;--track-tight:-.035em;--track-head:-.022em;--track-label:.04em;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--s-10:8rem;--section-y:clamp(5rem, 3rem + 7vw, 10rem);--gutter:clamp(1rem, .4rem + 2.6vw, 3rem);--max:1360px;--max-text:40rem;--r-1:6px;--r-2:10px;--r-3:16px;--r-4:24px;--r-pill:999px;--shadow-1:0 1px 0 #ffffff0a inset, 0 10px 30px -12px #0009;--shadow-2:0 1px 0 #ffffff0f inset, 0 30px 60px -20px #000000bf;--glow:0 0 0 1px #43d5f466, 0 12px 40px -12px #43d5f459;--ease-out:cubic-bezier(.2, .7, .1, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--t-fast:.14s;--t-med:.28s;--t-slow:.7s}@media (prefers-reduced-motion:reduce){:root{--t-fast:0s;--t-med:0s;--t-slow:0s}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"ss01" on, "cv11" on;margin:0;overflow-x:clip}img,svg,video,canvas{max-width:100%;display:block}img{height:auto}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{text-wrap:balance;margin:0;font-weight:600}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0}::selection{color:var(--ice);background:#43d5f459}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.skip-link{left:var(--s-4);z-index:100;background:var(--ice);color:var(--obsidian);padding:var(--s-3) var(--s-4);border-radius:var(--r-2);font-weight:600;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--s-4)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%;max-width:calc(var(--max) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.eyebrow{align-items:center;gap:var(--s-3);font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:var(--track-label);color:var(--cyan);font-weight:500;display:inline-flex}.eyebrow .idx{color:var(--copper)}.eyebrow:before{content:"";opacity:.7;background:currentColor;width:28px;height:1px}.h-hero{font-size:var(--fs-hero);line-height:var(--lh-tight);letter-spacing:var(--track-tight);font-weight:600}.h2{font-size:var(--fs-h2);line-height:var(--lh-head);letter-spacing:var(--track-head);font-weight:600}.h3{font-size:var(--fs-h3);letter-spacing:-.015em;font-weight:600;line-height:1.2}.h4{font-size:var(--fs-h4);letter-spacing:-.01em;font-weight:600;line-height:1.3}.lede{font-size:var(--fs-lede);color:var(--slate-2);max-width:var(--max-text);line-height:1.5}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:.92em}.label{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.02em;color:var(--text-muted)}.accent{color:var(--cyan)}.copper{color:var(--copper)}.grad-text{background:linear-gradient(100deg, var(--ice) 0%, var(--ice) 45%, var(--cyan-strong) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.btn{--bh:52px;justify-content:center;align-items:center;gap:var(--s-2);min-height:var(--bh);padding:0 var(--s-5);border-radius:var(--r-pill);font-size:var(--fs-button);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;transition:transform var(--t-fast) var(--ease-out), background-color var(--t-med), border-color var(--t-med), box-shadow var(--t-med), color var(--t-med);border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.btn svg{width:18px;height:18px;transition:transform var(--t-med) var(--ease-out)}.btn:hover svg{transform:translate(3px)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--cyan);color:#04121a;box-shadow:0 8px 30px -10px #43d5f4b3}.btn-primary:hover{background:var(--cyan-strong);box-shadow:0 10px 36px -8px #43d5f4d9}.btn-ghost{color:var(--ice);border-color:var(--line-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080d1859}.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan-strong)}.btn-sm{--bh:40px;padding:0 var(--s-4);font-size:var(--fs-small)}.btn-row{gap:var(--s-3);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);font-size:var(--fs-small);cursor:pointer;color:var(--slate-2);transition:all var(--t-med) var(--ease-out);background:0 0;font-weight:500;display:inline-flex}.chip:hover{border-color:var(--cyan);color:var(--ice)}.chip[aria-pressed=true],.chip[aria-selected=true]{border-color:var(--cyan);color:var(--ice);background:#43d5f424}.chip .dot{background:currentColor;border-radius:50%;width:8px;height:8px}.site-header{z-index:50;transition:background-color var(--t-med), border-color var(--t-med), backdrop-filter var(--t-med);border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.site-header.scrolled{-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);border-bottom-color:var(--line);background:#080d18c7}.nav{justify-content:space-between;align-items:center;gap:var(--s-5);height:76px;display:flex}.brand{align-items:center;gap:var(--s-3);letter-spacing:-.02em;font-size:1.1875rem;font-weight:650;text-decoration:none;display:inline-flex}.brand svg{width:34px;height:34px}.brand span b{color:var(--cyan);font-weight:650}.nav-links{align-items:center;gap:clamp(var(--s-3), 1.4vw, var(--s-5));list-style:none;display:flex}.nav-links a{font-size:var(--fs-small);color:var(--slate-2);padding:var(--s-2) 0;transition:color var(--t-fast);font-weight:500;text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--cyan);transform-origin:0;height:1px;transition:transform var(--t-med) var(--ease-out);position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a[aria-current=true]{color:var(--ice)}.nav-links a:hover:after,.nav-links a[aria-current=true]:after{transform:scaleX(1)}.nav-cta{align-items:center;gap:var(--s-3);display:flex}.menu-btn{border-radius:var(--r-pill);border:1px solid var(--line-strong);cursor:pointer;background:#080d1880;justify-content:center;align-items:center;width:48px;height:48px;display:none}.menu-btn span,.menu-btn span:before,.menu-btn span:after{background:var(--ice);width:18px;height:1.5px;transition:transform var(--t-med) var(--ease-out), background-color var(--t-fast);border-radius:2px;display:block;position:relative}.menu-btn span:before,.menu-btn span:after{content:"";position:absolute;left:0}.menu-btn span:before{top:-6px}.menu-btn span:after{top:6px}.menu-btn[aria-expanded=true] span{background:0 0}.menu-btn[aria-expanded=true] span:before{transform:translateY(6px)rotate(45deg)}.menu-btn[aria-expanded=true] span:after{transform:translateY(-6px)rotate(-45deg)}.mobile-menu{z-index:49;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--s-6) var(--gutter) var(--s-8);opacity:0;visibility:hidden;transition:opacity var(--t-med) var(--ease-out), transform var(--t-med) var(--ease-out), visibility 0s linear var(--t-med);background:#080d18f7;position:fixed;inset:76px 0 0;overflow-y:auto;transform:translateY(-8px)}.mobile-menu.open{opacity:1;visibility:visible;transition-delay:0s;transform:none}.mobile-menu ul{gap:var(--s-1);list-style:none;display:grid}.mobile-menu a.m-link{align-items:baseline;gap:var(--s-4);padding:var(--s-4) 0;border-bottom:1px solid var(--line);letter-spacing:-.02em;font-size:clamp(1.5rem,1.2rem + 1.5vw,2rem);font-weight:600;text-decoration:none;display:flex}.mobile-menu a.m-link .label{min-width:2.5ch}.mobile-menu .btn{margin-top:var(--s-6);width:100%}@media (max-width:1180px){.nav-links,.nav-cta .btn{display:none}.menu-btn{display:inline-flex}}.hero{isolation:isolate;flex-direction:column;justify-content:flex-end;min-height:max(680px,100svh);display:flex;position:relative;overflow:hidden}.hero-media{z-index:-2;background:#070b13;position:absolute;inset:0}.hero-media picture,.hero-media img,.hero-media canvas{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-media img{object-position:60% 50%}.hero-media canvas{opacity:0;transition:opacity 1.4s var(--ease-in-out)}.hero-media canvas.live{opacity:1}.hero:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg, #080d18f0 0%, #080d18c7 34%, #080d181f 64%, #080d1800 100%), linear-gradient(0deg, var(--bg) 0%, #080d188c 22%, #080d1800 48%), linear-gradient(180deg, #080d18b3 0%, #080d1800 18%);position:absolute;inset:0}@media (max-aspect-ratio:1){.hero:before{background:linear-gradient(180deg, #080d18d1 0%, #080d18b3 22%, #080d18c7 45%, #080d18f2 68%, var(--bg) 100%)}.hero-media img{object-position:50% 40%}}.hero-content{padding-top:140px;padding-bottom:clamp(var(--s-6), 4vw, var(--s-8))}.hero-content .h-hero{max-width:11.5ch;margin-top:var(--s-5)}.hero-content .lede{margin-top:var(--s-5);max-width:34rem;color:var(--slate-2)}.hero-content .btn-row{margin-top:var(--s-6)}.chain{margin-top:clamp(var(--s-7), 6vw, var(--s-9));border-top:1px solid var(--line-strong);grid-template-columns:repeat(5,1fr);gap:0;list-style:none;display:grid}.chain li{padding:var(--s-4) var(--s-4) 0 0;position:relative}.chain li:before{content:"";background:var(--bg);border:1.5px solid var(--cyan);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;left:0}.chain li .label{color:var(--cyan);display:block}.chain li strong{margin-top:var(--s-1);font-weight:600;font-size:var(--fs-small);color:var(--ice);line-height:1.35;display:block}.chain{position:relative}.chain:after{content:"";background:linear-gradient(90deg, transparent, var(--cyan), transparent);width:22%;height:1px;animation:5.5s linear infinite chainflow;position:absolute;top:-1px;left:0}@keyframes chainflow{0%{transform:translate(-100%)}to{transform:translate(460%)}}@media (prefers-reduced-motion:reduce){.chain:after{display:none}}.paused .chain:after,.paused .flow-anim{animation-play-state:paused!important}.hero-foot{justify-content:space-between;align-items:center;gap:var(--s-4);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.hero-foot .label{font-size:.8125rem}.motion-toggle{align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--slate-2);cursor:pointer;background:#080d1880;display:inline-flex}.motion-toggle:hover{border-color:var(--cyan);color:var(--ice)}.motion-toggle svg{width:14px;height:14px}@media (max-width:900px){.chain{row-gap:var(--s-5);border-top:0;grid-template-columns:repeat(2,1fr)}.chain li{border-top:1px solid var(--line-strong)}.chain li:last-child{grid-column:1/-1}.chain:after{display:none}}section.block{padding-block:var(--section-y);position:relative}.section-head{gap:var(--s-6) var(--s-8);margin-bottom:clamp(var(--s-7), 5vw, var(--s-9));grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:end;display:grid}.section-head .h2{margin-top:var(--s-4)}.section-head .lede{justify-self:end}@media (max-width:960px){.section-head{grid-template-columns:1fr}.section-head .lede{justify-self:start}}.divider{background:linear-gradient(90deg, transparent, var(--line-strong), transparent);height:1px}.cap-grid{gap:var(--s-4);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}@media (max-width:1024px){.cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.cap-grid{grid-template-columns:1fr}}.cap{gap:var(--s-4);height:100%;padding:var(--s-6);border-radius:var(--r-3);border:1px solid var(--line);box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease-out), border-color var(--t-med), box-shadow var(--t-med);background:linear-gradient(#16233db3,#111b3080);flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.cap:before{content:"";pointer-events:none;opacity:0;transition:opacity var(--t-med);background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%), #43d5f41f, transparent 60%);position:absolute;inset:0}.cap:hover,.cap:focus-visible{box-shadow:var(--shadow-2);border-color:#43d5f473;transform:translateY(-3px)}.cap:hover:before,.cap:focus-visible:before{opacity:1}.cap .cap-top{justify-content:space-between;align-items:center;display:flex}.cap .icon{width:44px;height:44px;color:var(--cyan);background:#43d5f41a;border:1px solid #43d5f440;border-radius:12px;place-items:center;display:grid}.cap .icon svg{width:22px;height:22px}.cap p{color:var(--slate);font-size:var(--fs-small);line-height:1.55}.cap .go{align-items:center;gap:var(--s-2);font-size:var(--fs-small);color:var(--cyan);margin-top:auto;font-weight:600;display:inline-flex}.cap .go svg{width:16px;transition:transform var(--t-med) var(--ease-out)}.cap:hover .go svg{transform:translate(4px)}.frame{border-radius:var(--r-4);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-2);position:relative;overflow:hidden}.frame picture{width:100%;height:100%;display:block}.frame img{object-fit:cover;width:100%;height:100%}.frame figcaption,.caption{left:var(--s-4);bottom:var(--s-4);right:var(--s-4);gap:var(--s-2);font-family:var(--font-mono);color:var(--slate-2);flex-wrap:wrap;align-items:center;font-size:.8125rem;display:flex;position:absolute}.frame figcaption span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--r-pill);border:1px solid var(--line);background:#080d18d1;padding:4px 10px}.ratio-16x9{aspect-ratio:16/9}.ratio-16x10{aspect-ratio:16/10}.ratio-4x3{aspect-ratio:4/3}.ratio-wide{aspect-ratio:21/9}@media (max-width:640px){.ratio-wide{aspect-ratio:4/3}}.split{gap:clamp(var(--s-6), 5vw, var(--s-9));grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;display:grid}.split.rev{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.split.rev>:first-child{order:2}@media (max-width:1024px){.split,.split.rev{grid-template-columns:1fr}.split.rev>:first-child{order:0}}.stack>*+*{margin-top:var(--s-5)}.spec{border-collapse:collapse;width:100%;font-size:var(--fs-small)}.spec caption{text-align:left;padding-bottom:var(--s-3)}.spec th,.spec td{text-align:left;padding:var(--s-3) 0;border-bottom:1px solid var(--line);vertical-align:top}.spec th{color:var(--slate);width:44%;padding-right:var(--s-4);font-weight:500}.spec td{font-family:var(--font-mono);color:var(--ice);font-size:.9rem}.note{color:var(--slate);font-size:.875rem;line-height:1.55}.note strong{color:var(--slate-2);font-weight:600}.panel{border-radius:var(--r-4);border:1px solid var(--line);box-shadow:var(--shadow-1);background:linear-gradient(#16233da6,#0d1526a6)}.panel-pad{padding:clamp(var(--s-5), 3vw, var(--s-7))}.panel-head{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.panel-head .h4{align-items:center;gap:var(--s-3);display:flex}.badge{border-radius:var(--r-pill);font-family:var(--font-mono);letter-spacing:.02em;border:1px solid var(--line-strong);color:var(--slate-2);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-size:.75rem;display:inline-flex}.badge.demo{color:var(--copper-soft);border-color:#dfa86c80}.badge.ok{color:var(--ok);border-color:#56e0a073}.badge.warn{color:var(--warn);border-color:#f2c35b73}.badge.bad{color:var(--danger);border-color:#ff8a7a73}.tabs{gap:var(--s-2);flex-wrap:wrap;display:flex}[role=tabpanel][hidden]{display:none}.diagram-wrap{position:relative}.diagram{width:100%;height:auto;font-family:var(--font-mono)}.diagram text{fill:var(--slate-2);font-size:13px}.diagram .t-strong{fill:var(--ice);font-weight:600}.diagram .t-accent{fill:var(--cyan)}.diagram .t-copper{fill:var(--copper)}.diagram .stroke{stroke:var(--slate);fill:none;stroke-width:1.4px}.diagram .stroke-cyan{stroke:var(--cyan);fill:none;stroke-width:1.6px}.diagram .stroke-copper{stroke:var(--copper);fill:none;stroke-width:1.6px}.diagram .box{fill:#16233de6;stroke:var(--line-strong)}.diagram .hit{cursor:pointer}.diagram .hit:focus{outline:none}.diagram .hit:focus-visible,.parcel:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.diagram .hit:focus-visible .box,.diagram .hit:hover .box,.diagram .hit.active .box{stroke:var(--cyan);fill:#43d5f41a}.flow-anim{stroke-dasharray:4 10;animation:1.6s linear infinite dash}@keyframes dash{to{stroke-dashoffset:-28px}}@media (prefers-reduced-motion:reduce){.flow-anim{animation:none}}.expand-btn{top:var(--s-3);right:var(--s-3);position:absolute}@media (max-width:640px){.expand-btn{margin-top:var(--s-3);position:static}}dialog.diagram-dialog{border:1px solid var(--line-strong);border-radius:var(--r-4);background:var(--surface);width:min(1400px,96vw);max-height:92vh;color:var(--text);box-shadow:var(--shadow-2);padding:0}dialog.diagram-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#04070dd1}dialog.diagram-dialog .dlg-body{padding:var(--s-5);max-height:calc(92vh - 70px);overflow:auto}.legend-list{gap:var(--s-2);list-style:none;display:grid}.legend-list button{gap:var(--s-3);text-align:left;width:100%;padding:var(--s-3) var(--s-4);border-radius:var(--r-2);border:1px solid var(--line);cursor:pointer;transition:border-color var(--t-fast), background-color var(--t-fast);background:#080d1859;grid-template-columns:14px 1fr auto;align-items:center;display:grid}.legend-list button:hover,.legend-list button[aria-pressed=true]{border-color:var(--cyan);background:#43d5f414}.legend-list .sw{border-radius:3px;width:14px;height:14px}.legend-list .label{font-size:.8125rem}.detail-text{min-height:6.5em}.calc{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;display:grid}@media (max-width:1024px){.calc{grid-template-columns:1fr}}.calc-inputs{padding:clamp(var(--s-5), 3vw, var(--s-7));border-right:1px solid var(--line);gap:var(--s-6);align-content:start;display:grid}@media (max-width:1024px){.calc-inputs{border-right:0;border-bottom:1px solid var(--line)}}.field-range{gap:var(--s-2);display:grid}.field-range .row{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.field-range label{font-weight:500;font-size:var(--fs-small);color:var(--slate-2)}.field-range output,.field-range .num{font-family:var(--font-mono);color:var(--ice);font-size:1rem}.num-input{text-align:right;border-radius:var(--r-1);width:7.5ch;font-family:var(--font-mono);color:var(--ice);background:0 0;border:1px solid #0000;padding:2px 6px;font-size:1rem}.num-input:hover{border-color:var(--line-strong)}.num-input:focus{border-color:var(--cyan);box-shadow:0 0 0 2px var(--focus);background:#43d5f40f;outline:none}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:28px}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--cyan) var(--pct,50%), #a9b9cd38 var(--pct,50%));border-radius:4px;height:4px}input[type=range]::-moz-range-track{background:#a9b9cd38;border-radius:4px;height:4px}input[type=range]::-moz-range-progress{background:var(--cyan);border-radius:4px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ice);border:3px solid var(--cyan);border-radius:50%;width:20px;height:20px;margin-top:-8px;box-shadow:0 0 0 4px #43d5f426}input[type=range]::-moz-range-thumb{background:var(--ice);border:3px solid var(--cyan);border-radius:50%;width:16px;height:16px}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--bg), 0 0 0 6px var(--focus)}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 4px var(--bg), 0 0 0 6px var(--focus)}.presets{gap:var(--s-2);flex-wrap:wrap;display:flex}.presets .chip{min-height:36px;font-size:.875rem}.calc-out{padding:clamp(var(--s-5), 3vw, var(--s-7));gap:var(--s-6);align-content:start;display:grid}.kpis{gap:var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.kpi{padding:var(--s-4) var(--s-5);border-radius:var(--r-3);border:1px solid var(--line);background:#080d1873}.kpi .v{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--ice);font-variant-numeric:tabular-nums;font-size:clamp(1.625rem,1.3rem + 1vw,2.25rem);font-weight:500;line-height:1.15}.kpi .v small{color:var(--slate);letter-spacing:0;white-space:nowrap;font-size:.5em}.kpi .k{margin-top:var(--s-1);color:var(--slate);font-size:.875rem}.rack-grid{grid-template-columns:repeat(40,1fr);gap:3px;display:grid}@media (max-width:640px){.rack-grid{grid-template-columns:repeat(25,1fr)}}.rack-grid i{aspect-ratio:1/1.6;transition:background-color .3s var(--ease-out);background:#a9b9cd1f;border-radius:2px}.rack-grid i.on{background:var(--cyan)}.rack-grid i.on.hot{background:var(--copper)}.cool-rec{gap:var(--s-4);padding:var(--s-4) var(--s-5);border-radius:var(--r-3);background:#43d5f40f;border:1px solid #43d5f44d;align-items:flex-start;display:flex}.cool-rec svg{width:22px;height:22px;color:var(--cyan);flex:none;margin-top:3px}details.assumptions summary{cursor:pointer;font-weight:600;font-size:var(--fs-small);color:var(--slate-2);align-items:center;gap:var(--s-2);min-height:40px;list-style:none;display:flex}details.assumptions summary::-webkit-details-marker{display:none}details.assumptions summary:before{content:"+";font-family:var(--font-mono);color:var(--cyan);width:1ch}details.assumptions[open] summary:before{content:"−"}details.assumptions ul{gap:var(--s-2);padding-left:1.2em;display:grid}details.assumptions li{color:var(--slate);font-size:.875rem}details.assumptions code{font-family:var(--font-mono);color:var(--slate-2);font-size:.85em}.range-chart{gap:var(--s-3);display:grid}.range-row{gap:var(--s-4);grid-template-columns:minmax(150px,.34fr) 1fr;align-items:center;display:grid}@media (max-width:640px){.range-row{gap:var(--s-1);grid-template-columns:1fr}}.range-row .name{font-size:var(--fs-small);color:var(--slate-2)}.range-track{background:#a9b9cd12;border-radius:6px;height:26px;position:relative}.range-bar{transition:opacity var(--t-med);background:linear-gradient(90deg,#43d5f459,#43d5f4cc);border-radius:4px;position:absolute;top:4px;bottom:4px}.range-bar.out{opacity:.28}.range-bar span{font-family:var(--font-mono);color:#04121a;white-space:nowrap;font-size:.75rem;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.range-axis{height:22px;margin-left:calc(min(34%,999px));position:relative}.range-chart .marker{background:var(--copper);width:2px;transition:left .4s var(--ease-out);border-radius:2px;position:absolute;top:-6px;bottom:-6px}.range-axis-row{gap:var(--s-4);grid-template-columns:minmax(150px,.34fr) 1fr;display:grid}@media (max-width:640px){.range-axis-row{grid-template-columns:1fr}.range-axis-row>:first-child{display:none}}.axis{height:20px;font-family:var(--font-mono);color:var(--slate);font-size:.75rem;position:relative}.axis span{position:absolute;transform:translate(-50%)}.axis span:first-child{transform:none}.axis span:last-child{transform:translate(-100%)}.plan-svg .bldg{transition:opacity .5s var(--ease-out), fill .5s}.plan-svg .bldg.future{opacity:.25}.plan-svg .bldg.inactive{opacity:0}.phase-stats{gap:var(--s-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:640px){.phase-stats{grid-template-columns:1fr}}.timeline{gap:var(--s-4);counter-reset:step;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;display:grid}@media (max-width:1024px){.timeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.timeline{grid-template-columns:1fr}}.timeline li{padding:var(--s-5);border-radius:var(--r-3);border:1px solid var(--line);counter-increment:step;background:#111b3080;position:relative}.timeline li:before{content:counter(step, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--copper)}.timeline h4{margin-top:var(--s-2)}.timeline p{margin-top:var(--s-2);color:var(--slate);font-size:.9375rem;line-height:1.55}.si{grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);display:grid}@media (max-width:1024px){.si{grid-template-columns:1fr}}.si-map{border-right:1px solid var(--line);border-radius:var(--r-4) 0 0 var(--r-4);background:#0a1120;position:relative;overflow:hidden}@media (max-width:1024px){.si-map{border-right:0;border-bottom:1px solid var(--line);border-radius:var(--r-4) var(--r-4) 0 0}}.si-map svg{width:100%;height:auto}.si-layers{top:var(--s-4);left:var(--s-4);gap:var(--s-2);max-width:calc(100% - 2 * var(--s-4));flex-wrap:wrap;display:flex;position:absolute}.si-layers label{align-items:center;gap:var(--s-2);min-height:36px;padding:0 var(--s-3);border-radius:var(--r-pill);border:1px solid var(--line-strong);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--slate-2);background:#080d18d9;font-size:.8125rem;display:inline-flex}.si-layers input{accent-color:var(--cyan);width:16px;height:16px}.si-layers label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}@media (max-width:640px){.si-layers{padding:var(--s-3);background:#0a1120;position:static}}.parcel{cursor:pointer}.parcel path{fill:#dfa86c24;stroke:var(--copper);stroke-width:2px;transition:fill var(--t-med)}.parcel:hover path,.parcel:focus-visible path{fill:#dfa86c4d}.parcel.active path{fill:#43d5f438;stroke:var(--cyan);stroke-width:3px}.parcel:focus{outline:none}.parcel:focus-visible path{stroke:var(--focus);stroke-width:3.5px}.parcel text{fill:var(--ice);font-family:var(--font-sans);pointer-events:none;font-size:18px;font-weight:700}.si-detail{padding:clamp(var(--s-5), 2.5vw, var(--s-6));gap:var(--s-5);align-content:start;display:grid}.score-ring{align-items:center;gap:var(--s-5);display:flex}.score-ring svg{flex:none;width:92px;height:92px}.factor{gap:6px;display:grid}.factor .row{justify-content:space-between;gap:var(--s-3);font-size:.9rem;display:flex}.factor .row span:last-child{font-family:var(--font-mono);color:var(--slate-2);text-align:right;font-size:.85rem}.meter{background:#a9b9cd24;border-radius:6px;height:6px;overflow:hidden}.meter i{background:var(--cyan);height:100%;transition:width .5s var(--ease-out);border-radius:6px;display:block}.meter i.mid{background:var(--warn)}.meter i.low{background:var(--danger)}.evidence{gap:var(--s-2);list-style:none;display:grid}.evidence li{gap:var(--s-2);color:var(--slate);font-size:.8125rem;display:flex}.evidence li:before{content:"›";color:var(--cyan);font-family:var(--font-mono)}.dash{gap:0;display:grid}.dash-kpis{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (max-width:900px){.dash-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.dash-kpis>div{padding:var(--s-5);border-right:1px solid var(--line)}.dash-kpis>div:last-child{border-right:0}@media (max-width:900px){.dash-kpis>div:nth-child(2){border-right:0}.dash-kpis>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}.dash-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);display:grid}@media (max-width:1100px){.dash-body{grid-template-columns:1fr}}.dash-col{padding:var(--s-5);min-width:0}.dash-col+.dash-col{border-left:1px solid var(--line)}@media (max-width:1100px){.dash-col+.dash-col{border-left:0;border-top:1px solid var(--line)}}.toolbar{gap:var(--s-2);margin-bottom:var(--s-4);flex-wrap:wrap;align-items:center;display:flex}.search{min-height:40px;padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);font-size:var(--fs-small);background:#080d1880;flex:200px}.search:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 3px #43d5f433}.table-wrap{border:1px solid var(--line);border-radius:var(--r-2);position:relative;overflow-x:auto}.table-wrap.scroll{overscroll-behavior:contain;max-height:560px;overflow-y:auto}.table-wrap.scroll thead th{z-index:1;background:#0d1628;position:sticky;top:0}table.data{border-collapse:collapse;width:100%;min-width:560px;font-size:.875rem}table.data th{text-align:left;color:var(--slate);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line);background:#080d1866;font-size:.8125rem;font-weight:500}table.data td{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line)}table.data tr:last-child td{border-bottom:0}table.data td.m{font-family:var(--font-mono);color:var(--slate-2);font-size:.8125rem}table.data tbody tr{cursor:pointer;transition:background-color var(--t-fast)}table.data tbody tr:hover,table.data tbody tr[aria-selected=true]{background:#43d5f412}table.data tbody tr:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.steps{gap:0;list-style:none;display:grid}.steps li{gap:var(--s-3);padding-bottom:var(--s-4);grid-template-columns:26px 1fr;display:grid;position:relative}.steps li:before{content:"";background:var(--line-strong);width:2px;position:absolute;top:26px;bottom:0;left:12px}.steps li:last-child:before{display:none}.steps .st{border:2px solid var(--line-strong);background:var(--bg);width:26px;height:26px;font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.6875rem;display:grid}.steps li.done .st{border-color:var(--ok);color:var(--ok)}.steps li.done:before{background:var(--ok)}.steps li.now .st{border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 0 4px #43d5f426}.steps b{font-size:.9375rem;font-weight:600;display:block}.steps span{color:var(--slate);font-size:.8125rem}.prov{gap:var(--s-2);list-style:none;display:grid}.prov li{gap:var(--s-2) var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--line);border-radius:var(--r-2);background:#080d1859;grid-template-columns:1fr auto;display:grid}.prov .hash{font-family:var(--font-mono);color:var(--slate);word-break:break-all;grid-column:1/-1;font-size:.75rem}.prov .doc{font-size:.875rem;font-weight:500}.flow-node-detail{min-height:7.5em}.console{font-family:var(--font-mono);font-size:.8125rem;line-height:1.65}.console .q{color:var(--cyan)}.console .a{color:var(--slate-2);margin-top:var(--s-3);font-family:var(--font-sans);font-size:.9375rem;line-height:1.55}.console sup{color:var(--copper);font-family:var(--font-mono)}.console .cites{margin-top:var(--s-3);color:var(--slate);gap:4px;display:grid}.principles{gap:var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}@media (max-width:900px){.principles{grid-template-columns:1fr}}.principles li{padding-top:var(--s-5);border-top:1px solid var(--line-strong)}.principles h3{margin-top:var(--s-3)}.principles p{margin-top:var(--s-3);color:var(--slate)}.refs{gap:var(--s-2);flex-wrap:wrap;list-style:none;display:flex}.refs li{font-family:var(--font-mono);color:var(--slate-2);border-radius:var(--r-pill);border:1px solid var(--line);padding:6px 12px;font-size:.8125rem}.form{gap:var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:640px){.form{grid-template-columns:minmax(0,1fr)}}.field{gap:var(--s-2);align-content:start;min-width:0;display:grid}.field.full{grid-column:1/-1}.field>label,.field legend{font-size:var(--fs-small);color:var(--slate-2);font-weight:500}.field .req{color:var(--copper)}.input{width:100%;max-width:100%;min-height:52px;padding:var(--s-3) var(--s-4);border-radius:var(--r-2);border:1px solid var(--line-strong);transition:border-color var(--t-fast), box-shadow var(--t-fast);background:#080d188c;font-size:1rem}.input::placeholder{color:#7f8ea3}.input:hover{border-color:#a9b9cd80}.input:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 3px #43d5f433}textarea.input{resize:vertical;min-height:140px}select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23A9B9CD' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}select.input option{background:var(--surface)}.field[data-invalid] .input{border-color:var(--danger)}.field[data-invalid] .input:focus{box-shadow:0 0 0 3px #ff8a7a33}.field[data-valid] .input{border-color:#56e0a08c}.err{color:var(--danger);font-size:.875rem;display:none}.field[data-invalid] .err{align-items:center;gap:6px;display:flex}.hint{color:var(--slate);font-size:.8125rem}fieldset.field{border:0;min-width:0;margin:0;padding:0}.checks{gap:var(--s-2);margin-top:var(--s-1);flex-wrap:wrap;display:flex}.check{position:relative}.check input{opacity:0;cursor:pointer;position:absolute;inset:0}.check span{align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);color:var(--slate-2);transition:all var(--t-fast);font-size:.875rem;display:inline-flex}.check input:checked+span{border-color:var(--cyan);color:var(--ice);background:#43d5f41f}.check input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.form-status{grid-column:1/-1}.check-line{gap:var(--s-3);font-size:var(--fs-small);color:var(--slate-2);cursor:pointer;align-items:flex-start;display:flex}.check-line input{width:20px;height:20px;accent-color:var(--cyan);flex:none;margin-top:2px}.check-line a{color:var(--cyan-strong)}.text-link{color:var(--cyan-strong);font-weight:600;font-size:var(--fs-small);text-decoration:none}.text-link:hover{text-decoration:underline}.hp{width:1px;height:1px;left:-10000px;overflow:hidden;position:absolute!important}.notice-inline{gap:var(--s-4);padding:var(--s-5);border-radius:var(--r-3);background:#ff8a7a0f;border:1px solid #ff8a7a80;display:flex}.success{gap:var(--s-4);padding:var(--s-5);border-radius:var(--r-3);background:#56e0a012;border:1px solid #56e0a073;display:flex}.success svg{width:26px;height:26px;color:var(--ok);flex:none}.site-footer{border-top:1px solid var(--line);padding-block:var(--s-8) var(--s-6)}.foot-grid{gap:var(--s-6);grid-template-columns:1.4fr repeat(3,minmax(0,1fr));display:grid}@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}.foot-grid h2{font-size:var(--fs-label);font-family:var(--font-mono);color:var(--slate);letter-spacing:.04em;font-weight:500}.foot-grid ul{gap:var(--s-2);margin-top:var(--s-4);list-style:none;display:grid}.foot-grid a{color:var(--slate-2);font-size:var(--fs-small);text-decoration:none}.foot-grid a:hover{color:var(--cyan)}.foot-base{margin-top:var(--s-8);padding-top:var(--s-5);border-top:1px solid var(--line);justify-content:space-between;gap:var(--s-4);color:var(--slate);flex-wrap:wrap;font-size:.875rem;display:flex}.js .reveal{opacity:0;transition:opacity var(--t-slow) var(--ease-out), transform var(--t-slow) var(--ease-out);transform:translateY(16px)}.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none}}.page-top{padding-top:160px}.asset-table img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-1);border:1px solid var(--line);width:160px}.hero.page-hero{min-height:max(500px,64svh)}.hero.page-hero .h-hero{max-width:16ch;font-size:clamp(2.5rem,1.4rem + 4.2vw,5rem)}.hero.page-hero .lede{max-width:38rem}.hero.page-hero.plain{min-height:auto}.hero.page-hero.plain:before{display:none}.hero.page-hero.plain .hero-content{padding-top:168px;padding-bottom:var(--s-7)}.hero-foot .label a{color:var(--slate-2)}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:1025px){.svc-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.svc-grid{grid-template-columns:1fr}}.deliver{gap:var(--s-4);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}@media (max-width:1024px){.deliver{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.deliver{grid-template-columns:1fr}}.deliver li{padding:var(--s-6);border:1px solid var(--line);border-radius:var(--r-3);background:linear-gradient(#16233d8c,#111b3059)}.deliver li .label{color:var(--cyan)}.deliver li h3{margin-top:var(--s-3)}.deliver li p{margin-top:var(--s-3);color:var(--slate);font-size:var(--fs-small);line-height:1.6}.cta-band{justify-content:space-between;align-items:end;gap:var(--s-6);flex-wrap:wrap;display:flex}.cta-band .h2,.cta-band .lede{margin-top:var(--s-4)}.prose{max-width:46rem}.prose h2{margin-top:var(--s-8)}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:var(--slate-2);margin-top:var(--s-4);line-height:1.7}.prose ul{padding-left:1.2rem}.prose a{color:var(--cyan-strong)}.nav-links a[aria-current=page]{color:var(--ice)}.nav-links a[aria-current=page]:after{opacity:1;transform:scaleX(1)}.m-link[aria-current=page]{color:var(--cyan-strong)}.crop-low img{object-position:50% 82%}.contact-aside .evidence a{color:var(--cyan-strong)}.contact-aside .evidence{margin-top:var(--s-6)}.form .consent{font-size:var(--fs-small);color:var(--slate)}.hero.cine .h-hero{max-width:13ch}.hero.cine .tagline{margin-top:var(--s-5);font-size:var(--fs-h4);color:var(--ice);letter-spacing:-.01em;max-width:34rem;font-weight:500}.hero.cine .lede{margin-top:var(--s-4)}.hero-media{will-change:transform}.hero-media video{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.2s var(--ease-in-out);position:absolute;inset:0}.hero-media video.live{opacity:1}.btn svg[fill=currentColor]{width:1em;height:1em}.chain.four{grid-template-columns:repeat(4,1fr)}.chain.four:after{width:26%;animation-name:chainflow4}@keyframes chainflow4{0%{transform:translate(-100%)}to{transform:translate(385%)}}@media (max-width:760px){.chain.four{row-gap:var(--s-5);grid-template-columns:repeat(2,1fr)}.chain.four:after{display:none}}.intro-strip{padding-block:var(--s-6) clamp(var(--s-7), 6vw, var(--s-9))}.what-grid{gap:var(--s-7);border-top:1px solid var(--line);padding-top:var(--s-6);grid-template-columns:minmax(0,.9fr) minmax(0,2fr);align-items:start;display:grid}.what-grid .h3{margin-top:var(--s-3)}.what{gap:var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.what dt{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--cyan)}.what dd{margin:var(--s-3) 0 0;color:var(--slate-2);line-height:1.6}@media (max-width:1024px){.what-grid{gap:var(--s-5);grid-template-columns:1fr}}@media (max-width:640px){.what{gap:var(--s-5);grid-template-columns:1fr}}.story-steps{gap:var(--s-5);counter-reset:none;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;display:grid}.story-steps li{position:relative}.story-steps figure{margin:0 0 var(--s-4)}.story-steps .label{color:var(--cyan);display:block}.story-steps h3{margin-top:var(--s-2)}.story-steps p{margin-top:var(--s-2);color:var(--slate);font-size:var(--fs-small);line-height:1.6}.story-steps li+li:before{content:"";top:calc(31% - .5px);left:calc(-1 * var(--s-5));width:var(--s-5);background:linear-gradient(90deg, transparent, var(--cyan));height:1px;position:absolute}@media (max-width:1024px){.story-steps{row-gap:var(--s-7);grid-template-columns:repeat(2,minmax(0,1fr))}.story-steps li+li:before{display:none}}@media (max-width:640px){.story-steps{grid-template-columns:1fr}}.film-dialog{width:min(1280px, calc(100vw - 2 * var(--gutter)));border:1px solid var(--line-strong);border-radius:var(--r-3);background:var(--obsidian);max-width:none;color:var(--ice);box-shadow:var(--shadow-2);padding:0}.film-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#04070edb}.film-head{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);display:flex}.film-dialog video{aspect-ratio:16/9;background:#000;width:100%;display:block}.film-note{padding:var(--s-3) var(--s-5) var(--s-4);color:var(--slate)}.film-dialog video::cue{font-family:var(--font-sans);color:var(--ice);background:#080d18d1;font-size:1rem}@media (prefers-reduced-motion:reduce){.hero-media{transform:none!important}}
