.skip[data-astro-cid-nen7h5rs]{z-index:100;padding:var(--s-3) var(--s-4);background:var(--ink-900);color:var(--white);border-radius:0 0 var(--r-sm) 0;font-size:var(--t-sm);font-weight:600;position:absolute;left:-9999px}.skip[data-astro-cid-nen7h5rs]:focus{top:0;left:0}.hdr[data-astro-cid-nen7h5rs]{z-index:50;background:color-mix(in srgb, var(--white) 88%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--c-border);position:sticky;top:0}.hdr__inner[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-5);min-height:var(--header-h);display:flex}.hdr__logo[data-astro-cid-nen7h5rs]{color:var(--ink-900);transition:opacity var(--dur) var(--ease);flex:none;align-items:center;display:flex}.hdr__logo[data-astro-cid-nen7h5rs]:hover{opacity:.75}.hdr__nav[data-astro-cid-nen7h5rs]{margin-left:auto}.hdr__nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-6);margin:0;padding:0;list-style:none;display:flex}.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding-block:var(--s-2);font-size:var(--t-sm);color:var(--c-text-muted);transition:color var(--dur) var(--ease);font-weight:500;text-decoration:none;display:block;position:relative}.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:after{content:"";inset-inline:0;background:var(--c-accent);height:2px;transition:transform var(--dur) var(--ease);position:absolute;bottom:0;transform:scaleX(0)}.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--ink-900)}.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover:after,.hdr__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]:after{transform:scaleX(1)}.hdr__cta[data-astro-cid-nen7h5rs]{flex:none;padding:.6rem 1.1rem}.hdr__mobile[data-astro-cid-nen7h5rs]{margin-left:auto;display:none}.hdr__mobile[data-astro-cid-nen7h5rs] summary[data-astro-cid-nen7h5rs]{width:42px;height:42px;color:var(--ink-900);border:1px solid var(--c-border-strong);border-radius:var(--r-sm);cursor:pointer;place-items:center;list-style:none;display:grid}.hdr__mobile[data-astro-cid-nen7h5rs] summary[data-astro-cid-nen7h5rs]::-webkit-details-marker{display:none}.hdr__mobile[data-astro-cid-nen7h5rs][open] summary[data-astro-cid-nen7h5rs]{background:var(--ink-900);color:var(--white);border-color:var(--ink-900)}.hdr__drawer[data-astro-cid-nen7h5rs]{inset-inline:0;gap:var(--s-4);padding:var(--s-5);background:var(--white);border-bottom:1px solid var(--c-border);box-shadow:var(--sh-lg);display:grid;position:absolute;top:100%}.hdr__drawer[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:var(--s-1);margin:0;padding:0;list-style:none;display:grid}.hdr__drawer[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.btn){padding:var(--s-3) var(--s-2);font-family:var(--f-display);font-size:var(--t-md);color:var(--ink-900);border-bottom:1px solid var(--c-border);font-weight:700;text-decoration:none;display:block}.hdr__drawer[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--c-accent-ink)}@media (width<=820px){.hdr__nav[data-astro-cid-nen7h5rs],.hdr__cta[data-astro-cid-nen7h5rs]{display:none}.hdr__mobile[data-astro-cid-nen7h5rs]{display:block}}.ftr[data-astro-cid-jo6i4kqk]{padding-block:var(--s-9) var(--s-6);background:var(--ink-950);color:var(--c-text-on-dark-muted);font-size:var(--t-sm)}.ftr__top[data-astro-cid-jo6i4kqk]{gap:var(--s-8);padding-bottom:var(--s-8);border-bottom:1px solid var(--c-border-dark);grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr);display:grid}.ftr__logo[data-astro-cid-jo6i4kqk]{color:var(--ink-025);display:inline-flex}.ftr__brand[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin-top:var(--s-4);max-width:42ch;line-height:1.6}.ftr__meta[data-astro-cid-jo6i4kqk]{gap:var(--s-2) var(--s-5);margin-top:var(--s-5);font-size:var(--t-xs);color:var(--ink-400);flex-wrap:wrap;padding:0;list-style:none;display:flex}.ftr__meta[data-astro-cid-jo6i4kqk] li[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--s-2);display:flex}.ftr__cols[data-astro-cid-jo6i4kqk]{gap:var(--s-6);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.ftr__cols[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{font-family:var(--f-mono);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--amber-400);margin-bottom:var(--s-4);font-weight:500}.ftr__cols[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.ftr__cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:not(.btn){align-items:center;gap:var(--s-2);color:var(--ink-300);transition:color var(--dur) var(--ease);text-decoration:none;display:inline-flex}.ftr__cols[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:not(.btn):hover{color:var(--white)}.ftr__cta[data-astro-cid-jo6i4kqk]{margin-top:var(--s-5);padding:.55rem 1rem}.ftr__bottom[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:var(--s-3);padding-top:var(--s-5);font-size:var(--t-xs);color:var(--ink-500);flex-wrap:wrap;display:flex}.ftr__joke[data-astro-cid-jo6i4kqk] span[data-astro-cid-jo6i4kqk]{border-left:2px solid var(--amber-500);padding-left:var(--s-3);font-family:var(--f-mono)}@media (width<=780px){.ftr__top[data-astro-cid-jo6i4kqk]{gap:var(--s-7);grid-template-columns:1fr}}:root{--ink-950:#15181c;--ink-900:#1e2126;--ink-800:#262a31;--ink-700:#2f343c;--ink-600:#393e46;--ink-500:#4a515c;--ink-400:#6b7382;--ink-300:#9aa2b1;--ink-200:#c8cdd6;--ink-100:#e6e9ee;--ink-050:#f2f4f7;--ink-025:#f7f7f7;--amber-700:#8a6a00;--amber-600:#c08c00;--amber-500:#f8b500;--amber-400:#ffc734;--amber-300:#ffd970;--amber-100:#fff2cf;--amber-050:#fffaef;--white:#fff;--c-bg:var(--white);--c-bg-alt:var(--ink-025);--c-bg-dark:var(--ink-900);--c-bg-dark-alt:var(--ink-800);--c-text:var(--ink-800);--c-text-muted:var(--ink-500);--c-text-subtle:var(--ink-400);--c-text-on-dark:var(--ink-025);--c-text-on-dark-muted:var(--ink-300);--c-accent:var(--amber-500);--c-accent-ink:var(--amber-700);--c-border:var(--ink-100);--c-border-strong:var(--ink-200);--c-border-dark:color-mix(in oklab, var(--ink-025) 14%, transparent);--c-focus:var(--amber-500);--c-danger:#b4231f;--c-success:#1c6b45;--f-display:var(--font-display), system-ui, sans-serif;--f-body:var(--font-body), system-ui, sans-serif;--f-mono:var(--font-mono), ui-monospace, monospace;--t-xs:.78rem;--t-sm:.875rem;--t-base:1rem;--t-md:clamp(1.05rem, .99rem + .28vw, 1.2rem);--t-lg:clamp(1.2rem, 1.09rem + .5vw, 1.45rem);--t-xl:clamp(1.45rem, 1.24rem + .95vw, 2rem);--t-2xl:clamp(1.8rem, 1.43rem + 1.7vw, 2.75rem);--t-3xl:clamp(2.2rem, 1.6rem + 2.7vw, 3.75rem);--t-4xl:clamp(2.6rem, 1.7rem + 4vw, 4.75rem);--lh-tight:1.08;--lh-snug:1.25;--lh-normal:1.65;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:2.5rem;--s-8:3rem;--s-9:4rem;--s-10:5rem;--s-11:7rem;--s-section:clamp(3.5rem, 2rem + 6vw, 7rem);--w-container:1200px;--w-narrow:720px;--w-mid:940px;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-xl:24px;--r-pill:999px;--sh-sm:0 1px 2px #1e21260f, 0 1px 3px #1e21260a;--sh-md:0 4px 12px #1e212612, 0 2px 4px #1e21260a;--sh-lg:0 18px 40px #1e21261a, 0 4px 12px #1e21260d;--sh-amber:0 10px 30px #f8b50047;--ease:cubic-bezier(.22, .61, .36, 1);--dur:.2s;--dur-slow:.42s;--header-h:72px}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--s-4))}body{font-family:var(--f-body);font-size:var(--t-base);line-height:var(--lh-normal);color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}ul[class],ol[class]{padding:0;list-style:none}a{color:inherit}:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1,h2,h3,h4{font-family:var(--f-display);font-weight:700;line-height:var(--lh-tight);letter-spacing:-.02em;text-wrap:balance}h1{font-size:var(--t-3xl)}h2{font-size:var(--t-2xl)}h3{font-size:var(--t-lg);letter-spacing:-.01em}h4{font-size:var(--t-md);letter-spacing:-.01em}p{text-wrap:pretty}strong{color:var(--ink-900);font-weight:600}.eyebrow{align-items:center;gap:var(--s-2);font-family:var(--f-mono);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent-ink);margin-bottom:var(--s-4);font-weight:500;display:inline-flex}.eyebrow:before{content:"//";opacity:.5}.on-dark .eyebrow,.eyebrow--dark{color:var(--amber-400)}.lead{font-size:var(--t-md);color:var(--c-text-muted);max-width:62ch;line-height:1.6}.on-dark .lead{color:var(--c-text-on-dark-muted)}.mark{background-image:linear-gradient(var(--c-accent), var(--c-accent));background-position:0 92%;background-repeat:no-repeat;background-size:100% .3em;padding-inline:.05em}.accent{color:var(--c-accent-ink)}.on-dark .accent{color:var(--amber-400)}.container{width:100%;max-width:var(--w-container);padding-inline:var(--s-5);margin-inline:auto}@media (width<=480px){.container{padding-inline:var(--s-4)}}.section{padding-block:var(--s-section)}.section--tight{padding-block:calc(var(--s-section) * .62)}.section--alt{background:var(--c-bg-alt)}.section--dark{background:var(--c-bg-dark);color:var(--c-text-on-dark)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--white)}.narrow{max-width:var(--w-narrow)}.mid{max-width:var(--w-mid)}.stack>*+*{margin-top:var(--s-4)}.section-head{max-width:var(--w-narrow);margin-bottom:var(--s-8)}.section-head>*+*{margin-top:var(--s-4)}.section-head .eyebrow{margin-bottom:0}.grid{gap:var(--s-5);display:grid}.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}.grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.dotfield{isolation:isolate;position:relative}.dotfield:before{content:"";z-index:-1;background-image:radial-gradient(circle at center, color-mix(in oklab, var(--amber-500) 55%, transparent) 1px, transparent 1.6px);opacity:.22;background-size:28px 28px;position:absolute;inset:0;mask-image:radial-gradient(70% 60% at 70% 20%,#000 20%,#0000 78%)}.btn{--btn-bg:var(--c-accent);--btn-fg:var(--ink-900);--btn-bd:var(--c-accent);justify-content:center;align-items:center;gap:var(--s-2);font-family:var(--f-display);font-size:var(--t-sm);letter-spacing:.01em;white-space:nowrap;background:var(--btn-bg);color:var(--btn-fg);border:2px solid var(--btn-bd);border-radius:var(--r-pill);transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);padding:.8rem 1.4rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--sh-amber);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn .arrow{transition:transform var(--dur) var(--ease)}.btn:hover .arrow{transform:translate(3px)}.btn--ghost{--btn-bg:transparent;--btn-fg:var(--ink-800);--btn-bd:var(--c-border-strong)}.btn--ghost:hover{--btn-bd:var(--ink-800);box-shadow:none}.btn--ghost-light{--btn-bg:transparent;--btn-fg:var(--ink-025);--btn-bd:color-mix(in oklab, var(--ink-025) 34%, transparent)}.btn--ghost-light:hover{--btn-bd:var(--ink-025);box-shadow:none}.btn--lg{font-size:var(--t-base);padding:1rem 1.9rem}.btn--block{width:100%}.btn-row{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.tlink{align-items:center;gap:var(--s-2);color:var(--ink-900);background-image:linear-gradient(var(--c-accent), var(--c-accent));transition:background-size var(--dur) var(--ease);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px;font-weight:600;text-decoration:none;display:inline-flex}.tlink:hover{background-size:100% 2px}.on-dark .tlink,.section--dark .tlink{color:var(--white)}.card{gap:var(--s-3);padding:var(--s-6);background:var(--white);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:var(--sh-sm);transition:transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.card:before{content:"";inset-inline:0;background:var(--c-accent);transform-origin:0;height:3px;transition:transform var(--dur-slow) var(--ease);position:absolute;top:0;transform:scaleX(0)}.card--link:hover,.card--link:focus-within{box-shadow:var(--sh-lg);border-color:var(--c-border-strong);transform:translateY(-4px)}.card--link:hover:before,.card--link:focus-within:before{transform:scaleX(1)}.card h3{color:var(--ink-900)}.card p{color:var(--c-text-muted);font-size:var(--t-sm);line-height:1.6}.card__hit{border-radius:inherit;position:absolute;inset:0}.card__hit:focus-visible{outline-offset:-3px}.card__more{padding-top:var(--s-2);font-family:var(--f-display);font-size:var(--t-sm);color:var(--c-accent-ink);align-items:center;gap:var(--s-2);margin-top:auto;font-weight:700;display:inline-flex}.card--dark{background:var(--c-bg-dark-alt);border-color:var(--c-border-dark);box-shadow:none}.card--dark h3{color:var(--white)}.card--dark p{color:var(--c-text-on-dark-muted)}.icon-tile{border-radius:var(--r-md);background:var(--amber-050);border:1px solid var(--amber-100);width:46px;height:46px;color:var(--amber-700);flex:none;place-items:center;display:grid}.icon-tile svg{width:23px;height:23px}.card--dark .icon-tile,.section--dark .icon-tile{background:color-mix(in oklab, var(--amber-500) 14%, transparent);border-color:color-mix(in oklab, var(--amber-500) 26%, transparent);color:var(--amber-400)}.checks{gap:var(--s-3);padding:0;list-style:none;display:grid}.checks li{gap:var(--s-3);font-size:var(--t-sm);color:var(--c-text-muted);grid-template-columns:20px 1fr;align-items:start;line-height:1.55;display:grid}.checks li:before{content:"";border-radius:var(--r-pill);background:var(--amber-100);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a6a00' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:13px;width:20px;height:20px;margin-top:.15em}.section--dark .checks li{color:var(--c-text-on-dark-muted)}.section--dark .checks li:before{background-color:color-mix(in oklab, var(--amber-500) 20%, transparent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffc734' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}.pills{gap:var(--s-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.pill{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--c-text-muted);background:var(--white);border:1px solid var(--c-border);border-radius:var(--r-pill);padding:.3rem .7rem;font-weight:500}.section--dark .pill,.section--alt .pill{background:0 0}.section--dark .pill{color:var(--c-text-on-dark-muted);border-color:var(--c-border-dark)}.stat__num{font-family:var(--f-display);font-size:var(--t-2xl);letter-spacing:-.03em;color:var(--amber-400);font-weight:700;line-height:1;display:block}.stat__label{margin-top:var(--s-2);font-size:var(--t-sm);color:var(--c-text-on-dark-muted);display:block}.section--alt .stat__num,.section:not(.section--dark) .stat__num{color:var(--c-accent-ink)}.section:not(.section--dark) .stat__label{color:var(--c-text-muted)}.prose{max-width:68ch;color:var(--c-text-muted)}.prose>*+*{margin-top:var(--s-4)}.prose h2{font-size:var(--t-xl);margin-top:var(--s-7);color:var(--ink-900)}.prose h3{font-size:var(--t-lg);margin-top:var(--s-6);color:var(--ink-900)}.prose ul,.prose ol{padding-left:1.15rem}.prose li+li{margin-top:var(--s-2)}.prose a{color:var(--ink-900);text-decoration:underline;text-decoration-color:var(--c-accent);text-underline-offset:2px;font-weight:600;text-decoration-thickness:2px}.prose blockquote{padding-left:var(--s-5);border-left:3px solid var(--c-accent);font-size:var(--t-md);color:var(--ink-700)}.field{gap:var(--s-2);flex-direction:column;display:flex}.field label{font-size:var(--t-sm);color:var(--ink-800);font-weight:600}.field .req{color:var(--c-danger)}.field .hint{font-size:var(--t-xs);color:var(--c-text-subtle)}.input,.textarea,.select{width:100%;font-size:var(--t-sm);color:var(--ink-900);background:var(--white);border:1px solid var(--c-border-strong);border-radius:var(--r-sm);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:.7rem .85rem}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-400)}.input:focus,.textarea:focus,.select:focus{border-color:var(--amber-500);box-shadow:0 0 0 3px var(--amber-100);outline:none}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--c-danger)}.textarea{resize:vertical;min-height:9rem}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a515c' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .8rem center;background-repeat:no-repeat;background-size:16px;padding-right:2.4rem}.checkbox{gap:var(--s-3);font-size:var(--t-sm);color:var(--c-text-muted);grid-template-columns:auto 1fr;align-items:start;display:grid}.checkbox input{width:18px;height:18px;accent-color:var(--amber-600);margin-top:.2em}.hp{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.form-note{padding:var(--s-4) var(--s-5);border-radius:var(--r-md);font-size:var(--t-sm);border:1px solid #0000}.form-note--error{color:var(--c-danger);background:#fdf2f2;border-color:#f0c9c8}.form-note--success{color:var(--c-success);background:#f0f9f4;border-color:#bfe3ce}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation:linear both reveal view();animation-range:entry entry 42%}}@keyframes reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}
