.gallery {
    padding: 100px 0;
    background: var(--grey-dark);
}

.gallery-wrap {
    margin: 50px 0;
}

.gallery-preload-items {
    display: none;
}

.carousel {
    display: -webkit-box;
    display: -ms-flexbox;
    align-items: center;
    justify-content: center;
    display: flex;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.carousel_container {
    position: relative;
    width: 22vw;
    height: 20vw;
    overflow: hidden;
    cursor: -webkit-grab;
    cursor: grab;
}

.carousel_container>ul>li {
    width: 22vw;
    height: 20vw;
    display: inline-block;
    margin: 0;
}

.carousel_container>ul {
    list-style: none;
    position: relative;
    height: 100%;
    padding: 0;
    margin: 0;
}

.carousel_container:nth-child(2) {
    width: 50vw;
    height: 30vw;
}

.carousel_container:nth-child(2)>ul>li {
    width: 50vw;
    height: 30vw;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel_container:nth-child(1) {
    left: -10px;
}

.carousel_container:nth-child(3) {
    right: -10px;
}

.carousel_container:nth-child(1) img,
.carousel_container:nth-child(3) img {
    opacity: .25;
}

.gallery-description-top {
    margin-bottom: 50px;
}

@media screen and (max-width: 980px) {
    .gallery {
        padding: 50px 0;
    }
    .carousel_container,
    .carousel_container>ul>li {
        width: 15vw;
        height: 20vw;
    }
    .carousel_container:nth-child(2),
    .carousel_container:nth-child(2)>ul>li {
        width: 70vw;
        height: 40vw;
    }
}

@media screen and (max-width: 576px) {
    .carousel_container:nth-child(1),
    .carousel_container:nth-child(1)>ul>li,
    .carousel_container:nth-child(3),
    .carousel_container:nth-child(3)>ul>li {
        display: none;
    }
    .carousel_container:nth-child(2),
    .carousel_container:nth-child(2)>ul>li {
        width: 100vw;
        height: 60vw;
    }
}