
/* NILA v21.43 Homepage Hero Cleanup */
:root{
  --v43-ink:#071b31;
  --v43-green:#075f3c;
  --v43-teal:#007f78;
  --v43-line:rgba(7,27,49,.12);
}

/* Remove the broken-looking empty search strip on desktop and mobile */
body.page-home .v42-search-shell,
body[data-nila-page="index"] .v42-search-shell{
  display:none!important;
}

/* Hero image should feel like the product visual, not a boxed card */
body.page-home .v42-hero,
body[data-nila-page="index"] .v42-hero{
  padding:54px 0 46px!important;
}
body.page-home .v42-hero-inner,
body[data-nila-page="index"] .v42-hero-inner{
  grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr)!important;
  gap:52px!important;
}
body.page-home .v42-hero-visual,
body[data-nila-page="index"] .v42-hero-visual{
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:0!important;
  transform:scale(1.06)!important;
  transform-origin:center right!important;
}
body.page-home .v42-hero-visual img,
body[data-nila-page="index"] .v42-hero-visual img{
  border-radius:30px!important;
  width:100%!important;
  aspect-ratio:1.16/1!important;
  object-fit:cover!important;
  box-shadow:0 28px 90px rgba(7,27,49,.16)!important;
}

/* Improve spacing now the search shell is gone */
body.page-home .v42-hero p,
body[data-nila-page="index"] .v42-hero p{
  margin-bottom:18px!important;
}
body.page-home .v42-trust-row,
body[data-nila-page="index"] .v42-trust-row{
  margin-top:8px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(7,27,49,.06)!important;
  border-radius:999px!important;
  padding:10px 12px!important;
  width:max-content!important;
  max-width:100%!important;
  box-shadow:0 14px 40px rgba(7,27,49,.06)!important;
}

/* Keep homepage services premium and slightly tighter */
body.page-home .v42-services,
body[data-nila-page="index"] .v42-services{
  padding-top:46px!important;
}
body.page-home .v42-service-img,
body[data-nila-page="index"] .v42-service-img{
  height:205px!important;
}

/* Mobile: keep the order the user liked. Visual after headline, services horizontal. */
@media(max-width:780px){
  body.page-home .v42-hero,
  body[data-nila-page="index"] .v42-hero{
    padding:24px 0 26px!important;
  }
  body.page-home .v42-hero-inner,
  body[data-nila-page="index"] .v42-hero-inner{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }
  body.page-home .v42-hero-copy,
  body[data-nila-page="index"] .v42-hero-copy{
    order:1!important;
  }
  body.page-home .v42-hero-visual,
  body[data-nila-page="index"] .v42-hero-visual{
    order:2!important;
    transform:none!important;
    width:100%!important;
  }
  body.page-home .v42-hero-visual img,
  body[data-nila-page="index"] .v42-hero-visual img{
    aspect-ratio:1.58/1!important;
    border-radius:24px!important;
    box-shadow:0 22px 60px rgba(7,27,49,.14)!important;
  }
  body.page-home .v42-trust-row,
  body[data-nila-page="index"] .v42-trust-row{
    width:100%!important;
    border-radius:18px!important;
    justify-content:flex-start!important;
    margin-top:12px!important;
  }

  /* Slow, subtle mobile marquee. It still remains horizontally swipeable. */
  body.page-home .v42-mobile-marquee,
  body[data-nila-page="index"] .v42-mobile-marquee{
    overflow:hidden!important;
    width:100%!important;
  }
  body.page-home .v42-service-grid,
  body[data-nila-page="index"] .v42-service-grid{
    display:flex!important;
    width:max-content!important;
    gap:14px!important;
    animation:v43ServiceMarquee 34s linear infinite!important;
    will-change:transform!important;
  }
  body.page-home .v42-mobile-marquee:active .v42-service-grid,
  body.page-home .v42-mobile-marquee:hover .v42-service-grid,
  body[data-nila-page="index"] .v42-mobile-marquee:active .v42-service-grid,
  body[data-nila-page="index"] .v42-mobile-marquee:hover .v42-service-grid{
    animation-play-state:paused!important;
  }
  body.page-home .v42-service-card,
  body[data-nila-page="index"] .v42-service-card{
    flex:0 0 245px!important;
    width:245px!important;
  }
  body.page-home .v42-service-img,
  body[data-nila-page="index"] .v42-service-img{
    height:145px!important;
  }
  @keyframes v43ServiceMarquee{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }
}

/* Category pages must not marquee */
body.v41-category-page .v19-cat-rail-inner,
body.v39-category-page .v19-cat-rail-inner,
body.v36-category-page .v19-cat-rail-inner{
  animation:none!important;
  transform:none!important;
}


/* v21.43 correction: category pages get desktop marquee only, mobile stays manual swipe */
@media (min-width:781px){
  body.v41-category-page .v19-cat-rail,
  body.v39-category-page .v19-cat-rail,
  body.v36-category-page .v19-cat-rail{
    overflow:hidden!important;
  }
  body.v41-category-page .v19-cat-rail .container,
  body.v39-category-page .v19-cat-rail .container,
  body.v36-category-page .v19-cat-rail .container{
    overflow:hidden!important;
  }
  body.v41-category-page .v19-cat-rail-inner,
  body.v39-category-page .v19-cat-rail-inner,
  body.v36-category-page .v19-cat-rail-inner{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    width:max-content!important;
    min-width:max-content!important;
    overflow:visible!important;
    animation:v43CategoryPageMarquee 30s linear infinite!important;
    transform:none;
    scrollbar-width:none!important;
  }
  body.v41-category-page .v19-cat-rail-inner::-webkit-scrollbar,
  body.v39-category-page .v19-cat-rail-inner::-webkit-scrollbar,
  body.v36-category-page .v19-cat-rail-inner::-webkit-scrollbar{
    display:none!important;
  }
  body.v41-category-page .v19-cat-rail:hover .v19-cat-rail-inner,
  body.v39-category-page .v19-cat-rail:hover .v19-cat-rail-inner,
  body.v36-category-page .v19-cat-rail:hover .v19-cat-rail-inner,
  body.v41-category-page .v19-cat-rail:focus-within .v19-cat-rail-inner,
  body.v39-category-page .v19-cat-rail:focus-within .v19-cat-rail-inner,
  body.v36-category-page .v19-cat-rail:focus-within .v19-cat-rail-inner{
    animation-play-state:paused!important;
  }
  @keyframes v43CategoryPageMarquee{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }
}
@media (max-width:780px){
  body.v41-category-page .v19-cat-rail-inner,
  body.v39-category-page .v19-cat-rail-inner,
  body.v36-category-page .v19-cat-rail-inner{
    animation:none!important;
    transform:none!important;
    overflow-x:auto!important;
    width:auto!important;
    min-width:0!important;
    display:flex!important;
    -webkit-overflow-scrolling:touch!important;
  }
}
