
:root{--bg:#FAF9F6;--bg-alt:#F3F1EC;--surface:#fff;--ink:#0F172A;--body:#334155;--muted:#64748B;
--line:#E2DFD7;--dark:#0D1117;--dark-line:#21262D;--blue:#146A62;--blue-h:#0F514B;--blue-l:#E7F5F0;
--amber:#B45309;--amber-l:#FFFBEB;--green:#047857;--green-l:#ECFDF5;--red:#B91C1C;--red-l:#FEF2F2;
--display:'Cabinet Grotesk',system-ui,sans-serif;--sans:'Plus Jakarta Sans',system-ui,sans-serif;
--mono:'IBM Plex Mono',ui-monospace,monospace;--shadow:0 4px 20px -2px rgba(15,23,42,.05),0 2px 6px -1px rgba(15,23,42,.03)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--body);font:400 1rem/1.6 var(--sans)}
a{color:var(--blue);text-underline-offset:3px}a:hover{color:var(--blue-h)}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
h1,h2,h3{font-family:var(--display);color:var(--ink);margin:0 0 .6em}
h1{font-size:clamp(2.6rem,6.2vw,5rem);line-height:.98;letter-spacing:-.04em;font-weight:800}
h2{font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.12;letter-spacing:-.02em;font-weight:700}
h3{font-size:1.2rem;line-height:1.3;font-weight:700}
p{margin:0 0 1em}.lede{font-size:1.15rem;max-width:40rem;color:var(--body)}
.mono,.label{font-family:var(--mono)}.label{font-size:.8rem;letter-spacing:.02em;font-weight:500;color:var(--muted)}
.wrap{max-width:1200px;margin:0 auto;padding:0 1.5rem}
header.site{position:sticky;top:0;z-index:50;height:68px;background:rgba(250,249,246,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;gap:2rem;height:100%}
.brand{font:800 1.35rem var(--display);color:var(--ink);text-decoration:none;letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem}
.brand svg{width:22px;height:22px}
nav.main{display:flex;gap:1.4rem;flex:1}nav.main a{color:var(--body);text-decoration:none;font-weight:500;font-size:.94rem}
nav.main a:hover,nav.main a[aria-current]{color:var(--ink)}
.menu-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:6px;padding:.4rem .7rem;font:600 .85rem var(--sans)}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.78rem 1.4rem;border-radius:6px;font:600 .95rem var(--sans);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .2s,border-color .2s,transform .1s}
.btn:active{transform:translateY(1px)}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-h);color:#fff}
.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-secondary:hover{border-color:var(--ink);color:var(--ink)}
.btn-danger{background:var(--surface);color:var(--red);border-color:#FCA5A5}.btn-sm{padding:.4rem .8rem;font-size:.85rem}
section{padding:5.5rem 0}section.tight{padding:3rem 0}.alt{background:var(--bg-alt);border-block:1px solid var(--line)}
.dark{background:var(--dark);color:#C9D1D9}.dark h2,.dark h3{color:#fff}.dark .label{color:#8B949E}
.hero{padding:6rem 0 4rem}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:3.5rem;align-items:center}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.proof{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.2rem;padding:0;list-style:none}
.proof li{font:500 .78rem var(--mono);border:1px solid var(--line);background:var(--surface);padding:.3rem .65rem;border-radius:4px;color:var(--ink)}
.grid{display:grid;gap:1.5rem}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:1.6rem;box-shadow:var(--shadow);transition:border-color .2s,transform .2s}
a.card{text-decoration:none;color:inherit}a.card:hover{border-color:var(--ink);transform:translateY(-2px)}
.step{counter-increment:step}.step .num{font:600 .8rem var(--mono);color:var(--blue)}
.steps{counter-reset:step}
.diagram{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1rem;box-shadow:var(--shadow)}
.diagram svg{width:100%;height:auto;display:block}
.diagram .node rect{fill:#fff;stroke:var(--ink);stroke-width:1.4}.diagram .node.hub rect{fill:var(--ink)}
.diagram text{font:600 13px var(--sans);fill:var(--ink)}.diagram .hub text{fill:#fff;font-weight:700}
.diagram .small{font:500 9.5px var(--mono);fill:var(--muted)}
.diagram .flow{fill:none;stroke:var(--blue);stroke-width:1.6;stroke-dasharray:5 6;animation:dash 1.6s linear infinite}
.diagram .flow.back{stroke:var(--green)}
@keyframes dash{to{stroke-dashoffset:-22}}
@media (prefers-reduced-motion:reduce){.diagram .flow{animation:none}*{transition:none!important}}
table.data{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}
table.data th{background:var(--bg-alt);font:600 .72rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-align:left;padding:.8rem 1rem}
table.data td{padding:.85rem 1rem;border-top:1px solid var(--line);vertical-align:top}
.table-scroll{overflow-x:auto}
.badge{display:inline-block;font:600 .72rem var(--mono);padding:.18rem .5rem;border-radius:4px;border:1px solid;white-space:nowrap}
.b-ok{background:var(--green-l);color:var(--green);border-color:#A7F3D0}.b-warn{background:var(--amber-l);color:var(--amber);border-color:#FCD34D}
.b-no{background:var(--red-l);color:var(--red);border-color:#FCA5A5}.b-cat{background:var(--blue-l);color:var(--blue);border-color:#BFDBFE}
.b-muted{background:var(--bg-alt);color:var(--muted);border-color:var(--line)}
pre.code{background:var(--dark);color:#E6EDF3;font:400 .82rem/1.6 var(--mono);padding:1.2rem 1.3rem;border-radius:8px;overflow-x:auto;position:relative;margin:0 0 1rem}
pre.code .copy{position:absolute;top:.6rem;right:.6rem;background:#21262D;color:#C9D1D9;border:1px solid #30363D;border-radius:4px;font:500 .72rem var(--mono);padding:.25rem .55rem;cursor:pointer}
code{font:500 .86em var(--mono);background:var(--bg-alt);padding:.1rem .35rem;border-radius:3px;color:var(--ink)}
.empty{border:1px dashed var(--line);border-radius:8px;padding:2.2rem;background:var(--surface);text-align:left}
.callout{border-left:3px solid var(--blue);background:var(--blue-l);padding:1rem 1.2rem;border-radius:0 6px 6px 0;margin:1rem 0}
.callout.warn{border-color:var(--amber);background:var(--amber-l)}
form.stack{display:grid;gap:1rem;max-width:44rem}label{font-weight:600;color:var(--ink);font-size:.92rem}
input[type=text],input[type=email],input[type=number],input[type=date],select,textarea{width:100%;font:400 .95rem var(--sans);padding:.65rem .75rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink)}
textarea{min-height:5rem}.hint{font-size:.83rem;color:var(--muted);font-weight:400}
.check{display:flex;gap:.6rem;align-items:flex-start;font-weight:500}
footer.site{border-top:1px solid var(--line);padding:3rem 0;font-size:.9rem;color:var(--muted)}
footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}footer.site a{color:var(--body);text-decoration:none;display:block;margin:.25rem 0}
.app{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 68px)}
.side{border-right:1px solid var(--line);padding:1.5rem 1rem;background:var(--bg-alt)}
.side a{display:block;padding:.5rem .75rem;border-radius:6px;color:var(--body);text-decoration:none;font-weight:500;font-size:.93rem}
.side a[aria-current]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}
.main-pane{padding:2.2rem 2.5rem;min-width:0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.kpi .v{font:800 1.8rem var(--display);color:var(--ink)}.flash{padding:.8rem 1rem;border-radius:6px;margin-bottom:1.2rem;border:1px solid}
.flash.ok{background:var(--green-l);border-color:#A7F3D0;color:var(--green)}.flash.err{background:var(--red-l);border-color:#FCA5A5;color:var(--red)}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99}.mt1{margin-top:1rem}.mt2{margin-top:2rem}.mt3{margin-top:3rem}.mb2{margin-bottom:1.5rem}.narrow{max-width:640px}.measure{max-width:44rem}.inline{display:inline}.top{align-items:start}.cap{padding:.5rem .4rem 0}.bignum{font:800 3rem var(--display);color:var(--ink)}
.reveal{animation:rise .6s ease both}.reveal.d1{animation-delay:.08s}.reveal.d2{animation-delay:.16s}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:900px){.hero-grid,.g2,.g3,.g4,.kpis,footer.site .cols{grid-template-columns:1fr}
nav.main{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;background:var(--bg);padding:1rem 1.5rem;border-bottom:1px solid var(--line)}
nav.main.open{display:flex}.menu-toggle{display:block}header.site .nav-cta{display:none}
.app{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow-x:auto;gap:.25rem;padding:.6rem}
.side a{white-space:nowrap}.main-pane{padding:1.5rem 1.1rem}section{padding:3.5rem 0}.hero{padding:3.5rem 0 2.5rem}
table.data{display:block;overflow-x:auto;max-width:100%}}
figure{margin:0}.story{list-style:none;margin:0;padding:1.4rem 1.4rem 1rem;background:var(--dark);border-radius:10px;color:#C9D1D9;position:relative}
.story li{display:grid;grid-template-columns:2rem 1fr;gap:.2rem .8rem;padding:.55rem 0;border-bottom:1px solid var(--dark-line);opacity:.38;animation:story 16s infinite}
.story li:last-child{border-bottom:0}.story .n{font:600 .78rem var(--mono);color:#8B949E;padding-top:.15rem}
.story .t{font:700 1rem var(--display);color:#fff}.story .f{grid-column:2;font:500 .78rem var(--mono);color:#7EE787}
.story li.s2{animation-delay:2s}.story li.s3{animation-delay:4s}.story li.s4{animation-delay:6s}.story li.s5{animation-delay:8s}
.story li.s6{animation-delay:10s}.story li.s7{animation-delay:12s}.story li.s8{animation-delay:14s}
.story .money .f{color:#F2CC60}.story-cap{font:500 .75rem var(--mono);color:var(--muted);margin-top:.6rem}
@keyframes story{0%{opacity:.38}2%,14%{opacity:1}17%,100%{opacity:.38}}
@media (prefers-reduced-motion:reduce){.story li{animation:none;opacity:1}}
.ledger{display:grid;grid-template-columns:5fr 7fr;gap:4rem;align-items:start}.ledger dl{margin:0}
.ledger dt{font:700 1.25rem var(--display);color:var(--ink);padding-top:1.4rem;border-top:1px solid var(--line)}
.ledger dd{margin:.35rem 0 1.4rem;max-width:36rem}.statement{font:700 clamp(1.7rem,3.4vw,2.7rem)/1.1 var(--display);color:var(--ink);letter-spacing:-.025em}
@media (max-width:900px){.ledger{grid-template-columns:1fr;gap:1.5rem}}
html,body{overflow-x:hidden}.grid>*,.hero-grid>*,.cols>*,.app>*,.cta-row>*{min-width:0}
pre.code{max-width:100%}pre.code code{white-space:pre}svg,img{max-width:100%;height:auto}
.mono,code{overflow-wrap:anywhere}h1,h2,h3{overflow-wrap:break-word}
