/* Shared title band for every formal inner page in the 02A site. */
:where(.subpage-hero, .faq-hero, .visit-hero) {
  box-sizing: border-box;
  min-height: 250px;
  display: flex;
  align-items: flex-start;
  padding: 64px 0 54px !important;
  background: #1d416a !important;
  color: #fff;
}

:where(.subpage-hero, .faq-hero, .visit-hero) > :where(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) {
  width: min(1440px, 92%) !important;
  margin: 0 auto !important;
}

:where(.subpage-hero, .faq-hero, .visit-hero) :where(.eyebrow, .visit-kicker) {
  display: block;
  margin: 0 0 14px !important;
  color: #68d9d2 !important;
  font-family: Inter, "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25;
  letter-spacing: 0 !important;
  text-transform: uppercase;
}

:where(.subpage-hero, .faq-hero, .visit-hero) h1 {
  margin: 0 !important;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", "Noto Serif SC", serif;
  font-size: 48px !important;
  font-weight: 700;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  overflow-wrap: anywhere;
}

:where(.subpage-hero, .faq-hero, .visit-hero) > :where(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) > p:last-child:not(.eyebrow) {
  max-width: 760px;
  margin: 14px 0 0 !important;
  color: #d6e3f0 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

@media (max-width: 900px) {
  :where(.subpage-hero, .faq-hero, .visit-hero) {
    min-height: 216px;
    padding: 52px 0 44px !important;
  }

  :where(.subpage-hero, .faq-hero, .visit-hero) h1 {
    font-size: 38px !important;
  }
}

@media (max-width: 560px) {
  :where(.subpage-hero, .faq-hero, .visit-hero) {
    min-height: 174px;
    padding: 40px 0 34px !important;
  }

  :where(.subpage-hero, .faq-hero, .visit-hero) > :where(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) {
    width: min(100% - 36px, 1440px) !important;
  }

  :where(.subpage-hero, .faq-hero, .visit-hero) :where(.eyebrow, .visit-kicker) {
    margin-bottom: 12px !important;
    font-size: 12px !important;
  }

  :where(.subpage-hero, .faq-hero, .visit-hero) h1 {
    font-size: 30px !important;
  }

  :where(.subpage-hero, .faq-hero, .visit-hero) > :where(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) > p:last-child:not(.eyebrow) {
    font-size: 14px !important;
  }
}

/* Final title-band contract: every formal page starts its copy on one grid. */
:is(.subpage-hero, .faq-hero, .visit-hero) {
  min-height: 250px !important;
  padding: 64px 0 54px !important;
  align-items: flex-start !important;
}
:is(.subpage-hero, .faq-hero, .visit-hero) > :is(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) {
  width: min(1440px, 92%) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
:is(.subpage-hero, .faq-hero, .visit-hero) :is(.eyebrow, .visit-kicker) {
  margin: 0 0 14px !important;
}
:is(.subpage-hero, .faq-hero, .visit-hero) h1 {
  margin: 0 !important;
}
:is(.subpage-hero, .faq-hero, .visit-hero) > :is(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) > p:last-child:not(.eyebrow) {
  margin: 14px 0 0 !important;
}
@media (max-width: 900px) {
  :is(.subpage-hero, .faq-hero, .visit-hero) {
    min-height: 216px !important;
    padding: 52px 0 44px !important;
  }
}
@media (max-width: 560px) {
  :is(.subpage-hero, .faq-hero, .visit-hero) {
    min-height: 174px !important;
    padding: 40px 0 34px !important;
  }
  :is(.subpage-hero, .faq-hero, .visit-hero) > :is(.topic-heading, .page-shell, .faq-wrap, .visit-wrap) {
    width: min(100% - 36px, 1440px) !important;
  }
}
