body {
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

h1, h2, h3 {
  letter-spacing: 0.2px;
}

h1 { font-size: 1.75rem; }
h2 { font-size: 1.35rem; }
h3 { font-size: 1.15rem; }
h4, h5 { font-size: 1.05rem; }

main.container {
  max-width: 1024px;   
}

a {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

main ul {
  padding-left: 1.75rem;
}

main ul li {
  margin-bottom: 0.2rem;
  line-height: 1.5;
}


/* ============================================================
   Layout
   ============================================================ */

.page {
  padding-top: 4.75rem;   /* for fixed navbar */
}

.section {
  padding-top: 2.5rem;
  padding-bottom: 1.5rem;
}

section {
  scroll-margin-top: 2rem; 
}

.profile {
  max-width: 220px;
}

/* ============================================================
   Lead / Intro Text
   ============================================================ */

.lead-sm {
  font-size: 1.05rem;
  line-height: 1.7;
}

/* ============================================================
   Publications
   ============================================================ */

.pub {
  padding: 0.9rem 1rem;
  border: 1px solid var(--bs-border-color);
  border-radius: 0.75rem;
  margin-bottom: 0.8rem;
  background: var(--bs-body-bg);
}

.pub-title {
  font-family: "Source Serif 4", Georgia, serif;
  font-weight: 600;
  margin-bottom: 0.1rem;
}

.pub-meta {
  color: var(--bs-secondary-color);
  font-size: 0.95rem;
}

.pub-links a {
  font-size: 0.95rem;
}
.pub-links a:hover {
  text-decoration: underline;
}
.service-title {
  font-weight: 600;
  font-size: 1.05rem;
  margin: 0.75rem 0 0.5rem;
}

/* ============================================================
   Callout Box (Openings)
   ============================================================ */

.callout {
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid var(--bs-border-color);
  background: color-mix(in srgb,
              var(--bs-body-bg) 92%,
              var(--bs-secondary-bg) 8%);
}

/* ============================================================
   Navbar / Theme Toggle
   ============================================================ */

.navbar-brand {
  font-weight: 600;
}

.theme-toggle {
  border-radius: 999px;
  font-size: 0.85rem;
}

/* ============================================================
   Footer
   ============================================================ */

footer {
  margin-top: 2rem;
}

/* ============================================================
   Small Enhancements
   ============================================================ */

ul {
  padding-left: 1.1rem;
}

li {
  margin-bottom: 0.25rem;
}

/* Smoother transitions when switching light/dark */
html {
  transition: background-color 120ms ease, color 120ms ease;
}
