:root{--font:var(--font-inter), system-ui, sans-serif;--radius:14px;--gap:clamp(1rem, 2.5vw, 1.5rem);--measure:68ch;--container:64rem}[data-theme=light]{color-scheme:light;--bg:#fff;--surface:#f5f7fa;--border:#dde3ea;--text:#16181d;--muted:#4a5260;--accent:#1d64c2;--accent-contrast:#fff;--chip:#e8eef6}[data-theme=dark]{color-scheme:dark;--bg:#0d1117;--surface:#151b23;--border:#2a313c;--text:#e6edf3;--muted:#9da7b3;--accent:#6cb6ff;--accent-contrast:#0d1117;--chip:#1c2633}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3{letter-spacing:-.015em;margin:0 0 .6em;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:750}h2{font-size:clamp(1.4rem,3vw,1.8rem);font-weight:700}h3{font-size:1.1rem;font-weight:650}p{margin:0 0 1em}a{color:var(--accent);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}img{max-width:100%;height:auto}.container{width:min(100% - 2.5rem, var(--container));margin-inline:auto}.section{padding-block:clamp(2rem,6vw,3.5rem)}.skip-link{position:absolute;left:-999px}.skip-link:focus{z-index:10;background:var(--bg);padding:.5rem 1rem;top:1rem;left:1rem}.site-header{border-bottom:1px solid var(--border)}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;padding-block:.9rem;display:flex}.brand{color:var(--text);align-items:center;gap:.6rem;font-weight:650;text-decoration:none;display:flex}@media (width<=28rem){.brand__name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.brand__mark{background:var(--accent);width:2.1rem;height:2.1rem;color:var(--accent-contrast);letter-spacing:.02em;border-radius:8px;place-items:center;font-size:.85rem;font-weight:800;display:grid}.nav{align-items:center;gap:clamp(.6rem,2vw,1.4rem);margin:0;padding:0;list-style:none;display:flex}.nav a{color:var(--muted);font-weight:550;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--text)}.theme-toggle{border:1px solid var(--border);background:var(--surface);width:2.4rem;height:2.4rem;color:var(--text);cursor:pointer;border-radius:50%;place-items:center;display:grid}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:1.15rem;height:1.15rem}[data-theme=dark] .icon--moon,[data-theme=light] .icon--sun{display:none}.site-footer{border-top:1px solid var(--border);color:var(--muted);font-size:.92rem}.site-footer__inner{flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.6rem;display:flex}.site-footer p{margin:0}.eyebrow{color:var(--accent);letter-spacing:.02em;margin:0 0 .4rem;font-size:.95rem;font-weight:650}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.actions--center{justify-content:center}.button{border:1px solid var(--border);background:var(--surface);min-height:2.75rem;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;padding:.55rem 1.15rem;font-size:.97rem;font-weight:600;text-decoration:none;display:inline-flex}.button:hover{border-color:var(--accent)}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:1.25rem 1.35rem}.chips{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.chips li{background:var(--chip);border-radius:999px;padding:.18rem .65rem;font-size:.88rem}.hero{flex-wrap:wrap;align-items:center;gap:clamp(1.5rem,5vw,3rem);padding-block:clamp(2.5rem,8vw,5rem) clamp(1rem,3vw,2rem);display:flex}.hero__avatar{width:clamp(8rem,20vw,11rem);height:auto;box-shadow:0 0 0 4px var(--bg), 0 0 0 6px var(--accent);border-radius:50%}.hero__text{flex:22rem}.hero h1{margin-bottom:.3rem}.hero__tagline{color:var(--text);margin-bottom:.2rem;font-size:clamp(1.15rem,2.4vw,1.4rem)}.hero__meta{color:var(--muted);margin:0}.highlights{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));margin:0;padding:0;list-style:none;display:grid}.highlight p{color:var(--muted);margin:0}.highlight__metric{color:var(--accent);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.6rem;font-weight:750;display:block}.about p{max-width:var(--measure)}.mammoth{display:inline-block}@media (prefers-reduced-motion:no-preference){.about h2:hover .mammoth{animation:.9s ease-in-out infinite dance}}@keyframes dance{0%,to{transform:translateY(0)}25%{transform:translateY(-5px)rotate(-10deg)}75%{transform:translateY(-5px)rotate(10deg)}}.toolbox{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));display:grid}.cta{text-align:center}.cta p{max-width:44ch;color:var(--muted);margin-inline:auto}.notfound{text-align:center}.resume{max-width:52rem;padding-block:clamp(2rem,6vw,3.5rem)}.resume section{margin-top:2.2rem}.resume h2{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border-bottom:1px solid var(--border);padding-bottom:.35rem;font-size:1.15rem}.resume__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.resume__header h1{margin-bottom:.2rem}.resume__title{margin-bottom:.3rem;font-size:1.2rem}.resume__contact{color:var(--muted);margin:0}.timeline{margin:0;padding:0;list-style:none}.job{break-inside:avoid;padding-block:.9rem}.job+.job{border-top:1px dashed var(--border)}.job__head{flex-wrap:wrap;justify-content:space-between;gap:0 1rem;display:flex}.job__head h3{margin:0}.job__when{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.job__where{color:var(--muted);margin:0 0 .5rem;font-weight:550}.job ul,.earlier{margin:0;padding-left:1.2rem}.job li+li{margin-top:.3rem}.earlier-title{margin-top:1.2rem}.resume__grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:0 2rem;display:grid}.plain{margin:0;padding:0;list-style:none}.plain li+li{margin-top:.8rem}.certs li{align-items:center;gap:.8rem;display:flex}.cert__badge{flex:none}.skills{grid-template-columns:max-content 1fr;gap:.45rem 1.2rem;margin:0;display:grid}.skills dt{font-weight:650}.skills dd{color:var(--muted);margin:0}@media (width<=40rem){.skills{grid-template-columns:1fr}.skills dd{margin-bottom:.6rem}}@media print{html{color-scheme:light;background:#fff}:root,[data-theme]{color-scheme:light;--bg:#fff;--surface:#fff;--text:#000;--muted:#333;--accent:#000;--border:#bbb}body{font-size:10.5pt;line-height:1.45}.site-header,.site-footer,.skip-link,.no-print{display:none!important}.resume{max-width:none;padding:0}.resume section{margin-top:1.1rem}a{color:inherit;text-decoration:none}h2{break-after:avoid}}.eyebrow a{color:inherit}.roles{border-left:2px solid var(--accent);margin:0 0 .6rem;padding:0 0 0 .9rem;list-style:none}.roles li{flex-wrap:wrap;justify-content:space-between;gap:0 1rem;display:flex}.roles__title{font-weight:600}.roles__when{color:var(--muted);font-variant-numeric:tabular-nums}.recognition{margin:var(--gap) 0 0;border-left:4px solid var(--accent)}.recognition blockquote{margin:0 0 .6rem;font-size:clamp(1.1rem,2.2vw,1.3rem);font-weight:550}.recognition blockquote p{margin:0}.recognition figcaption{color:var(--muted);font-size:.95rem}
