/* Shared navigation: explicit disclosure state owns visibility. */
body.storefront-v2 #primary-nav .nav-node{position:relative}
body.storefront-v2 #primary-nav .nav-node>.nav-submenu{display:none;position:absolute;top:100%;left:0;right:auto;width:280px;max-width:calc(100vw - 32px);padding:12px;margin:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 12px 28px #0f172a14;opacity:1;visibility:visible;transform:none;max-height:calc(100dvh - 150px);overflow:auto;z-index:150}
body.storefront-v2 #primary-nav .nav-node>button[aria-expanded=true]+.nav-submenu{display:grid;gap:4px}
body.storefront-v2 #primary-nav .nav-subnode{display:block;min-width:0;position:static}
body.storefront-v2 #primary-nav .nav-submenu a{display:block;padding:10px 12px;min-height:40px;color:#334155;font:13px/1.6 Inter,sans-serif;border:0;border-radius:4px;white-space:normal;text-transform:none;letter-spacing:0}
body.storefront-v2 #primary-nav .nav-submenu a:hover,body.storefront-v2 #primary-nav .nav-submenu a:focus-visible{background:#eff6ff;color:#0052cc}
body.storefront-v2 #primary-nav .nav-submenu--nested{display:block;position:static;inset:auto;width:auto;max-width:none;padding:0 0 0 12px;margin:4px 0 8px;border:0;border-left:1px solid #e2e8f0;border-radius:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none}
body.storefront-v2 #primary-nav .nav-node>button[aria-expanded=true]{color:#0052cc;background:#eff6ff;border-radius:4px}
body.storefront-v2 #primary-nav .nav-node>button[aria-expanded=true] i{transform:rotate(180deg)}
body.storefront-v2 #primary-nav :focus-visible{outline:2px solid #0052cc;outline-offset:2px}
@media(min-width:1101px){
body.storefront-v2 #primary-nav .nav-node--mega>.nav-submenu{position:fixed;top:var(--navigation-bottom,100px);left:50%;right:auto;transform:translateX(-50%);width:min(1000px,calc(100vw - 48px));padding:24px;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.storefront-v2 #primary-nav .nav-node--mega>.nav-submenu>.nav-subnode>a{font-family:Geist,Inter,sans-serif;font-weight:600;color:#0f172a;background:#f8fafc}
}
@media(max-width:1100px){
body.storefront-v2 #primary-nav .nav-node>.nav-submenu{position:static;grid-column:1/-1;width:100%;max-width:none;max-height:none;box-shadow:none;border:0;border-radius:0;padding:4px 0 16px;transform:none}
body.storefront-v2 #primary-nav .nav-node>button{min-width:44px;min-height:44px}
}
