.slide {
    visibility: hidden;
    position: relative;
    opacity: 0;
    height: 0;
}

.slide.active {
    visibility: visible;
    opacity: 1;
    height: 600px;
}

@media (min-width: 767px){
    .slide.active {
        height: 768px;
    }
}

.slider__content {
    padding-top: 80px;
}

@media (min-width: 1024px) {
    .slider__content {
        padding-top: 200px;
    }
}

.slider__number {
    display: none;
}

@media (min-width: 767px) {
    .slider__number {
        position: relative;
        display: block;
        left: 56px;
        margin-bottom: 60px;
        max-width: 465px;
        z-index: 10;
    }
}

.slider__title {
    position: absolute;
    top: 100%;
    left: 0;
    font-size: 60px;
    line-height: 80px;
    font-weight: 700;
    margin-bottom: 0;
}

@media (min-width: 767px) {
    .slider__title {
        font-size: 80px;
    }
}

.slider__title.enter {
    top: 0;
    opacity: 1;
    margin-bottom: 8px;
    animation: titleAnimationEnter 1s cubic-bezier(.17, .84, .44, 1) forwards;
}

@media (min-width: 767px) {
    .slider__title.enter {
        margin-bottom: 20px;
    }
}

.slider__title.exit {
    animation: titleAnimationExit 1s cubic-bezier(.17, .84, .44, 1) forwards;
}

.slider__description {
    position: absolute;
    max-width: 465px;
    top: 100%;
    left: 0;
    margin-bottom: 0;
}

.slider__description.enter {
    top: 0;
    opacity: 1;
    margin-bottom: 8px;
    animation: titleAnimationEnter 1s cubic-bezier(.17, .84, .44, 1) forwards;
}

.slider__description.exit{
    animation: titleAnimationExit 1s cubic-bezier(.17, .84, .44, 1) forwards;
}

.slider__primary__image {
    position: absolute;
    bottom: 0;
    right: -100px;
    width: 375px;
    min-width: 375px;
}
@media (min-width: 767px) {
    .slider__primary__image {
        right: -80px;
        width: 780px;
        min-width: 780px;
    }
}
@media (min-width: 1024px) {
    .slider__primary__image {
        right: -200px;
        width: 1030px;
        min-width: 1030px;
    }
}

@media (min-width: 1280px) {
    .slider__primary__image {
        right: 0;
        width: 1130px;
        min-width: 1130px;
    }
}

@media (min-width: 1550px) {
    .slider__primary__image {
        right: 0px;
        width: 1130px;
        min-width: 1130px;
    }
}

.container__primary__image.active {
    z-index: 10;
}

.container__primary__image.exit {
    animation: nextSlideImageExit 1s cubic-bezier(.17, .84, .44, 1) forwards;
}

.container__next__slide__image.active {
    z-index: 1;
}

.container__next__slide__image {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 389px;
    height: 219px;
}

.container__next__slide__image img {
    object-position: left;
    object-fit: none;
    width: 389px;
    height: 219px;
}

.container__next__slide__image.exit {
    animation: nextSlideImageExit 1s .2s cubic-bezier(.17, .84, .44, 1) forwards;
}

.slider__next__slide {
    display: none;
}

@media (min-width: 767px) {
    .slider__next__slide {
        display: block;
        position: absolute;
        overflow: hidden;
        right: 50px;
        bottom: 80px;
        width: 389px;
        height: 219px;
        border-radius: 5px;
        z-index: 10;
    }
}

/*.slider__next__slide{*/
/*    position: absolute;*/
/*    right: 50px;*/
/*    bottom: 80px;*/
/*    width: 389px;*/
/*    z-index: 10;*/
/*}*/
.slider__next__slide img {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.slider__next__progress {
    position: relative;
    height: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    width: 100%;
}
.slider__buttons {
    display: none;
}
@media (min-width: 767px) {
    .slider__buttons {
        position: absolute;
        bottom: 339px;
        right: 50px;
        display: flex;
        align-items: center;
    }
}

.slider__buttons svg:first-of-type {
    margin-right: 20px;
}


/**
 * Animations
 */

@keyframes titleAnimationExit {
    0% {
        top: 0;
        opacity: 1;
    }
    99% {
        top: -100%;
        opacity: 0;
    }
    99.99% {
        top: 100%;
        opacity: 0;
    }
}

@keyframes titleAnimationEnter {
    0% {
        top: 100%;
        opacity: 0;
    }
    100% {
        height: auto;
        visibility: visible;
        top: 0;
        opacity: 1;
    }
}

@keyframes primaryImageAnimationExit {
    0% {
        transform: translateX(0);
        opacity: 1;
        z-index: 1;
    }
    99% {
        z-index: 1;
        transform: translateX(-100%);
        opacity: 0;
    }
    99.99% {
        z-index: -1;
        transform: translateX(0);
    }
}

@keyframes nextSlideImageExit {
    0% {
        z-index: 1;
    }
    99% {
        z-index: 1;
        width: 0;
    }
    99.99% {
        z-index: -1;
        width: 0;
    }
}
