/* Shared news/history/contact/product hero sizing; page files only provide background images. */
.subpage-hero { position: relative; min-height: 330px; padding-block: 32px 44px; }
.subpage-eyebrow { font-size: 13px; font-weight: 500; letter-spacing: .24em; color: #64798a; }
.subpage-hero h1 { margin-top: 14px; max-width: 680px; font-size: clamp(42px, 3.25vw, 56px); line-height: 1.18; font-weight: 700; letter-spacing: -.045em; }
.subpage-intro { margin-top: 20px; color: #64798a; font-size: clamp(18px, 1.25vw, 20px); line-height: 1.65; letter-spacing: -.025em; }
.subpage-motto { padding-left: 16px; border-left: 1px solid #9fb2bf; font-size: 9px; letter-spacing: .24em; line-height: 2; }
.subpage-hero .subpage-motto { position: absolute; right: 0; bottom: 58px; white-space: nowrap; color: #354c5c; }
@media (max-width: 1100px) {
  .subpage-hero h1 { font-size: 44px; }
  .subpage-hero .subpage-motto { display: none; }
}
@media (max-width: 767px) {
  .subpage-hero { min-height: 330px; padding-block: 27px 32px; }
  .subpage-hero h1 { font-size: clamp(28px, 7vw, 38px); }
  .subpage-intro { font-size: 16px; margin-top: 14px; }
}

/* All subpages use the same shared banner variant. */
:is(.news-page, .history-page, .contact-page, .product-page) .contact-banner .banner-description { display: none; }
