/* Mega Menu - Desktop */
@media (min-width: 992px) {
    .main-nav {
        position: relative;
    }

    .main-nav > .container {
        position: static;
    }

    .main-nav nav .navbar-nav .nav-item.nav-mega {
        position: static;
    }

    .main-nav nav .navbar-nav .nav-item.nav-mega > .nav-link.nav-mega-trigger {
        cursor: pointer;
    }

    .nav-mega .nav-mega-mobile {
        display: none !important;
    }

    .nav-mega-panels {
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        z-index: 9999;
        pointer-events: none;
        visibility: hidden;
    }

    .nav-mega-panels.is-active {
        pointer-events: auto;
        visibility: visible;
    }

    .nav-mega-panels.is-active::before {
        content: "";
        position: absolute;
        top: -22px;
        left: 0;
        right: 0;
        height: 22px;
        background: transparent;
    }

    .nav-mega-panels .nav-mega-dropdown {
        display: none;
        background: #fff;
        border-top: 3px solid #0071dc;
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    }

    .nav-mega-panels .nav-mega-dropdown.is-open {
        display: block;
    }

    .nav-mega-inner {
        display: flex;
        max-width: 1140px;
        margin: 0 auto;
        min-height: 200px;
        max-height: calc(100vh - 160px);
    }

    .nav-mega-sidebar {
        width: 240px;
        flex-shrink: 0;
        background: #f5f5f5;
        border-right: 1px solid #eee;
        overflow-y: auto;
    }

    .nav-mega-sidebar ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .nav-mega-sidebar li {
        border: none !important;
    }

    .nav-mega-sidebar li button {
        display: block;
        width: 100%;
        padding: 14px 20px;
        border: none;
        background: transparent;
        color: #333;
        font-size: 14px;
        font-weight: 600;
        text-align: left;
        cursor: pointer;
        transition: background 0.2s, color 0.2s;
    }

    .nav-mega-sidebar li.active button,
    .nav-mega-sidebar li button:hover {
        background: #0071dc;
        color: #fff;
    }

    .nav-mega-content {
        flex: 1;
        overflow-y: auto;
        padding: 20px 30px;
        background: #fff;
    }

    .nav-mega-panel {
        display: none;
    }

    .nav-mega-panel.active {
        display: block;
    }

    .nav-mega-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 4px 20px;
    }

    .nav-mega-link {
        display: block !important;
        padding: 8px 0 !important;
        color: #333 !important;
        font-size: 14px;
        font-weight: 500;
        text-decoration: none !important;
        transition: color 0.2s;
        margin: 0 !important;
        text-transform: none !important;
        line-height: 1.4;
    }

    .nav-mega-link::before {
        display: none !important;
    }

    .nav-mega-link:hover {
        color: #0071dc !important;
        padding-left: 0 !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .nav-mega-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .nav-mega-sidebar {
        width: 200px;
    }
}

/* Mega Menu - Mobile */
@media (max-width: 991px) {
    .nav-mega-panels {
        display: none !important;
    }

    .nav-mega .nav-mega-mobile {
        display: block !important;
        transform: scale(1) !important;
        position: static !important;
        opacity: 1 !important;
        visibility: visible !important;
        box-shadow: none !important;
        border: none !important;
        background: transparent !important;
        padding-left: 0 !important;
    }

    .nav-mega .nav-mega-mobile .dropdown-menu {
        position: static !important;
        transform: none !important;
        left: auto !important;
        margin-top: 0 !important;
        padding-left: 15px;
    }

    .nav-mega .nav-mega-mobile li a {
        font-size: 14px !important;
        padding: 10px 15px !important;
        font-weight: 500 !important;
    }

    .nav-mega .nav-mega-mobile > li > a {
        font-weight: 600 !important;
        color: #0071dc !important;
    }
}
