.filter {
    background-color: var(--white);
    left: -100vw;
    height: 100vh;
    overflow-y: scroll;
    padding: 8.5vw 9vw;
    position: fixed;
    top: 0;
    transition: left .25s ease-in;
    width: 100vw;
    z-index: 10;
}
.filter--spawn {
    left: 0;
    transition: left .25s ease-out;
}
.filter__header {
    align-items: center;
    border-bottom: 1px solid #C9C9C9;
    display: flex;
    justify-content: space-between;
    padding-bottom: 5vw;
}
.filter__title {
    color: var(--mColor);
    font-size: 2.0625rem;
    margin-top: .125rem;
}
.filter__reload {
    border: .0625rem solid var(--mColor);
    color: var(--mColor);
    font-family: var(--ffMRe);
    font-size: .9375rem;
    line-height: 1.625rem;
    padding: 7.5px var(--fsTitleH2) 5.5px var(--fsTitleH2);
}
.filter__close {
    margin: .5vw 0 8vw 0;
}
.filter__item {
    display: flex;
    gap: 4vw;
}
.filter__name {
    font-family: var(--ffMRe);
    font-size: var(--fsTitleH3);
    line-height: calc(var(--fsTitleH3) * 1.1);
    width: 70%;
}
.filter__checkbox {
    border: .0625rem solid #0B0B0B;
    border-radius: .25rem;
    height: var(--fsTitleH2);
    width: var(--fsTitleH2);
}
.filter__choices {
    align-items: center;
    display: flex;
    font-family: var(--ffMXBo);
    font-size: var(--fsTitleH2);
    line-height: var(--fsTitleMore);
    position: relative;
}
.filter__choices::marker {
    content: "";
}
.filter__choices::after {
    aspect-ratio: 7/12.5;
    content: url(../../img/logosIcons/up.svg);
    display: block;
    height: auto;
    margin-top: .75rem;
    position: absolute;
    right: 0;
    rotate: 180deg;
    transition: all .25s ease-in-out;
    width: .7788rem;
}
.filter__title[open] > .filter__choices::after {
    margin-top: -0.65rem;
    rotate: 0deg;
    transition: all .25s ease-in-out;
}
.filter__title--sub {
    border-bottom: 1px solid #C9C9C9;
    margin-top: 0;
    padding: 5vw 0 5.5vw 0;
}
.filter__title--sub:last-of-type {
    border-bottom: unset;
}
.filter__container {
    display: flex;
    flex-direction: column;
    gap: 7vw;
    margin: 6.5vw 0 3vw 0;
}
.filter__results {
    align-items: start;
    background-color: var(--mColor);
    color: var(--white);
    display: none;
    font-family: var(--ffMBo);
    font-size: var(--fsCorpsLess);
    gap: var(--fsCorpsLess);
    justify-content: center;
    left: 8.5vw;
    margin-bottom: -7vh;
    padding: var(--fsCorps) 2.125rem var(--fsCorpsLess) 2.125rem;
    position: sticky;
    text-transform: uppercase;
    top: 85dvh;
    width: 83vw;
    z-index: 2;
}

@media screen and (min-width: 767.98px) {
    .filter__container--actus {
        margin-top: 0;
    }
    .filter__results {
        margin-bottom: -4.2vh;
    }
}

@media screen and (min-width: 991.98px) {
    .filter {
        overflow-y: visible;
        padding: 0;
        position: static;
        width: 100%;
        z-index: 0;
    }
    .filter__close {
        display: none;
    }
    .filter__title {
        font-size: var(--fsSubtitle);
        line-height: 1.625rem;
    }
    .filter__choices {
        font-size: var(--fsSubtitle);
        line-height: 1.625rem;
    }
    .filter__header {
        padding-bottom: 2.5vw;
    }
    .filter__title--sub {
        padding: 2.5vw 0 2.5vw 0;
    }
    .filter__name {
        font-size: var(--fsCorpsLess);
        line-height: var(--fsTitleH3);
        margin-top: .25rem;
        width: 80%;
    }
    .filter__checkbox {
        appearance: none;
        -webkit-appearance: none;
        cursor: pointer;
        position: relative;
    }
    .filter__checkbox:checked {
        background-color: var(--tColor);
        border: 1px solid var(--tColor);
    }
    .filter__container {
        gap: var(--fsCorps);
        margin: 2.5vw 0 1vw 0;
    }
    .filter__item {
        gap: 1.5vw;
    }
    .filter__container--actus {
        margin-top: 0;
    }
    .filter__results {
        display: none;
    }
    
}

@media screen and (min-width: 1599.98px) {
    .filter__title--sub {
        padding: 1.5vw 0;
    }
}

@media screen and (min-width: 1799.98px) {
    .filter__header {
        padding-bottom: 1.5vw;
    }
    .filter__container {
        margin: 1.5vw 0 0vw 0;
    }
}