.site-header[data-astro-cid-nen7h5rs]{z-index:50;backdrop-filter:saturate(160%)blur(8px);border-bottom:1px solid var(--line-200);background:#ffffffeb;position:sticky;top:0}.bar[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-3);display:flex}.brand[data-astro-cid-nen7h5rs]{align-items:center;text-decoration:none;display:inline-flex}.brand-logo[data-astro-cid-nen7h5rs]{width:auto;height:1.75rem;display:block}.nav-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--line-200);border-radius:var(--radius-sm);background:var(--paper-000);justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.nav-toggle-icon[data-astro-cid-nen7h5rs],.nav-toggle-icon[data-astro-cid-nen7h5rs]:before,.nav-toggle-icon[data-astro-cid-nen7h5rs]:after{background:var(--ink-700);border-radius:2px;width:20px;height:2px;display:block}.nav-toggle-icon[data-astro-cid-nen7h5rs]{position:relative}.nav-toggle-icon[data-astro-cid-nen7h5rs]:before,.nav-toggle-icon[data-astro-cid-nen7h5rs]:after{content:"";position:absolute;left:0}.nav-toggle-icon[data-astro-cid-nen7h5rs]:before{top:-6px}.nav-toggle-icon[data-astro-cid-nen7h5rs]:after{top:6px}.primary-nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:var(--space-5);display:flex}.primary-nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--ink-600);font-weight:600;font-size:var(--font-size-sm);padding-block:var(--space-2);border-bottom:2px solid #0000;text-decoration:none}.primary-nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--ink-900);border-bottom-color:var(--teal-500)}.nav-cta[data-astro-cid-nen7h5rs]{margin-left:var(--space-5)}@media (width<=767px){.primary-nav[data-astro-cid-nen7h5rs]{inset-inline:0;background:var(--paper-000);border-bottom:1px solid var(--line-200);padding:var(--space-5);display:none;position:absolute;top:100%}.primary-nav[data-astro-cid-nen7h5rs][data-open=true]{display:block}.primary-nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:var(--space-4);margin-bottom:var(--space-5);flex-direction:column}.nav-cta[data-astro-cid-nen7h5rs]{width:100%;margin-left:0}}@media (width>=768px){.nav-toggle[data-astro-cid-nen7h5rs]{display:none}.primary-nav[data-astro-cid-nen7h5rs]{align-items:center;display:flex}}.site-footer[data-astro-cid-jo6i4kqk]{background:var(--ink-900);color:var(--purple-100);padding-block:var(--space-7) var(--space-5)}.footer-grid[data-astro-cid-jo6i4kqk]{gap:var(--space-6);grid-template-columns:1fr;display:grid}.footer-brand[data-astro-cid-jo6i4kqk]{margin:0 0 var(--space-3)}.footer-brand[data-astro-cid-jo6i4kqk] img{display:block}.site-footer[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{max-width:none}.legend[data-astro-cid-jo6i4kqk]{gap:var(--space-4);margin-top:var(--space-5);font-family:var(--font-mono);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.legend[data-astro-cid-jo6i4kqk] li[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--space-2);display:inline-flex}.legend-dot[data-astro-cid-jo6i4kqk]{border-radius:50%;width:.6rem;height:.6rem}.legend-dot--purple[data-astro-cid-jo6i4kqk]{background:var(--purple-500)}.legend-dot--teal[data-astro-cid-jo6i4kqk]{background:var(--teal-500)}.site-footer[data-astro-cid-jo6i4kqk] nav[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--space-3);flex-direction:column;display:flex}.site-footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--purple-100)}.site-footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:#fff}.footer-bottom[data-astro-cid-jo6i4kqk]{margin-top:var(--space-7);padding-top:var(--space-5);font-size:var(--font-size-xs);color:var(--purple-100);border-top:1px solid #ffffff26}.mono[data-astro-cid-jo6i4kqk]{font-family:var(--font-mono)}@media (width>=768px){.footer-grid[data-astro-cid-jo6i4kqk]{grid-template-columns:2fr 1fr;align-items:start}}:root{--ink-900:#1f1a22;--ink-700:#322b36;--ink-600:#4a4550;--ink-400:#756e7c;--paper-000:#fff;--paper-050:#fbf8f6;--line-200:#e7dfe3;--line-100:#f0eaec;--purple-800:#4b2e45;--purple-600:#714b67;--purple-500:#875a7b;--purple-100:#f1e9ef;--teal-700:#00726f;--teal-500:#00a09d;--teal-100:#e3f5f4;--amber-700:#8a5a12;--amber-500:#e8a13c;--amber-100:#fbebd2;--focus-ring:#005fcc;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Menlo", "Consolas", "Liberation Mono", monospace;--font-size-xs:.8125rem;--font-size-sm:.9375rem;--font-size-base:1.0625rem;--font-size-md:1.25rem;--font-size-lg:1.5rem;--font-size-xl:clamp(1.5rem, 1.15rem + 1.5vw, 2rem);--font-size-2xl:clamp(1.75rem, 1.15rem + 2.5vw, 2.75rem);--font-size-3xl:clamp(2rem, 1.15rem + 3.6vw, 3.5rem);--line-height-tight:1.1;--line-height-normal:1.55;--line-height-relaxed:1.7;--tracking-tight:-.02em;--tracking-wide:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--space-9:7rem;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px #1f1a2214;--shadow-md:0 8px 24px #1f1a221f;--shadow-lg:0 24px 48px #1f1a2238;--width-content:75rem;--width-prose:62ch;--width-narrow:38rem;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--transition-fast:.15s ease;--transition-base:.24s ease}*,:before,:after{box-sizing:border-box}html{color-scheme:light;-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--ink-700);background:var(--paper-000);margin:0}img,picture,svg{max-width:100%;height:auto;display:block}h1,h2,h3,h4{line-height:var(--line-height-tight);letter-spacing:var(--tracking-tight);color:var(--ink-900);text-wrap:balance;overflow-wrap:break-word;font-weight:800}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-md)}p{max-width:var(--width-prose)}a{color:var(--teal-700)}a:not([class]){text-decoration-thickness:from-font}ul,ol{margin:0;padding:0;list-style:none}button{font:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{left:var(--space-4);z-index:100;background:var(--ink-900);color:#fff;padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);transition:top var(--transition-fast);font-weight:600;position:absolute;top:-100%}.skip-link:focus{top:var(--space-4)}.container{width:100%;max-width:var(--width-content);padding-inline:var(--space-5);margin-inline:auto}.section{padding-block:var(--space-8)}.section-alt{background:var(--paper-050)}.eyebrow{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--teal-700);margin:0 0 var(--space-3);font-weight:600}.eyebrow:before{content:"";width:.5em;height:.5em;margin-right:var(--space-2);background:currentColor;border-radius:2px;display:inline-block}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-pill);cursor:pointer;min-height:44px;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);border:2px solid #0000;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--purple-600);color:#fff}.btn-primary:hover{background:var(--purple-800);color:#fff}.btn-secondary{border-color:var(--purple-600);color:var(--purple-600);background:0 0}.btn-secondary:hover{background:var(--purple-100)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.level-meter{gap:.3em;display:inline-flex}.level-meter span{background:var(--line-200);border-radius:50%;width:.5em;height:.5em}.level-meter span[data-filled=true]{background:currentColor}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
