  /* ---------- Tokens (Brine-style palette: white, #222 text, #bbb rules) ---------- */
  :root{
    --bg:#ffffff;
    --text:#222222;
    --muted:#525252;
    --rule:#bbbbbb;
    --link:#222222;
    --link-hover:#f0523d;
    --thumb-bg:#f6f6f6;
    --max:1120px;
    --font:"Source Sans 3","Helvetica Neue",Arial,sans-serif;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;background:var(--bg);color:var(--text);
    font-family:var(--font);font-weight:300;font-size:18px;line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  a{color:var(--link);text-decoration:none;border-bottom:1px solid var(--rule);transition:color .15s,border-color .15s}
  a:hover{color:var(--link-hover);border-color:var(--link-hover)}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 32px}
  @media (max-width:640px){.wrap{padding:0 16px}}

  /* ---------- Header ---------- */
  .Header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid #eee}
  .Header-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px}
  .Header-branding{font-weight:400;font-size:17px;letter-spacing:.14em;text-transform:uppercase;border:none}
  .Header-branding:hover{color:var(--text)}
  .Header-nav{display:flex;gap:28px;list-style:none;margin:0;padding:0}
  .Header-nav a{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;border:none;padding:4px 0;border-bottom:1px solid transparent}
  .Header-nav a:hover{color:var(--text);border-bottom-color:var(--text)}
  .Header-nav a.active{border-bottom-color:var(--text)}
  .Header-toggle{display:none;background:none;border:0;font:inherit;font-size:13px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;color:var(--text);padding:8px 0}
  @media (max-width:760px){
    .Header-nav{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;flex-direction:column;gap:0;padding:8px 16px 16px;border-bottom:1px solid #eee}
    .Header-nav.open{display:flex}
    .Header-nav li{padding:10px 0;border-top:1px solid #f0f0f0}
    .Header-toggle{display:block}
  }

  /* ---------- Top: photo + name + bio ---------- */
  .Top{padding-top:56px}
  .Top h1{font-weight:300;font-size:clamp(34px,4.5vw,52px);letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px;line-height:1.1}
  .Top .tagline{font-size:17px;letter-spacing:.075em;text-transform:uppercase;font-weight:400;margin:0 0 4px}
  .Top .sub{font-size:14px;letter-spacing:.075em;text-transform:uppercase;font-weight:400;color:var(--muted);margin:0 0 24px}
  @media (max-width:760px){.Top{padding-top:32px}}

  /* ---------- Sections ---------- */
  section{padding:72px 0}
  hr.rule{border:none;height:1px;background:var(--rule);margin:0}
  h2{font-weight:300;font-size:24px;letter-spacing:.075em;text-transform:uppercase;line-height:1.3;margin:0 0 36px}
  h3{font-size:20px;font-weight:700;line-height:1.3;margin:0 0 6px}
  h3 a{border:none}
  h3 a:hover{color:var(--link-hover)}
  p{margin:0 0 1em}

  /* About: photo left, bio right */
  .About{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:56px;align-items:start}
  @media (max-width:760px){.About{grid-template-columns:1fr;gap:32px}}
  .Photo{width:100%;aspect-ratio:4/5;background:var(--thumb-bg);overflow:hidden}
  .Photo img{width:100%;height:100%;object-fit:cover;display:block}
  .Email{font-size:17px;margin:0 0 28px}
  .Email strong{font-weight:700}
  .Bio p{font-size:19px;line-height:1.65}
  .Links{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:400}

  /* Papers list */
  .Paper{display:grid;grid-template-columns:1fr;gap:0;padding:26px 0;border-top:1px solid #e8e8e8}
  .Paper:first-of-type{border-top:none;padding-top:0}
  .Paper .meta{font-style:italic;color:var(--muted);font-size:17px;margin:0 0 6px}
  .Paper .status{font-size:17px;margin:0 0 6px}
  .Paper .links{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:400;margin-top:8px}
  .Paper .links a{border:none}
  .Paper .links a+a::before{content:"|";color:var(--rule);margin:0 10px}
  .Paper .media{font-size:15px;color:var(--muted);margin:10px 0 0;line-height:1.7}
  .Paper .media .label{font-weight:600;color:var(--text)}
  .Paper .media .sep{color:var(--rule);margin:0 4px}
  .Paper .media a{color:var(--muted);border-bottom-color:#ddd}
  .Paper .media a:hover{color:var(--link-hover);border-bottom-color:var(--link-hover)}
  .Subhead{font-size:19px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;color:var(--text);margin:64px 0 18px}
  .Subhead:first-of-type{margin-top:0}

