:root{--ink:#2a2a28;--ink-soft:#5c5b57;--muted:#8a8884;--accent:#4a90e2;--accent-ink:#2b6cb0;--ground:#fafaf8;--surface:#fff;--line:#e4e4e0;--pink:#c2418c;--green:#3c8d5a;--amber:#d9962b;--radius:18px;--measure:68ch;color-scheme:light dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f3f2ee;--ink-soft:#c9c7c1;--muted:#8f8d87;--accent:#7db3ee;--accent-ink:#a9ccf3;--ground:#17181a;--surface:#202225;--line:#34363a}}:root[data-theme=dark]{--ink:#f3f2ee;--ink-soft:#c9c7c1;--muted:#8f8d87;--accent:#7db3ee;--accent-ink:#a9ccf3;--ground:#17181a;--surface:#202225;--line:#34363a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ground);color:var(--ink);margin:0;font-family:Lexend,system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;font-weight:400;line-height:1.6}a{color:var(--accent-ink);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent)}.wrap{width:min(100% - 32px,1040px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);padding:22px 0 18px}.site-header .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.brand svg{width:auto;height:34px;display:block}.nav{flex-wrap:wrap;gap:4px;display:flex}.nav a{color:var(--ink-soft);border-radius:10px;align-items:center;min-height:44px;padding:10px 12px;font-weight:500;text-decoration:none;display:inline-flex}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:var(--surface)}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);margin-top:80px;padding:36px 0 48px;font-size:15px}.site-footer .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.site-footer svg{width:auto;height:28px;color:var(--muted);display:block}.site-footer nav{flex-wrap:wrap;gap:18px;display:flex}.hero{padding:72px 0 40px}.hero .lockup svg{width:auto;height:clamp(56px,10vw,96px);margin-bottom:28px;display:block}.hero h1{letter-spacing:-.015em;max-width:20ch;margin:0 0 18px;font-size:clamp(30px,5vw,48px);font-weight:600;line-height:1.12}.hero p.lede{color:var(--ink-soft);max-width:52ch;margin:0 0 28px;font-size:clamp(18px,2.4vw,22px);line-height:1.5}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button{background:var(--accent);color:#fff;border-radius:12px;align-items:center;min-height:48px;padding:0 20px;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{color:#fff;background:var(--accent-ink)}.button.secondary{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.button.secondary:hover{color:var(--ink);background:var(--ground)}.soon{color:var(--muted);font-size:15px}.section{padding:40px 0}.section h2{letter-spacing:-.01em;margin:0 0 8px;font-size:clamp(24px,3.2vw,32px);font-weight:600}.section .intro{color:var(--ink-soft);max-width:60ch;margin:0 0 28px}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 22px 20px}.card h3{margin:0 0 8px;font-size:18px;font-weight:600}.card p{color:var(--ink-soft);margin:0;font-size:16px}.card .glyph{color:#fff;background:var(--accent);border-radius:10px;place-items:center;width:40px;height:40px;margin-bottom:14px;display:grid}.card .glyph svg{width:22px;height:22px}.list{gap:12px;display:grid}.list a.item{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:14px;padding:18px 20px;text-decoration:none;display:block}.list a.item:hover{border-color:var(--accent)}.list .item h3{margin:0 0 6px;font-size:18px;font-weight:600}.list .item p{color:var(--ink-soft);margin:0;font-size:15.5px}.list .item time,.meta{color:var(--muted);margin-bottom:6px;font-size:14px;display:block}.article{padding:56px 0 0}.article header{margin-bottom:36px}.article h1{letter-spacing:-.015em;max-width:24ch;margin:0 0 12px;font-size:clamp(28px,4vw,40px);font-weight:600;line-height:1.15}.article .summary{color:var(--ink-soft);max-width:var(--measure);margin:0;font-size:18px}.prose{max-width:var(--measure)}.prose h2{letter-spacing:-.01em;margin:44px 0 12px;font-size:24px;font-weight:600}.prose h3{margin:30px 0 8px;font-size:19px;font-weight:600}.prose p,.prose li{font-size:17px}.prose li{margin:6px 0}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink-soft);margin:20px 0;padding:2px 0 2px 18px}.prose code{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1px 5px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.prose pre{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;overflow-x:auto}.prose pre code{background:0 0;border:0;padding:0}.prose table{border-collapse:collapse;margin:18px 0;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.prose th{background:var(--surface);font-weight:600}.prose hr{border:0;border-top:1px solid var(--line);margin:36px 0}.prose img{max-width:100%;height:auto}.note{background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);max-width:var(--measure);border-radius:12px;padding:14px 16px;font-size:15px}@media (width<=600px){.hero{padding:48px 0 28px}.site-header .row{justify-content:center}}
