.storefront-main-menu > li, .storefront-footer-menu > li { list-style: none; }
.storefront-main-menu .menu-link, .storefront-footer-menu .menu-link { text-decoration: none; }
.menu-toggle { border: 0; background: transparent; color: inherit; cursor: pointer; min-height: 2.25rem; min-width: 2.25rem; }
.menu-toggle:focus-visible, .menu-link:focus-visible { outline: 3px solid var(--primary-color, #6750a4); outline-offset: 3px; }
.storefront-main-menu .menu-panel { position: absolute; z-index: 60; top: calc(100% + 12px); left: 0; min-width: 13rem; padding: .65rem; background: #fff; border: 1px solid #e2e8f0; border-radius: .75rem; box-shadow: 0 18px 45px rgba(15,23,42,.14); }
.storefront-main-menu .menu-panel:not([hidden]) { display: grid; gap: .15rem; }
.storefront-main-menu .menu-panel-mega { min-width: min(34rem, calc(100vw - 2rem)); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.storefront-main-menu .menu-panel .menu-link { display: block; padding: .6rem .75rem; color: #475569; font-size: .875rem; border-radius: .65rem; }
.storefront-main-menu .menu-panel .menu-link:hover, .storefront-main-menu .menu-panel .menu-link:focus-visible { background: #f8fafc; color: #0f172a; }
.storefront-main-menu .menu-panel .menu-panel { left: calc(100% + .5rem); top: 0; }
.storefront-mobile-menu .menu-link { display: block; padding: .7rem 1rem; color: inherit; text-decoration: none; }
.storefront-mobile-menu .menu-panel, .storefront-footer-menu .menu-panel { position: static; padding-left: 1rem; }
.menu-panel[hidden] { display: none !important; }
@media (max-width: 767px) { .storefront-main-menu .menu-panel-mega { grid-template-columns: 1fr; min-width: 0; } }
@media (prefers-reduced-motion: reduce) { .storefront-main-menu *, .storefront-mobile-menu * { scroll-behavior: auto !important; transition-duration: .01ms !important; } }
