:root{--color-bg:#f3f0e8;--color-surface:#fbfaf6;--color-placeholder:#e4dfd2;--color-ink:#16181d;--color-muted:#4a4c52;--color-line:#dad5c8;--color-line-strong:#c9c3b4;--color-accent:#2446c8;--color-accent-hover:#16308f;--color-success:#1f8a4c;--color-inverse-bg:#16181d;--color-inverse-ink:#f3f0e8;--color-inverse-muted:#b9b6ae;--color-inverse-line:#3a3d44;--font-display:"Inter Tight", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--text-hero:clamp(2.5rem, 1.5rem + 4vw, 4.75rem);--text-contact:clamp(2.25rem, 1.4rem + 3.4vw, 4.25rem);--text-h2:clamp(2rem, 1.6rem + 1.6vw, 2.75rem);--text-h3-lg:clamp(1.5rem, 1.25rem + 1vw, 2rem);--text-h3:clamp(1.375rem, 1.25rem + .5vw, 1.625rem);--text-lead:clamp(1.0625rem, 1rem + .3vw, 1.25rem);--text-body:1rem;--text-small:.875rem;--text-eyebrow:.8125rem;--gutter:clamp(20px, 5.5vw, 80px);--section-y:clamp(56px, 7vw, 96px);--max-width:1440px;--radius-lg:20px;--radius-md:12px;--radius-pill:999px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-body);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}img{max-width:100%;height:auto;display:block}a{color:var(--color-accent)}a:hover{color:var(--color-accent-hover)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin:0;font-weight:600}p{margin:0}.container{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);border-top:1px solid var(--color-line)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.muted{color:var(--color-muted)}.btn{border-radius:var(--radius-pill);justify-content:center;align-items:center;gap:10px;min-height:48px;padding:14px 28px;font-size:1rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}button.btn{appearance:none;font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;font-weight:500}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);color:#fff}.btn-outline{border:1px solid var(--color-ink);color:var(--color-ink)}.btn-outline:hover,.btn-dark{background:var(--color-ink);color:var(--color-bg)}.btn-dark:hover{background:var(--color-accent);color:#fff}.tag{border-radius:var(--radius-pill);border:1px solid var(--color-line-strong);font-family:var(--font-mono);padding:6px 12px;font-size:.75rem;display:inline-block}.placeholder{text-align:center;background:var(--color-placeholder);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-small);color:var(--color-muted);justify-content:center;align-items:center;padding:16px;display:flex}.skip-link{background:var(--color-ink);color:var(--color-bg);z-index:100;padding:12px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:16px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes breathe{0%,70%,to{box-shadow:0 0 #1f8a4c00}35%{box-shadow:0 0 0 6px #1f8a4c24}}.pulse-dot{border-radius:var(--radius-pill);background:var(--color-success);flex-shrink:0;width:9px;height:9px;animation:4s ease-in-out infinite breathe;display:inline-block}@media (prefers-reduced-motion:reduce){.pulse-dot{animation:none}}.header[data-astro-cid-nen7h5rs]{z-index:50;background:color-mix(in srgb, var(--color-bg) 92%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-line);position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;height:80px;display:flex}.brand[data-astro-cid-nen7h5rs]{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);font-size:1.25rem;font-weight:600;text-decoration:none}.desktop-nav[data-astro-cid-nen7h5rs]{align-items:center;gap:36px;font-size:.9375rem;display:flex}.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.btn){color:var(--color-ink);text-decoration:none}.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.btn):hover{color:var(--color-accent)}.resume[data-astro-cid-nen7h5rs]{min-height:44px;padding:10px 20px;font-size:.9375rem}.mobile-nav[data-astro-cid-nen7h5rs]{display:none}@media (width<=767px){.header-inner[data-astro-cid-nen7h5rs]{height:64px}.brand[data-astro-cid-nen7h5rs]{font-size:1.125rem}.desktop-nav[data-astro-cid-nen7h5rs]{display:none}.mobile-nav[data-astro-cid-nen7h5rs]{display:block}}
