:root{--bg:#fff;--surface:#f6f8fa;--text:#14181f;--muted:#555e6b;--line:#e2e6eb;--accent:#0b5cad;--accent-hover:#084a8c;--on-accent:#fff;--error:#b42318;--font:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--max:960px;--gutter:24px}@media (prefers-color-scheme:dark){:root{--bg:#0f1217;--surface:#171b22;--text:#e8ebef;--muted:#9aa3ae;--line:#262c35;--accent:#5aa2ea;--accent-hover:#7db6ef;--on-accent:#0f1217;--error:#f97066}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;margin:0 0 .5em;font-weight:600;line-height:1.2}h1{letter-spacing:-.025em;font-size:clamp(2.25rem,5.5vw,3.5rem)}h2{font-size:clamp(1.5rem,3.2vw,2rem)}h3{font-size:1.0625rem}p{margin:0 0 1em}a{color:var(--accent)}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{width:100%;max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.narrow{max-width:calc(720px + 2 * var(--gutter));margin-left:0}@media (width>=1008px){.narrow{margin-left:calc((100% - var(--max)) / 2)}}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:64px;display:flex}.wordmark{letter-spacing:-.04em;color:var(--text);font-size:1.5rem;font-weight:600;text-decoration:none}.wordmark:hover{color:var(--text)}.header-link{border:1px solid var(--line);color:var(--text);border-radius:999px;padding:8px 16px;font-size:.9375rem;font-weight:500;text-decoration:none}.header-link:hover{border-color:var(--accent);color:var(--accent)}.hero{padding:clamp(64px,12vw,128px) 0 clamp(56px,10vw,112px)}.hero-inner{grid-template-columns:1fr;align-items:center;gap:48px;display:grid}@media (width>=760px){.hero-inner{grid-template-columns:1.6fr 1fr}}.lede{color:var(--muted);max-width:34em;margin-bottom:2em;font-size:clamp(1.125rem,2.2vw,1.3125rem)}.button{background:var(--accent);color:var(--on-accent);border-radius:8px;padding:12px 24px;font-weight:500;text-decoration:none;display:inline-block}.button:hover{background:var(--accent-hover);color:var(--on-accent)}.hero-graphic{width:100%;max-width:260px;color:var(--muted);justify-self:center;display:none}@media (width>=760px){.hero-graphic{display:block}}.hero-graphic .hidden-edges{opacity:.5}.hero-graphic .accent{stroke:var(--accent)}.hero-graphic .node{fill:var(--accent);stroke:none}.hero-graphic .node-muted{fill:var(--bg)}.section{border-top:1px solid var(--line);padding:clamp(56px,9vw,96px) 0}.section h2{margin-bottom:1em}.cards{grid-template-columns:1fr;gap:16px;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.cards{grid-template-columns:1fr 1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:24px}.card p{color:var(--muted);margin:0}.principles{gap:16px;margin:2em 0 0;padding:0;list-style:none;display:grid}@media (width>=640px){.principles{grid-template-columns:repeat(3,1fr);gap:24px}}.principles li{border-left:2px solid var(--accent);padding-left:16px}.principles strong{font-weight:600;display:block}.principles span{color:var(--muted);font-size:.9375rem}.contact-form{gap:20px;max-width:560px;margin:2em 0 1.5em;display:grid}.field{gap:6px;display:grid}.field label{font-size:.9375rem;font-weight:500}.field input,.field textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 14px}.field textarea{resize:vertical;min-height:140px}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.contact-form .button{font:inherit;cursor:pointer;border:0;justify-self:start;font-weight:500}.contact-form .button:disabled{opacity:.6;cursor:progress}.form-status{color:var(--muted);margin:0;font-size:.9375rem}.form-status:empty{display:none}.form-status[data-state=success]{color:var(--accent);font-weight:500}.form-status[data-state=error]{color:var(--error)}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:32px 0 48px;font-size:.875rem}.site-footer p{margin:0 0 .25em}
