/* Prestige Secure v318 — definitive mobile drawer stacking and compact mobile hero. */
@media (max-width:980px){
  body.secure-nav-open-v318{
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:auto!important;
  }

  body > .secure-nav-overlay.v318-secure-nav-overlay{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:2147483600!important;
    width:100vw!important;
    width:100dvw!important;
    height:100vh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:rgba(2,15,35,.62)!important;
    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease,visibility .2s ease!important;
  }
  body > .secure-nav-overlay.v318-secure-nav-overlay.active{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  body > .secure-nav-panel.v318-secure-nav-portal{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    z-index:2147483640!important;
    isolation:isolate!important;
    width:min(88vw,370px)!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:100vh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0 0 max(20px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    background:#fff!important;
    color:#10243e!important;
    border:0!important;
    box-shadow:-26px 0 70px rgba(2,15,35,.30)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(105%,0,0)!important;
    transition:transform .26s cubic-bezier(.2,.8,.2,1),opacity .18s ease,visibility .26s ease!important;
  }
  body > .secure-nav-panel.v318-secure-nav-portal.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
  }
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-mobile-head,
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-close,
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-link,
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-account,
  body > .secure-nav-panel.v318-secure-nav-portal a,
  body > .secure-nav-panel.v318-secure-nav-portal button{
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-links{
    display:grid!important;
    align-items:stretch!important;
    gap:6px!important;
    padding:15px!important;
  }
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-link{
    display:flex!important;
    width:100%!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:13px 14px!important;
    border:1px solid transparent!important;
    border-radius:13px!important;
    color:#18334f!important;
    background:transparent!important;
    box-sizing:border-box!important;
  }
  body > .secure-nav-panel.v318-secure-nav-portal .secure-nav-account{
    display:grid!important;
    gap:9px!important;
    margin:8px 15px 0!important;
    padding:15px 0 0!important;
    border-left:0!important;
    border-top:1px solid #e5edf6!important;
  }

  /* Neutralize the historical BODY touch lock that could prevent drawer
     scrolling/tapping on mobile browsers. */
  body.secure-nav-open,
  body.secure-nav-open-v318{
    touch-action:auto!important;
  }
}

@media (max-width:700px){
  /* Prestige Secure landing hero: normal mobile height instead of a near-screen
     full hero. Content remains complete and readable without excessive empty space. */
  body .hero{
    min-height:0!important;
    height:auto!important;
    padding:34px 0 38px!important;
  }
  body .hero .wrap{
    padding-top:0!important;
    padding-bottom:0!important;
  }
  body .hero h1{
    margin:10px 0 12px!important;
    font-size:clamp(2rem,9vw,2.7rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  body .hero p{
    margin:0 0 20px!important;
    max-width:100%!important;
    font-size:1rem!important;
    line-height:1.55!important;
  }
  body .hero .actions{
    gap:9px!important;
    margin-top:0!important;
  }
  body .hero .btnv{
    min-height:44px!important;
    padding:11px 16px!important;
  }
}

@media (max-width:430px){
  body > .secure-nav-panel.v318-secure-nav-portal{
    width:min(92vw,360px)!important;
  }
  body .hero{
    padding:28px 0 32px!important;
  }
  body .hero h1{
    font-size:clamp(1.85rem,9.5vw,2.35rem)!important;
  }
  body .hero .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body .hero .actions .btnv{
    width:100%!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
}

@media (prefers-reduced-motion:reduce){
  body > .secure-nav-overlay.v318-secure-nav-overlay,
  body > .secure-nav-panel.v318-secure-nav-portal{
    transition:none!important;
  }
}
