/* Mobile Menu Fixes - High Priority with Aggressive Overrides */
@media (max-width: 768px) {
    /* Fix header layout */
    .header-container {
        display: flex \!important;
        justify-content: space-between \!important;
        align-items: center \!important;
        padding: 1rem \!important;
        position: relative \!important;
    }
    
    .site-branding {
        flex: 0 0 auto \!important;
        z-index: 1002 \!important;
    }
    
    /* Navigation container */
    #site-navigation,
    .main-navigation {
        display: flex \!important;
        align-items: center \!important;
        gap: 1rem \!important;
        position: static \!important;
    }
    
    /* Fix login button - AGGRESSIVE HEIGHT FIX */
    .header-actions {
        order: 1 \!important;
        display: flex \!important;
        align-items: center \!important;
    }
    
    .login-btn,
    .header-actions .login-btn,
    .header-actions a.login-btn,
    a.login-btn {
        padding: 8px 16px \!important;
        font-size: 14px \!important;
        line-height: 1.5 \!important;
        height: 40px \!important;
        max-height: 40px \!important;
        min-height: unset \!important;
        display: inline-flex \!important;
        align-items: center \!important;
        justify-content: center \!important;
        white-space: nowrap \!important;
        box-sizing: border-box \!important;
        margin: 0 \!important;
        vertical-align: middle \!important;
    }
    
    /* Menu toggle button styling */
    .menu-toggle {
        display: flex \!important;
        flex-direction: column \!important;
        justify-content: center \!important;
        align-items: center \!important;
        width: 40px \!important;
        height: 40px \!important;
        padding: 8px \!important;
        background: transparent \!important;
        border: 1px solid rgba(255, 255, 255, 0.3) \!important;
        border-radius: 4px \!important;
        cursor: pointer \!important;
        order: 2 \!important;
        position: relative \!important;
        z-index: 1001 \!important;
    }
    
    .menu-toggle span {
        display: block \!important;
        width: 22px \!important;
        height: 2px \!important;
        background-color: #fff \!important;
        margin: 3px 0 \!important;
        transition: all 0.3s ease \!important;
        position: relative \!important;
        left: auto \!important;
        top: auto \!important;
        transform: none \!important;
    }
    
    /* Animated hamburger when toggled */
    .toggled .menu-toggle span:nth-child(1),
    #site-navigation.toggled .menu-toggle span:nth-child(1),
    .main-navigation.toggled .menu-toggle span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px) \!important;
    }
    
    .toggled .menu-toggle span:nth-child(2),
    #site-navigation.toggled .menu-toggle span:nth-child(2),
    .main-navigation.toggled .menu-toggle span:nth-child(2) {
        opacity: 0 \!important;
    }
    
    .toggled .menu-toggle span:nth-child(3),
    #site-navigation.toggled .menu-toggle span:nth-child(3),
    .main-navigation.toggled .menu-toggle span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -5px) \!important;
    }
    
    /* Mobile menu styling - AGGRESSIVE DISPLAY FIX */
    #primary-menu,
    .menu-primary-container > ul,
    ul#primary-menu,
    .nav-menu,
    .menu {
        display: none \!important;
        position: absolute \!important;
        top: 100% \!important;
        left: -1rem \!important;
        right: -1rem \!important;
        width: calc(100% + 2rem) \!important;
        background: #1a1a1a \!important;
        background-color: rgba(26, 26, 26, 0.98) \!important;
        border-top: 1px solid rgba(255, 255, 255, 0.1) \!important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5) \!important;
        z-index: 9999 \!important;
        margin: 0 \!important;
        padding: 0 \!important;
        list-style: none \!important;
        flex-direction: column \!important;
        max-height: calc(100vh - 80px) \!important;
        overflow-y: auto \!important;
    }
    
    /* Show menu when toggled - MULTIPLE SELECTORS FOR AGGRESSIVE OVERRIDE */
    .toggled #primary-menu,
    #site-navigation.toggled #primary-menu,
    .main-navigation.toggled #primary-menu,
    .toggled .menu-primary-container > ul,
    #site-navigation.toggled .menu-primary-container > ul,
    .main-navigation.toggled .menu-primary-container > ul,
    .toggled ul#primary-menu,
    #site-navigation.toggled ul#primary-menu,
    .main-navigation.toggled ul#primary-menu,
    .toggled .nav-menu,
    #site-navigation.toggled .nav-menu,
    .main-navigation.toggled .nav-menu,
    .toggled .menu,
    #site-navigation.toggled .menu,
    .main-navigation.toggled .menu {
        display: flex \!important;
        visibility: visible \!important;
        opacity: 1 \!important;
    }
    
    /* Menu items styling */
    #primary-menu li,
    .menu-primary-container > ul > li,
    ul#primary-menu > li,
    .nav-menu > li,
    .menu > li,
    #primary-menu > .menu-item,
    .menu-primary-container > ul > .menu-item {
        width: 100% \!important;
        margin: 0 \!important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) \!important;
        display: block \!important;
        position: relative \!important;
    }
    
    #primary-menu li:last-child,
    .menu-primary-container > ul > li:last-child,
    ul#primary-menu > li:last-child,
    .nav-menu > li:last-child,
    .menu > li:last-child {
        border-bottom: none \!important;
    }
    
    #primary-menu a,
    .menu-primary-container > ul a,
    ul#primary-menu a,
    .nav-menu a,
    .menu a,
    #primary-menu li a,
    .menu-primary-container > ul > li > a,
    ul#primary-menu > li > a,
    .nav-menu > li > a,
    .menu > li > a {
        display: block \!important;
        padding: 1rem 1.5rem \!important;
        color: #ffffff \!important;
        text-decoration: none \!important;
        font-size: 16px \!important;
        line-height: 1.5 \!important;
        transition: background 0.3s ease, color 0.3s ease \!important;
        width: 100% \!important;
        box-sizing: border-box \!important;
    }
    
    #primary-menu a:hover,
    #primary-menu a:focus,
    .menu-primary-container > ul a:hover,
    .menu-primary-container > ul a:focus,
    ul#primary-menu a:hover,
    ul#primary-menu a:focus,
    .nav-menu a:hover,
    .nav-menu a:focus,
    .menu a:hover,
    .menu a:focus {
        background: rgba(255, 77, 0, 0.1) \!important;
        color: #FF4D00 \!important;
    }
    
    /* Ensure header has relative positioning for absolute menu */
    .site-header,
    #masthead {
        position: relative \!important;
        z-index: 999 \!important;
    }
    
    /* Fix any potential submenu issues */
    #primary-menu .sub-menu,
    .menu-primary-container > ul .sub-menu,
    ul#primary-menu .sub-menu,
    .nav-menu .sub-menu,
    .menu .sub-menu {
        position: static \!important;
        width: 100% \!important;
        background: rgba(20, 20, 20, 0.98) \!important;
        display: block \!important;
        padding-left: 1rem \!important;
    }
    
    /* Force WordPress generated menu container to show */
    .menu-primary-container {
        display: contents \!important;
    }
}

