/* Let the opening fill a tall desktop screen and scale the editorial grid on ultra-wide displays. */
@media (min-width: 1200px) and (min-height: 900px) {
  .hero { min-height: calc(100svh - 112px); }
}

@media (min-width: 2400px) and (min-height: 1200px) {
  .wrap { width: min(100% - 96px, 1600px); }
  .hero-layout { width: min(100% - 96px, 1600px); }
  .hero-copy { max-width: 1500px; }
  .hero h1 { font-size: clamp(140px, 5.5vw, 190px); }
  .hero-copy > .hero-brief > p { max-width: 920px; font-size: 26px; }
  .hero-brief { max-width: 920px; }
  .hero-actions .button { min-height: 68px; padding-inline: 34px; font-size: 16px; }
  .booking, .clients {
    padding-left: max(48px, calc((100vw - 1600px) / 2));
    padding-right: max(48px, calc((100vw - 1600px) / 2));
  }
  .booking-shell { width: min(100%, 1200px); }
  .booking-heading { max-width: 1100px; }
  .booking-heading h2 { font-size: 125px; }
  .booking-heading p { max-width: 850px; font-size: 22px; }
}
