/* Main-page artwork shares the approved service-banner treatment. */
body[data-palette] .main-banner {
  margin-top: 82px; min-height: 470px; display: flex; align-items: center;
  padding-block: 4rem; background: transparent; border: 0; box-shadow: none;
}
.main-banner .main-banner-copy { max-width: 680px; }
.main-banner .main-banner-copy h1 { font-size: clamp(2.3rem,4vw,3.8rem); line-height: 1.12; }
.main-banner .main-banner-copy .eyebrow { margin-bottom: 1.2rem; }
.main-banner + main.section-pad { padding-top: 48px; }
.main-banner + main.section-pad > .container.pt-5 { padding-top: 0 !important; }
body[data-palette] .hero-canva.main-banner { min-height: 630px; }
.hero-canva.main-banner::before,.hero-canva.main-banner::after { display: none; }
.main-banner .generated-banner { aspect-ratio: auto; }
.vision-main-banner h1 { font-weight: 850; letter-spacing: -.045em; }
.vision-main-banner h1 span { color: var(--blue); }
.vision-banner-overview { padding-block: 1rem 3rem; }
.vision-banner-overview .vision-hero-art { max-width: 900px; margin-inline: auto; }
@media(max-width:767.98px) {
  body[data-palette] .main-banner,
  body[data-palette] .hero-canva.main-banner {
    min-height: 0; margin-top: 80px; padding-top: 240px; padding-bottom: 2.5rem;
  }
  .main-banner .main-banner-copy h1 { font-size: clamp(2rem,8vw,2.7rem); }
}
