.site-header {
  width: 100%;
  max-width: none;
  justify-content: space-between;
  align-items: center;
}

.site-header .global-nav {
  justify-content: center;
}

.site-header .brand-name {
  font-size: 20px;
}

.site-header .brand-name__accent {
  color: var(--pink);
}

.site-header .global-nav .nav-contact,
.site-header .global-nav .nav-contact:visited,
.site-header .global-nav .nav-contact:hover {
  background: var(--pink);
  border: 1px solid var(--pink);
  color: #fff;
}

.site-header .global-nav,
.site-header .global-nav a {
  font-weight: 400;
}

/* Content determines section height; hero bands keep their own sizing. */
main > section:not(.hero):not(.page-title) {
  height: auto;
  min-height: 0;
  max-height: none;
  padding-block: 96px;
}

main > section.philosophy:not(.hero) {
  padding-block: 120px;
}

/* Keep the top-page news panel overlapping the hero. */
main > section.hero + section.news-section {
  padding-block: 0 72px;
}

@media (max-width: 767px) {
  main > section:not(.hero):not(.page-title) {
    padding-block: 64px;
  }

  main > section.philosophy:not(.hero) {
    padding-block: 80px;
  }

  main > section.hero + section.news-section {
    padding-block: 0 48px;
  }
}
