/* Palette: calm Candès-like blue, no accent underline on hover */
:root { --accent:#2a5bd7; --accent-dark:#1f3f9c; --ink:#111; --muted:#555; --bg:#fff; }
*{box-sizing:border-box}
html{font-size:18px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,serif;line-height:1.7}
.wrap{max-width:980px;margin:0 auto;padding:0 1rem}

/* Header & nav */
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #e6eaf2;z-index:10}
.site-title{color:var(--accent);text-decoration:none;font-weight:700}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem}
.site-nav a{color:#333;text-decoration:none;margin-left:1rem;padding:.2rem .25rem}
.site-nav a:hover{color:var(--accent)} /* no underline */

/* Active tab by body class */
.page-home .site-nav a[data-tab="home"],
.page-publications .site-nav a[data-tab="publications"],
.page-research .site-nav a[data-tab="research"],
.page-teaching .site-nav a[data-tab="teaching"],
.page-software .site-nav a[data-tab="software"],
.page-service .site-nav a[data-tab="service"],
.page-contact .site-nav a[data-tab="contact"]{color:var(--accent);font-weight:600}

/* Hero */
.hero{display:grid;grid-template-columns:260px 1fr;gap:2rem;align-items:center;padding:2.5rem 0 1.5rem}
.hero-media img{width:260px;height:260px;object-fit:cover;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.hero-text h1{margin:0 0 .25rem;font-size:2.35rem}
.subtitle{margin:0 0 .75rem;color:var(--muted)}
.lede{max-width:62ch;font-size:1.06rem}
.contact-line{color:var(--muted);font-size:.95rem}
.cta-row .btn{margin-right:.5rem}

/* Buttons */
.btn{display:inline-block;padding:.55rem .95rem;border-radius:.45rem;text-decoration:none;font-weight:600}
.btn.primary{background:var(--accent);color:#fff}
.btn.primary:hover{background:var(--accent-dark)}
.btn.secondary{border:1px solid var(--accent);color:var(--accent)}
.btn.secondary:hover{background:var(--accent);color:#fff}
.more{color:var(--accent-dark);text-decoration:none}
.more:hover{text-decoration:none;opacity:.9}

/* Sections & type */
h1{font-size:2rem;margin:1.25rem 0 .25rem}
h2{font-size:1.35rem;margin:2rem 0 .5rem;color:#1f2937}
p,li{max-width:72ch}
.readable{font-size:1.02rem}
.section{padding:1rem 0}

/* Publications */
ol.pubs{padding-left:1.2rem}
ol.pubs li{margin:.6rem 0}

/* Footer */
.site-footer{border-top:1px solid #e6eaf2;margin-top:3rem;padding:1rem 0;color:var(--muted);font-size:.95rem}

/* Responsive */
@media (max-width: 860px){
  .hero{grid-template-columns:1fr}
  .hero-media img{width:200px;height:200px}
}
@media (max-width: 520px){
  .hero-media img{width:160px;height:160px}
  html{font-size:17px}
}
/* Collapsible year blocks */
.year-block { margin: 1.2rem 0; }
.year-block > summary {
  list-style: none; cursor: pointer; user-select: none;
  font-size: 1.2rem; font-weight: 600; color: #333;
  border-bottom: 1px solid #e6eaf2; padding: .25rem 0;
}
/* Hide default marker */
.year-block > summary::-webkit-details-marker { display: none; }
/* Optional: add a custom chevron */
.year-block > summary::before {
  content: "▾"; display: inline-block; margin-right: .5rem; transition: transform .2s ease;
}
.year-block[open] > summary::before { transform: rotate(0deg); }
.year-block:not([open]) > summary::before { transform: rotate(-90deg); }
/* Highlight the current tab using aria-current */
.site-nav a[aria-current="page"] {
  color: var(--accent);
  font-weight: 600; /* adjust to match your theme */
}