.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.nav[data-astro-cid-dmqpwcec]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--soot-void) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px)}.nav__inner[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:var(--space-5);min-height:var(--nav-h)}.nav__brand[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--text);font-family:var(--font-display);font-size:var(--step-1);white-space:nowrap}.nav__mark[data-astro-cid-dmqpwcec]{width:12px;height:20px;border-radius:2px;background:linear-gradient(var(--ember-core),var(--ember-deep));box-shadow:var(--glow-ember)}.nav__desktop[data-astro-cid-dmqpwcec]{margin-inline-start:auto}.nav__list[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:var(--space-2);list-style:none;margin:0;padding:0}.nav__item[data-astro-cid-dmqpwcec]{position:relative}.nav__link[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);min-height:44px;color:var(--text-muted);text-decoration:none;border-radius:var(--radius-sm)}.nav__link[data-astro-cid-dmqpwcec]:hover{color:var(--text)}.nav__caret[data-astro-cid-dmqpwcec]{font-size:.7em}.nav__mega[data-astro-cid-dmqpwcec]{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);width:min(46rem,90vw);background:var(--soot-800);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:var(--space-5);opacity:0;visibility:hidden;transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.nav__item--has-mega[data-astro-cid-dmqpwcec]:hover .nav__mega[data-astro-cid-dmqpwcec],.nav__item--has-mega[data-astro-cid-dmqpwcec]:focus-within .nav__mega[data-astro-cid-dmqpwcec]{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.nav__mega-grid[data-astro-cid-dmqpwcec]{margin-top:var(--space-3);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1) var(--space-4);list-style:none;padding:0}.nav__mega-grid[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{display:block;padding:var(--space-2);color:var(--text-muted);text-decoration:none;border-radius:var(--radius-sm);font-size:var(--step--1)}.nav__mega-grid[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover{color:var(--text);background:var(--surface-raised)}.nav__cta[data-astro-cid-dmqpwcec]{white-space:nowrap}.nav__toggle[data-astro-cid-dmqpwcec],.nav__close[data-astro-cid-dmqpwcec]{display:none;appearance:none;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text);cursor:pointer;place-items:center}.nav__burger[data-astro-cid-dmqpwcec],.nav__burger[data-astro-cid-dmqpwcec]:before,.nav__burger[data-astro-cid-dmqpwcec]:after{display:block;width:18px;height:2px;background:var(--ash-100);content:""}.nav__burger[data-astro-cid-dmqpwcec]{position:relative}.nav__burger[data-astro-cid-dmqpwcec]:before{position:absolute;top:-6px}.nav__burger[data-astro-cid-dmqpwcec]:after{position:absolute;top:6px}.nav__sheet[data-astro-cid-dmqpwcec]{position:fixed;inset:0;z-index:200;background:var(--soot-void);padding-top:env(safe-area-inset-top,0px);overflow-y:auto}.nav__sheet[data-astro-cid-dmqpwcec][hidden]{display:none}.nav__sheet-inner[data-astro-cid-dmqpwcec]{padding-block:var(--space-5) var(--space-8)}.nav__sheet-head[data-astro-cid-dmqpwcec]{display:flex;align-items:center;justify-content:space-between;min-height:var(--nav-h);margin-bottom:var(--space-5)}.nav__sheet-list[data-astro-cid-dmqpwcec]{list-style:none;margin:0 0 var(--space-6);padding:0;display:grid;gap:var(--space-1)}.nav__sheet-list[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{display:block;padding:var(--space-4) var(--space-2);font-family:var(--font-display);font-size:var(--step-2);color:var(--text);text-decoration:none;border-bottom:1px solid var(--border)}.nav__sheet-cta[data-astro-cid-dmqpwcec]{width:100%}@media(max-width:60rem){.nav__desktop[data-astro-cid-dmqpwcec],.nav__cta[data-astro-cid-dmqpwcec]{display:none}.nav__toggle[data-astro-cid-dmqpwcec]{display:grid;margin-inline-start:auto}.nav__close[data-astro-cid-dmqpwcec]{display:grid}}.footer[data-astro-cid-sz7xmlte]{margin-top:var(--space-9);border-top:1px solid var(--border);background:var(--soot-900)}.footer__inner[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.2fr 1.4fr .8fr;gap:var(--space-7);padding-block:var(--space-8) var(--space-7)}.footer__legal[data-astro-cid-sz7xmlte]{font-family:var(--font-display);font-size:var(--step-1);color:var(--text)}.footer__role[data-astro-cid-sz7xmlte]{color:var(--text-subtle);font-size:var(--step--1);margin-top:var(--space-1)}.footer__registry[data-astro-cid-sz7xmlte]{margin-top:var(--space-4);display:grid;gap:var(--space-1);font-size:var(--step--1)}.footer__reg-row[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-3)}.footer__reg-row[data-astro-cid-sz7xmlte] dt[data-astro-cid-sz7xmlte]{color:var(--text-subtle);min-width:3.5em}.footer__reg-row[data-astro-cid-sz7xmlte] dd[data-astro-cid-sz7xmlte]{color:var(--smoke-glow);margin:0}.footer__contact[data-astro-cid-sz7xmlte]{margin-top:var(--space-4)}.footer__contact[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted);font-size:var(--step--1)}.footer__sub-list[data-astro-cid-sz7xmlte]{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:var(--space-4)}.footer__sub[data-astro-cid-sz7xmlte]{display:grid;gap:var(--space-1)}.footer__sub-name[data-astro-cid-sz7xmlte]{color:var(--text);font-weight:var(--fw-medium)}.footer__sub-role[data-astro-cid-sz7xmlte],.footer__sub-reg[data-astro-cid-sz7xmlte]{font-size:var(--step--1);color:var(--text-subtle)}.footer__sub-reg[data-astro-cid-sz7xmlte]{color:var(--smoke)}.footer__nav[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.footer__nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted);text-decoration:none;font-size:var(--step--1)}.footer__nav[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.footer__marking[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border);padding-block:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}.footer__marking-row[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;font-size:var(--step--2);color:var(--text-subtle)}@media(max-width:60rem){.footer__inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:var(--space-6)}}:root{color-scheme:dark;--soot-void: #050403;--soot-900: #0b0908;--soot-800: #12100d;--soot-700: #1b1712;--bark-line: #2a241c;--ash-100: #ece6da;--ash-300: #c7bfb1;--ash-500: #948b7c;--ash-700: #5e574c;--ember: #ff5a1e;--ember-core: #ff7a3c;--ember-deep: #b83a12;--ember-dim: #7a2e14;--smoke: #7e93a8;--smoke-glow: #a6c0d4;--smoke-deep: #3a4a5a;--state-live: #ff5a1e;--state-ok: #6e8f6a;--state-warn: #d8962e;--state-crit: #ff3b2f;--char: var(--soot-800);--flame: var(--ember-core);--amber: var(--state-warn);--core: var(--ember-core);--burn: var(--ember-deep);--moon: var(--smoke-glow);--bg: var(--soot-void);--bg-section: var(--soot-900);--surface: var(--soot-800);--surface-raised: var(--soot-700);--border: var(--bark-line);--border-strong: color-mix(in srgb, var(--bark-line) 60%, var(--ash-500));--text: var(--ash-100);--text-muted: var(--ash-300);--text-subtle: var(--ash-500);--text-disabled: var(--ash-700);--accent: var(--ember);--accent-hot: var(--ember-core);--accent-pressed: var(--ember-deep);--on-accent: var(--soot-void);--data-ink: var(--smoke);--data-glow: var(--smoke-glow);--data-surface: var(--smoke-deep);--focus-ring: var(--ember-core);--step--2: clamp(.6944rem, .66rem + .17vw, .79rem);--step--1: clamp(.8333rem, .78rem + .27vw, .9878rem);--step-0: clamp(1rem, .92rem + .4vw, 1.2346rem);--step-1: clamp(1.2rem, 1.08rem + .6vw, 1.5432rem);--step-2: clamp(1.44rem, 1.26rem + .9vw, 1.929rem);--step-3: clamp(1.728rem, 1.47rem + 1.29vw, 2.4113rem);--step-4: clamp(2.0736rem, 1.71rem + 1.83vw, 3.0141rem);--step-5: clamp(2.4883rem, 1.97rem + 2.58vw, 3.7676rem);--step-6: clamp(2.986rem, 2.24rem + 3.7vw, 4.7095rem);--font-body: "Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Inter Display", "Inter Display Fallback", var(--font-body);--font-mono: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, "SFMono-Regular", "Cascadia Mono", Consolas, monospace;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--leading-tight: 1.08;--leading-snug: 1.28;--leading-normal: 1.55;--tracking-tight: -.02em;--tracking-wide: .04em;--tracking-mono: .01em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--space-10: 8rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px;--hairline: 1px solid var(--border);--shadow-1: 0 1px 2px rgb(0 0 0 / .5);--shadow-2: 0 8px 24px rgb(0 0 0 / .55);--glow-ember: 0 0 0 1px color-mix(in srgb, var(--ember) 40%, transparent), 0 0 24px -6px color-mix(in srgb, var(--ember-core) 55%, transparent);--glow-smoke: 0 0 18px -6px color-mix(in srgb, var(--smoke-glow) 45%, transparent);--dur-fast: .12s;--dur-base: .24s;--dur-slow: .42s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--measure: 68ch;--container: 76rem;--container-wide: 88rem;--gutter: clamp(1rem, .5rem + 2.5vw, 2.5rem);--nav-h: 4rem;--focus-width: 2px;--focus-offset: 2px}@media(prefers-reduced-motion:reduce){:root{--dur-fast: .01ms;--dur-base: .01ms;--dur-slow: .01ms}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_astro/Inter-Variable.CQbNiPAH.woff2) format("woff2-variations")}@font-face{font-family:Inter Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/Inter-Variable.CQbNiPAH.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/JetBrainsMono-Regular.BJIerzfn.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_astro/JetBrainsMono-Bold.Dnepvsjq.woff2) format("woff2")}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90%;descent-override:22.43%;line-gap-override:0%;size-adjust:107.06%}@font-face{font-family:Inter Display Fallback;src:local("Arial");ascent-override:90%;descent-override:22.43%;line-gap-override:0%;size-adjust:107.06%}@font-face{font-family:JetBrains Mono Fallback;src:local("Courier New");ascent-override:75%;descent-override:25%;line-gap-override:0%;size-adjust:96%}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:var(--smoke-deep) var(--soot-void)}body{min-height:100dvh;background-color:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--step-0);font-weight:var(--fw-regular);line-height:var(--leading-normal);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg,video,canvas{display:block;max-width:100%}img,video{height:auto}input,button,textarea,select{font:inherit;color:inherit}a{color:var(--text);text-decoration-color:color-mix(in srgb,var(--ash-500) 60%,transparent);text-underline-offset:.18em}a:hover{text-decoration-color:var(--ember)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--fw-regular);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--text);text-wrap:balance}h1{font-size:var(--step-6)}h2{font-size:var(--step-4)}h3{font-size:var(--step-2)}h4{font-size:var(--step-1)}p{max-width:var(--measure);text-wrap:pretty}code,kbd,samp,pre{font-family:var(--font-mono);font-size:.92em;letter-spacing:var(--tracking-mono)}hr{border:0;border-top:var(--hairline)}.skip-link{position:absolute;left:var(--space-3);top:-100%;z-index:999;padding:var(--space-2) var(--space-4);background:var(--surface);color:var(--text);border:1px solid var(--ember);border-radius:var(--radius-sm);transition:top var(--dur-fast) var(--ease-out)}.skip-link:focus-visible{top:calc(env(safe-area-inset-top,0px) + var(--space-3))}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}::selection{background:color-mix(in srgb,var(--ember) 35%,transparent);color:var(--ash-100)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container--wide{max-width:var(--container-wide)}.section{padding-block:clamp(var(--space-7),5vw,var(--space-9))}.stack>*+*{margin-top:var(--flow, var(--space-4))}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-subtle)}.mono{font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.visually-hidden:not(:focus):not(:focus-within){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:where(button,a.btn,[role=button]){min-height:24px;min-width:24px}.cursor-glow{position:fixed;top:0;left:0;width:26rem;height:26rem;pointer-events:none;z-index:1;transform:translate3d(-50%,-50%,0);translate:var(--cursor-x, -50vw) var(--cursor-y, -50vh);background:radial-gradient(circle,color-mix(in srgb,var(--ember-core) 12%,transparent) 0%,transparent 62%);opacity:0;transition:opacity var(--dur-slow) var(--ease-out);will-change:translate}body[data-cursor-glow=on] .cursor-glow{opacity:1}@media(hover:none),(prefers-reduced-motion:reduce),(pointer:coarse){.cursor-glow{display:none}}@media(prefers-reduced-motion:no-preference){::view-transition-old(root),::view-transition-new(root){animation-duration:var(--dur-base);animation-timing-function:var(--ease-in-out)}::view-transition-old(root){animation-name:smoke-out}::view-transition-new(root){animation-name:smoke-in}}@keyframes smoke-out{to{opacity:0;filter:blur(4px)}}@keyframes smoke-in{0%{opacity:0;filter:blur(4px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
