body {
      font-family: "Times New Roman", serif;
      font-size: 16px;
      line-height: 1.6;
      color: #222;
      max-width: 900px;
      margin: 0 auto;
      padding: 2rem;
    }

/* ── Header ── */
.profile {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
.profile img {
  width: 98px;
  height: 132px;
  border: 1px solid #ccc;
  flex-shrink: 0;
}
.profile-info { font-size: 1rem; line-height: 1.8; }

/* ── Nav ── */
nav {
  border-bottom: 1px solid #000;
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
  font-size: 1.1rem;
}
nav a { margin-right: 0.5rem; color: #0563c1; }

/* ── Sections ── */
section { margin-bottom: 2rem; }

h2 {
  font-size: 1.5rem;
  font-family: "Calibri Light", Calibri, sans-serif;
  font-weight: bold;
  color: #2e74b5;
  margin: 1.5rem 0 0.75rem;
}

h3 {
  font-size: 1.15rem;
  font-family: "Calibri Light", Calibri, sans-serif;
  font-weight: bold;
  color: #2e74b5;
  margin: 1.25rem 0 0.5rem;
  border-bottom: 1px solid #dde;
  padding-bottom: 0.2rem;
}

p { margin-bottom: 0.75rem; }

/* ── Publication entries ── */
.pub {
  margin-bottom: 1.25rem;
}
.pub-title {
  font-size: 1.05rem;
  font-weight: bold;
}
.pub-meta {
  font-size: 0.95rem;
  color: #444;
}
.pub-meta a { color: #0563c1; }

/* ── PC list ── */
ul.plain { list-style: none; padding: 0; }
ul.plain li { margin-bottom: 0.35rem; font-size: 0.95rem; }

a { color: #0563c1; }
a:visited { color: #954f72; }