/* V87 — reliable mobile menu close control + centered in-stock experience */
.menu-close-fixed{display:none}

/* Center the complete In-Stock Experience copy block */
.brand-showcase>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.brand-showcase>div>span,
.brand-showcase>div>strong,
.brand-showcase>div>p{
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.brand-showcase>div>strong{max-width:820px!important}
.brand-showcase>div>p{max-width:690px!important}

@media(max-width:900px){
  /* Keep overlay above every page layer */
  .site-header.open{
    z-index:99990!important;
  }
  .site-header.open nav{
    position:fixed!important;
    inset:0!important;
    z-index:99991!important;
    width:100vw!important;
    height:100dvh!important;
    max-height:none!important;
    margin:0!important;
    padding:calc(110px + env(safe-area-inset-top)) 24px calc(32px + env(safe-area-inset-bottom))!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(4,5,7,.985)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:14px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .site-header.open nav>a{
    width:min(720px,100%)!important;
    margin-inline:auto!important;
  }

  /* Fixed top-right close is outside nav so it cannot be clipped */
  body.menu-open .menu-close-fixed{
    display:flex!important;
    position:fixed!important;
    top:calc(18px + env(safe-area-inset-top))!important;
    right:18px!important;
    z-index:100000!important;
    width:62px!important;
    height:62px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.26)!important;
    border-radius:18px!important;
    background:linear-gradient(145deg,#ed1c24,#8f0710)!important;
    color:#fff!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    box-shadow:0 0 34px rgba(237,28,36,.58),0 18px 38px rgba(0,0,0,.55)!important;
    cursor:pointer!important;
    animation:v87-close-pop .35s cubic-bezier(.2,.9,.25,1.15) both,v87-close-pulse 2.1s .4s ease-in-out infinite!important;
  }
  .menu-close-fixed span{
    font:400 2.45rem/1 Inter,sans-serif!important;
    transform:translateY(-1px)!important;
  }
  .menu-close-fixed b{display:none!important}

  /* Bottom close remains visible under Schedule Visit */
  .site-header.open nav .nav-close{
    display:flex!important;
    order:999!important;
    flex:0 0 auto!important;
    width:min(720px,100%)!important;
    min-height:78px!important;
    margin:8px auto 24px!important;
    position:relative!important;
    z-index:99995!important;
    opacity:1!important;
    visibility:visible!important;
  }

  body.menu-open{
    overflow:hidden!important;
    touch-action:none!important;
  }

  .brand-showcase>div{
    padding:34px 20px!important;
  }
  .brand-showcase>div>span{
    margin-bottom:16px!important;
  }
  .brand-showcase>div>strong{
    max-width:12ch!important;
    margin-bottom:24px!important;
  }
  .brand-showcase>div>p{
    max-width:34rem!important;
  }
}

@keyframes v87-close-pop{
  from{opacity:0;transform:scale(.6) rotate(-80deg)}
  to{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes v87-close-pulse{
  0%,100%{box-shadow:0 0 24px rgba(237,28,36,.4),0 18px 38px rgba(0,0,0,.5)}
  50%{box-shadow:0 0 48px rgba(237,28,36,.78),0 20px 44px rgba(0,0,0,.6)}
}

@media(prefers-reduced-motion:reduce){
  .menu-close-fixed{animation:none!important}
}
