
/* Z COACH V90 — Unified VI/EN responsive header
   - Removes legacy VI quick dock.
   - Keeps primary hamburger accessible while scrolling.
   - Uses identical logo geometry and shared logo scale for VI + EN.
   - Does not alter route/form/news/roadmap logic. */

.zc-mobile-dock{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

@media(max-width:980px){
  body{padding-bottom:0!important}
}

@media(min-width:901px){
  #nav,nav#nav{
    position:sticky!important;
    top:0!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    height:78px!important;
    min-height:78px!important;
    padding:0 clamp(1rem,3vw,2.5rem)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    background:rgba(255,255,255,.98)!important;
    border-bottom:1px solid rgba(13,27,94,.08)!important;
    box-sizing:border-box!important;
    z-index:9000!important;
  }

  #nav .nav-logo,nav#nav .nav-logo{
    width:180px!important;
    min-width:180px!important;
    height:46px!important;
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
  }

  #nav .nav-logo .brand-logo-img,
  nav#nav .nav-logo .brand-logo-img,
  body.zc-en-preview #nav .nav-logo .brand-logo-img.zc-en-brand-logo-img{
    display:block!important;
    height:46px!important;
    width:auto!important;
    max-width:180px!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
    padding:0!important;
    transform:scale(var(--logo-scale,1))!important;
    transform-origin:left center!important;
  }

  #nav .nav-links,nav#nav .nav-links{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(.62rem,.9vw,1rem)!important;
    height:44px!important;
    min-height:44px!important;
    overflow:visible!important;
  }

  #nav .nav-ham,nav#nav .nav-ham{display:none!important}
}

@media(max-width:900px){
  html,body{overflow-x:hidden!important}

  #nav,nav#nav,
  #nav.scrolled,nav#nav.scrolled{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    bottom:auto!important;
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
    padding:0 14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    background:rgba(255,255,255,.985)!important;
    border-bottom:1px solid rgba(13,27,94,.08)!important;
    box-shadow:0 7px 24px rgba(13,27,94,.055)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
    z-index:9000!important;
    box-sizing:border-box!important;
    transform:none!important;
    translate:none!important;
    opacity:1!important;
    visibility:visible!important;
  }

  #nav .nav-logo,nav#nav .nav-logo,
  body.zc-en-preview #nav .nav-logo.zc-static-logo{
    width:132px!important;
    min-width:132px!important;
    height:40px!important;
    min-height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
  }

  #nav .nav-logo .brand-logo-img,
  nav#nav .nav-logo .brand-logo-img,
  body.zc-en-preview #nav .nav-logo.zc-static-logo .brand-logo-img.zc-en-brand-logo-img{
    display:block!important;
    height:36px!important;
    width:auto!important;
    max-width:132px!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
    padding:0!important;
    transform:scale(var(--logo-scale,1))!important;
    transform-origin:left center!important;
  }

  #nav .nav-ham,nav#nav .nav-ham{
    display:flex!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(13,27,94,.10)!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 7px 20px rgba(13,27,94,.06)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  #nav .nav-ham span,nav#nav .nav-ham span{
    display:block!important;
    width:20px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#0D1B5E!important;
  }

  /* Menu opens only from the hamburger; never as a horizontal quick bar. */
  #nav .nav-links,nav#nav .nav-links{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:10px!important;
    right:10px!important;
    bottom:auto!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 92px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:3px!important;
    margin:0!important;
    padding:11px!important;
    border:1px solid rgba(13,27,94,.10)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.995)!important;
    box-shadow:0 22px 60px rgba(13,27,94,.18)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-6px)!important;
    transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
  }

  #nav .nav-links.open,nav#nav .nav-links.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  #nav .nav-links>a,nav#nav .nav-links>a{
    display:flex!important;
    width:100%!important;
    min-height:44px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:10px 13px!important;
    margin:0!important;
    border-radius:13px!important;
    background:transparent!important;
    color:#0D1B5E!important;
    white-space:normal!important;
  }

  #nav .nav-links .zc-lang-switch,nav#nav .nav-links .zc-lang-switch{
    order:90!important;
    justify-content:center!important;
    border:1px solid rgba(13,27,94,.10)!important;
    background:#F8FAFC!important;
    font-weight:900!important;
  }

  #nav .nav-links .nav-cta,nav#nav .nav-links .nav-cta{
    justify-content:center!important;
    min-height:48px!important;
    margin-top:5px!important;
    background:#00C896!important;
    color:#06163D!important;
  }

  #nav .nav-links .nav-cta.nav-cta-alt,nav#nav .nav-links .nav-cta.nav-cta-alt{
    background:#0D1B5E!important;
    color:#fff!important;
    margin-top:2px!important;
  }
}


/* V91 iOS/mobile persistence hardening — no layout logic changes */
@media(max-width:900px){
  #nav,nav#nav,#nav.scrolled,nav#nav.scrolled{
    -webkit-transform:translateZ(0)!important;
    backface-visibility:hidden!important;
    will-change:auto!important;
  }
  #nav .nav-ham,nav#nav .nav-ham{
    position:relative!important;
    z-index:2!important;
  }
  #nav .nav-links,nav#nav .nav-links{
    z-index:1!important;
  }
}
