
/* NILA v21.62 Mobile Marquee Swipe Fix */
:root{
  --v62-ink:#071b31;
  --v62-green:#075f3c;
  --v62-teal:#007f78;
  --v62-blue:#176fc2;
  --v62-muted:#52677f;
  --v62-line:rgba(7,27,49,.12);
}

.v62-mobile-cta,
.v62-mobile-strip{
  display:none;
}

@media(max-width:780px){
  body.page-home,
  body[data-nila-page="index"]{
    overflow-x:hidden!important;
  }

  body.page-home .v42-hero-inner,
  body[data-nila-page="index"] .v42-hero-inner{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
  }

  body.page-home .v42-hero-copy,
  body[data-nila-page="index"] .v42-hero-copy{
    order:1!important;
    display:flex!important;
    flex-direction:column!important;
  }

  body.page-home .v42-search-shell,
  body[data-nila-page="index"] .v42-search-shell,
  body.page-home .v50-mobile-cta,
  body[data-nila-page="index"] .v50-mobile-cta,
  body.page-home .v61-mobile-cta,
  body[data-nila-page="index"] .v61-mobile-cta{
    display:none!important;
  }

  .v62-mobile-cta{
    display:block!important;
    margin-top:16px!important;
    padding:12px!important;
    border-radius:24px!important;
    background:
      radial-gradient(circle at 0% 0%, rgba(0,127,120,.10), transparent 30%),
      radial-gradient(circle at 100% 100%, rgba(23,111,194,.10), transparent 34%),
      #fff!important;
    border:1px solid rgba(7,27,49,.10)!important;
    box-shadow:0 20px 55px rgba(7,27,49,.12)!important;
  }

  .v62-field{
    display:block!important;
    background:#f6fbff!important;
    border:1px solid rgba(23,111,194,.15)!important;
    border-radius:18px!important;
    padding:12px!important;
    margin-bottom:11px!important;
    min-height:76px!important;
    box-sizing:border-box!important;
  }

  .v62-field label{
    display:block!important;
    color:var(--v62-muted)!important;
    font-size:11px!important;
    line-height:1.15!important;
    font-weight:950!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
    margin:0 0 8px!important;
  }

  .v62-field select,
  .v62-field input{
    display:block!important;
    width:100%!important;
    min-height:42px!important;
    height:42px!important;
    line-height:42px!important;
    border:0!important;
    padding:0!important;
    background:transparent!important;
    color:var(--v62-ink)!important;
    font-size:16px!important;
    font-weight:850!important;
    outline:none!important;
    box-shadow:none!important;
    box-sizing:border-box!important;
  }

  .v62-field select{
    appearance:auto!important;
    -webkit-appearance:menulist!important;
  }

  .v62-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
  }

  .v62-use-location,
  .v62-search{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:58px!important;
    height:58px!important;
    border-radius:17px!important;
    font-size:17px!important;
    font-weight:950!important;
    font-family:inherit!important;
    cursor:pointer!important;
    box-sizing:border-box!important;
  }

  .v62-use-location{
    color:#fff!important;
    background:linear-gradient(135deg,#007f78 0%,#075f3c 68%,#071b31 100%)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:0 16px 34px rgba(0,127,120,.22)!important;
  }

  .v62-use-location .pin{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:30px!important;
    height:30px!important;
    margin-right:10px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25)!important;
  }

  .v62-search{
    color:#fff!important;
    background:linear-gradient(135deg,#071b31 0%,#063c3a 58%,#075f3c 100%)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 16px 34px rgba(7,27,49,.22)!important;
  }

  body.page-home .v42-hero-visual,
  body[data-nila-page="index"] .v42-hero-visual{
    order:2!important;
    width:100%!important;
    transform:none!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.page-home .v42-hero-visual img,
  body[data-nila-page="index"] .v42-hero-visual img{
    width:100%!important;
    aspect-ratio:1.62/1!important;
    object-fit:cover!important;
    border-radius:22px!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{
    order:3!important;
    width:100%!important;
    margin-top:0!important;
    border-radius:18px!important;
    background:#fff!important;
    border:1px solid rgba(7,27,49,.08)!important;
    padding:12px!important;
    box-shadow:0 14px 40px rgba(7,27,49,.06)!important;
  }

  /* Kill every old mobile category/list/marquee renderer on homepage */
  body.page-home .v42-service-grid,
  body[data-nila-page="index"] .v42-service-grid,
  body.page-home .v42-mobile-marquee,
  body[data-nila-page="index"] .v42-mobile-marquee,
  body.page-home .v55-mobile-marquee,
  body[data-nila-page="index"] .v55-mobile-marquee,
  body.page-home .v58-home-marquee,
  body[data-nila-page="index"] .v58-home-marquee,
  body.page-home .v60-home-category-marquee,
  body[data-nila-page="index"] .v60-home-category-marquee,
  body.page-home .v61-mobile-marquee,
  body[data-nila-page="index"] .v61-mobile-marquee{
    display:none!important;
  }

  /* One swipeable auto-scroll strip */
  .v62-mobile-strip{
    display:block!important;
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    touch-action:pan-x!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
    margin-top:12px!important;
    padding:0 0 8px!important;
  }

  .v62-mobile-strip::-webkit-scrollbar{
    display:none!important;
  }

  .v62-track{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    gap:14px!important;
    width:max-content!important;
    min-width:max-content!important;
    transform:none!important;
    will-change:scroll-position!important;
  }

  .v62-card{
    flex:0 0 264px!important;
    width:264px!important;
    min-height:294px!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:22px!important;
    background:#fff!important;
    border:1px solid rgba(7,27,49,.10)!important;
    box-shadow:0 18px 46px rgba(7,27,49,.11)!important;
    color:var(--v62-ink)!important;
    text-decoration:none!important;
    scroll-snap-align:start!important;
  }

  .v62-card-img{
    height:150px!important;
    min-height:150px!important;
    overflow:hidden!important;
    background:#f7fbff!important;
  }

  .v62-card-img img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
  }

  .v62-card-body{
    flex:1!important;
    display:flex!important;
    flex-direction:column!important;
    padding:15px 16px 16px!important;
  }

  .v62-card-body h3{
    font-family:Fraunces,Georgia,serif!important;
    font-size:28px!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    margin:0 0 8px!important;
    white-space:normal!important;
    overflow:visible!important;
  }

  .v62-card-body p{
    color:var(--v62-muted)!important;
    font-size:13px!important;
    line-height:1.35!important;
    margin:0 0 12px!important;
    font-weight:750!important;
    min-height:38px!important;
    white-space:normal!important;
    overflow:visible!important;
  }

  .v62-card-body small{
    margin-top:auto!important;
    color:var(--v62-blue)!important;
    font-weight:950!important;
  }

  /* Mobile category/provider pages are manual swipe only */
  body.v52-category-page .v19-cat-rail-inner,
  body.v48-category-page .v19-cat-rail-inner,
  body.v46-category-page .v19-cat-rail-inner,
  body.v41-category-page .v19-cat-rail-inner,
  body.page-provider .v47-provider-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;
    will-change:auto!important;
  }
}
