/* Moved out of styles.css 2026-07-08: booking-page hero balance. */

.booking-page .booking-flow-hero {
  grid-template-columns: minmax(0, 1.06fr) minmax(320px, 0.94fr);
  align-items: stretch;
}

.booking-page .booking-flow-hero-copy {
  justify-content: center;
  gap: 0;
  padding-top: clamp(40px, 4.8vw, 64px);
  padding-bottom: clamp(40px, 4.8vw, 64px);
}

.booking-page .booking-flow-hero h1 {
  max-width: 680px;
  margin: 0;
}

.booking-page .booking-flow-hero p:not(.eyebrow) {
  max-width: 610px;
  margin: 20px 0 0;
}

.booking-page .hero-trust-row {
  margin-top: 24px;
}

.booking-page .booking-flow-hero-image {
  min-height: clamp(360px, 34vw, 500px);
}

.booking-page .booking-flow-hero-image img {
  min-height: clamp(360px, 34vw, 500px);
  object-position: 60% center;
}

@media (min-width: 1280px) {
  .booking-page .booking-flow-hero {
    grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
  }

  .booking-page .booking-flow-hero-image img {
    min-height: 470px;
  }
}

@media (max-width: 980px) {
  .booking-page .booking-flow-hero {
    grid-template-columns: 1fr;
  }

  .booking-page .booking-flow-hero-copy {
    padding-top: 34px;
    padding-bottom: 30px;
  }

  .booking-page .booking-flow-hero p:not(.eyebrow) {
    margin-top: 16px;
  }

  .booking-page .hero-trust-row {
    margin-top: 20px;
  }

  .booking-page .booking-flow-hero-image,
  .booking-page .booking-flow-hero-image img {
    min-height: 260px;
  }
}

@media (max-width: 640px) {
  .booking-page .booking-flow-hero-copy {
    padding-top: 26px;
    padding-bottom: 24px;
  }

  .booking-page .hero-trust-row {
    margin-top: 18px;
  }
}