/* Ensure desktop menu works properly */
@media (min-width: 769px) {
    .menu-toggle {
        display: none \!important;
    }
    
    #primary-menu,
    .menu-primary-container > ul,
    ul#primary-menu,
    .nav-menu,
    .menu {
        display: flex \!important;
        position: static \!important;
        background: transparent \!important;
        box-shadow: none \!important;
        flex-direction: row \!important;
        gap: 1.5rem \!important;
        width: auto \!important;
        max-height: none \!important;
        overflow: visible \!important;
        visibility: visible \!important;
        opacity: 1 \!important;
    }
    
    #primary-menu li,
    .menu-primary-container > ul > li,
    ul#primary-menu > li,
    .nav-menu > li,
    .menu > li {
        border: none \!important;
        width: auto \!important;
    }
    
    /* Reset login button height on desktop */
    .login-btn,
    .header-actions .login-btn,
    a.login-btn {
        height: auto \!important;
        max-height: none \!important;
    }
}

/* Additional aggressive overrides for common issues */
@media (max-width: 768px) {
    /* Force visibility of menu items */
    .toggled #primary-menu > li,
    .toggled .menu-primary-container > ul > li,
    .toggled ul#primary-menu > li,
    .toggled .nav-menu > li,
    .toggled .menu > li,
    .toggled #primary-menu > .menu-item,
    .toggled .menu-primary-container > ul > .menu-item {
        display: block \!important;
        visibility: visible \!important;
        opacity: 1 \!important;
    }
    
    /* Ensure menu toggle is always visible and clickable */
    .menu-toggle {
        visibility: visible \!important;
        opacity: 1 \!important;
        pointer-events: auto \!important;
    }
    
    /* Override any conflicting display properties */
    .toggled #primary-menu[style],
    #site-navigation.toggled #primary-menu[style],
    .main-navigation.toggled #primary-menu[style],
    .toggled .menu-primary-container > ul[style],
    #site-navigation.toggled .menu-primary-container > ul[style],
    .main-navigation.toggled .menu-primary-container > ul[style] {
        display: flex \!important;
    }
    
    /* Debug helper - remove in production */
    .toggled #primary-menu::before,
    .toggled .menu-primary-container > ul::before {
        content: "Menu is open" \!important;
        display: block \!important;
        padding: 10px \!important;
        background: #FF4D00 \!important;
        color: white \!important;
        text-align: center \!important;
        font-size: 14px \!important;
    }
}
EOF < /dev/null