/* Shande production mobile + cover safeguards — 2026-09-22 QA2 */
body.menu-open{overflow:hidden!important}

@media(max-width:1080px){
  .nav.is-open{
    display:flex!important;
    top:var(--menu-top,108px)!important;
    bottom:12px!important;
    max-height:calc(100vh - var(--menu-top,108px) - 12px)!important;
    max-height:calc(100dvh - var(--menu-top,108px) - 12px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y!important;
    scrollbar-gutter:stable;
    padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
  }
}

/* Keep mobile navigation clear of the fixed appointment action bar. */
@media(max-width:720px){
  .nav.is-open{
    bottom:calc(74px + env(safe-area-inset-bottom))!important;
    max-height:calc(100vh - var(--menu-top,96px) - 74px - env(safe-area-inset-bottom))!important;
    max-height:calc(100dvh - var(--menu-top,96px) - 74px - env(safe-area-inset-bottom))!important;
  }
  .mobile-actions{
    height:calc(62px + env(safe-area-inset-bottom))!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
  }
}

/* Health Library covers use one consistent, full-width photographic frame. */
.article-hero__grid figure,.hub-hero figure,.topic-card--visual figure{
  padding:0!important;
  overflow:hidden!important;
  aspect-ratio:5/3!important;
}
.article-hero__grid figure img,.hub-hero figure img,.topic-card--visual figure img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
@media(max-width:720px){
  .article-hero__grid figure,.hub-hero figure{
    width:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:5/3!important;
  }
  .article-hero__grid figure img,.hub-hero figure img{
    height:100%!important;
    max-height:none!important;
  }
}
