.sidenav-container {
    position: relative;
    grid-area: 1 / 1 / -1 / -1;
    display: flex;
    justify-content: center;
    gap: 2rem;
}

.sidenav-container__sidenav {
    margin: 0 var(--container-padding-x) 0 var(--container-padding-x);
    display: none;
    padding-top: var(--banner-height, 0px);
}

.sidenav-container__content {
    flex: 1 1 auto;
    max-width: var(--container-large-width);
    min-width: 0;
    margin-top: 3rem;
    margin: 3rem 0 0 0;
}

#side-nav {
    --primary-color: var(--color-pharmacy-green);
    --primary-color-light: var(--color-pharmacy-green-light);
    --category-color: initial;
    --category-color-light: initial;
    position: sticky;
    top: calc(var(--header-height) + 3rem);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding-bottom: 3rem;
}

.side-nav__navigation {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    width: 100%;
}

    .side-nav__navigation .navigation-button span {
        font-family: var(--font-brand);
        font-size: .875rem;
    }

    .side-nav__navigation .navigation-button__icon {
        flex-shrink: 0;
    }

.side-nav__divider {
    width: 100%;
    margin: 0;
    border: none;
    border-top: 1px solid rgb(var(--color-dark-green));
}

.side-nav__logout {
    display: inline-flex;
    align-items: center;
    height: 44px;
    color: rgb(var(--color-dark-green));
    font-family: var(--font-brand);
    font-size: var(--font-size-body);
    line-height: var(--line-height-large);
    text-decoration: underline;
}

    .side-nav__logout:hover,
    .side-nav__logout:focus-visible {
        color: rgb(var(--color-dark-green));
    }

    .side-nav__logout:focus-visible {
        outline: 2px solid rgb(var(--color-dark-green));
        outline-offset: 2px;
    }

@media (min-width: 768px) {
    .sidenav-container__sidenav {
        display: block;
    }

    .sidenav-container__content {
        margin: 3rem var(--container-padding-x) 0 var(--container-padding-x);
    }
}

@media (min-width: 1024px) {
    .sidenav-container__sidenav {
    }
}