/* Critical override styles to ensure menu works */

/* Force fixed header with highest priority */
header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
    -webkit-transform: translateZ(0) !important;
    transform: translateZ(0) !important;
}

/* Force proper body padding */
body {
    padding-top: 60px !important;
    margin-top: 0 !important;
}

/* Ensure mobile menu button is visible */
#mobile-menu-button {
    position: relative !important;
    z-index: 1050 !important;
    min-height: 55px !important;
    min-width: 55px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Ensure hamburger icon is visible */
.hamburger-icon {
    width: 32px !important;
    height: 28px !important;
    display: block !important;
    position: relative !important;
}

/* Ensure hamburger lines are visible */
.hamburger-icon span {
    height: 4px !important;
    width: 100% !important;
    background: #4f46e5 !important;
    display: block !important;
    position: absolute !important;
    border-radius: 9px !important;
}

/* Make mobile menu display properly */
#mobile-menu {
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    z-index: 999 !important;
    background-color: rgba(249, 250, 251, 0.98) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
    -webkit-overflow-scrolling: touch !important;
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 999 !important;
    background-color: white !important;
}

/* Make sure sections have proper top padding for fixed header */
section {
    scroll-margin-top: 70px !important;
}
