/* SentinelCore Safari homepage-only repair
   Scope: Safari/WebKit only. Fixes only: hero/banner height, service marquee movement, homepage counters. */

@supports (-webkit-touch-callout: none) {
  /* 1) Hero/banner natural height fix: stops the next section cutting into the header/slider on Safari. */
  #home,
  #home .mh-700,
  #home .swiper,
  #home .swiper-wrapper,
  #home .swiper-slide,
  #home .swiper-inner {
    min-height: 820px !important;
  }

  #home {
    height: auto !important;
    overflow: hidden !important;
    position: relative !important;
  }

  #home .mh-700,
  #home .swiper,
  #home .swiper-wrapper,
  #home .swiper-slide,
  #home .swiper-inner {
    height: auto !important;
  }

  #home .swiper {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
  }

  #home .swiper-inner {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
  }

  #home .sw-caption {
    position: relative !important;
    top: auto !important;
    transform: none !important;
    padding-top: 190px !important;
    padding-bottom: 120px !important;
  }

  #home + section {
    clear: both !important;
    position: relative !important;
    z-index: 2 !important;
  }

  #home .sw-overlay {
    pointer-events: none !important;
  }

  /* 2) Safari marquee fallback for the Remote & On-Site / services banner. */
  .de-marquee-list-2 {
    display: inline-flex !important;
    align-items: center !important;
    width: max-content !important;
    min-width: max-content !important;
    white-space: nowrap !important;
    will-change: transform !important;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  .de-marquee-list-2 span {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  .section-dark.bg-color.text-light.d-flex.py-4.lh-1.overflow-hidden {
    overflow: hidden !important;
  }

  /* 3) Prevent WOW visibility from blocking counters on Safari if animation callbacks fail. */
  .de_count .timer {
    visibility: visible !important;
    opacity: 1 !important;
  }

  @media (max-width: 991px) {
    #home,
    #home .mh-700,
    #home .swiper,
    #home .swiper-wrapper,
    #home .swiper-slide,
    #home .swiper-inner {
      min-height: 900px !important;
    }
    #home .sw-caption {
      padding-top: 150px !important;
      padding-bottom: 95px !important;
    }
  }

  @media (max-width: 767px) {
    #home,
    #home .mh-700,
    #home .swiper,
    #home .swiper-wrapper,
    #home .swiper-slide,
    #home .swiper-inner {
      min-height: 920px !important;
    }
    #home .sw-caption {
      padding-top: 135px !important;
      padding-bottom: 80px !important;
    }
  }
}
