:root{--paper:var(--n1-ground);--paper-2:var(--n1-panel);--paper-3:var(--n1-raised);--ink:var(--n1-ink);--ink-2:var(--n1-ink-2);--ink-3:var(--n1-ink-3);--line:var(--n1-line);--line-strong:var(--n1-line-strong);--dot:var(--n1-dot);--green:var(--n1-red);--green-ink:var(--n1-red-ink);--green-soft:#c8102e33;--red:var(--n1-red);--red-soft:var(--n1-red-soft);--display:var(--n1-display);--mono:var(--n1-mono);--body:var(--mono);--t-xs:var(--n1-fs-xs);--t-sm:var(--n1-fs-sm);--t-body:var(--n1-fs-body);--t-lead:var(--n1-fs-lead);--t-h3:var(--n1-fs-h3);--t-section:var(--n1-fs-h2);--t-hero:var(--n1-fs-display);--measure:60ch;--gutter:var(--n1-gutter);--shelf:var(--n1-shelf);--frame:calc(var(--n1-frame-max) + 2 * var(--n1-gutter));--radius:var(--n1-radius);--ease:var(--n1-ease);--beat:var(--n1-beat);--bone:var(--ink);--smoke:var(--ink-2);--ash:var(--ink-3);--raised:var(--paper-2);--panel:var(--paper-2);--hairline:var(--line);--gridline:var(--dot);--red-lift:var(--red);--glow:var(--green-soft)}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--n1-bar-h) + 1rem);color-scheme:dark}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}body{background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:var(--t-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:400;line-height:1.6;overflow-x:hidden}img,svg,video,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}::selection{background:var(--red);color:var(--ink)}.frame{width:100%;max-width:var(--frame);padding-inline:var(--gutter);margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.label{font-family:var(--mono);font-size:var(--t-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);font-weight:500}.box{border:1px solid var(--line-strong);background:#0a0a0bb8}.skip{top:0;left:var(--gutter);z-index:100;background:var(--ink);color:var(--paper);transition:transform var(--beat) var(--ease);padding:.6rem 1rem;font-weight:500;position:fixed;transform:translateY(-120%)}.skip:focus{transform:translateY(0)}:root{--fx-line:color-mix(in srgb, var(--ink) 4%, transparent);--fx-sweep-edge:color-mix(in srgb, var(--ink) 1.5%, transparent);--fx-sweep-core:color-mix(in srgb, var(--ink) 3.5%, transparent)}.fx-scanlines{z-index:55;pointer-events:none;contain:layout paint style;background-image:repeating-linear-gradient(to bottom, var(--fx-line) 0 1px, transparent 1px 3px);position:fixed;inset:0}.fx-scanlines:after{content:"";inset-inline:0;background:linear-gradient(to bottom, transparent 0%, var(--fx-sweep-edge) 38%, var(--fx-sweep-core) 52%, var(--fx-sweep-edge) 64%, transparent 100%);will-change:transform;height:24vh;animation:11s linear infinite fx-sweep;position:absolute;top:-24vh}@keyframes fx-sweep{0%{transform:translate(0,0)}33%{transform:translateY(124vh)}to{transform:translateY(124vh)}}.fx-crt{animation:7.3s linear infinite fx-crt}@keyframes fx-crt{0%,14%,14.6%,42%,42.4%,58%,59.6%,to{opacity:1}14.3%{opacity:.965}42.2%{opacity:.982}58.8%{opacity:.955}59.2%{opacity:.986}}.fx-glitch{isolation:isolate;position:relative}.fx-glitch:before,.fx-glitch:after{content:attr(data-text);content:attr(data-text) / "";pointer-events:none;opacity:0;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-transform:inherit;white-space:inherit;mix-blend-mode:multiply;position:absolute;inset:0}.fx-glitch:before{color:var(--red)}.fx-glitch:after{color:var(--ink-2)}.fx-glitch:hover:before,.fx-glitch:focus-visible:before{animation:.36s step-end fx-tear-a}.fx-glitch:hover:after,.fx-glitch:focus-visible:after{animation:.4s step-end fx-tear-b}@keyframes fx-tear-a{0%{opacity:0;clip-path:inset(0 0 100%);transform:translate(0,0)}12%{opacity:1;clip-path:inset(6% 0 64%);transform:translate(-2px,-1px)}34%{opacity:1;clip-path:inset(44% 0 28%);transform:translate(3px,1px)}56%{opacity:1;clip-path:inset(72% 0 4%);transform:translate(-3px)}78%{opacity:.7;clip-path:inset(18% 0 50%);transform:translate(1px)}to{opacity:0;clip-path:inset(0 0 100%);transform:translate(0,0)}}@keyframes fx-tear-b{0%{opacity:0;clip-path:inset(0 0 100%);transform:translate(0,0)}16%{opacity:.85;clip-path:inset(52% 0 18%);transform:translate(2px,1px)}38%{opacity:.85;clip-path:inset(10% 0 58%);transform:translate(-2px)}62%{opacity:.7;clip-path:inset(34% 0 36%);transform:translate(2px,-1px)}to{opacity:0;clip-path:inset(0 0 100%);transform:translate(0,0)}}.fx-cursor:after{content:"";vertical-align:-.04em;background:var(--ink);width:.46em;height:.84em;margin-left:.2em;animation:1.1s steps(2,jump-none) infinite fx-blink;display:inline-block}@keyframes fx-blink{0%{opacity:1}to{opacity:0}}.fx-reveal{opacity:1;transition:opacity .54s var(--ease), transform .54s var(--ease);transform:none}@media (scripting:enabled){.fx-reveal:not(.is-live){opacity:0;animation:1ms linear 5s forwards fx-reveal-failsafe;transform:translateY(.75rem)}html.fx-ready .fx-reveal:not(.is-live){animation:none}}@keyframes fx-reveal-failsafe{to{opacity:1;transform:none}}@media (scripting:enabled){[data-fade-words]:not(.fx-words-live){opacity:0;animation:1ms linear 5s forwards fx-reveal-failsafe}html.fx-ready [data-fade-words]:not(.fx-words-live){animation:none}}.fx-word{opacity:0;transition:opacity .5s var(--ease), transform .5s var(--ease);display:inline-block;transform:translateY(.35em)}.fx-word.is-live{opacity:1;transform:none}.fx-decoding,.fx-scrambling{font-variant-ligatures:none;font-kerning:none}@media (prefers-reduced-motion:reduce){.fx-scanlines:after{display:none}.fx-crt{opacity:1;animation:none}.fx-glitch:hover:before,.fx-glitch:focus-visible:before,.fx-glitch:hover:after,.fx-glitch:focus-visible:after{opacity:0;animation:none}.fx-cursor:after{opacity:1;animation:none}.fx-reveal,.fx-reveal:not(.is-live),[data-fade-words],[data-fade-words]:not(.fx-words-live),.fx-word{opacity:1;transition:none;animation:none;transform:none}}.marble[data-astro-cid-v5llp2nm]{z-index:-1;pointer-events:none;contain:strict;background-color:var(--paper);background-image:radial-gradient(58% 42% at 18% 32%,#1e1d21 0%,#1e1d2100 72%),radial-gradient(52% 60% at 82% 68%,#1e1d21 0%,#1e1d2100 72%),radial-gradient(40% 28% at 56% 12%,#e6dfca 0%,#e6dfca00 70%),radial-gradient(46% 34% at 38% 88%,#e6dfca 0%,#e6dfca00 70%);position:fixed;inset:0;overflow:hidden}.marble[data-astro-cid-v5llp2nm] canvas[data-astro-cid-v5llp2nm]{opacity:0;width:100%;height:100%;transition:opacity .9s var(--ease);display:block;position:absolute;inset:0}.marble[data-astro-cid-v5llp2nm][data-state=live] canvas[data-astro-cid-v5llp2nm],.marble[data-astro-cid-v5llp2nm][data-state=still] canvas[data-astro-cid-v5llp2nm]{opacity:1}.marble[data-astro-cid-v5llp2nm][data-state=css] canvas[data-astro-cid-v5llp2nm]{transition:none}.marble[data-astro-cid-v5llp2nm]:after{content:"";background-image:radial-gradient(circle, var(--dot) 0 .75px, transparent 1.05px), repeating-linear-gradient(to bottom, #edeae606 0 1px, transparent 1px 3px);background-position:1px 1px,0 0;background-size:4px 4px,auto;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.marble[data-astro-cid-v5llp2nm] canvas[data-astro-cid-v5llp2nm]{transition:none}}
