.sidebar.mobile-menu {
    .sidebar-content {
        display: flex;
        flex-direction: column;
        height: calc(var(--vh, 1vh) * 100);
        overflow: hidden;
    }
}

.mobile-menu-inner {
    min-width: 50vw;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: opacity .2s ease;
}

.sidebar-mobile-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 25px 15px 20px;
    border-bottom: 1px solid var(--border-light);
    gap: 15px;
    box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.05);


    .sidebar-close {
        background: none;
        border: none;
    }

    .close-icon {
        width: 25px;
    }

    img {
        width: 150px;
    }
}

body {
    min-height: -webkit-fill-available;
}

.mobile-menu-navigation {
    display: flex;
    flex-direction: column;
    position: relative;
    height: 100%;

    ul {
        display: flex;
        flex-direction: column;
        list-style: none;
    }

    li {
        display: flex;
        width: 100%;
    }

    a {
        padding: 20px 30px 20px 20px;
        align-items: center;
        justify-content: space-between;
        display: flex;
        gap: 5px;
        color: var(--color-text);
        width: 100%;
        text-decoration: none;
        font-weight: var(--font-weight);
    }

    .nav__link {
        border-bottom: 1px solid var(--color-border-light-on-white);

        img {
            width: 10px;
        }
    }

    button.nav__link {
        background: none;
        border: none;
        padding: 20px 30px 20px 20px;
        align-items: center;
        justify-content: space-between;
        display: flex;
        gap: 5px;
        color: var(--color-text);
        width: 100%;
        text-decoration: none;
        font-weight: var(--font-weight);
        border-bottom: 1px solid var(--color-border-light-on-white);
    }

    .nav__sub-menu {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: 0px;
        left: 0px;
        bottom: 0px;
        background: var(--color-white);
        width: 100%;
        height: 100%;
        transform: translateX(-100%);
        opacity: 0;
        visibility: hidden;
        overflow-y: auto;
        padding-bottom: 20px;

        &.open {
            transform: translateX(0);
            transition: all .3s ease;
            opacity: 1;
            visibility: visible;
        }

    }

    .nav__grand-menu {
        display: flex;
        flex-direction: column;
        position: static;

        a {

            img {
                display: none;
            }
        }

    }

    .nav__grand-menu-item {
        display: flex;
        flex-direction: column;
        color: var(--color-grey-dark);
    }

    .nav__grand-menu-link {
        padding: 20px;
        border-bottom: 1px solid var(--color-border-light-on-white);
    }

    .nav__grand-sub-menu {
        display: flex;
        padding: 10px 30px;
        align-items: center;
        gap: 5px;
    }

    .nav__grand-sub-menu-link {
        padding: 10px 30px;
        display: flex;
        align-items: center;
        gap: 5px;
        color: var(--color-grey-dark);
        text-decoration: none;
    }

    .nav__sub-menu-title {
        display: flex;
        padding: 20px 20px 20px 40px;
        justify-content: center;
        align-items: center;
        gap: 5px;
        background: var(--color-grey);
        box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.05);
        position: sticky;
        top: 0px;

        a {
            padding: 0px;
            width: auto;
        }

        img {
            width: 20px;
        }

        button {
            background: none;
            border: none;
            position: absolute;
            left: 20px;
        }
    }


}

.mobile-menu-footer {
    display: flex;
    flex-direction: column;
    padding: 20px 0px 50px;

    ul {
        display: flex;
        flex-direction: column;
        list-style: none;
    }

    li {
        display: flex;
        width: 100%;
    }

    a {
        padding: 10px 20px;
        display: flex;
        gap: 5px;
        color: var(--text-light);
        width: 100%;
        text-decoration: none;
        font-weight: var(--font-weight);
        color: var(--color-grey-dark);
    }


}


@media (max-width:767px) {
    .mobile-menu-inner {
        width: 100vw;
    }

}