
@media (max-width:768px){
.hero-banner-section,.banner-section,.hero-section,[class*="hero"],[class*="banner"]{
min-height:auto!important;height:auto!important;padding-top:0!important;padding-bottom:0!important;margin-bottom:0!important;
}
h1,h2.hero-title{margin-bottom:12px!important;}
.carousel,.slider,.hero-slider,[class*="slider"]{
margin-top:0!important;
}
body .hero-content, body [class*="hero-content"]{
min-height:auto!important;height:auto!important;
}
}

/* DT final targeted fix: remove remaining mobile white gaps around hero slider */
@media (max-width:768px){
  .remove-homepage-padding-banner > .cmp-container > .headingwithimage,
  .headingwithimage{
    height:auto!important;
    min-height:0!important;
    max-height:112px!important;
    margin:14px auto 14px!important;
    padding:0 14px!important;
    overflow:visible!important;
    display:block!important;
  }

  .headingwithimage .heading-title,
  .headingwithimage h1.heading-title,
  #heading-with-image-title{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    line-height:1!important;
    display:block!important;
  }

  .headingwithimage .heading-title p,
  #heading-with-image-title p{
    margin:0!important;
    padding:0!important;
    font-size:28px!important;
    line-height:1.15!important;
    letter-spacing:-.7px!important;
  }

  .homepagebanner,
  .homepagebanner.height-495,
  .homepagebanner.height-540{
    --dt-mobile-banner-h: clamp(150px, 43vw, 205px);
    height:var(--dt-mobile-banner-h)!important;
    min-height:0!important;
    max-height:var(--dt-mobile-banner-h)!important;
    margin:0 auto 14px!important;
    padding:0 10px!important;
    overflow:visible!important;
  }

  .homepage-banner-carousel,
  .homepage-banner-carousel .cmp-cards-carousel__container,
  .homepage-banner-carousel .swiper-wrapper,
  .homepage-banner-carousel .swiper-slide{
    height:var(--dt-mobile-banner-h)!important;
    min-height:0!important;
    max-height:var(--dt-mobile-banner-h)!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }

  .homepage-banner-carousel picture{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
  }

  .homepage-banner-carousel picture img,
  .homepage-banner-carousel .swiper-slide > img,
  .homepagebanner.height-495 .homepage-banner-carousel .cmp-cards-carousel__container .swiper-wrapper .swiper-slide img{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    display:block!important;
  }

  .homepage-banner-carousel .product-popup{
    top:50%!important;
    transform:translateY(-50%)!important;
  }

  .quicklinkproducts,
  .quicklinkproducts.container,
  .quicklinkproducts.margin-bottom-mobile-40{
    margin-top:16px!important;
    padding-top:0!important;
  }
}

@media (max-width:380px){
  .homepagebanner,
  .homepagebanner.height-495,
  .homepagebanner.height-540{
    --dt-mobile-banner-h: clamp(140px, 42vw, 180px);
  }
  .headingwithimage .heading-title p,
  #heading-with-image-title p{
    font-size:25px!important;
  }
}

/* DT final nudge: move mobile hero heading a little lower without restoring old gap */
@media (max-width:768px){
  .remove-homepage-padding-banner > .cmp-container > .headingwithimage,
  .headingwithimage{
    max-height:none!important;
    height:auto!important;
    margin:26px auto 16px!important;
    padding:8px 14px 0!important;
    overflow:visible!important;
  }

  .headingwithimage .heading-title,
  .headingwithimage h1.heading-title,
  #heading-with-image-title{
    overflow:visible!important;
    padding-top:6px!important;
    transform:none!important;
  }

  .headingwithimage .heading-title p,
  #heading-with-image-title p{
    overflow:visible!important;
    line-height:1.18!important;
    margin:0!important;
    padding-top:4px!important;
  }
}
