/* Shared tablet chrome; independent of individual page layouts. */
@media (min-width:768px) and (max-width:1279px) {
 body .custom-menu-overlay {
  height:100dvh!important;min-height:0!important;box-sizing:border-box;
  padding:96px 32px 24px!important;display:flex!important;flex-direction:column!important;
  justify-content:center!important;gap:24px;
 }
 body .custom-menu-overlay .custom-menu-content {
  flex:0 1 auto;min-height:0;width:100%;max-height:calc(100dvh - 200px)!important;
  overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
 }
 body .custom-menu-overlay .custom-menu-nav a {font-size:clamp(38px,5.4vw,56px)!important;line-height:1.15!important;padding:8px 0!important;}
 body .custom-menu-overlay .custom-menu-footer {position:static!important;flex:0 0 auto;gap:10px!important;margin:0!important;width:100%!important;}
 body .custom-menu-overlay .custom-menu-footer a {font-size:13px!important;line-height:1.5!important;color:rgba(255,255,255,.7)!important;}
 body #contact-card {position:fixed!important;top:88px!important;right:72px!important;left:auto!important;width:360px!important;max-width:calc(100vw - 104px)!important;max-height:calc(100dvh - 112px)!important;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;}
 body:has(#contact-card.active) .custom-menu-overlay.is-open .custom-menu-content {visibility:hidden;pointer-events:none;}
}

/* Large desktop overlays retain a compact, readable scale. */
@media(min-width:1921px) {
 body .custom-menu-overlay .custom-menu-content {width:min(100%,960px);margin-inline:auto;}
 body .custom-menu-overlay .custom-menu-nav a {font-size:64px;}
 body .custom-menu-overlay .custom-menu-footer a {color:#bdbdbd!important;font-size:14px;line-height:1.5;}
 body #contact-card {width:380px;max-width:calc(100vw - 112px);max-height:calc(100dvh - 120px);padding:28px;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;}
 body #contact-card p a {font-size:16px;line-height:1.6;overflow-wrap:anywhere;}
 body #contact-card .contact-social-links {gap:8px;}
 body #contact-card .contact-social-links a {display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;}
 body #contact-card .contact-social-links svg {width:20px;height:20px;}
}
