/* 1. Solid opaque drawer background to prevent bleed-through */
    #main-menu, 
    .mfp-content, 
    #main-menu .sidebar-menu {
        background-color: #ffffff !important;
        opacity: 1 !important;
    }

    /* 2. Top-level menu items */
    #main-menu .nav-sidebar > li > a {
        color: #0f172a !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        letter-spacing: 0.02em !important;
        padding: 14px 20px !important;
        border-bottom: 1px solid #f1f5f9 !important;
    }

    /* Off-Canvas Mobile Sidebar Accordion Styles */
    .nav-sidebar li.menu-item-has-children {
        position: relative;
    }
    .nav-sidebar li.menu-item-has-children > button.toggle {
        position: absolute;
        right: 0;
        top: 0;
        width: 52px;
        height: 48px;
        line-height: 48px;
        text-align: center;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
        margin: 0;
        z-index: 10;
        color: #475569 !important;
    }
    .nav-sidebar li.menu-item-has-children > button.toggle i {
        display: inline-block;
        transition: transform 0.25s ease;
        font-size: 14px;
        color: #475569 !important;
    }
    .nav-sidebar li.menu-item-has-children.active > button.toggle i {
        transform: rotate(180deg);
        color: #0052CC !important;
    }
    .nav-sidebar ul.children,
    .nav-sidebar ul.sub-menu {
        padding: 6px 0 !important;
        margin: 6px 14px 12px !important;
        list-style: none !important;
        background: #f8fafc !important;
        border-radius: 8px !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.03) !important;
    }
    html body #main-menu .nav-sidebar ul.children li a,
    html body #main-menu .nav-sidebar ul.sub-menu li a {
        padding: 10px 18px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        color: #0f172a !important;
        border-bottom: 1px solid #f1f5f9 !important;
        transition: all 0.15s ease !important;
    }
    html body #main-menu .nav-sidebar ul.children li:last-child a,
    html body #main-menu .nav-sidebar ul.sub-menu li:last-child a {
        border-bottom: none !important;
    }
    html body #main-menu .nav-sidebar ul.children li a:hover,
    html body #main-menu .nav-sidebar ul.sub-menu li a:hover,
    html body #main-menu .nav-sidebar ul.children li a:active,
    html body #main-menu .nav-sidebar ul.sub-menu li a:active {
        color: #0052CC !important;
        background-color: #ecfdf5 !important;
        padding-left: 22px !important;
    }
    html body #main-menu .nav-sidebar a.mobile-subparent-link {
        color: #0A1E3F !important;
        font-weight: 700 !important;
        font-size: 14px !important;
        background: #f1f5f9 !important;
        border-radius: 6px !important;
        margin: 4px 8px !important;
        padding: 10px 14px !important;
    }
    html body #main-menu .nav-sidebar li.active > a.mobile-subparent-link {
        background: #e2e8f0 !important;
        color: #0052CC !important;
    }
    html body #main-menu .nav-sidebar ul.sub-menu ul.sub-menu {
        background: #ffffff !important;
        margin: 4px 8px 8px !important;
        border: 1px solid #e2e8f0 !important;
    }
    html body #main-menu .nav-sidebar ul.sub-menu ul.sub-menu li a {
        padding-left: 20px !important;
        font-size: 13.5px !important;
    }
    html body #main-menu .nav-sidebar .view-all-mobile a {
        background: #0052CC !important;
        color: #ffffff !important;
        font-weight: 700 !important;
        font-size: 13.5px !important;
        text-align: center !important;
        justify-content: center !important;
        border-radius: 6px !important;
        margin: 8px 12px 4px !important;
        padding: 11px 16px !important;
        border: none !important;
        box-shadow: 0 2px 6px rgba(0, 82, 204,0.2) !important;
    }
    html body #main-menu .nav-sidebar .view-all-mobile a:hover,
    html body #main-menu .nav-sidebar .view-all-mobile a:active {
        background: #0A1E3F !important;
        color: #ffffff !important;
    }

    @media (max-width: 849px) {
        /* Prevent container from clipping fixed/absolute dropdowns on mobile */
        #wide-nav, .header-bottom, .header-bottom-nav.mobile-nav {
            overflow: visible !important;
        }
        .header-bottom-nav.mobile-nav > li.has-dropdown {
            position: static !important;
        }

        /* Mobile Header Bottom Dropdown Overlay (Original Clean White & Dark Text) */
        .header-bottom-nav.mobile-nav > li.active-dropdown > .nav-dropdown,
        .header-bottom-nav.mobile-nav > li.active-dropdown > .mega-dropdown-container {
            display: block !important;
            visibility: visible !important;
            opacity: 1 !important;
            pointer-events: auto !important;
            position: fixed !important;
            top: 110px !important;
            left: 12px !important;
            right: 12px !important;
            width: auto !important;
            max-width: calc(100vw - 24px) !important;
            max-height: 72vh !important;
            overflow-y: auto !important;
            -webkit-overflow-scrolling: touch !important;
            z-index: 9999999 !important;
            background-color: #FFFFFF !important;
            border: 1px solid #E5E5E5 !important;
            border-top: 3px solid #0A1E3F !important;
            border-radius: 8px !important;
            box-shadow: 0 12px 35px rgba(0,0,0,0.22) !important;
            padding: 16px !important;
            box-sizing: border-box !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .nav-dropdown-grid {
            display: grid !important;
            grid-template-columns: repeat(2, 1fr) !important;
            gap: 8px 14px !important;
            list-style: none !important;
            padding: 0 !important;
            margin: 0 !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .nav-dropdown-grid a,
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-col-list a {
            color: #222222 !important;
            font-size: 13.5px !important;
            font-weight: 600 !important;
            display: block !important;
            padding: 6px 4px !important;
            border-bottom: 1px solid #F3F4F6 !important;
            background: transparent !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .nav-dropdown-grid a:hover,
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-col-list a:hover {
            color: #0A1E3F !important;
            font-weight: 700 !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-col-title {
            color: #0A1E3F !important;
            font-weight: 800 !important;
            font-size: 12.5px !important;
            border-bottom: 1.5px solid #0A1E3F !important;
            margin-top: 12px !important;
            margin-bottom: 6px !important;
            padding-bottom: 4px !important;
            text-transform: uppercase !important;
            letter-spacing: 0.5px !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-col:first-child .mega-col-title {
            margin-top: 0 !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-col-list {
            display: grid !important;
            grid-template-columns: repeat(2, 1fr) !important;
            gap: 4px 10px !important;
            list-style: none !important;
            padding: 0 !important;
            margin: 0 0 6px 0 !important;
        }
        .header-bottom-nav.mobile-nav > li.active-dropdown .mega-all-products-btn,
        .header-bottom-nav.mobile-nav > li.active-dropdown .view-all-link {
            display: block !important;
            text-align: center !important;
            background-color: #0A1E3F !important;
            color: #FFFFFF !important;
            font-weight: 800 !important;
            font-size: 13px !important;
            padding: 10px 14px !important;
            border-radius: 6px !important;
            margin-top: 14px !important;
            text-transform: uppercase !important;
            letter-spacing: 0.5px !important;
        }
    }

    /* Complete Removal of Sale Badges & Labels Across All Pages */
    .badge-container,
    .badge-container .badge-inner,
    .badge-container .badge-circle,
    .badge-container .callout,
    .onsale,
    .badge-inner.on-sale,
    .badge-inner.sale-label,
    .out-of-stock-label.sale-label,
    .product-labels .label-sale,
    .box-badge {
        display: none !important;
    }
