.nav-wide[data-astro-cid-yxete6jp]{display:none}.nav-toggle[data-astro-cid-yxete6jp]{cursor:pointer;padding-inline:var(--space-s);font-size:var(--text-small);user-select:none;list-style:none}.nav-toggle[data-astro-cid-yxete6jp]::-webkit-details-marker{display:none}.nav-toggle-icon[data-astro-cid-yxete6jp]{width:var(--size-icon);height:var(--size-icon);fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round}.icon-close[data-astro-cid-yxete6jp],.label-close[data-astro-cid-yxete6jp],.nav-phone[data-astro-cid-yxete6jp][open] .icon-open[data-astro-cid-yxete6jp],.nav-phone[data-astro-cid-yxete6jp][open] .label-open[data-astro-cid-yxete6jp]{display:none}.nav-phone[data-astro-cid-yxete6jp][open] .icon-close[data-astro-cid-yxete6jp],.nav-phone[data-astro-cid-yxete6jp][open] .label-close[data-astro-cid-yxete6jp]{display:inline}.nav-panel[data-astro-cid-yxete6jp]{inset:var(--size-header) 0 0 0;z-index:var(--z-header);gap:var(--space-l);padding:var(--space-l) max(var(--space-gutter), env(safe-area-inset-right,0px)) var(--space-xl) max(var(--space-gutter), env(safe-area-inset-left,0px));background:var(--color-bg);flex-direction:column;display:flex;position:fixed;overflow-y:auto}.nav-panel-list[data-astro-cid-yxete6jp]{border-top:var(--border-width) solid var(--color-border);padding:0;list-style:none}.nav-panel-link[data-astro-cid-yxete6jp]{min-height:calc(var(--size-touch) * 1.4);border-bottom:var(--border-width) solid var(--color-border);color:var(--color-text);font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:var(--tracking-heading);align-items:center;text-decoration:none;display:flex}.nav-panel-link[data-astro-cid-yxete6jp][aria-current=page]{color:var(--color-accent)}.nav-panel-cv[data-astro-cid-yxete6jp]{align-self:flex-start}@media (width>=48em){.nav-phone[data-astro-cid-yxete6jp]{display:none}.nav-wide[data-astro-cid-yxete6jp]{align-items:center;gap:var(--space-l);display:flex}.nav-list[data-astro-cid-yxete6jp]{gap:var(--space-m);padding:0;list-style:none;display:flex}.nav-link[data-astro-cid-yxete6jp]{min-height:var(--size-touch);color:var(--color-text-muted);font-size:var(--text-small);font-weight:var(--weight-medium);transition:color var(--duration-fast) var(--easing);align-items:center;text-decoration:none;display:inline-flex}.nav-link[data-astro-cid-yxete6jp]:hover,.nav-link[data-astro-cid-yxete6jp][aria-current=page]{color:var(--color-text)}.nav-link[data-astro-cid-yxete6jp][aria-current=page]{text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:var(--focus-width);text-underline-offset:.45em}.nav-cv[data-astro-cid-yxete6jp]{padding-inline:var(--space-s);font-size:var(--text-small)}}@media (width>=64em){.nav-link[data-astro-cid-yxete6jp],.nav-cv[data-astro-cid-yxete6jp]{font-size:var(--text-body)}.nav-cv[data-astro-cid-yxete6jp]{padding-inline:var(--space-m)}}.site-header[data-astro-cid-nen7h5rs]{z-index:var(--z-header);background:var(--color-bg);border-bottom:var(--border-width) solid var(--color-border);position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--space-s);min-height:var(--size-header);display:flex}.site-name[data-astro-cid-nen7h5rs]{min-height:var(--size-touch);color:var(--color-text);font-family:var(--font-heading);font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:var(--tracking-heading);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.profile-links[data-astro-cid-tv5ncqh7]{gap:var(--space-2xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.profile-link[data-astro-cid-tv5ncqh7]{justify-content:center;align-items:center;gap:var(--space-2xs);min-width:var(--size-touch);min-height:var(--size-touch);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);font-weight:var(--weight-medium);transition:color var(--duration-fast) var(--easing), border-color var(--duration-fast) var(--easing);text-decoration:none;display:inline-flex}.profile-link[data-astro-cid-tv5ncqh7]:hover{border-color:var(--color-accent);color:var(--color-accent)}.profile-links-pills[data-astro-cid-tv5ncqh7] .profile-link[data-astro-cid-tv5ncqh7]{padding-inline:var(--space-s) var(--space-m)}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--space-section);padding-block:var(--space-xl) calc(var(--space-xl) + env(safe-area-inset-bottom,0px));background:var(--color-surface);color:var(--color-text-muted);font-size:var(--text-body)}.footer-inner[data-astro-cid-jo6i4kqk]{gap:var(--space-xl);display:grid}.footer-block[data-astro-cid-jo6i4kqk]{gap:var(--space-xs);align-content:start;display:grid}.footer-heading[data-astro-cid-jo6i4kqk]{color:var(--color-text);font-size:var(--text-lead);letter-spacing:normal}.footer-address[data-astro-cid-jo6i4kqk]{font-style:normal;display:grid}.footer-email[data-astro-cid-jo6i4kqk]{min-height:var(--size-touch);color:var(--color-text);font-size:var(--text-lead);align-items:center;text-decoration:none;display:inline-flex}.footer-email[data-astro-cid-jo6i4kqk]:hover{color:var(--color-accent)}.footer-icons[data-astro-cid-jo6i4kqk]{gap:var(--space-xs);display:grid}.footer-icons[data-astro-cid-jo6i4kqk] .profile-link{min-width:var(--size-button-large);min-height:var(--size-button-large)}.footer-icons[data-astro-cid-jo6i4kqk] .icon{width:var(--size-icon-large);height:var(--size-icon-large)}.footer-copyright[data-astro-cid-jo6i4kqk]{font-family:var(--font-data);font-size:var(--text-small);padding-top:var(--space-m);border-top:var(--border-width) solid var(--color-border)}@media (width>=48em){.footer-inner[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 1fr}.footer-copyright[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-italic-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--color-event-horizon:#0b0b12;--color-magnetosphere:#161622;--color-field-line:#2b2b3c;--color-starlight:#eeedf2;--color-cosmic-dust:#a4a3b8;--color-accretion-gold:#f2a93b;--color-bg:var(--color-event-horizon);--color-surface:var(--color-magnetosphere);--color-border:var(--color-field-line);--color-text:var(--color-starlight);--color-text-muted:var(--color-cosmic-dust);--color-accent:var(--color-accretion-gold);--color-on-accent:var(--color-event-horizon);--color-focus:var(--color-accretion-gold);--font-sans:"Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-heading:var(--font-sans);--font-body:var(--font-sans);--font-data:var(--font-mono);--weight-regular:400;--weight-medium:550;--weight-heading:600;--text-small:clamp(.8125rem, .79rem + .11vw, .875rem);--text-body:clamp(1rem, .95rem + .22vw, 1.125rem);--text-lead:clamp(1.1875rem, 1.12rem + .33vw, 1.375rem);--text-h3:clamp(1.4375rem, 1.3rem + .6vw, 1.875rem);--text-h2:clamp(1.75rem, 1.5rem + 1.1vw, 2.5rem);--text-h1:clamp(2.25rem, 1.75rem + 2.2vw, 3.75rem);--text-display:clamp(3rem, 2rem + 4.4vw, 6rem);--leading-tight:1.05;--leading-heading:1.15;--leading-body:1.6;--tracking-heading:-.035em;--tracking-small:.01em;--tracking-wide:.2em;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--space-gutter:clamp(1rem, .5rem + 2.5vw, 3rem);--space-section:clamp(3rem, 2rem + 4.4vw, 6rem);--width-text:40rem;--width-page:72rem;--size-touch:2.75rem;--size-icon:1.25rem;--size-icon-large:1.75rem;--size-button-large:3.5rem;--size-header:4rem;--ratio-portrait:4 / 5;--ratio-landscape:4 / 3;--ratio-wide:21 / 9;--ratio-video:16 / 9;--size-banner:clamp(13rem, 8rem + 20vw, 26rem);--position-face:50% 30%;--radius-small:4px;--radius-image:10px;--radius-pill:999px;--border-width:1px;--focus-width:2px;--shadow-overlay:0 1rem 3rem #00000080;--blur-overlay:6px;--shadow-text:0 .125rem 1.5rem #0009;--stamp-rotate:-12deg;--stamp-opacity:.85;--text-stamp:clamp(1rem, .25rem + 4.2vw, 4rem);--duration-fast:.15s;--duration-normal:.25s;--easing:cubic-bezier(.2, 0, 0, 1);--z-header:10;--z-skip-link:20}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--color-bg);scroll-padding-top:var(--size-header)}body{background:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word;flex-direction:column;margin:0;display:flex}main{flex:1}main:focus{outline:none}img,picture,svg,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--weight-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:balance;margin:0}h1{font-size:var(--text-h1);line-height:var(--leading-tight)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-lead);letter-spacing:normal}p,ul,ol{margin:0}a{color:var(--color-accent);text-decoration-thickness:var(--border-width);text-underline-offset:.2em}a:hover{text-decoration-thickness:var(--focus-width)}:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-width);border-radius:var(--radius-small)}::selection{background:var(--color-accent);color:var(--color-on-accent)}.wrap{width:100%;max-width:calc(var(--width-page) + 2 * var(--space-gutter));padding-inline:max(var(--space-gutter), env(safe-area-inset-left,0px)) max(var(--space-gutter), env(safe-area-inset-right,0px));margin-inline:auto}.prose{max-width:var(--width-text)}.prose>*+*{margin-top:var(--space-s)}.prose>*+:is(h2,h3,h4){margin-top:var(--space-xl)}.prose ul,.prose ol{padding-left:var(--space-m)}.prose li+li{margin-top:var(--space-2xs)}.icon{width:var(--size-icon);height:var(--size-icon);flex:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.button{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:var(--size-touch);padding-inline:var(--space-m);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);font-weight:var(--weight-medium);transition:border-color var(--duration-fast) var(--easing), background-color var(--duration-fast) var(--easing);text-decoration:none;display:inline-flex}.button:hover{border-color:var(--color-text-muted)}.button-accent{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.button-accent:hover{border-color:var(--color-text)}.button-outline-accent{border-color:var(--color-accent);color:var(--color-accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.skip-link[data-astro-cid-z4jru4n3]{top:var(--space-2xs);left:var(--space-2xs);z-index:var(--z-skip-link);padding:var(--space-2xs) var(--space-s);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-weight:var(--weight-medium);text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link[data-astro-cid-z4jru4n3]:focus{transform:none}
