/* Local responsive reconstruction based on the separately captured gm1 DOM. */
.local-header-mobile {
  display: none;
}

html,
body {
  max-width: 100%;
  overflow-x: clip;
}

@media (max-width: 1040px) {
  .local-header-desktop {
    display: none;
  }

  .local-header-mobile {
    display: block;
  }

  .local-header-mobile .site-header {
    position: relative;
  }

  /* The desktop capture contains fixed Slick dimensions. Reconstruct the
     fluid two-panel hero used by the mobile capture. */
  .text-over-carousel .slick-track {
    width: 200% !important;
    transform: none !important;
  }

  .text-over-carousel .slick-slide {
    width: 50% !important;
  }

  .text-over-carousel .slick-slide:not(.slick-active) {
    pointer-events: none;
  }

  /* Preserve the mobile one-card-at-a-time statistics layout without relying
     on the original remote carousel JavaScript. */
  .manual-internal-promo-slider__slider .slick-list {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .manual-internal-promo-slider__slider .slick-list::-webkit-scrollbar {
    display: none;
  }

  .manual-internal-promo-slider__slider .slick-track {
    display: flex !important;
    gap: 16px;
    width: max-content !important;
    transform: none !important;
  }

  .manual-internal-promo-slider__slider .slick-track::before,
  .manual-internal-promo-slider__slider .slick-track::after {
    display: none;
  }

  .manual-internal-promo-slider__slider .slick-slide {
    float: none;
    width: min(81vw, 305px) !important;
    scroll-snap-align: start;
  }

  .manual-internal-promo-slider__slide-bar-pos {
    width: 20% !important;
  }
}

@media (max-width: 680px) {
  .main-content-wrapper,
  .main-content,
  .container,
  picture,
  img {
    min-width: 0;
  }

  .text-over-carousel .slick-slide {
    left: 0 !important;
  }

  .text-over-carousel .slick-slide.slick-active {
    opacity: 1 !important;
  }
}
