:root{--ink:#20262b;--blue:#174d77;--muted:#667078;--line:#d9dfe2;--soft:#f3f6f7}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#fff;color:var(--ink)}body{font-family:Georgia,"Times New Roman",serif;line-height:1.4}a{color:var(--blue);text-decoration:none}.page{width:min(calc(100% - 48px),1180px);min-height:100vh;margin:auto;display:flex;flex-direction:column;padding:clamp(18px,3vh,34px) 0 14px}header{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:22px;padding-bottom:clamp(14px,2.3vh,25px);border-bottom:3px solid var(--blue)}.portrait{width:78px;height:78px;display:grid;place-items:center;background:var(--soft);border:1px solid var(--line);color:var(--blue);font:600 1.15rem Arial,sans-serif;letter-spacing:.08em}.identity h1{margin:0 0 5px;color:#18364b;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.05;font-weight:normal}.identity p{margin:1px 0;color:var(--muted);font-size:.93rem}.identity strong{color:var(--ink);font-weight:normal}.quick-contact{display:grid;justify-items:end;gap:2px;font-size:.82rem;color:var(--muted)}.quick-contact a{text-decoration:underline;text-underline-offset:3px}.summary{max-width:1050px;margin:clamp(13px,2.2vh,23px) 0;font-size:clamp(.96rem,1.35vw,1.08rem)}.dashboard{display:grid;grid-template-columns:1.15fr 1fr .95fr 1.2fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex:1;max-height:430px}.dashboard section{padding:clamp(14px,2.2vh,24px) clamp(15px,2.2vw,27px)}.dashboard section:first-child{padding-left:0}.dashboard section:last-child{padding-right:0}.dashboard section+section{border-left:1px solid var(--line)}h2{margin:0 0 clamp(10px,1.8vh,18px);font-size:1.15rem;font-weight:normal;color:#18364b}ul{margin:0;padding-left:18px;font-size:.88rem}li+li{margin-top:clamp(3px,.7vh,7px)}nav{display:grid}nav a{display:flex;justify-content:space-between;gap:10px;padding:clamp(7px,1.2vh,12px) 0;border-bottom:1px solid var(--line);font-size:.88rem}nav a:first-child{border-top:1px solid var(--line)}nav a:hover span{text-decoration:underline;text-underline-offset:3px}nav b{font:normal .62rem Arial,sans-serif;color:var(--muted);padding-top:3px}nav small{display:block;font:normal .61rem Arial,sans-serif;letter-spacing:.035em;color:var(--muted);margin-bottom:1px}.section-links{display:flex;gap:15px;flex-wrap:wrap;margin:clamp(12px,2vh,20px) 0 0;font-size:.8rem}.section-links a{text-decoration:underline;text-underline-offset:3px}.subheading{margin-top:clamp(17px,2.6vh,27px)}footer{display:flex;justify-content:space-between;gap:20px;padding-top:12px;font:normal .68rem Arial,sans-serif;color:var(--muted)}
@media (min-width:800px) and (max-height:760px){.page{padding-top:14px}.portrait{width:64px;height:64px}.identity h1{font-size:1.9rem}.summary{margin:12px 0}.dashboard section{padding-top:12px;padding-bottom:12px}nav a{padding:7px 0}.subheading{margin-top:15px}}
@media(max-width:799px){.page{width:min(calc(100% - 28px),1180px);display:block;padding-top:22px}header{grid-template-columns:64px 1fr;gap:14px}.portrait{width:64px;height:64px}.quick-contact{grid-column:1/-1;display:flex;justify-content:flex-start;flex-wrap:wrap;gap:5px 16px}.summary{margin:20px 0}.dashboard{grid-template-columns:1fr;max-height:none}.dashboard section,.dashboard section:first-child,.dashboard section:last-child{padding:24px 0}.dashboard section+section{border-left:0;border-top:1px solid var(--line)}footer{flex-direction:column;padding:18px 0 25px}.footer-actions{justify-content:space-between}}
.interests-gateway{display:flex;align-items:center;justify-content:center;padding:clamp(9px,1.5vh,15px) 0;border-bottom:1px solid var(--line);font-size:1.15rem;color:#18364b}.interests-gateway:hover{text-decoration:underline;text-underline-offset:4px}
.identity p a{color:inherit}.identity p a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.section-links{flex-direction:column;align-items:flex-start;gap:3px}
.paired-links{display:flex;gap:6px}.paired-links a+a{border-left:1px solid var(--line);padding-left:6px}
.language-switch{display:flex;gap:7px;align-items:center;font:normal .68rem Arial,sans-serif;letter-spacing:.06em}.language-switch strong{color:var(--ink)}.language-switch a{text-decoration:none}.language-switch a:hover{text-decoration:underline;text-underline-offset:3px}
.github-note{margin:0;font-size:.78rem;line-height:1.35;color:var(--muted)}.github-note span{font-style:italic}
