/* ================================
   Life Pillars Home Mobile Overrides
   Scope: homepage mobile only <= 820px
   Desktop CSS remains untouched.
================================ */

@media (max-width:820px){
  body.home #home.hero{
    min-height:auto !important;
    height:auto !important;
  }

  body.home #home .hero-inner{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:18px !important;
    min-height:auto !important;
    padding-top:calc(var(--lp-header-clearance, 148px) + 20px) !important;
    padding-bottom:42px !important;
  }

  body.home #home .hero-video-logo-stage,
  body.home #home .logo-stage{
    order:1 !important;
    display:flex !important;
    width:min(300px, 82vw) !important;
    height:auto !important;
    min-height:210px !important;
    margin:0 auto -2px !important;
    transform:none !important;
  }

  body.home #home .hero-copy{
    order:2 !important;
    width:100% !important;
    max-width:560px !important;
    margin:0 auto !important;
    text-align:left !important;
  }

  body.home #home .hero-copy h1,
  body.home #home .hero-copy p{
    max-width:100% !important;
  }

  body.home #home .hero-actions{
    width:100% !important;
  }

  body.home #home .hero-actions .btn{
    width:100% !important;
    justify-content:space-between !important;
  }
}

@media (max-width:520px){
  body.home #home .hero-inner{
    padding-top:calc(var(--lp-header-clearance, 132px) + 18px) !important;
    gap:14px !important;
  }

  body.home #home .hero-video-logo-stage,
  body.home #home .logo-stage{
    width:min(250px, 76vw) !important;
    min-height:176px !important;
  }
}

@media (max-width:820px){
  body.home .partner-products-logo-viewport{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    touch-action:pan-x pan-y !important;
  }

  body.home .partner-products-logo-viewport::-webkit-scrollbar{
    display:none !important;
  }

  body.home .partner-products-logo-track{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    transform:translate3d(0,0,0) !important;
    transition:none !important;
    will-change:auto !important;
  }

  body.home .partner-product-logo-button{
    flex:0 0 calc(100vw - 96px) !important;
    scroll-snap-align:center !important;
    scroll-snap-stop:always !important;
  }

  body.home .partner-products-logo-slider{
    position:relative !important;
  }

  body.home .partner-products-mobile-actions.partner-products-controls{
    display:flex !important;
    position:absolute !important;
    left:6px !important;
    right:6px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:9 !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:0 !important;
    margin:0 !important;
    pointer-events:none !important;
  }

  body.home .partner-products-mobile-actions.partner-products-controls .partner-product-arrow{
    pointer-events:auto !important;
    width:46px !important;
    height:46px !important;
    background:rgba(4,17,31,.76) !important;
    border-color:rgba(240,200,120,.62) !important;
    backdrop-filter:blur(10px) !important;
    box-shadow:0 16px 38px rgba(0,0,0,.28) !important;
  }

  body.home .partner-product-arrow .partner-arrow-desktop{
    display:none !important;
  }

  body.home .partner-product-arrow .partner-arrow-mobile{
    display:inline !important;
  }

  body.home .home-partner-progress{
    display:none !important;
  }
}

@media (max-width:520px){
  body.home .partner-product-logo-button{
    flex-basis:calc(100vw - 72px) !important;
  }
}

@media (max-width:820px){
  body.home .home-partners-simple-viewport{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    touch-action:pan-x pan-y !important;
  }

  body.home .home-partners-simple-viewport::-webkit-scrollbar{
    display:none !important;
  }

  body.home .home-partners-simple-track{
    transform:translate3d(0,0,0) !important;
    transition:none !important;
    will-change:auto !important;
  }

  body.home .home-partner-simple-card{
    scroll-snap-align:center !important;
    scroll-snap-stop:always !important;
  }
}

@media (max-width:520px){
  body.home .home-partners-simple-slider{
    padding-inline:0 !important;
  }

  body.home .home-partner-simple-card{
    flex:0 0 calc(100vw - 80px) !important;
  }
}

@media (max-width:820px){
  body.home #coverage .coverage-shell{
    display:flex !important;
    flex-direction:column !important;
  }

  body.home #coverage .coverage-map-panel{
    order:1 !important;
    width:100% !important;
  }

  body.home #coverage .coverage-intro{
    order:2 !important;
    width:100% !important;
  }
}

/* Partners pagination final fix on mobile: active dot color only */
@media (max-width:820px){
  body.home .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot{
    width:8px !important;
    height:8px !important;
    background:rgba(255,255,255,.24) !important;
    box-shadow:none !important;
    opacity:1 !important;
  }
  body.home .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
  body.home .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"]{
    width:8px !important;
    height:8px !important;
    background:linear-gradient(90deg,var(--gold),var(--turquoise)) !important;
    box-shadow:none !important;
  }
}


/* FINAL MOBILE OVERRIDE: Partners active pagination dot clear color only */
@media (max-width:820px){
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    max-width:8px !important;
    min-height:8px !important;
    max-height:8px !important;
    border-radius:50% !important;
    background:#46515b !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
  }
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"],
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot.is-active,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot[aria-current="true"]{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    max-width:8px !important;
    min-height:8px !important;
    max-height:8px !important;
    border-radius:50% !important;
    background:#2be2da !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
  }
}


/* iOS-only homepage fix: remove stutter sources and hide the WebM hero logo only on iPhone/iPad. */
@media (max-width:820px){
  html.is-ios body.home #home .hero-video-logo-stage,
  html.is-ios body.home #home .logo-stage,
  body.is-ios.home #home .hero-video-logo-stage,
  body.is-ios.home #home .logo-stage{
    display:none !important;
    width:0 !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  html.is-ios body.home #home .hero-copy,
  body.is-ios.home #home .hero-copy{
    order:1 !important;
  }

  html.is-ios body.home #home .hero-inner,
  body.is-ios.home #home .hero-inner{
    gap:0 !important;
    padding-top:calc(var(--lp-header-clearance, 132px) + 28px) !important;
  }

  html.is-ios body.home .partner-products-logo-viewport,
  html.is-ios body.home .home-partners-simple-viewport,
  body.is-ios.home .partner-products-logo-viewport,
  body.is-ios.home .home-partners-simple-viewport{
    scroll-snap-type:none !important;
  }

  html.is-ios body.home .partner-product-logo-button,
  html.is-ios body.home .home-partner-simple-card,
  body.is-ios.home .partner-product-logo-button,
  body.is-ios.home .home-partner-simple-card{
    scroll-snap-align:none !important;
    scroll-snap-stop:normal !important;
  }

  html.is-ios body.home .partner-products-mobile-actions.partner-products-controls .partner-product-arrow,
  body.is-ios.home .partner-products-mobile-actions.partner-products-controls .partner-product-arrow{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}
