:root{color-scheme:light dark;--bg:#ffffff;--surface:#f8f9fa;--ink:#1a1a1a;--muted:#646d76;--line:#e1e4e8;--accent:#0066cc;--accent-hover:#0052a3;--accent-ink:#ffffff}
@media (prefers-color-scheme:dark){:root{--bg:#0d1117;--surface:#161b22;--ink:#e6edf3;--muted:#8b949e;--line:#30363d;--accent:#2d9cff;--accent-hover:#58b0ff;--accent-ink:#0d1117}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:1.0625rem/1.65 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--accent-hover)}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
svg{flex:none}
h1,h2,h3,p,ul{margin:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:16px;z-index:10;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:8px;text-decoration:none;font-weight:600}
.skip:focus{left:16px}
.wrap{max-width:42rem;margin:0 auto;padding:clamp(40px,8vw,96px) 24px 48px;display:flex;flex-direction:column;gap:clamp(56px,9vw,88px)}
main{display:flex;flex-direction:column;gap:clamp(56px,9vw,88px)}
main:focus{outline:none}
.head{display:flex;flex-direction:column;gap:24px}
.avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;background:var(--line)}
.name{font-size:clamp(2rem,6vw,2.75rem);line-height:1.1;letter-spacing:-.025em;font-weight:650;text-wrap:balance}
.role{font-size:1.1875rem;color:var(--muted);margin-top:8px}
section{display:flex;flex-direction:column;gap:16px}
.label{font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lead{font-size:1.3125rem;line-height:1.55;text-wrap:pretty}
.tags{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.tags li{padding:4px 12px;border:1px solid var(--line);border-radius:999px;font-size:.9375rem}
.projects{padding:0;list-style:none;border-top:1px solid var(--line)}
.projects li{border-bottom:1px solid var(--line)}
.projects a{display:flex;align-items:center;gap:16px;padding:18px 4px;color:var(--ink);text-decoration:none}
.projects a:hover{color:var(--accent)}
.projects .t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.projects b{font-weight:600}
.projects .d{color:var(--muted);font-size:.9375rem}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.btn{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:12px 22px;border-radius:999px;background:var(--ink);color:var(--bg);text-decoration:none;font-weight:600}
.btn:hover{background:var(--accent-hover);color:var(--accent-ink)}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);color:var(--ink)}
.icon-btn:hover{color:var(--accent);border-color:var(--accent)}
.back{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;min-height:44px;color:var(--ink);text-decoration:none;font-weight:600}
.back:hover{color:var(--accent)}
.legal{gap:14px}
.legal h1{font-size:1.75rem;letter-spacing:-.02em;font-weight:650}
.legal h2{font-size:1.0625rem;margin-top:8px}
.legal address{font-style:normal}
.muted{color:var(--muted)}
footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-top:24px;border-top:1px solid var(--line);font-size:.9375rem;color:var(--muted)}
footer nav{display:flex;gap:20px}
footer a{color:var(--muted)}
footer a:hover{color:var(--ink)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
