.consent[data-astro-cid-u6s5b3h2]{z-index:50;background:var(--ink-2);max-width:720px;color:var(--fg);border:1px solid var(--line);box-shadow:0 24px 48px var(--shadow);border-radius:16px;gap:14px;margin:0 auto;padding:18px 20px;font-size:15px;display:grid;position:fixed;bottom:16px;left:16px;right:16px}.consent[data-astro-cid-u6s5b3h2][hidden]{display:none}.consent[data-astro-cid-u6s5b3h2] p[data-astro-cid-u6s5b3h2]{color:var(--fg-2);margin:0}.consent-btns[data-astro-cid-u6s5b3h2]{flex-wrap:wrap;gap:12px;display:flex}.consent-btn[data-astro-cid-u6s5b3h2]{cursor:pointer;background:var(--ink);color:var(--fg);border:2px solid var(--fg-2);min-width:120px;font:inherit;font-family:var(--f-mono);justify-content:center;font-weight:700}.consent-btn[data-astro-cid-u6s5b3h2]:hover{border-color:var(--amber)}:root{--f-display:"Big Shoulders Display", "Arial Narrow", Impact, sans-serif;--f-body:"IBM Plex Sans", "Segoe UI", Roboto, Arial, sans-serif;--f-mono:"JetBrains Mono", "Cascadia Mono", Consolas, "Courier New", monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ink);color:var(--fg);font-family:var(--f-body);margin:0;font-size:17px;line-height:1.6}a{color:var(--amber);text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--amber);outline-offset:3px}img{max-width:100%}code{font-family:var(--f-mono);background:var(--ink-3);border-radius:5px;padding:.1em .35em;font-size:.9em}.wrap{max-width:1120px;padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right));margin:0 auto}.muted{color:var(--muted)}.skip{background:var(--amber-fill);color:var(--on-amber);z-index:10;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header{border-bottom:1px solid var(--line);background:var(--header-bg);-webkit-backdrop-filter:blur(10px);z-index:20;position:sticky;top:0}.bar{justify-content:space-between;align-items:center;gap:24px;min-height:68px;display:flex}.brand{margin-right:auto}@media (width<=1000px){.bar{gap:12px}}.brand{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.02em;color:var(--fg);white-space:nowrap;align-items:center;gap:10px;font-size:26px;font-weight:900;text-decoration:none;display:inline-flex}.brand.small{font-size:22px}.mark{color:var(--mark);flex:none;width:1.25em;height:1.25em;margin-right:-4px}.nav-desk{align-items:center;gap:4px;display:flex}.nav-desk a,.nav-mob nav a{color:var(--fg-4);border-radius:8px;padding:8px 12px;font-size:15px;font-weight:500;text-decoration:none}.nav-desk a:hover,.nav-mob nav a:hover{color:var(--fg);background:var(--hover)}.nav-desk a[aria-current=page],.nav-mob nav a[aria-current=page]{color:var(--fg);box-shadow:inset 0 -2px 0 var(--amber);border-radius:0}.nav-mob{display:none;position:relative}.nav-mob summary{cursor:pointer;color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:8px 14px;font-size:15px;font-weight:600;list-style:none}.nav-mob summary::-webkit-details-marker{display:none}.nav-mob[open] summary{border-color:var(--amber)}.nav-mob summary:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.nav-mob nav{background:var(--ink-2);border:1px solid var(--line);width:min(260px,100vw - 40px);box-shadow:0 24px 48px var(--shadow);border-radius:12px;padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.nav-mob nav a{padding:12px 14px;font-size:16px}@media (width<=1000px){.nav-desk{display:none}.nav-mob{display:block}}.theme-menu{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:6px;padding:10px 14px 4px;font-size:14px;display:none}@media (width<=560px){.theme-bar{display:none}.theme-menu{display:flex}}@media (width<=380px){.brand{font-size:22px}}.site-footer{border-top:1px solid var(--line);background:linear-gradient(var(--ink), var(--foot-end));margin-top:120px}.foot{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;padding-block:64px 40px;display:grid}.foot-brand{align-content:start;gap:12px;display:grid}.foot-brand p{max-width:30em;margin:0}.foot-brand a{color:var(--fg)}.foot-cols{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;display:grid}.foot-h{font-family:var(--f-body);text-transform:none;letter-spacing:0;color:var(--muted);margin:0 0 12px;font-size:14px;font-weight:600;line-height:1.4}.foot-cols ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.foot-cols a{color:var(--fg);font-size:15px;text-decoration:none}.foot-cols a:hover{color:var(--amber);text-decoration:underline}.linkish{font:inherit;color:var(--fg);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:15px}.linkish:hover{color:var(--amber);text-decoration:underline}.linkish[hidden]{display:none}.foot-fine{border-top:1px solid var(--line);gap:8px;padding-block:24px 40px;font-size:13px;display:grid}.foot-fine p{max-width:72em;margin:0}@media (width<=860px){.foot{grid-template-columns:1fr;gap:36px}}@media (width<=560px){.foot-cols{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}}.eyebrow{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin:0;font-size:14px}h1,h2,h3{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.01em;text-wrap:balance;margin:0;font-weight:900;line-height:.95}h1{font-size:clamp(48px,9vw,104px)}h2{font-size:clamp(34px,5vw,52px)}h3{font-size:28px}.prose{max-width:68ch}.prose h2{margin:48px 0 14px}.prose p,.prose li{color:var(--fg-2)}.prose li{margin-bottom:10px}.prose strong{color:var(--fg)}.btn{font-family:var(--f-mono);letter-spacing:.04em;border:2px solid var(--amber);border-radius:10px;align-items:center;gap:10px;padding:13px 20px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.btn.primary{background:var(--amber-fill);border-color:var(--amber-fill);color:var(--on-amber)}.btn.ghost{color:var(--fg);border-color:var(--line)}.btn.ghost:hover{border-color:var(--amber)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
