/* Common dropdown styles (keep your existing ones) */
.navbar-nav .dropdown-menu {
    background-color: #003B95;
    border: none;
    border-radius: 0;
    padding: 0;
    margin-top: 0;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.navbar-nav .dropdown-menu>li>a {
    color: #ffffff;
    padding: 12px 20px;
    font-family: "Montserrat-Regular";
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.navbar-nav .dropdown-menu>li>a:hover,
.navbar-nav .dropdown-menu>li>a:focus {
    background-color: #002D70;
    color: #ffffff;
}

.navbar-nav .dropdown-menu>li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.navbar-nav .dropdown-menu>li:last-child {
    border-bottom: none;
}

.navbar-nav .dropdown>.dropdown-toggle {
    padding: 15px;
}

/* ============================= */
/* ✅ Mobile Offcanvas Menu Only */
/* ============================= */
@media (max-width: 991px) {
    .navbar-offcanvas {
        position: fixed;
        top: 0;
        right: -300px;
        /* hidden by default */
        width: 300px;
        height: 100%;
        transition: right 0.3s ease-in-out;
        z-index: 9999;
        overflow-y: auto;
        padding: 20px;
    }

    .navbar-offcanvas.in {
        right: 0;
        /* slide in when active */
    }

    /* Overlay background when offcanvas open */
    .offcanvas-overlay {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 9998;
    }

    /* Hamburger button (mobile only) */
    .navbar-toggle {
        border: none;
        background: transparent;
        display: block;
        /* visible on mobile */
    }

    .icon-bar {
        display: block;
        width: 25px;
        height: 3px;
        margin: 5px auto;
        background-color: #003B95;
        transition: all 0.3s;
    }

    /* Hide desktop nav links on mobile */
    .navbar-nav {
        display: block;
    }

    /* Close (X) button */
    .closecanvas {
        position: absolute;
        top: 15px;
        right: 15px;
        background: transparent;
        border: none;
        color: #fff;
        z-index: 10000 !important;
    }
}

/* ============================= */
/* ✅ Desktop Navbar (default) */
/* ============================= */
@media (min-width: 992px) {
    .navbar-offcanvas {
        position: static;
        width: auto;
        height: auto;
        background: transparent;
        padding: 0;
        transition: none;
    }

    .navbar-toggle {
        display: none;
        /* hide hamburger */
    }

    .offcanvas-overlay {
        display: none;
    }

    .closecanvas {
        display: none;
    }
}