:root{--color-bg: oklch(13% .02 265);--color-bg-deep: oklch(9% .02 265);--color-surface: oklch(17% .025 265);--color-surface-2: oklch(21% .03 265);--color-border: oklch(30% .03 265 / .6);--color-border-strong: oklch(45% .05 265 / .7);--color-text: oklch(95% .01 265);--color-text-muted: oklch(72% .02 265);--color-text-faint: oklch(55% .02 265);--color-cyan: oklch(80% .14 200);--color-violet: oklch(70% .2 290);--color-magenta: oklch(72% .21 350);--color-accent: var(--color-cyan);--gradient-accent: linear-gradient( 100deg, var(--color-cyan), var(--color-violet) 55%, var(--color-magenta) );--glow-cyan: 0 0 28px oklch(80% .14 200 / .45);--glow-violet: 0 0 32px oklch(70% .2 290 / .4);--font-display: "Space Grotesk", "Segoe UI", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", ui-monospace, monospace;--text-xs: .78rem;--text-sm: .9rem;--text-base: clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg: clamp(1.2rem, 1.05rem + .7vw, 1.5rem);--text-xl: clamp(1.6rem, 1.2rem + 1.6vw, 2.4rem);--text-2xl: clamp(2.2rem, 1.4rem + 3vw, 3.6rem);--text-hero: clamp(3rem, 1rem + 9vw, 8rem);--leading-tight: 1.08;--leading-snug: 1.35;--leading-normal: 1.65;--tracking-wide: .18em;--space-1: .5rem;--space-2: .875rem;--space-3: 1.25rem;--space-4: 2rem;--space-5: 3rem;--space-6: 4.5rem;--space-section: clamp(4.5rem, 3rem + 7vw, 9rem);--radius: 14px;--radius-lg: 22px;--content-max: 1180px;--duration-fast: .16s;--duration-normal: .32s;--duration-slow: .68s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter-latin-var.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:300 700;src:url(/fonts/space-grotesk-latin-var.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/fonts/jetbrains-mono-latin-var.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-bg-deep);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(60% 50% at 15% 0%,oklch(70% .2 290 / .16),transparent 70%),radial-gradient(55% 45% at 90% 10%,oklch(80% .14 200 / .14),transparent 70%),radial-gradient(70% 60% at 50% 110%,oklch(72% .21 350 / .1),transparent 70%),var(--color-bg)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:var(--leading-tight);letter-spacing:-.01em}a{color:inherit;text-decoration:none}p{max-width:70ch}::selection{background:var(--color-violet);color:#070b14}.shell{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:clamp(1.25rem,.5rem + 3vw,3rem)}.section{padding-block:var(--space-section);position:relative}.section__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-accent);display:inline-flex;align-items:center;gap:.6rem;margin-bottom:var(--space-2)}.section__eyebrow:before{content:"";width:28px;height:1px;background:var(--color-accent);box-shadow:var(--glow-cyan)}.section__title{font-size:var(--text-2xl);margin-bottom:var(--space-4);max-width:18ch}.text-gradient{background:var(--gradient-accent);-webkit-background-clip:text;background-clip:text;color:transparent}:focus-visible{outline:2px solid var(--color-cyan);outline-offset:3px;border-radius:4px}.link-pill{font-family:var(--font-mono);font-size:var(--text-xs);padding:.3rem .7rem;border:1px solid var(--color-border);border-radius:999px;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out-expo),border-color var(--duration-fast) var(--ease-out-expo),background-color var(--duration-fast) var(--ease-out-expo)}.link-pill:hover,.link-pill:focus-visible{color:var(--color-text);border-color:var(--color-accent);background:oklch(80% .14 200 / .08)}.reveal{opacity:0;transform:translateY(22px);transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}.skip-link[data-astro-cid-5hce7sga]{position:absolute;left:-9999px;top:0;z-index:100;background:var(--color-surface);color:var(--color-text);padding:.6rem 1rem;border-radius:0 0 var(--radius) 0;font-family:var(--font-mono);font-size:var(--text-sm)}.skip-link[data-astro-cid-5hce7sga]:focus{left:0}#neural-canvas[data-astro-cid-rdcqoyjz]{position:fixed;inset:0;z-index:-1;width:100%;height:100%;display:block;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent 100%);mask-image:linear-gradient(to bottom,#000 55%,transparent 100%)}.hero[data-astro-cid-bbe6dxrz]{min-height:100svh;display:flex;flex-direction:column;padding-block:clamp(1.25rem,1rem + 2vw,2.5rem);position:relative}.hero__nav[data-astro-cid-bbe6dxrz]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.hero__logo[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-weight:500;letter-spacing:.1em;color:var(--color-text);font-size:var(--text-lg)}.blink[data-astro-cid-bbe6dxrz]{color:var(--color-cyan);animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.hero__navlinks[data-astro-cid-bbe6dxrz]{display:flex;gap:clamp(1rem,.5rem + 1.5vw,2.2rem);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-muted)}.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]{position:relative;transition:color var(--duration-fast) var(--ease-out-expo)}.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--color-cyan);box-shadow:var(--glow-cyan);transition:width var(--duration-normal) var(--ease-out-expo)}.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]:hover,.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]:focus-visible{color:var(--color-text)}.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]:hover:after,.hero__navlinks[data-astro-cid-bbe6dxrz] a[data-astro-cid-bbe6dxrz]:focus-visible:after{width:100%}@media (max-width: 620px){.hero__navlinks[data-astro-cid-bbe6dxrz]{display:none}}.hero__body[data-astro-cid-bbe6dxrz]{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:22ch;max-width:min(100%,60ch);padding-block:var(--space-5)}.hero__status[data-astro-cid-bbe6dxrz]{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-3)}.dot[data-astro-cid-bbe6dxrz]{width:8px;height:8px;border-radius:50%;background:var(--color-cyan);box-shadow:var(--glow-cyan);animation:pulse 2.4s var(--ease-out-expo) infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}.hero__name[data-astro-cid-bbe6dxrz]{font-size:var(--text-hero);font-weight:700;line-height:.95;margin-bottom:var(--space-2)}.hero__role[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-size:var(--text-sm);color:var(--color-cyan);margin-bottom:var(--space-3)}.hero__tagline[data-astro-cid-bbe6dxrz]{font-size:var(--text-lg);color:var(--color-text-muted);line-height:var(--leading-snug);margin-bottom:var(--space-4)}.hero__terminal[data-astro-cid-bbe6dxrz]{border:1px solid var(--color-border);border-radius:var(--radius);background:#02040bb3;backdrop-filter:blur(8px);overflow:hidden;max-width:34rem;margin-bottom:var(--space-4);box-shadow:0 20px 60px #0006}.hero__terminal-bar[data-astro-cid-bbe6dxrz]{display:flex;align-items:center;gap:6px;padding:.55rem .9rem;border-bottom:1px solid var(--color-border);background:#070b1499}.hero__terminal-bar[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz]{width:11px;height:11px;border-radius:50%;background:var(--color-border-strong)}.hero__terminal-bar[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz]:first-child{background:var(--color-magenta)}.hero__terminal-bar[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz]:nth-child(2){background:#ecbe24}.hero__terminal-bar[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz]:nth-child(3){background:var(--color-cyan)}.hero__terminal-bar[data-astro-cid-bbe6dxrz] em[data-astro-cid-bbe6dxrz]{margin-left:auto;font-family:var(--font-mono);font-style:normal;font-size:var(--text-xs);color:var(--color-text-faint)}.hero__terminal-body[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;padding:.9rem 1.1rem;color:var(--color-text);white-space:pre-wrap;min-height:5.4em;margin:0}.hero__terminal-body[data-astro-cid-bbe6dxrz] .prompt[data-astro-cid-bbe6dxrz]{color:var(--color-cyan)}.hero__terminal-body[data-astro-cid-bbe6dxrz] .cursor[data-astro-cid-bbe6dxrz]{color:var(--color-violet);animation:blink 1.1s steps(1) infinite}.hero__cta[data-astro-cid-bbe6dxrz]{display:flex;flex-wrap:wrap;gap:var(--space-2)}.btn[data-astro-cid-bbe6dxrz]{font-family:var(--font-mono);font-size:var(--text-sm);padding:.8rem 1.4rem;border-radius:999px;transition:transform var(--duration-fast) var(--ease-spring),box-shadow var(--duration-normal) var(--ease-out-expo),background-color var(--duration-fast) var(--ease-out-expo)}.btn--primary[data-astro-cid-bbe6dxrz]{background:var(--gradient-accent);color:#060911;font-weight:500;box-shadow:var(--glow-violet)}.btn--primary[data-astro-cid-bbe6dxrz]:hover,.btn--primary[data-astro-cid-bbe6dxrz]:focus-visible{transform:translateY(-2px);box-shadow:0 0 40px oklch(70% .2 290 / .6)}.btn--ghost[data-astro-cid-bbe6dxrz]{border:1px solid var(--color-border-strong);color:var(--color-text)}.btn--ghost[data-astro-cid-bbe6dxrz]:hover,.btn--ghost[data-astro-cid-bbe6dxrz]:focus-visible{transform:translateY(-2px);border-color:var(--color-cyan);background:oklch(80% .14 200 / .08)}.hero__scroll[data-astro-cid-bbe6dxrz]{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);width:26px;height:42px;border:1px solid var(--color-border-strong);border-radius:999px;display:grid;place-items:start center;padding-top:7px}.hero__scroll[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz]{width:4px;height:8px;border-radius:999px;background:var(--color-cyan);animation:scroll 1.8s var(--ease-out-expo) infinite}@keyframes scroll{0%{opacity:0;transform:translateY(0)}40%{opacity:1}to{opacity:0;transform:translateY(12px)}}@media (max-width: 620px){.hero__scroll[data-astro-cid-bbe6dxrz]{display:none}}@media (prefers-reduced-motion: reduce){.blink[data-astro-cid-bbe6dxrz],.dot[data-astro-cid-bbe6dxrz],.hero__scroll[data-astro-cid-bbe6dxrz] span[data-astro-cid-bbe6dxrz],.hero__terminal-body[data-astro-cid-bbe6dxrz] .cursor[data-astro-cid-bbe6dxrz]{animation:none}}.about__grid[data-astro-cid-v2cbyr3p]{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:clamp(1.5rem,1rem + 4vw,4rem);align-items:start}@media (max-width: 760px){.about__grid[data-astro-cid-v2cbyr3p]{grid-template-columns:1fr}}.about__portrait[data-astro-cid-v2cbyr3p]{position:relative;aspect-ratio:4 / 5;border-radius:var(--radius-lg);border:1px solid var(--color-border-strong);overflow:hidden;background:radial-gradient(120% 90% at 30% 10%,oklch(70% .2 290 / .35),transparent 60%),radial-gradient(120% 90% at 80% 90%,oklch(80% .14 200 / .3),transparent 60%),var(--color-surface);max-width:280px}.about__portrait-inner[data-astro-cid-v2cbyr3p]{position:absolute;inset:0;display:grid;place-items:center}.about__portrait-inner[data-astro-cid-v2cbyr3p] span[data-astro-cid-v2cbyr3p]{font-family:var(--font-display);font-weight:700;font-size:clamp(3rem,2rem + 6vw,5rem);color:#f8f8f8eb;letter-spacing:.05em;text-shadow:0 0 30px oklch(70% .2 290 / .6)}.about__portrait[data-astro-cid-v2cbyr3p]:before{content:"";position:absolute;inset:0;background-image:linear-gradient(oklch(98% 0 0 / .05) 1px,transparent 1px),linear-gradient(90deg,oklch(98% 0 0 / .05) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(circle at center,#000,transparent 75%)}.about__scanline[data-astro-cid-v2cbyr3p]{position:absolute;left:0;right:0;height:36%;background:linear-gradient(to bottom,transparent,oklch(80% .14 200 / .12),transparent);animation:scan 4.5s linear infinite}@keyframes scan{0%{transform:translateY(-120%)}to{transform:translateY(320%)}}.about__text[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]{color:var(--color-text-muted);margin-bottom:var(--space-3)}.about__text[data-astro-cid-v2cbyr3p] p[data-astro-cid-v2cbyr3p]:last-child{margin-bottom:0}@media (prefers-reduced-motion: reduce){.about__scanline[data-astro-cid-v2cbyr3p]{animation:none;display:none}}.research__grid[data-astro-cid-oo2iqyv2]{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:clamp(.875rem,.5rem + 1.5vw,1.4rem)}.research__card[data-astro-cid-oo2iqyv2]{position:relative;padding:clamp(1.25rem,1rem + 1vw,1.9rem);border:1px solid var(--color-border);border-radius:var(--radius);background:#090d178c;backdrop-filter:blur(6px);overflow:hidden;isolation:isolate;transition:transform var(--duration-normal) var(--ease-out-expo),border-color var(--duration-normal) var(--ease-out-expo)}.research__card[data-astro-cid-oo2iqyv2]:first-child,.research__card[data-astro-cid-oo2iqyv2]:nth-child(4){grid-row:span 1;background:#0b111f99;border-color:var(--color-border-strong)}.research__card[data-astro-cid-oo2iqyv2]:hover,.research__card[data-astro-cid-oo2iqyv2]:focus-within{transform:translateY(-5px);border-color:var(--color-accent)}.research__glow[data-astro-cid-oo2iqyv2]{position:absolute;inset:-1px;z-index:-1;opacity:0;background:radial-gradient(60% 60% at 30% 0%,oklch(70% .2 290 / .25),transparent 70%);transition:opacity var(--duration-normal) var(--ease-out-expo)}.research__card[data-astro-cid-oo2iqyv2]:hover .research__glow[data-astro-cid-oo2iqyv2],.research__card[data-astro-cid-oo2iqyv2]:focus-within .research__glow[data-astro-cid-oo2iqyv2]{opacity:1}.research__index[data-astro-cid-oo2iqyv2]{position:absolute;top:.9rem;right:1.1rem;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.research__tag[data-astro-cid-oo2iqyv2]{display:inline-block;margin-bottom:var(--space-2)}.research__name[data-astro-cid-oo2iqyv2]{font-size:var(--text-lg);margin-bottom:.6rem}.research__blurb[data-astro-cid-oo2iqyv2]{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.stats__grid[data-astro-cid-bhxv2qxz]{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.75rem,.5rem + 1vw,1.5rem);border-block:1px solid var(--color-border);padding-block:var(--space-4)}@media (max-width: 620px){.stats__grid[data-astro-cid-bhxv2qxz]{grid-template-columns:repeat(2,1fr);gap:var(--space-4) var(--space-2)}}.stats__item[data-astro-cid-bhxv2qxz]{text-align:center;display:flex;flex-direction:column;gap:.35rem}.stats__value[data-astro-cid-bhxv2qxz]{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,1.4rem + 2.4vw,3.4rem);line-height:1;background:var(--gradient-accent);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}.stats__label[data-astro-cid-bhxv2qxz]{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.pubs__list[data-astro-cid-qdnfvetg]{list-style:none;display:flex;flex-direction:column}.pubs__item[data-astro-cid-qdnfvetg]{display:grid;grid-template-columns:130px 1fr;gap:var(--space-3);padding-block:var(--space-3);border-top:1px solid var(--color-border);transition:background-color var(--duration-fast) var(--ease-out-expo)}.pubs__item[data-astro-cid-qdnfvetg]:last-child{border-bottom:1px solid var(--color-border)}.pubs__item[data-astro-cid-qdnfvetg]:hover{background:oklch(80% .14 200 / .04)}@media (max-width: 620px){.pubs__item[data-astro-cid-qdnfvetg]{grid-template-columns:1fr;gap:var(--space-1)}}.pubs__meta[data-astro-cid-qdnfvetg]{display:flex;flex-direction:column;gap:.2rem;font-family:var(--font-mono)}@media (max-width: 620px){.pubs__meta[data-astro-cid-qdnfvetg]{flex-direction:row;gap:.6rem;align-items:baseline}}.pubs__venue[data-astro-cid-qdnfvetg]{color:var(--color-cyan);font-size:var(--text-sm);font-weight:500}.pubs__year[data-astro-cid-qdnfvetg]{color:var(--color-text-faint);font-size:var(--text-xs)}.pubs__title[data-astro-cid-qdnfvetg]{font-size:var(--text-lg);line-height:var(--leading-snug);margin-bottom:.4rem;font-weight:600}.is-highlight[data-astro-cid-qdnfvetg] .pubs__title[data-astro-cid-qdnfvetg]{color:var(--color-text)}.pubs__badge[data-astro-cid-qdnfvetg]{display:inline-block;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:#060911;background:var(--gradient-accent);padding:.15rem .5rem;border-radius:6px;margin-right:.5rem;vertical-align:middle}.pubs__authors[data-astro-cid-qdnfvetg]{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:var(--space-2)}.pubs__links[data-astro-cid-qdnfvetg]{display:flex;flex-wrap:wrap;gap:.5rem}.projects__grid[data-astro-cid-amng4zvp]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:clamp(.875rem,.5rem + 1.5vw,1.4rem)}.projects__card[data-astro-cid-amng4zvp]{display:flex;flex-direction:column;padding:clamp(1.4rem,1rem + 1.2vw,2rem);border:1px solid var(--color-border);border-radius:var(--radius);background:linear-gradient(160deg,#0b111fb3,#06091180);transition:transform var(--duration-normal) var(--ease-out-expo),border-color var(--duration-normal) var(--ease-out-expo)}.projects__card[data-astro-cid-amng4zvp]:hover,.projects__card[data-astro-cid-amng4zvp]:focus-within{transform:translateY(-5px);border-color:var(--color-violet)}.projects__head[data-astro-cid-amng4zvp]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.projects__name[data-astro-cid-amng4zvp]{font-size:var(--text-lg);font-family:var(--font-mono);font-weight:500}.projects__arrow[data-astro-cid-amng4zvp]{color:var(--color-cyan);transition:transform var(--duration-normal) var(--ease-spring)}.projects__card[data-astro-cid-amng4zvp]:hover .projects__arrow[data-astro-cid-amng4zvp]{transform:translate(4px,-4px)}.projects__blurb[data-astro-cid-amng4zvp]{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug);margin-bottom:var(--space-2);flex:1}.projects__impact[data-astro-cid-amng4zvp]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-cyan);margin-bottom:var(--space-3)}.projects__links[data-astro-cid-amng4zvp]{display:flex;flex-wrap:wrap;gap:.5rem}.contact__card[data-astro-cid-xmivup5a]{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);padding:clamp(1.75rem,1rem + 4vw,4rem);background:radial-gradient(80% 120% at 100% 0%,oklch(70% .2 290 / .18),transparent 60%),radial-gradient(80% 120% at 0% 100%,oklch(80% .14 200 / .14),transparent 60%),#070b1499;backdrop-filter:blur(8px)}.contact__title[data-astro-cid-xmivup5a]{font-size:var(--text-2xl);max-width:16ch;margin-bottom:var(--space-3)}.contact__lead[data-astro-cid-xmivup5a]{color:var(--color-text-muted);font-size:var(--text-lg);margin-bottom:var(--space-4)}.contact__email[data-astro-cid-xmivup5a]{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:clamp(1rem,.8rem + 1.2vw,1.5rem);color:var(--color-text);padding:.7rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:#02040b99;transition:border-color var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo);margin-bottom:var(--space-4);word-break:break-all}.contact__email[data-astro-cid-xmivup5a]:hover,.contact__email[data-astro-cid-xmivup5a]:focus-visible{border-color:var(--color-cyan);box-shadow:var(--glow-cyan)}.contact__email-prompt[data-astro-cid-xmivup5a]{color:var(--color-cyan)}.contact__socials[data-astro-cid-xmivup5a]{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-2)}.contact__social[data-astro-cid-xmivup5a]{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1.1rem;border:1px solid var(--color-border);border-radius:var(--radius);transition:transform var(--duration-fast) var(--ease-out-expo),border-color var(--duration-fast) var(--ease-out-expo)}.contact__social[data-astro-cid-xmivup5a]:hover,.contact__social[data-astro-cid-xmivup5a]:focus-visible{transform:translateY(-3px);border-color:var(--color-violet)}.contact__social-label[data-astro-cid-xmivup5a]{font-family:var(--font-display);font-weight:600}.contact__social-handle[data-astro-cid-xmivup5a]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint)}.footer[data-astro-cid-xmivup5a]{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;justify-content:space-between;padding-block:var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);border-top:1px solid var(--color-border)}.footer__meta[data-astro-cid-xmivup5a]{flex:1;text-align:center}@media (max-width: 620px){.footer__meta[data-astro-cid-xmivup5a]{text-align:left;flex:none;width:100%;order:3}}.footer__top[data-astro-cid-xmivup5a]{transition:color var(--duration-fast) var(--ease-out-expo)}.footer__top[data-astro-cid-xmivup5a]:hover{color:var(--color-cyan)}
