/* Homepage hero responsive guardrails. Scoped to the carousel so other pages stay unchanged. */
@media (max-width: 991px) {
  #carouselExampleCaptions .carousel-caption,
  #carouselExampleCaptions .carousel-caption * {
    box-sizing: border-box;
  }

  #carouselExampleCaptions .carousel-caption {
    right: 0 !important;
    left: 0 !important;
    width: auto !important;
    max-width: 100vw !important;
  }

  #carouselExampleCaptions .carousel-caption > .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  #carouselExampleCaptions .carousel-caption .row {
    width: 100%;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  #carouselExampleCaptions .carousel-caption [class*="col-"] {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  #carouselExampleCaptions .carousel-caption .slide-title,
  #carouselExampleCaptions .carousel-caption p {
    width: 100%;
    max-width: 100%;
    white-space: normal !important;
  }
}

@media (max-width: 575px) {
  #carouselExampleCaptions .carousel-caption {
    padding-right: 18px !important;
    padding-left: 18px !important;
  }

  #carouselExampleCaptions .carousel-caption .slide-title {
    font-size: clamp(1.65rem, 7.5vw, 2.15rem) !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  #carouselExampleCaptions .carousel-caption p {
    font-size: 0.88rem !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere;
  }

  #carouselExampleCaptions .hero-seo-actions,
  #carouselExampleCaptions .hero-seo-actions .package-card__order {
    width: 100% !important;
    max-width: 100% !important;
  }

  #carouselExampleCaptions .carousel-caption > .container,
  #carouselExampleCaptions .carousel-caption .row,
  #carouselExampleCaptions .carousel-caption [class*="col-"] {
    width: calc(100vw - 36px) !important;
    max-width: calc(100vw - 36px) !important;
  }
}
