:root { --text:#1a1a1a; --muted:#6b6b6b; --faint:#929292; --accent:#14509e; --rule:#e6e6e6; }
* { box-sizing:border-box; }
html { font-size:15px; }
body { margin:0; background:#fff; color:var(--text); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; font-size:16px; line-height:1.65; }
a { color:var(--accent); text-decoration:none; } a:hover { text-decoration:underline; }
.wrap { max-width:56rem; margin:0 auto; padding:2.2rem 1.4rem 3rem; }
.site-header { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:.4rem 1rem; padding-bottom:1.1rem; margin-bottom:2.2rem; border-bottom:1px solid var(--rule); }
.name { color:var(--text); font-size:1.15rem; font-weight:650; letter-spacing:.01em; }.name:hover { text-decoration:none; }
nav { display:flex; gap:1.1rem; } nav a { color:var(--muted); font-size:.95rem; } nav a.active,nav a:hover { color:var(--accent); text-decoration:none; }
h1 { margin:0 0 .3rem; font-size:1.65rem; line-height:1.25; font-weight:700; } h2 { margin:2.6rem 0 1rem; color:var(--muted); font-size:1.05rem; font-weight:650; letter-spacing:.08em; text-transform:uppercase; }
.intro { display:flex; align-items:flex-start; gap:2rem; }.bio { flex:1; min-width:0; }.bio p { margin:0 0 1em; max-width:37rem; }.subtitle { color:var(--muted); margin-bottom:1.6rem!important; }.quick-links { margin-top:.4rem!important; color:var(--faint); font-size:.95rem; }.quick-links span { color:var(--rule); margin:0 .35rem; }
.portrait { width:195px; margin:0; flex-shrink:0; }.portrait img { display:block; width:195px; height:195px; border-radius:50%; object-fit:cover; object-position:25% center; }.portrait figcaption { margin-top:.45rem; color:var(--faint); font-size:.72rem; text-align:center; }
.interests { color:var(--muted); font-size:.97rem; }.news { max-width:44rem; margin:0; padding:0; list-style:none; border-top:1px solid var(--rule); }.news li { display:grid; grid-template-columns:10.5rem minmax(0,1fr); gap:1.25rem; padding:.8rem 0; border-bottom:1px solid var(--rule); }.news time,.news span { color:var(--faint); font-size:.83rem; line-height:1.55; }.news time { text-align:right; white-space:nowrap; }
.paper { margin-bottom:1.9rem; }.paper-title { font-size:1.02rem; font-weight:650; line-height:1.4; }.paper-toggle { margin:0; padding:0; border:0; background:transparent; color:var(--text); font:inherit; font-weight:inherit; line-height:inherit; text-align:left; cursor:pointer; }.paper-toggle:hover { color:var(--accent); }.paper-toggle:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }.pdf { display:inline-block; margin-left:.5rem; padding:0 .42rem; border:1px solid var(--accent); border-radius:4px; font-size:.7rem; font-weight:600; letter-spacing:.05em; line-height:1.55; vertical-align:.12em; }.pdf:hover { background:var(--accent); color:white; text-decoration:none; }.authors { margin:.1rem 0 0; font-size:.97rem; }.recognition,.media { margin:.35rem 0 0; color:var(--muted); font-size:.87rem; line-height:1.5; }.media a { color:var(--muted); text-decoration:underline; text-underline-offset:2px; }.media a:hover { color:var(--accent); }.abstract { margin:.55rem 0 0; padding-left:.85rem; border-left:2px solid var(--rule); color:var(--muted); font-size:.92rem; line-height:1.6; }
footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem 1rem; margin-top:3.5rem; padding-top:1.1rem; border-top:1px solid var(--rule); color:var(--faint); font-size:.9rem; } footer a { color:var(--muted); }.footer-links { display:flex; gap:.75rem; }
@media (max-width:560px) { .wrap { padding:1.6rem 1.2rem 2.2rem; }.intro { flex-direction:column-reverse; gap:1.35rem; }.portrait,.portrait img { width:150px; height:150px; }.bio p,.interests { text-align:left; }.news li { grid-template-columns:1fr; gap:.15rem; }.news time { text-align:left; } }
