:root{color-scheme:light dark;--color-bg:light-dark(#fbfaf8,#141413);--color-surface:light-dark(#fff,#1d1d1b);--color-text:light-dark(#1c1b19,#ecebe7);--color-muted:light-dark(#5c5a55,#aeaca7);--color-border:light-dark(#dedbd4,#34332f);--color-accent:light-dark(#0a6448,#64d4a7);--color-glow:light-dark(#0b6e4f17,#5fd3a41c);--color-ambient:light-dark(#0b6e4f1a,#5fd3a424);--shadow:light-dark(0 8px 24px #1c1b1914,0 8px 24px #00000059);--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:6rem;--gutter:clamp(1.5rem, 1rem + 2.5vw, 3rem);--section-gap:clamp(4rem, 3rem + 4vw, 6rem);--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:clamp(1.75rem, 1.2rem + 2.5vw, 2.75rem);--text-display:clamp(2.5rem, 1.6rem + 3.5vw, 4rem);--tracking-label:.1em;--content-width:76rem;--radius:6px}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3{text-wrap:balance;line-height:1.2}p{text-wrap:pretty}a{color:var(--color-accent);text-underline-offset:.2em}:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;border-radius:2px}code{font-family:var(--font-mono);font-size:.9em}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.arrow{margin-left:.2em;transition:transform .2s;display:inline-block}a:hover .arrow{transform:translate(2px,-2px)}.container{width:min(100% - 2 * var(--gutter), var(--content-width));margin-inline:auto}.section-label{font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);font-weight:600}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.site-header[data-astro-cid-fzpbxy5g]{justify-content:space-between;gap:var(--space-5);padding-block:var(--space-6) var(--space-5);flex-direction:column;display:flex}.name[data-astro-cid-fzpbxy5g]{font-size:var(--text-display);letter-spacing:-.03em;margin:0;font-weight:800;line-height:1}.name[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{color:var(--color-text);text-decoration:none}.role[data-astro-cid-fzpbxy5g]{margin:var(--space-3) 0 0;font-size:var(--text-lg);font-weight:600}.tagline[data-astro-cid-fzpbxy5g]{margin:var(--space-2) 0 0;max-width:30ch;color:var(--color-muted)}nav[data-astro-cid-fzpbxy5g]{display:none}nav[data-astro-cid-fzpbxy5g] ul[data-astro-cid-fzpbxy5g],.social[data-astro-cid-fzpbxy5g]{margin:0;padding:0;list-style:none}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-3);padding-block:var(--space-2);color:var(--color-muted);font-size:var(--text-sm);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:600;text-decoration:none;display:inline-flex}.line[data-astro-cid-fzpbxy5g]{background:currentColor;width:2rem;height:1px;transition:width .2s,background-color .2s}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover,nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:focus-visible,nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g][aria-current]{color:var(--color-text)}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover .line[data-astro-cid-fzpbxy5g],nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:focus-visible .line[data-astro-cid-fzpbxy5g],nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g][aria-current] .line[data-astro-cid-fzpbxy5g]{background:var(--color-accent);width:4rem;height:2px}.social[data-astro-cid-fzpbxy5g]{gap:var(--space-4);display:flex}.social[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{color:var(--color-muted);font-weight:600;text-decoration:none}.social[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover{color:var(--color-accent)}@media (width>=64rem){.site-header[data-astro-cid-fzpbxy5g]{height:100vh;padding-block:var(--space-7);position:sticky;top:0}nav[data-astro-cid-fzpbxy5g]{margin-top:var(--space-6);display:block}}.site-footer[data-astro-cid-nns7i3if]{margin-top:var(--section-gap);padding-bottom:var(--space-5)}.section-label[data-astro-cid-nns7i3if]{margin-top:0}.intro[data-astro-cid-nns7i3if]{max-width:60ch;margin:var(--space-4) 0 0}.email-row[data-astro-cid-nns7i3if]{align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.email[data-astro-cid-nns7i3if]{color:var(--color-text);font-size:clamp(1.0625rem, 6.5vw - .375rem, var(--text-lg));letter-spacing:-.01em;text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.25em;overflow-wrap:anywhere;font-weight:700;text-decoration-thickness:2px;transition:color .2s}.email[data-astro-cid-nns7i3if]:hover{color:var(--color-accent)}.copy[data-astro-cid-nns7i3if]{min-height:2rem;font:inherit;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-accent);border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid;padding:0 .75em;font-weight:600;transition:background-color .2s,color .2s}.copy[data-astro-cid-nns7i3if]:hover{background:var(--color-accent);color:var(--color-bg)}.links[data-astro-cid-nns7i3if]{gap:var(--space-2) var(--space-4);margin:var(--space-4) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.links[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{color:var(--color-muted);font-weight:600;text-decoration:none;transition:color .2s}.links[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover{color:var(--color-accent)}.meta[data-astro-cid-nns7i3if]{margin:var(--space-6) 0 0;padding-top:var(--space-4);border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-sm)}.meta[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]{color:inherit}.meta[data-astro-cid-nns7i3if] a[data-astro-cid-nns7i3if]:hover{color:var(--color-accent)}.spotlight[data-astro-cid-qwxpzttk]{display:none}.has-spotlight .spotlight[data-astro-cid-qwxpzttk]{z-index:0;pointer-events:none;background:radial-gradient(450px circle at var(--x,-1000px) var(--y,-1000px), var(--color-glow) 0%, var(--color-glow) 12%, transparent 100%);display:block;position:fixed;inset:0}.ambient[data-astro-cid-qwxpzttk]{display:none}@media not ((hover:hover) and (pointer:fine)){.ambient[data-astro-cid-qwxpzttk]{z-index:0;pointer-events:none;display:block;position:fixed;inset:0;overflow:hidden}.ambient[data-astro-cid-qwxpzttk]:before,.ambient[data-astro-cid-qwxpzttk]:after{content:"";background:radial-gradient(circle closest-side, var(--color-ambient) 0%, var(--color-ambient) 25%, transparent 100%);width:110vmax;height:110vmax;position:absolute}.ambient[data-astro-cid-qwxpzttk]:before{top:-45vmax;left:-55vmax}.ambient[data-astro-cid-qwxpzttk]:after{bottom:-50vmax;right:-55vmax}@media (prefers-reduced-motion:no-preference){.ambient[data-astro-cid-qwxpzttk]:before{animation:18s ease-in-out infinite alternate drift-a}.ambient[data-astro-cid-qwxpzttk]:after{animation:23s ease-in-out infinite alternate drift-b}}}@keyframes drift-a{0%{transform:translate(0)scale(1)}50%{transform:translate(30vw,25vh)scale(1.2,.85)}to{transform:translate(10vw,55vh)scale(.9,1.15)}}@keyframes drift-b{0%{transform:translate(0)scale(1)}50%{transform:translate(-35vw,-30vh)scale(.85,1.2)}to{transform:translate(-10vw,-60vh)scale(1.15,.9)}}.skip-link[data-astro-cid-z4jru4n3]{top:var(--space-2);left:var(--space-2);z-index:10;padding:var(--space-2) var(--space-3);background:var(--color-text);color:var(--color-bg);border-radius:var(--radius);position:absolute;transform:translateY(-200%)}.skip-link[data-astro-cid-z4jru4n3]:focus{transform:none}main[data-astro-cid-z4jru4n3]:focus{outline:none}.page[data-astro-cid-z4jru4n3]{z-index:1;position:relative}@media (width>=64rem){.page[data-astro-cid-z4jru4n3]{gap:var(--space-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.content[data-astro-cid-z4jru4n3]{padding-top:var(--space-7)}}
