/* ========================================
   HEADER/NAVIGATION IMPROVEMENTS
   ======================================== */

/* Ensure header stays on top of all content */
#ws-site-header-wrapper,
#ws-block-local-header-with-topbar-UhhHENCG {
    position: relative !important;
    z-index: 999 !important;
}

/* Hide empty top panel (black bar) */
#ws-block-local-header-with-topbar-UhhHENCG .ws-m-local-header__top-panel {
    display: none !important;
}

/* Improve main navigation panel */
#ws-block-local-header-with-topbar-UhhHENCG .ws-m-local-header__main-panel {
    background-color: hsl(195, 5%, 14%) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Navigation link styling */
#ws-block-local-header-with-topbar-UhhHENCG .ws-nav__menu-link {
    color: white !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

#ws-block-local-header-with-topbar-UhhHENCG .ws-nav__menu-link:hover {
    color: hsl(195, 85%, 50%) !important;
}

/* Active menu item */
#ws-block-local-header-with-topbar-UhhHENCG .ws-nav__menu-list-item.active .ws-nav__menu-link {
    color: hsl(195, 85%, 50%) !important;
}

/* Logo and site name */
#ws-block-local-header-with-topbar-UhhHENCG .ws-m-logo-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}

#ws-block-local-header-with-topbar-UhhHENCG .ws-m-logo-wrapper span {
    color: white !important;
    font-weight: 600 !important;
    font-size: 1.125rem !important;
}

/* Primary button styling */
#ws-block-local-header-with-topbar-UhhHENCG ws-button[slot="primary-button"] a {
    font-weight: 500 !important;
    border-radius: 8px !important;
    padding: 0.625rem 1.5rem !important;
    transition: all 0.3s ease !important;
}

#ws-block-local-header-with-topbar-UhhHENCG ws-button[slot="primary-button"] a:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 150, 200, 0.3) !important;
}

/* ========================================
   MOBILE FIXES
   ======================================== */

@media (max-width: 768px) {
    /* Ensure header stays on top with higher z-index */
    #ws-site-header-wrapper,
    #ws-block-local-header-with-topbar-UhhHENCG {
        z-index: 999 !important;
    }

    /* Mobile navigation menu - ensure it starts hidden and can be toggled */
    #ws-block-local-header-with-topbar-UhhHENCG ws-nav-collapse:not([visible]),
    #ws-block-local-header-with-topbar-UhhHENCG #ws-nav-sidebar:not([visible]) {
        display: none !important;
    }

    #ws-block-local-header-with-topbar-UhhHENCG ws-nav-collapse[visible],
    #ws-block-local-header-with-topbar-UhhHENCG #ws-nav-sidebar[visible] {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 1000 !important;
        background-color: hsl(195, 5%, 14%) !important;
        overflow-y: auto !important;
    }

    /* Make sure mobile menu toggle is clickable */
    #ws-block-local-header-with-topbar-UhhHENCG ws-nav-toggle {
        z-index: 1001 !important;
        position: relative !important;
        cursor: pointer !important;
    }
}
