.wordmark[data-astro-cid-iwd2mrac]{white-space:nowrap;color:var(--color-text-strong);align-items:center;gap:.4em;line-height:1;display:inline-flex}.size-m[data-astro-cid-iwd2mrac]{font-size:1rem}.size-s[data-astro-cid-iwd2mrac]{font-size:.75rem}.btc[data-astro-cid-iwd2mrac]{font-family:var(--font-mono);letter-spacing:.08em;font-size:.82em;font-weight:500}.mark[data-astro-cid-iwd2mrac]{background:var(--color-signal);border-radius:50%;width:.42em;height:.42em}.name[data-astro-cid-iwd2mrac]{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.32em;font-style:italic}:root{--ink-1000:#0b0b0a;--ink-950:#111110;--ink-900:#181816;--ink-850:#1f1f1c;--ink-800:#2a2a26;--ink-700:#3b3a35;--ink-600:#5c5a53;--ink-500:#64625a;--ink-400:#9b988e;--paper-0:#fff;--paper-50:#f5f2eb;--paper-100:#ece8de;--paper-200:#dfd9cc;--paper-300:#c8c1b0;--signal-500:#ff5a1f;--signal-400:#ff7a45;--signal-700:#b53b0b;--type-display-xl:clamp(3.25rem, 1rem + 8.5vw, 9.5rem);--type-display-l:clamp(2.5rem, 1.2rem + 4.6vw, 5.5rem);--type-h1:clamp(2.25rem, 1.5rem + 2.6vw, 3.75rem);--type-h2:clamp(1.875rem, 1.4rem + 1.6vw, 2.75rem);--type-h3:clamp(1.1875rem, 1.1rem + .35vw, 1.375rem);--type-h4:1.0625rem;--type-body-l:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--type-body:1rem;--type-body-s:.875rem;--type-caption:.8125rem;--type-data-label:.6875rem;--type-mono-data:clamp(1.375rem, 1.2rem + .7vw, 1.75rem);--leading-tight:.98;--leading-heading:1.08;--leading-body:1.7;--tracking-display:-.025em;--tracking-heading:-.015em;--tracking-label:.1em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--section-gap:clamp(5rem, 3rem + 7vw, 10rem);--page-width:90rem;--reading-width:42rem;--gutter:clamp(1.25rem, .5rem + 3.5vw, 3.5rem);--grid-gap:clamp(1rem, .5rem + 1.5vw, 2rem);--header-height:4.5rem;--radius-s:2px;--radius-m:4px;--radius-pill:999px;--border-width:1px;--signal-width:1.5px;--ease-out:cubic-bezier(.22, .75, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-fast:.14s;--duration-base:.24s;--duration-slow:.7s;--duration-draw:1.6s;--z-progress:40;--z-header:50;--z-dialog:100;--z-skip-link:200}:root,[data-theme=dark]{color-scheme:dark;--color-bg:var(--ink-950);--color-bg-sunken:var(--ink-1000);--color-surface:var(--ink-900);--color-surface-raised:var(--ink-850);--color-border:var(--ink-800);--color-border-strong:var(--ink-700);--color-text:#e8e5dd;--color-text-strong:#faf8f3;--color-text-muted:var(--ink-400);--color-text-subtle:var(--ink-600);--color-accent:var(--signal-500);--color-accent-text:var(--signal-400);--color-on-accent:var(--ink-1000);--color-signal:var(--signal-500)}[data-theme=light]{color-scheme:light;--color-bg:var(--paper-50);--color-bg-sunken:var(--paper-100);--color-surface:var(--paper-0);--color-surface-raised:var(--paper-100);--color-border:var(--paper-200);--color-border-strong:var(--paper-300);--color-text:var(--ink-800);--color-text-strong:var(--ink-1000);--color-text-muted:var(--ink-500);--color-text-subtle:#8d8a80;--color-accent:var(--signal-500);--color-accent-text:var(--signal-700);--color-on-accent:var(--ink-1000);--color-signal:var(--signal-500)}h1,h2{font-family:var(--font-display);color:var(--color-text-strong);text-wrap:balance;font-weight:400}h3,h4{font-family:var(--font-body);color:var(--color-text-strong);text-wrap:balance;font-weight:600}p{text-wrap:pretty}em.accent,.t-display-xl em,.t-display-l em,.t-h1 em{font-style:italic}.t-display-xl,.t-display-l{font-family:var(--font-display);font-weight:400;line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--color-text-strong)}.t-display-xl{font-size:var(--type-display-xl)}.t-display-l{font-size:var(--type-display-l)}.t-h1,.t-h2{font-family:var(--font-display);font-weight:400;line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);color:var(--color-text-strong)}.t-h1{font-size:var(--type-h1)}.t-h2{font-size:var(--type-h2)}.t-h3,.t-h4{font-family:var(--font-body);letter-spacing:-.01em;color:var(--color-text-strong);font-weight:600;line-height:1.3}.t-h3{font-size:var(--type-h3)}.t-h4{font-size:var(--type-h4)}.t-body-l{font-size:var(--type-body-l);line-height:1.65}.t-body-s{font-size:var(--type-body-s);line-height:1.6}.t-caption{font-size:var(--type-caption);color:var(--color-text-muted);line-height:1.5}.t-label{font-family:var(--font-body);font-size:var(--type-caption);letter-spacing:0;font-weight:500;line-height:1.4}.t-data{font-family:var(--font-mono);font-size:var(--type-data-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:500;line-height:1.4}.t-mono-data{font-family:var(--font-mono);font-size:var(--type-mono-data);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--color-text-strong);font-weight:400;line-height:1.1}.t-muted{color:var(--color-text-muted)}.t-accent{color:var(--color-accent-text)}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-height) + var(--space-6))}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}[data-theme]{background-color:var(--color-bg);color:var(--color-text)}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--type-body);line-height:var(--leading-body);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;display:flex}main{flex:1}img,svg,video{max-width:100%;display:block}img{height:auto}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}button,input{font:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-s)}::selection{background:var(--color-accent);color:var(--color-on-accent)}.container{width:100%;max-width:var(--page-width);padding-inline:var(--gutter);margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.reveal{animation:reveal var(--duration-slow) var(--ease-out) both;animation-delay:var(--reveal-delay,0s)}}@keyframes reveal{0%{opacity:0;transform:translateY(.75rem)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal-on-scroll{animation-name:reveal;animation-timing-function:var(--ease-out);animation-fill-mode:both;animation-timeline:view();animation-range:entry entry 80%}}}@media print{*,:before,:after{transition:none!important;animation:none!important}}
