:root{--ink:#282d29;--muted:#6b726c;--accent:#35624d;--line:#e5e8e4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--ink);font:15px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.header,main,footer{max-width:850px;margin:auto;padding-left:30px;padding-right:30px}.header{display:flex;justify-content:space-between;align-items:center;height:92px;border-bottom:1px solid var(--line)}.wordmark{font-size:17px;font-weight:650;color:var(--ink)}.dot{display:none}nav{display:flex;gap:25px;font-size:12px}nav a{color:var(--muted)}h1,h2,h3,h4,p{margin-top:0}h1{font-size:39px;line-height:1.2;font-weight:650;letter-spacing:-1px;margin-bottom:13px}h2{font-size:21px;line-height:1.4;font-weight:600;letter-spacing:-.4px;margin-bottom:25px}h3{font-size:16px;line-height:1.5;font-weight:600}h4{font-size:14px;font-weight:600;margin-bottom:3px}.profile{padding:60px 0 43px;max-width:710px}.profile .role{color:var(--muted);line-height:1.6;margin-bottom:25px}.profile p{margin-bottom:15px}.profile-links{display:flex;gap:25px;font-size:13px;margin-top:22px}.section{padding:36px 0;border-top:1px solid var(--line)}.paper{padding:0 0 25px;margin-bottom:20px;border-bottom:1px solid #f0f1ef}.paper:last-child{padding-bottom:0;margin-bottom:0;border:0}.paper-meta{font-size:10px;font-weight:600;color:var(--accent);margin-bottom:7px;letter-spacing:.5px}.paper-meta span:last-child{display:none}.paper h3{margin-bottom:5px}.paper-subtitle{font-size:13px;margin-bottom:7px;color:#555e57}.authors{font-size:12px;color:var(--muted);margin-bottom:4px}.authors strong{font-weight:600;color:var(--ink)}.citation{font-size:11px;color:var(--muted);margin-bottom:6px}.paper-link{font-size:12px}.paper-link span{margin-left:4px}.project h3{margin-bottom:8px}.project p{font-size:13px;margin-bottom:14px}.recognition{display:flex;flex-wrap:wrap;gap:7px 17px;margin-bottom:14px;color:var(--muted);font-size:11px}.project .project-authors{font-size:11px;color:var(--muted);margin:0}.journey{display:grid;grid-template-columns:1fr 1fr;gap:40px}.column-label{font-size:13px;margin-bottom:22px;font-weight:600}.timeline-item{margin-bottom:23px}.date{font-size:10px;letter-spacing:.3px;color:var(--muted)}.timeline-item h4{margin-top:4px}.timeline-item p{font-size:12px;color:#515b53;margin:0 0 3px}.timeline-item small{font-size:11px;display:block;color:var(--muted);line-height:1.7}.service{margin-top:30px}.service .column-label{margin-bottom:12px}.service p{font-size:12px;color:var(--muted)}.service strong{font-weight:500;color:var(--ink)}details{font-size:12px;color:var(--muted)}summary{cursor:pointer;color:var(--accent);list-style:none}summary span{margin-left:6px}details[open] summary{margin-bottom:10px}details p{font-size:11px}.skills-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.skills h3{font-size:12px;margin-bottom:9px}.skills p{font-size:11px;color:var(--muted);margin:0}.contact{padding:34px 0 44px;border-top:1px solid var(--line)}.contact h2{margin-bottom:13px}.contact a{font-size:13px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding-top:22px;padding-bottom:25px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:white;z-index:10}.skip:focus{top:10px}@media(max-width:600px){.header,main,footer{padding-left:23px;padding-right:23px}.header{height:75px}.wordmark{font-size:15px}nav{gap:15px;font-size:11px}.nav-contact{display:none}.profile{padding-top:42px}h1{font-size:34px}body{font-size:14px}.journey{grid-template-columns:1fr;gap:18px}.skills-grid{grid-template-columns:1fr;gap:20px}.section{padding:30px 0}.paper h3{font-size:15px}.profile p{line-height:1.8}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.header,main,footer{max-width:760px}.journey{grid-template-columns:1fr;gap:15px}.timeline-item{margin-bottom:17px}.profile{padding-top:65px}.section{padding:30px 0}.recognition{display:block}.recognition span{display:block}.project-authors{display:none}

.profile-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:22px}.profile-heading .role{margin-bottom:0}.avatar-frame{width:110px;height:110px;flex:none;overflow:hidden;border-radius:50%;position:relative;background:#eef0ea}.avatar{position:absolute;width:190px;height:auto;max-width:none;left:-4px;top:-57px}.award{font-size:11px;color:var(--accent);font-weight:600;margin-bottom:7px}.compact-list{padding-left:18px;font-size:13px;margin:0}.small{font-size:13px;margin:0}@media(max-width:600px){.avatar-frame{width:88px;height:88px}.avatar{width:152px;left:-3px;top:-46px}.profile-heading{gap:15px}.profile-heading h1{font-size:29px}.profile-heading .role{font-size:12px}}

/* Give the portrait more breathing room inside the circular frame. */
.avatar{width:150px;left:0;top:-34px}@media(max-width:600px){.avatar{width:120px;left:0;top:-27px}}

/* Compact sticky section navigation. */
html{scroll-padding-top:90px}.section-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.section-nav nav{max-width:1000px;margin:auto;padding:17px 24px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:11px;line-height:1.5}.section-nav a{white-space:nowrap;color:var(--muted)}.section-nav a:hover,.section-nav a:focus-visible{color:var(--accent)}@media(max-width:600px){html{scroll-padding-top:120px}.section-nav nav{padding:12px 18px;gap:8px 16px;justify-content:flex-start;font-size:10px}.profile{padding-top:38px}}
