/* Shared typography and spacing for category and section headings. */
:root {
  --section-title-size: 32px;
  --section-title-leading: 1.3;
  --section-title-gap: 20px;
  --section-top-gap: 28px;
  --section-stack-gap: 36px;
}
main {
  margin-top: var(--section-top-gap);
  padding-top: 0;
}
.education-section > h1,
.gallery-content > h1,
.publications-page > h1,
.people-content > h1 {
  margin: 0 0 var(--section-title-gap);
  font-size: var(--section-title-size);
  font-weight: 650;
  line-height: var(--section-title-leading);
  letter-spacing: normal;
  color: var(--text-main);
}
.education-section { margin-bottom: var(--section-stack-gap); }
/* People retains its useful role headings without stacking default top margins. */
.people-content > h1 + section > h2 {
  margin-top: 0;
}
@media (max-width: 760px) {
  :root {
    --section-title-size: 28px;
    --section-title-gap: 16px;
    --section-top-gap: 24px;
    --section-stack-gap: 28px;
  }
}