@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}:root{--paper-light:#f0ebe6;--ink-light:#1e0f14;--accent-light:#a8231b;--accent-line-light:#a8231b;--on-accent-light:#f0ebe6;--paper-dark:#1e0f14;--ink-dark:#f6ede4;--accent-dark:#c42a1e;--accent-line-dark:#da4233;--on-accent-dark:#f6ede4;--paper:var(--paper-light);--ink:var(--ink-light);--accent:var(--accent-light);--accent-line:var(--accent-line-light);--on-accent:var(--on-accent-light);--code-accent-share:70%;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:var(--paper-dark);--ink:var(--ink-dark);--accent:var(--accent-dark);--accent-line:var(--accent-line-dark);--on-accent:var(--on-accent-dark);--code-accent-share:45%;color-scheme:dark}}:root[data-theme=dark],.scheme-dark{--paper:var(--paper-dark);--ink:var(--ink-dark);--accent:var(--accent-dark);--accent-line:var(--accent-line-dark);--on-accent:var(--on-accent-dark);--code-accent-share:45%;color-scheme:dark}:root,.scheme-dark{--soft:color-mix(in srgb, var(--ink) 77%, var(--paper));--wash:color-mix(in oklab, var(--accent) 8%, color-mix(in oklab, var(--ink) 4%, var(--paper)));--scrim:color-mix(in srgb, var(--ink-light) 60%, transparent);--link-accent:var(--accent-line);--link-hot:hsl(from var(--accent-line) h 100 l);--code-accent:color-mix(in oklab, var(--accent-line) var(--code-accent-share), var(--ink));--code-string:oklch(from var(--code-accent) l c calc(h + 60));--shiki-foreground:var(--ink);--shiki-background:var(--wash);--shiki-token-keyword:var(--code-accent);--shiki-token-constant:var(--code-accent);--shiki-token-string:var(--code-string);--shiki-token-string-expression:var(--code-string);--shiki-token-comment:var(--soft);--shiki-token-function:var(--ink);--shiki-token-parameter:var(--ink);--shiki-token-punctuation:var(--soft);--shiki-token-link:var(--code-accent);--shiki-token-inserted:var(--code-string);--shiki-token-deleted:var(--code-accent);--shiki-token-changed:var(--soft)}:root{--font-display:"Jost", "Futura", "Century Gothic", system-ui, sans-serif;--font-body:"Jost", "Futura", "Century Gothic", system-ui, sans-serif;--font-mono:"Fira Code", ui-monospace, "SFMono-Regular", Menlo, monospace;--weight-body:400;--weight-strong:600;--weight-bold:700;--weight-display:800;--step--1:.8125rem;--step-0:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-1:clamp(1.25rem, 1.1rem + .6vw, 1.6rem);--step-2:clamp(1.6rem, 1.3rem + 1.3vw, 2.4rem);--step-3:clamp(2rem, 1.4rem + 2.6vw, 3.4rem);--step-4:clamp(2.8rem, 1.6rem + 5.4vw, 6rem);--step-5:clamp(2.8rem, .6rem + 10.8vw, 9rem);--leading-display:.88;--leading-sentence:1.05;--leading-heading:1.15;--leading-lead:1.35;--leading-body:1.55;--tracking-display:-.04em;--tracking-heading:-.02em;--tracking-caps:.04em;--tracking-label:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4rem;--rule:4px;--rule-thin:2px;--gutter:clamp(1rem, 4vw, 3rem);--measure:65ch;--page:80rem}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-body);background:var(--paper);color:var(--ink);-webkit-text-size-adjust:100%;scroll-padding-top:6rem;font-size:100%}body{min-height:100vh;font-size:var(--step-0);font-weight:var(--weight-body);line-height:var(--leading-body);background:var(--paper);color:var(--ink);flex-direction:column;margin:0;display:flex}main{flex:1;width:100%}.page{width:100%;max-width:calc(var(--measure) + 2 * var(--gutter));padding:var(--space-6) var(--gutter) var(--space-7);margin:0 auto}:focus-visible{outline:var(--rule-thin) solid currentColor;outline-offset:3px}.skip-link{top:var(--space-2);left:var(--space-2);z-index:200;padding:var(--space-2) var(--space-3);font-weight:var(--weight-strong);color:var(--paper);background:var(--ink);text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}main:focus{outline:none}::view-transition{background:var(--paper)}::view-transition-group(main){animation:none}::view-transition-old(main){display:none}::view-transition-new(main){animation:.35s cubic-bezier(.2,.8,.2,1) both page-in}:root[data-astro-transition=back]::view-transition-new(main){animation-name:page-in-back}@keyframes page-in{0%{opacity:0;transform:translate(3rem)}}@keyframes page-in-back{0%{opacity:0;transform:translate(-3rem)}}img,svg,video,canvas{max-width:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-heading);text-wrap:balance;margin:0}h1{font-size:var(--step-4);line-height:var(--leading-display);letter-spacing:var(--tracking-heading);overflow-wrap:anywhere}h2{font-size:var(--step-2);letter-spacing:var(--tracking-heading)}h3,.item-title{font-family:var(--font-display);font-size:var(--step-1);font-weight:var(--weight-bold);line-height:var(--leading-heading);letter-spacing:normal}h4,h5,h6{font-size:var(--step-0)}.hero{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--step-5);line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase}.big{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--step-3);line-height:var(--leading-sentence);letter-spacing:var(--tracking-heading);text-wrap:balance;margin:0}.lead{font-size:var(--step-1);font-weight:var(--weight-body);line-height:var(--leading-lead)}:where(.page) h1{margin-bottom:var(--space-5)}:where(.page) h2{margin-top:var(--space-6);margin-bottom:var(--space-3)}:where(.page) h3{margin-top:var(--space-5);margin-bottom:var(--space-2)}:where(.page) :is(h4,h5,h6){margin-top:var(--space-4);margin-bottom:var(--space-2)}p{margin:0 0 var(--space-3)}p:empty{display:none}strong,b{font-weight:var(--weight-strong)}a{color:inherit;text-decoration-line:underline;text-decoration-thickness:var(--rule-thin);text-underline-offset:.2em;text-decoration-color:var(--link-accent);transition:text-decoration-color .15s ease-in-out,color .15s ease-in-out,border-color 50ms ease-in-out}a:hover{text-decoration-color:hsl(from var(--link-accent) h calc(s + 50) l)}.quiet{text-decoration:none}a.quiet:hover{color:color-mix(in oklab, var(--quiet-base,currentColor) 43%, var(--link-hot))}.icon-link:hover{color:color-mix(in srgb, currentColor 70%, transparent)}ul,ol{margin:0 0 var(--space-3);padding-left:1.4em}li{margin:var(--space-2) 0}li::marker{color:var(--accent-line)}hr{border:0;border-top:var(--rule) solid var(--ink);margin:var(--space-6) 0}blockquote{margin:var(--space-4) 0;padding-left:var(--space-3);border-left:var(--rule) solid var(--accent-line)}.label{font-family:var(--font-mono);font-size:var(--step--1);font-weight:var(--weight-body);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:var(--leading-lead)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}.button{padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--step-0);font-weight:var(--weight-strong);color:var(--paper);background:var(--ink);border:var(--rule-thin) solid var(--ink);text-decoration:none;transition:none;display:inline-block}.button:hover{color:var(--ink);background:0 0}.go{font-weight:var(--weight-bold);text-decoration-thickness:var(--rule);text-decoration-skip-ink:none;white-space:nowrap}code{font-family:var(--font-mono);font-size:.88em}:not(pre)>code{font-weight:var(--weight-strong)}figure[data-rehype-pretty-code-figure]{margin:var(--space-4) 0;background:var(--wash);color:var(--ink);border-top:var(--rule) solid var(--accent-line);grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden;& figcaption{padding:var(--space-2) 0 var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--step-0);font-weight:var(--weight-strong);line-height:var(--leading-heading);grid-area:1/1;align-self:center}& pre{padding:var(--space-3);grid-area:2/1/auto/-1;margin:0;font-size:.9rem;line-height:1.6;overflow-x:auto}& pre code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);width:2ch;margin-right:var(--space-3);color:var(--soft);text-align:left;display:inline-block}& pre code{counter-reset:line}}@media (width<=48rem){.page>figure[data-rehype-pretty-code-figure]{margin-inline:calc(-1 * var(--gutter))}figure[data-rehype-pretty-code-figure]{& figcaption{padding-left:var(--gutter)}& pre{padding-inline:var(--gutter);overflow-x:visible}& pre code{white-space:normal;display:block!important}& pre code[data-line-numbers]{--number:calc(2ch + var(--space-3))}& pre code>[data-line]{white-space:pre-wrap;overflow-wrap:anywhere;padding-left:calc(var(--number,0ch) + var(--indent,0ch) + 2ch);text-indent:calc(-1 * (var(--number,0ch) + var(--indent,0ch) + 2ch));display:block}& pre code>[data-line]:before{text-indent:0}}}@media (prefers-reduced-motion:reduce){*,:before,:after,::view-transition-new(main){transition:none!important;animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.switch.svelte-14ttdid{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-0);line-height:inherit;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink);border:0;border-bottom:var(--rule) solid transparent;background:0 0;margin:0;padding:0 0 2px;transition:border-color 15ms ease-in-out;display:inline-block}.switch.svelte-14ttdid:hover{border-bottom-color:var(--ink)}.dot.svelte-14ttdid{vertical-align:-.05em;background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1.5px solid;border-radius:50%;width:.75em;height:.75em;margin-right:.5em;display:inline-block}.bar.svelte-oiwvqb{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--gutter);background:var(--paper);border-bottom:var(--rule) solid var(--ink);flex-wrap:wrap;display:flex}header.bar.svelte-oiwvqb{z-index:100;position:sticky;top:0}.name.svelte-oiwvqb{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--step-1);letter-spacing:var(--tracking-heading);text-transform:uppercase;line-height:1;text-decoration:none}.menu.svelte-oiwvqb{padding:var(--space-1);font-size:var(--step-0);line-height:var(--leading-lead);background:var(--ink);color:var(--paper);border:var(--rule-thin) solid var(--ink);display:none}.menu.svelte-oiwvqb svg{width:1lh;height:1lh;stroke-width:var(--rule);display:block}nav.svelte-oiwvqb{align-items:baseline;gap:var(--space-4);display:flex}ul.svelte-oiwvqb{gap:var(--space-4);margin:0;padding:0;list-style:none;display:flex}li.svelte-oiwvqb{margin:0}nav.svelte-oiwvqb a:where(.svelte-oiwvqb){font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-0);letter-spacing:var(--tracking-caps);text-transform:uppercase;border-bottom:var(--rule) solid transparent;padding-bottom:2px;text-decoration:none}nav.svelte-oiwvqb a:where(.svelte-oiwvqb):hover{border-bottom-color:var(--ink)}nav.svelte-oiwvqb a[aria-current=page]:where(.svelte-oiwvqb){border-bottom-color:var(--accent-line)}.sheet.svelte-oiwvqb{background:var(--paper);width:100%;max-width:none;max-height:100dvh;color:var(--ink);border:0;border-bottom:var(--rule) solid var(--ink);margin:0 0 auto;padding:0;overflow-y:auto}.sheet.svelte-oiwvqb::backdrop{background:var(--scrim)}html:has(.sheet[open]){overflow:hidden}.sheet-links.svelte-oiwvqb{align-items:stretch;gap:var(--space-3);padding:0 var(--gutter) var(--space-4);flex-direction:column}.sheet-links.svelte-oiwvqb ul:where(.svelte-oiwvqb){flex-direction:column;gap:0}.sheet-links.svelte-oiwvqb a:where(.svelte-oiwvqb){padding:var(--space-3) 0;font-weight:var(--weight-display);font-size:var(--step-2);letter-spacing:var(--tracking-heading);text-transform:none;border-bottom:var(--rule-thin) solid var(--ink);display:block}.sheet-links.svelte-oiwvqb a[aria-current=page]:where(.svelte-oiwvqb){color:var(--accent-line);border-bottom-color:var(--ink)}.sheet-links.svelte-oiwvqb .switch{align-self:flex-start}@media (width<=48rem){.menu.svelte-oiwvqb{display:block}.links.svelte-oiwvqb{display:none}}.socialLinks[data-astro-cid-y2qsmizv]{gap:var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.socialLinks[data-astro-cid-y2qsmizv]>li[data-astro-cid-y2qsmizv]{margin:0}.socialLinks[data-astro-cid-y2qsmizv]>li[data-astro-cid-y2qsmizv]>a[data-astro-cid-y2qsmizv]{font-size:1.75rem;line-height:0;display:block}.footer[data-astro-cid-jo6i4kqk]{gap:var(--space-4);padding:var(--space-6) var(--gutter) var(--space-5);border-top:var(--rule) solid var(--ink);background:var(--paper);color:var(--ink);flex-direction:column;display:flex}.cta[data-astro-cid-jo6i4kqk]{width:fit-content}.mark[data-astro-cid-jo6i4kqk]{color:var(--accent-line)}.meta[data-astro-cid-jo6i4kqk]{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.meta[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin:0}
