/* ============================================
   MOBILE NAVIGATION V3 - ISOLATED
   ONLY ACTIVE ON SCREENS 991px AND BELOW
   ZERO INTERFERENCE WITH DESKTOP
   ============================================ */

/* ====================================
   MOBILE ONLY - WRAPPED IN MEDIA QUERY
   ==================================== */

@media only screen and (max-width: 991px) {
    
    /* Hide desktop top bar on mobile */
    .top-info-bar {
        display: none !important;
    }
    
    /* Mobile body adjustments */
    html, body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    body {
        padding-top: 60px !important;
        padding-bottom: 70px !important;
    }
    
    body.mobile-menu-active {
        overflow: hidden !important;
        position: fixed !important;
        width: 100% !important;
        height: 100% !important;
    }
    
    /* ====================================
       MOBILE HEADER
       ==================================== */
    
    .main-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 9995 !important;
        background: white !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
    }
    
    .header-content {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 10px 15px !important;
        height: 60px !important;
        /* Remove grid on mobile */
        grid-template-columns: none !important;
    }
    
    .logo-section {
        display: flex !important;
        align-items: center !important;
    }
    
    .brand-logo {
        height: 40px !important;
        width: auto !important;
    }
    
    /* Hide desktop phone on mobile */
    .header-phone {
        display: none !important;
    }
    
    /* ====================================
       HIDE DESKTOP LOGIN/USER ON MOBILE
       ==================================== */
    
    .login-section .user-dropdown-wrapper,
    .login-section .login-btn {
        display: none !important;
    }
    
    /* ====================================
       HAMBURGER MENU BUTTON
       ==================================== */
    
    .mobile-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 50px !important;
        height: 50px !important;
        background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
        border: none !important;
        border-radius: 12px !important;
        color: white !important;
        font-size: 24px !important;
        cursor: pointer !important;
        box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4) !important;
        transition: transform 0.2s !important;
        z-index: 9996 !important;
    }
    
    .mobile-toggle:active {
        transform: scale(0.95) !important;
    }
    
    /* ====================================
       MOBILE SIDEBAR
       ==================================== */
    
    .nav-wrapper {
        position: fixed !important;
        top: 0 !important;
        left: -100% !important;
        width: 85% !important;
        max-width: 320px !important;
        height: 100vh !important;
        background: linear-gradient(180deg, #4f46e5 0%, #6366f1 50%, #7c3aed 100%) !important;
        box-shadow: 5px 0 30px rgba(0,0,0,0.6) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        z-index: 9999 !important;
        transition: left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
        padding: 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    .nav-wrapper.sidebar-active {
        left: 0 !important;
    }
    
    /* ====================================
       CLOSE BUTTON IN SIDEBAR
       ==================================== */
    
    .mobile-close {
        position: absolute !important;
        top: 15px !important;
        right: 15px !important;
        width: 50px !important;
        height: 50px !important;
        background: rgba(255, 255, 255, 0.95) !important;
        border: 3px solid #4f46e5 !important;
        border-radius: 50% !important;
        color: #4f46e5 !important;
        font-size: 26px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        z-index: 10001 !important;
        box-shadow: 0 6px 20px rgba(0,0,0,0.5) !important;
        transition: all 0.2s !important;
    }
    
    .mobile-close:active {
        background: white !important;
        transform: scale(0.9) rotate(90deg) !important;
    }
    
    body:not(.mobile-menu-active) .mobile-close {
        display: none !important;
    }
    
    /* ====================================
       SIDEBAR HEADER
       ==================================== */
    
    .nav-wrapper::before {
        content: '' !important;
        display: block !important;
        height: 80px !important;
        background: rgba(0,0,0,0.3) !important;
        border-bottom: 2px solid rgba(255,255,255,0.2) !important;
    }
    
    .nav-wrapper::after {
        content: 'BookMeriGadi' !important;
        position: absolute !important;
        top: 26px !important;
        left: 20px !important;
        color: white !important;
        font-size: 22px !important;
        font-weight: 800 !important;
        letter-spacing: 0.5px !important;
        text-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
    }
    
    /* ====================================
       MENU ITEMS
       ==================================== */
    
    .nav-menu {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        padding: 15px 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }
    
    .nav-item {
        width: 100% !important;
        border-bottom: 1px solid rgba(255,255,255,0.15) !important;
        position: relative !important;
    }
    
    .nav-link {
        width: 100% !important;
        padding: 18px 20px !important;
        color: white !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        text-decoration: none !important;
        border-left: 4px solid transparent !important;
        transition: all 0.3s !important;
        background: transparent !important;
    }
    
    .nav-link:hover,
    .nav-link.active {
        background: rgba(255,255,255,0.15) !important;
        padding-left: 30px !important;
        border-left-color: #fbbf24 !important;
        color: white !important;
    }
    
    /* ====================================
       DROPDOWN ARROWS
       ==================================== */
    
    .nav-link .fa-chevron-down {
        font-size: 12px !important;
        transition: transform 0.3s !important;
        margin-left: auto !important;
    }
    
    .nav-item.dropdown-active .nav-link .fa-chevron-down {
        transform: rotate(180deg) !important;
    }
    
    /* ====================================
       DROPDOWN MENUS IN MOBILE
       ==================================== */
    
    .nav-dropdown {
        max-height: 0 !important;
        overflow: hidden !important;
        background: rgba(0,0,0,0.3) !important;
        transition: max-height 0.4s ease !important;
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        box-shadow: none !important;
        border: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .nav-item.dropdown-active .nav-dropdown {
        max-height: 1000px !important;
    }
    
    .dropdown-link {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 16px 20px 16px 50px !important;
        color: rgba(255,255,255,0.95) !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        text-decoration: none !important;
        border-left: 4px solid transparent !important;
        transition: all 0.3s !important;
        background: transparent !important;
    }
    
    .dropdown-link:hover,
    .dropdown-link:active {
        background: rgba(255,255,255,0.15) !important;
        border-left-color: #fbbf24 !important;
        padding-left: 55px !important;
        color: white !important;
    }
    
    .dropdown-link i {
        font-size: 16px !important;
        width: 22px !important;
    }
    
    /* ====================================
       2026 BADGE
       ==================================== */
    
    .badge-yatra-2026 {
        display: inline-block !important;
        background: linear-gradient(135deg, #fbbf24, #f59e0b) !important;
        color: #78350f !important;
        font-size: 10px !important;
        font-weight: 900 !important;
        padding: 4px 10px !important;
        border-radius: 10px !important;
        margin-left: 8px !important;
        letter-spacing: 0.5px !important;
        box-shadow: 0 2px 8px rgba(251, 191, 36, 0.5) !important;
    }
    
    /* ====================================
       MENU OVERLAY
       ==================================== */
    
    .menu-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        background: rgba(0,0,0,0.7) !important;
        z-index: 9990 !important;
        display: none !important;
    }
    
    .menu-overlay.overlay-active {
        display: block !important;
    }
    
    /* ====================================
       BOTTOM NAVIGATION
       ==================================== */
    
    .mobile-bottom-nav:not(.bottom-nav-v3) {
        display: none !important;
    }
    
    .bottom-nav-v3 {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        background: white !important;
        box-shadow: 0 -3px 20px rgba(0,0,0,0.15) !important;
        padding: 10px 0 8px !important;
        z-index: 9994 !important;
        border-top: 3px solid rgba(79, 70, 229, 0.15) !important;
    }
    
    .bottom-nav-items-v3 {
        display: flex !important;
        justify-content: space-around !important;
        align-items: center !important;
        width: 100% !important;
    }
    
    .bottom-nav-link-v3 {
        flex: 1 !important;
        text-align: center !important;
        padding: 8px 5px !important;
        color: #64748b !important;
        text-decoration: none !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 5px !important;
        border-radius: 10px !important;
        transition: all 0.3s !important;
    }
    
    .bottom-nav-link-v3.nav-active {
        color: #4f46e5 !important;
        background: rgba(79, 70, 229, 0.12) !important;
    }
    
    .bottom-nav-link-v3 i {
        font-size: 24px !important;
    }
    
    .bottom-nav-link-v3 span {
        font-size: 11px !important;
        font-weight: 700 !important;
    }
    
    /* ====================================
       MOBILE FORM OPTIMIZATIONS
       ==================================== */
    
    .hero-section {
        padding: 15px 0 !important;
    }
    
    .services-header-container {
        display: none !important;
    }
    
    .booking-card-mmt {
        margin: 0 15px 20px !important;
    }
    
    .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* ====================================
   DESKTOP PROTECTION - 992px AND ABOVE
   RESTORE ALL DESKTOP FUNCTIONALITY
   ==================================== */

@media only screen and (min-width: 992px) {
    
    /* Force hide all mobile elements */
    .bottom-nav-v3,
    .mobile-toggle,
    .mobile-close,
    .menu-overlay {
        display: none !important;
    }
    
    /* Restore desktop header */
    .main-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        background: linear-gradient(to bottom, #ffffff 0%, #f8f9ff 100%) !important;
    }
    
    /* Restore desktop header grid */
    .header-content {
        display: grid !important;
        grid-template-columns: auto 1fr auto !important;
        padding: 0 20px !important;
        height: 65px !important;
        gap: 30px !important;
        align-items: center !important;
    }
    
    /* Restore desktop navigation */
    .nav-wrapper {
        position: static !important;
        display: flex !important;
        justify-content: center !important;
        width: auto !important;
        height: auto !important;
        background: none !important;
        box-shadow: none !important;
        overflow: visible !important;
        padding: 0 !important;
        left: auto !important;
        max-width: none !important;
    }
    
    /* Remove mobile sidebar styling */
    .nav-wrapper::before,
    .nav-wrapper::after {
        display: none !important;
        content: none !important;
    }
    
    /* Restore horizontal menu */
    .nav-menu {
        display: flex !important;
        flex-direction: row !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 5px !important;
        align-items: center !important;
    }
    
    /* Restore desktop nav items */
    .nav-item {
        position: relative !important;
        width: auto !important;
        border-bottom: none !important;
    }
    
    /* Restore desktop nav links */
    .nav-link {
        display: flex !important;
        align-items: center !important;
        gap: 5px !important;
        padding: 8px 14px !important;
        color: #374151 !important;
        font-weight: 600 !important;
        font-size: 0.875rem !important;
        text-decoration: none !important;
        border-radius: 10px !important;
        transition: all 0.3s !important;
        white-space: nowrap !important;
        cursor: pointer !important;
        width: auto !important;
        border-left: none !important;
        background: transparent !important;
    }
    
    /* Restore desktop dropdowns */
    .nav-dropdown {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 0 !important;
        min-width: 220px !important;
        background: linear-gradient(to bottom, #ffffff 0%, #faf5ff 100%) !important;
        border-radius: 12px !important;
        box-shadow: 0 10px 40px rgba(168, 85, 247, 0.2) !important;
        padding: 8px !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-10px) !important;
        transition: all 0.3s ease !important;
        z-index: 1001 !important;
        border: 2px solid rgba(168, 85, 247, 0.1) !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
    }
    
    .nav-item:hover .nav-dropdown {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
    }
    
    /* Restore desktop dropdown links */
    .dropdown-link {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 10px 12px !important;
        color: #374151 !important;
        text-decoration: none !important;
        border-radius: 8px !important;
        transition: all 0.3s !important;
        font-size: 0.875rem !important;
        border-left: none !important;
        background: transparent !important;
    }
    
    /* Hide 2026 badge on desktop */
    .badge-yatra-2026 {
        display: none !important;
    }
    
    /* Restore desktop logo */
    .brand-logo {
        height: 42px !important;
    }
    
    /* Show desktop login */
    .login-section .user-dropdown-wrapper,
    .login-section .login-btn {
        display: flex !important;
    }
}