@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,500;12..96,700;12..96,800&family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;1,400&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--ink-950:oklch(15.5% .008 80);--ink-900:oklch(19.6% .008 80);--ink-850:oklch(23.2% .008 80);--ink-800:oklch(27.6% .008 80);--ink-700:oklch(34.5% .008 80);--ink-600:oklch(44.5% .007 80);--ink-500:oklch(56% .006 80);--ink-400:oklch(65.5% .006 80);--ink-300:oklch(74.5% .005 80);--ink-200:oklch(84.5% .005 80);--ink-100:oklch(91% .004 80);--ink-050:oklch(96.2% .004 80);--accent-ochre:oklch(78% .13 75);--accent-ochre-dim:oklch(64% .11 75);--accent-ochre-wash:oklch(78% .13 75/.14);--accent-tide:oklch(78% .13 205);--accent-tide-dim:oklch(64% .11 205);--accent-tide-wash:oklch(78% .13 205/.14);--tag-rust:oklch(72% .12 30);--tag-amber:oklch(72% .12 80);--tag-moss:oklch(72% .12 145);--tag-tide:oklch(72% .12 205);--tag-iris:oklch(72% .12 275);--tag-plum:oklch(72% .12 330);--status-ok:oklch(76% .12 150);--status-warn:oklch(78% .13 75);--status-bad:oklch(68% .15 25);--surface-page:var(--ink-950);--surface-sunken:oklch(12.8% .008 80);--surface-card:var(--ink-900);--surface-raised:var(--ink-850);--surface-hover:var(--ink-850);--surface-active:var(--ink-800);--surface-inverse:var(--ink-050);--text-display:var(--ink-050);--text-body:var(--ink-200);--text-secondary:var(--ink-400);--text-muted:var(--ink-500);--text-accent:var(--accent-ochre);--text-inverse:var(--ink-950);--text-link:var(--accent-ochre);--text-link-hover:var(--ink-050);--line-hairline:oklch(100% 0 0/.07);--line-soft:var(--ink-800);--line-strong:var(--ink-700);--line-accent:var(--accent-ochre);--focus-ring:var(--accent-tide);--font-display:"Bricolage Grotesque", "Helvetica Neue", Helvetica, sans-serif;--font-body:"IBM Plex Sans", "Helvetica Neue", Helvetica, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs:11px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-md:18px;--text-lg:21px;--text-xl:26px;--text-2xl:33px;--text-3xl:42px;--text-4xl:56px;--text-5xl:76px;--text-6xl:104px;--leading-tight:1.02;--leading-snug:1.15;--leading-normal:1.5;--leading-relaxed:1.65;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;--tracking-tight:-.03em;--tracking-snug:-.015em;--tracking-normal:0;--tracking-wide:.06em;--tracking-caps:.12em;--type-hero:var(--weight-black) var(--text-6xl)/var(--leading-tight) var(--font-display);--type-h1:var(--weight-bold) var(--text-4xl)/var(--leading-snug) var(--font-display);--type-h2:var(--weight-bold) var(--text-2xl)/var(--leading-snug) var(--font-display);--type-h3:var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-display);--type-lead:var(--weight-regular) var(--text-md)/var(--leading-relaxed) var(--font-body);--type-body:var(--weight-regular) var(--text-base)/var(--leading-relaxed) var(--font-body);--type-small:var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-body);--type-label:var(--weight-medium) var(--text-xs)/1.2 var(--font-mono);--type-eyebrow:var(--weight-medium) var(--text-xs)/1.2 var(--font-mono);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-28:112px;--space-40:160px;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:999px;--border-hairline:1px;--border-thick:2px;--measure-prose:66ch;--measure-narrow:46ch;--page-max:1120px;--page-gutter:var(--space-6);--shadow-none:none;--shadow-card:0 1px 2px oklch(0% 0 0/.4);--shadow-raised:0 4px 14px oklch(0% 0 0/.45);--shadow-float:0 12px 34px oklch(0% 0 0/.55);--shadow-inset-top:inset 0 1px 0 oklch(100% 0 0/.05);--ring-focus:0 0 0 2px var(--surface-page), 0 0 0 4px var(--focus-ring);--blur-veil:blur(14px);--veil:oklch(15.5% .008 80/.72);--dur-instant:90ms;--dur-fast:.14s;--dur-base:.22s;--dur-slow:.36s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--lift-hover:translateY(-1px);--press-scale:scale(.985);--drag-scale:scale(1.02);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface-page);color:var(--text-body);font:var(--type-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-display);margin:0}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--text-link-hover);text-decoration:underline}code,pre{font-family:var(--font-mono)}:focus-visible{box-shadow:var(--ring-focus);border-radius:var(--radius-sm);outline:none}.container{width:100%;max-width:var(--page-max);padding:0 var(--page-gutter);margin:0 auto}.eyebrow{font:var(--type-eyebrow);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--accent-ochre)}.button{justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;font-family:var(--font-body);font-weight:var(--weight-medium);font-size:var(--text-base);letter-spacing:var(--tracking-snug);border-radius:var(--radius-md);white-space:nowrap;background:var(--accent-ochre);color:var(--text-inverse);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), transform var(--dur-instant) var(--ease-standard);border:1px solid #0000;padding:11px 18px;text-decoration:none;display:inline-flex}.button:hover{color:var(--text-inverse);background:oklch(84% .13 75);text-decoration:none}.button:active{transform:var(--press-scale)}.button--secondary{background:var(--surface-raised);color:var(--text-body);border-color:var(--line-strong)}.button--secondary:hover{background:var(--surface-active);color:var(--text-display)}.tag{align-items:center;gap:var(--space-2);font:var(--type-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);border-radius:var(--radius-pill);border:1px solid color-mix(in oklch, var(--accent-ochre) 42%, transparent);color:var(--accent-ochre);background:var(--accent-ochre-wash);padding:5px 11px;display:inline-flex}.card{background:var(--surface-card);border:1px solid var(--line-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-6)}.card--raised{background:var(--surface-raised)}.site-header[data-astro-cid-z4jru4n3]{background:var(--veil);-webkit-backdrop-filter:var(--blur-veil);border-bottom:1px solid var(--line-hairline);z-index:100;position:sticky;top:0}.header-inner[data-astro-cid-z4jru4n3]{padding-top:var(--space-4);padding-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.brand-link[data-astro-cid-z4jru4n3]{font:var(--weight-bold) 20px/1 var(--font-display);letter-spacing:var(--tracking-snug);color:var(--text-display);align-items:center;gap:var(--space-2);display:flex}.brand-link[data-astro-cid-z4jru4n3]:hover{text-decoration:none}.brand-symbol[data-astro-cid-z4jru4n3]{color:var(--accent-ochre)}.nav-desktop[data-astro-cid-z4jru4n3]{gap:var(--space-1);align-items:center;display:flex}.nav-link[data-astro-cid-z4jru4n3]{color:var(--text-secondary);font:var(--type-small);font-weight:var(--weight-medium);border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);padding:7px 11px}.nav-link[data-astro-cid-z4jru4n3]:hover,.nav-link[data-astro-cid-z4jru4n3].active{color:var(--text-display);background:var(--surface-hover);text-decoration:none}.login-button[data-astro-cid-z4jru4n3]{margin-left:var(--space-2);color:var(--text-inverse);background:var(--accent-ochre);font:var(--type-small);font-weight:var(--weight-semibold);border-radius:var(--radius-md);transition:background var(--dur-fast) var(--ease-standard);padding:8px 15px}.login-button[data-astro-cid-z4jru4n3]:hover{background:oklch(84% .13 75);text-decoration:none}.nav-toggle[data-astro-cid-z4jru4n3]{border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--text-body);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;justify-content:center;align-items:center;padding:.4rem .55rem;line-height:0;display:none}.nav-toggle[data-astro-cid-z4jru4n3]:hover,.nav-toggle[data-astro-cid-z4jru4n3]:focus-visible{border-color:var(--accent-ochre);color:var(--accent-ochre);outline:none}.nav-toggle[data-astro-cid-z4jru4n3] .icon-close[data-astro-cid-z4jru4n3],.nav-toggle[data-astro-cid-z4jru4n3][aria-expanded=true] .icon-hamburger[data-astro-cid-z4jru4n3]{display:none}.nav-toggle[data-astro-cid-z4jru4n3][aria-expanded=true] .icon-close[data-astro-cid-z4jru4n3]{display:block}.nav-mobile[data-astro-cid-z4jru4n3]{border-top:1px solid var(--line-hairline);background:var(--surface-card);padding:var(--space-3) 0 var(--space-5);box-shadow:var(--shadow-raised);display:none}.nav-mobile[data-astro-cid-z4jru4n3]:not([hidden]){display:block}.mobile-nav-inner[data-astro-cid-z4jru4n3]{gap:var(--space-1);flex-direction:column;display:flex}.mobile-nav-link[data-astro-cid-z4jru4n3]{color:var(--text-secondary);font:var(--type-small);border-radius:var(--radius-sm);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);padding:.65rem .85rem;display:block}.mobile-nav-link[data-astro-cid-z4jru4n3]:hover,.mobile-nav-link[data-astro-cid-z4jru4n3].active{color:var(--text-display);background:var(--surface-raised);text-decoration:none}.mobile-nav-link[data-astro-cid-z4jru4n3].active{color:var(--accent-ochre);font-weight:var(--weight-semibold)}.mobile-login-button[data-astro-cid-z4jru4n3]{text-align:center;margin-top:var(--space-2);color:var(--text-inverse);background:var(--accent-ochre);font:var(--type-small);font-weight:var(--weight-semibold);border-radius:var(--radius-md);transition:background var(--dur-fast) var(--ease-standard);padding:.65rem 1rem;display:block}.mobile-login-button[data-astro-cid-z4jru4n3]:hover{background:oklch(84% .13 75);text-decoration:none}@media (width<=48rem){.nav-desktop[data-astro-cid-z4jru4n3]{display:none}.nav-toggle[data-astro-cid-z4jru4n3]{display:inline-flex}}
