/* ============================================
   REMOVE EMPTY CONTAINER UNDER SEARCH BAR
   Remove any empty containers that appear below search bar
   ============================================ */

@media (max-width: 768px) {
    /* CRITICAL: Remove nav-menu container on ALL pages (homepage and product pages) - Force complete removal */
    /* Use highest specificity to override all conflicting styles */
    html body .nav-menu,
    html body nav.nav-menu,
    body .nav-menu,
    body nav.nav-menu,
    .nav-menu,
    nav.nav-menu,
    body.homepage .nav-menu,
    body.homepage nav.nav-menu,
    body:not(.homepage) .nav-menu,
    body:not(.homepage) nav.nav-menu,
    html body:not(.homepage) .nav-menu,
    html body:not(.homepage) nav.nav-menu,
    .nav-menu.homepage-hidden,
    .nav-menu:empty,
    .nav-menu .nav-container,
    .nav-menu .nav-container:empty,
    html body .nav-menu .nav-container,
    body .nav-menu .nav-container {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
        opacity: 0 !important;
        pointer-events: none !important;
        border: none !important;
        line-height: 0 !important;
    }
    
    /* Remove empty header-top-row-hidden container */
    .header-top-row-hidden:empty,
    .header-top-row.header-top-row-hidden:empty {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }
    
    /* Ensure search container has no margin-bottom creating empty space */
    .search-container {
        margin-bottom: 0 !important;
        padding-bottom: 8px !important;
    }
    
    /* Remove any empty divs or containers immediately after search-container */
    .search-container + div:empty,
    .search-container ~ div:empty {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Remove empty space from header-container after search */
    .header-container .search-container ~ *:empty {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Additional fix: Ensure no spacing after header - ALL pages - Highest specificity */
    html body header + nav.nav-menu,
    html body header ~ nav.nav-menu,
    html body header + nav,
    html body header ~ nav,
    body header + nav.nav-menu,
    body header ~ nav.nav-menu,
    body header + nav,
    body header ~ nav,
    header + nav.nav-menu,
    header ~ nav.nav-menu,
    header + nav,
    header ~ nav,
    .header-container ~ nav.nav-menu,
    .header-container ~ nav,
    header + .nav-menu,
    header ~ .nav-menu,
    body.homepage header + nav,
    body.homepage header ~ nav,
    body.homepage .header-container ~ nav,
    body.homepage header + .nav-menu,
    body.homepage header ~ .nav-menu,
    body:not(.homepage) header + nav,
    body:not(.homepage) header ~ nav,
    body:not(.homepage) .header-container ~ nav,
    body:not(.homepage) header + .nav-menu,
    body:not(.homepage) header ~ .nav-menu,
    html body:not(.homepage) header + nav.nav-menu,
    html body:not(.homepage) header ~ nav.nav-menu {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        position: absolute !important;
        left: -9999px !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        line-height: 0 !important;
    }
    
    /* Remove any margin/padding from main content that might create space */
    body.homepage main,
    body.homepage .main-content,
    body.homepage section:first-of-type {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    
    /* Ensure header has no margin-bottom */
    body.homepage header,
    body.homepage .header-container {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    
    /* Remove any gap between header and next element */
    body.homepage header + *,
    body.homepage .header-container + * {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}
