/* Site nav dropdowns — Conditions & Procedures menus
   (see docs/superpowers/specs/2026-08-02-nav-dropdowns-design.md) */
.nav-drop{position:relative}
.nav-drop-btn{display:inline-flex;align-items:center;gap:.4rem;font:inherit;cursor:pointer;background:none;border:none}
.nav-drop-chev{font-size:.65rem;transition:transform .25s ease}
.nav-drop:hover .nav-drop-btn>.nav-drop-chev,.nav-drop:focus-within .nav-drop-btn>.nav-drop-chev{transform:rotate(180deg)}
.nav-drop-panel{position:absolute;left:50%;top:100%;padding-top:.75rem;min-width:17rem;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(6px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:60}
.nav-drop:hover .nav-drop-panel,.nav-drop:focus-within .nav-drop-panel{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nav-drop-card{background:#fff;border:1px solid #f3f4f6;border-radius:.75rem;box-shadow:0 20px 40px -12px rgba(0,0,0,.18);padding:.5rem;display:grid;gap:2px}
.nav-drop-card a{display:block;border-radius:.5rem;padding:.6rem 1rem;font-size:.875rem;font-weight:500;color:#374151;text-decoration:none;white-space:nowrap}
.nav-drop-card a:hover,.nav-drop-card a:focus-visible{background:#eff6ff;color:#0a4d8c}
.nav-drop-card a.nav-drop-all{color:#0a4d8c;font-weight:600;border-bottom:1px solid #f3f4f6;border-radius:.5rem .5rem 0 0;margin-bottom:2px}
.nav-sub{display:none;padding-left:1rem;padding-bottom:.5rem}
.nav-sub.open{display:block}
.nav-sub a{display:block;padding:.65rem 0;font-size:.9rem;color:#4b5563}
.nav-sub a.nav-drop-all{color:#0a4d8c;font-weight:600}
.nav-sub-btn{font:inherit;cursor:pointer;background:none;border-width:0 0 1px 0}
.nav-sub-btn .nav-drop-chev{float:right;margin-top:.35rem;font-size:.7rem}
.nav-sub-btn[aria-expanded="true"] .nav-drop-chev{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.nav-drop-panel,.nav-drop-chev{transition:none}}
#siteNavMobile{overflow-y:auto;max-height:calc(100vh - 5rem);max-height:calc(100dvh - 5rem)}

/* Mobile-stability fix (2026-08-03): the header's right-side group (Call Now
   button + hamburger toggle) is flex-shrink:0 and its gap-x-3 makes it ~4-5px
   too wide for the viewport at 390px, pushing it past the edge. Tightening the
   gap below the lg breakpoint (where the desktop nav links are hidden anyway)
   removes the overflow without touching desktop rendering. */
@media(max-width:1023px){nav .flex.items-center.gap-x-3.shrink-0{gap:.25rem}}

html,body{overflow-x:hidden;overflow-x:clip}
