:root{color-scheme:light;--ink:#232933;--muted:#606974;--link:#315983;--rule:#dfe4ea;--accent:#314d76;--paper:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;border-top:3px solid var(--accent);background:var(--paper);color:var(--ink);font-family:"Times New Roman",Times,serif;font-size:1.125rem;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:underline;text-decoration-color:#aebfd1;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:#1b3658;text-decoration-color:currentColor}
a:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}
.page{max-width:960px;padding:0 38px;margin:0 auto}
.site-header{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:32px;padding:44px 0 0}
.portrait{display:block;width:100%;height:auto;border-radius:3px}
h1{font-size:2.5rem;line-height:1.2;font-weight:700;letter-spacing:-.015em;margin:0 0 10px}
.nickname{font-weight:400;color:var(--muted);font-size:.72em;letter-spacing:normal}
.affiliation{margin:0 0 9px;color:var(--muted);font-size:1.05rem}
.contact-links{display:flex;flex-wrap:wrap;gap:7px 20px}
.email{flex-basis:100%}
.file-label{font-size:.75rem;letter-spacing:.035em;margin-left:2px;color:var(--muted)}
.intro{margin-top:26px}
.intro p{margin:0}
section{margin-top:30px;scroll-margin-top:2rem}
h2{font-size:1.6rem;line-height:1.3;font-weight:400;letter-spacing:normal;margin:0 0 15px;color:#202b3b}
h3{font-size:1.0625rem;font-weight:700;line-height:1.5;margin:0}
p{margin:5px 0}
.entry{margin-bottom:19px}
.entry:last-child{margin-bottom:0}
.entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px 28px}
.entry-heading h3{flex:1}
.date{font-size:.875rem;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.project-place{font-weight:400;color:var(--muted)}
.mentors{font-size:.875rem;color:var(--muted);margin-top:5px}
.publications{padding:0;list-style:none;margin:0}
.publications li{margin-bottom:20px}
.publications li:last-child{margin-bottom:0}
.publications h3{font-size:1.125rem;font-weight:400}
.authors{font-size:.9375rem;line-height:1.6;margin:5px 0 2px}
.authors strong{font-weight:650}
.venue{font-size:.9rem;color:var(--muted);margin:2px 0}
.dated-list{padding:0;list-style:none;margin:0}
.dated-list li{display:flex;justify-content:space-between;gap:24px;padding:3px 0}
.short-list{margin:0;padding-left:20px}
.short-list li{padding:3px 0}
.short-list strong{font-weight:600}
#beyond-research{border-top:1px solid var(--rule);padding-top:25px;margin-top:28px}
.pet-gallery{display:grid;grid-template-columns:3fr 4fr;align-items:end;gap:14px;width:380px;max-width:100%;margin-top:18px}
.pet-gallery img{display:block;width:100%;height:auto;min-width:0;border-radius:3px}
.languages{font-size:.9rem;color:var(--muted);margin-top:10px}
footer{border-top:1px solid var(--rule);margin-top:28px;padding:19px 0 27px;display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.82rem}
.skip-link{position:absolute;top:-100px;left:16px;background:white;padding:8px;z-index:10}
.skip-link:focus{top:10px}
@media(max-width:640px){.page{padding:0 22px}.site-header{grid-template-columns:135px minmax(0,1fr);gap:24px;padding-top:30px}h1{font-size:2.1rem}.affiliation{font-size:1rem}.contact-links{gap:7px 15px}.intro{margin-top:24px}section{margin-top:28px}h2{font-size:1.5rem}.entry-heading{display:block}.entry-heading .date{display:block;margin-top:3px}.dated-list li{align-items:baseline;gap:15px}footer{flex-wrap:wrap}}
@media(max-width:420px){.site-header{grid-template-columns:110px minmax(0,1fr);gap:18px}h1{font-size:1.75rem}.affiliation,.contact-links{font-size:.9rem}.contact-links{gap:6px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{border-top:0;font-size:10pt}.page{max-width:none;padding:0}.site-header{padding:0;grid-template-columns:100px minmax(0,1fr);gap:24px}.skip-link,footer a{display:none}section{margin-top:18px}h2{font-size:15pt;margin-bottom:10px}.entry,.publications li{break-inside:avoid}a{color:inherit;text-decoration:none}footer{padding:12px 0 0}}
