/* =====================================================
   MOBILE NAVIGATION - COMPLETE STYLING
   ===================================================== */

/* Mobile Nav Links - All items same style */
.nav-adaptation-links .mobile-nav-link {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 16px 0;
    font-size: 20px;
    font-weight: 500;
    color: #1d1a17;
    text-decoration: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: color 0.2s;
}

.nav-adaptation-links .mobile-nav-link:hover {
    color: #3182ce;
}

/* Dropdown Container */
.nav-adaptation-links .mobile-dropdown {
    display: block !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

/* Dropdown Toggle */
.mobile-dropdown-toggle {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 0;
    font-size: 20px;
    font-weight: 500;
    color: #1d1a17;
    text-decoration: none;
    cursor: pointer;
    border: none;
    background: transparent;
}

.mobile-dropdown-toggle:hover {
    color: #3182ce;
}

.dropdown-arrow {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.mobile-dropdown.open .dropdown-arrow {
    transform: rotate(180deg);
}

/* Dropdown Menu - Hidden by default */
.mobile-dropdown-menu {
    display: none;
    padding-left: 20px;
    padding-bottom: 12px;
}

.mobile-dropdown.open .mobile-dropdown-menu {
    display: block !important;
}

/* Dropdown Items */
.mobile-dropdown-item {
    display: block !important;
    padding: 12px 0;
    font-size: 17px;
    font-weight: 400;
    color: #555;
    text-decoration: none;
    transition: color 0.2s;
}

.mobile-dropdown-item:hover {
    color: #3182ce;
}

/* Mobile Language Switcher */
.mobile-lang-switcher {
    display: flex !important;
    justify-content: center;
    gap: 16px;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.mobile-lang-btn {
    padding: 12px 32px;
    font-size: 15px;
    font-weight: 600;
    color: #1d1a17;
    background: transparent;
    border: 2px solid #1d1a17;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.mobile-lang-btn:hover {
    background: #f5f5f5;
}

.mobile-lang-btn.active {
    background: #1d1a17;
    color: #fff;
}

/* =====================================================
   MOBILE MENU CONTAINER FIXES
   ===================================================== */

@media screen and (max-width: 991px) {

    /* Show mobile menu when active */
    .nav-adaptation.show {
        display: flex !important;
    }

    /* Mobile Menu Container */
    .nav-adaptation {
        z-index: 9999 !important;
        background-color: #fffbf8 !important;
        flex-direction: column;
        width: 100%;
        height: 100vh;
        height: 100dvh;
        display: none;
        position: fixed;
        inset: 0;
        overflow-y: auto;
    }

    /* Mobile Menu Header */
    .nav-wrapper.adaptation {
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        padding: 16px 24px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        background: #fffbf8;
        position: sticky;
        top: 0;
        z-index: 10;
        height: 70px;
        /* Fixed height for calculations */
    }

    /* Fix overlap on Form pages and other pages */
    body {
        padding-top: 0px;
    }

    /* Specific fix for pages where header overlaps content */
    @media screen and (max-width: 991px) {

        .section-form,
        .section-contact,
        .hero-section,
        .utility-page-wrap {
            padding-top: 80px !important;
            /* Push content down below fixed header */
        }
    }

    /* Force Language Switcher Visibility */
    .mobile-lang-switcher {
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        margin-bottom: 40px;
        /* Extra space at bottom */
    }

    /* Mobile Menu Content */
    .nav-adaptation-content {
        padding: 24px !important;
        display: flex !important;
        flex-direction: column;
        flex: 1;
    }

    /* Mobile Menu Links Container */
    .nav-adaptation-links {
        display: flex !important;
        flex-direction: column;
        flex: 1;
    }

    /* Hide old nav items on desktop that might interfere */
    .nav-menu-items-wrapper {
        display: none !important;
    }
}

/* =====================================================
   BODY SCROLL LOCK
   ===================================================== */

body.menu-open {
    overflow: hidden !important;
    position: fixed;
    width: 100%;
}