/* Navbar Refinements for Mobile Scroll Behavior and Layout */

/* Base transitions for smooth hiding */
#mainNav {
    transition: transform 0.3s ease-in-out, padding 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

/* Specific behaviors for Mobile (max-width: 991.98px) */
@media (max-width: 991.98px) {

    /* Layout: Brands on left, toggler on right */
    #mainNav .container {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .navbar-brands-mobile {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 2px !important;
        flex-shrink: 1 !important;
    }

    /* Adjust font size and padding for mobile brands */
    .navbar-brands-mobile .navbar-brand {
        font-size: 0.8rem !important;
        margin-right: 0 !important;
        padding: 0 !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
        font-weight: 700 !important;
    }

    /* Toggler styling */
    #mainNav .navbar-toggler {
        padding: 0.5rem 0.7rem !important;
        font-size: 0.85rem !important;
        margin-left: 10px !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        background-color: #1abc9c !important;
        /* Match primary color */
        border: none !important;
    }

    /* Side menu from right */
    #mainNav .navbar-collapse {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        width: 260px !important;
        height: 100vh !important;
        background-color: #2c3e50 !important;
        /* Dark theme for menu */
        padding: 60px 20px 20px 20px !important;
        margin: 0 !important;
        transform: translateX(100%);
        transition: transform 0.3s cubic-bezier(0.77, 0.2, 0.05, 1);
        display: block !important;
        z-index: 1050 !important;
        box-shadow: -5px 0 15px rgba(0, 0, 0, 0.2) !important;
        visibility: hidden;
    }

    #mainNav .navbar-collapse.show {
        transform: translateX(0) !important;
        visibility: visible !important;
    }

    #mainNav .navbar-nav {
        flex-direction: column !important;
    }

    #mainNav .nav-link {
        color: #fff !important;
        padding: 15px 0 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }

    /* Shrink state (when scrolling starts) */
    #mainNav.navbar-shrink-custom {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        background-color: rgba(255, 255, 255, 0.95) !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    }

    /* Hidden state (when scrolling down) */
    #mainNav.navbar-hidden-custom {
        transform: translateY(-100%) !important;
    }
}

/* Desktop behavior remains default (or whatever is in styles.css) */
@media (min-width: 992px) {

    /* Reset hidden state just in case it leaks */
    #mainNav.navbar-hidden-custom {
        transform: translateY(0) !important;
    }
}