/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.mobile-menu-btn {
    display: none;

    width: 42px;
    height: 42px;

    border: 1px solid #d9e1ed;

    background: #fff;

    color: var(--navy);

    border-radius: 8px;

    align-items: center;
    justify-content: center;

    font-size: 24px;

    cursor: pointer;
}


/* =========================================================
   MOBILE SIDEBAR
========================================================= */

.mobile-sidebar {
    position: fixed;

    top: 0;
    left: 0;

    width: 300px;
    max-width: 85vw;

    height: 100vh;

    background: #fff;

    z-index: 10001;

    transform: translateX(-100%);

    transition: transform 0.35s ease;

    box-shadow: 10px 0 35px rgba(0, 0, 0, 0.15);

    overflow-y: auto;
}

.mobile-sidebar.open {
    transform: translateX(0);
}


/* Overlay */

.mobile-menu-overlay {
    position: fixed;

    inset: 0;

    background: rgba(0, 0, 0, 0.45);

    z-index: 10000;

    opacity: 0;
    visibility: hidden;

    transition: 0.3s ease;
}

.mobile-menu-overlay.show {
    opacity: 1;
    visibility: visible;
}


/* Sidebar Header */

.mobile-sidebar-header {
    height: 80px;

    padding: 15px 20px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    border-bottom: 1px solid #edf0f5;
}

.mobile-logo img {
    max-width: 120px;
    max-height: 55px;
}


.mobile-menu-close {
    width: 38px;
    height: 38px;

    border: 0;

    background: #f4f6f8;

    color: var(--navy);

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    font-size: 17px;
}


/* Navigation */

.mobile-nav {
    display: flex;
    flex-direction: column;

    padding: 20px;
}

.mobile-nav>a {
    padding: 16px 5px;

    color: var(--navy);

    text-decoration: none;

    font-size: 16px;
    font-weight: 600;

    border-bottom: 1px solid #edf0f5;

    transition: 0.25s ease;
}

.mobile-nav>a:hover {
    color: var(--yellow-deep);
    padding-left: 10px;
}


.mobile-nav .mobile-quote-btn {
    margin-top: 25px;

    padding: 13px 20px;

    text-align: center;

    background: var(--navy);

    color: #fff;

    border-radius: 8px;

    border: 0;
}


/* =========================================================
   TABLET + MOBILE
========================================================= */

@media (max-width: 991.98px) {

    .mobile-menu-btn {
        display: flex;
    }

    .free-quota-btn{
        display: none;
    }

}