﻿@keyframes spin {
    0 {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg)
    }
}

@keyframes rotateImageLoading {
    from {
        transform: translate(-50%,-50%) rotateY(0) scale(1.01)
    }

    to {
        transform: translate(-50%,-50%) rotateY(360deg) scale(1.01)
    }
}

@keyframes shine-skeleton-lines {
    0 {
        background-position: -100px
    }

    40%,100% {
        background-position: 600px
    }
}

.cmp-three-cards {
    background-color: #f4f4f3
}

    .cmp-three-cards.mod__dark {
        background: #1b1b1b
    }

        .cmp-three-cards.mod__dark .cmp-title__text {
            color: #fff
        }

        .cmp-three-cards.mod__dark .cmp-text p {
            color: #fff
        }

            .cmp-three-cards.mod__dark .cmp-text p > a {
                color: #fff;
                text-decoration: underline
            }

.cmp-three-cards__wrapper {
    display: flex;
    flex-direction: column;
    gap: 32px;
    max-width: 1436px;
    margin: 0 auto;
    padding: 32px 0
}

.cmp-three-cards__wrapper__title {
    padding: 0 16px
}

    .cmp-three-cards__wrapper__title .cmp-title__text {
        margin: 0;
        color: #000;
        text-align: center;
        font-family: 'CupraBook',sans-serif;
        font-size: 24px;
        line-height: 28px;
        font-weight: 350;
        text-transform: uppercase
    }

.cmp-three-cards__wrapper__slider {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
    max-width: 100%;
    min-height: 376px;
    padding: 0 16px;
    overflow-y: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory
}

.cmp-three-cards-card {
    overflow: hidden;
    position: relative;
    min-width: 244px;
    width: 100%;
    height: 376px;
    scroll-snap-align: center;
    transition: none
}

    .cmp-three-cards-card:hover .cmp-three-cards-card__image .cmp-image img {
        transform: scale(1.1)
    }

    .cmp-three-cards-card:hover .cmp-three-cards-card__overlay {
        height: 268px
    }

.cmp-three-cards-card__image {
    height: 100%
}

    .cmp-three-cards-card__image .cmp-image {
        height: 100%
    }

    .cmp-three-cards-card__image .cmp-image__image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform .4s
    }

.cmp-three-cards-card__overlay {
    display: flex;
    align-items: flex-end;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 238px;
    background: linear-gradient(0,#1b1b1b 0,rgba(27,27,27,0.8) 50%,rgba(27,27,27,0) 100%);
    transition: height .4s
}

.cmp-three-cards-card__overlay__info {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    padding: 16px 8px
}

.cmp-three-cards-card__overlay__info__title .cmp-title__text {
    font-family: 'CupraRegular',sans-serif;
    font-size: 20px;
    line-height: 24px;
    color: #fff;
    text-align: center;
    font-weight: 400;
    text-transform: uppercase
}

.cmp-three-cards-card__overlay__info__text .cmp-text p {
    font-family: 'CupraBook',sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    text-align: center;
    font-weight: 350
}

@media(min-width:764px) {
    .cmp-three-cards__wrapper__title {
        padding: 0 24px
    }

        .cmp-three-cards__wrapper__title .cmp-title__text {
            font-family: 'CupraLight',sans-serif;
            font-size: 40px;
            line-height: 44px
        }

    .cmp-three-cards__wrapper__slider {
        gap: 24px;
        padding: 0 24px
    }

    .cmp-three-cards-card {
        min-width: auto
    }

        .cmp-three-cards-card:hover .cmp-three-cards-card__overlay {
            height: 262px
        }

    .cmp-three-cards-card__overlay {
        height: 232px
    }

    .cmp-three-cards-card__overlay__info__title .cmp-title__text {
        font-size: 24px;
        line-height: 28px
    }
}

@media(min-width:1016px) {
    .cmp-three-cards__wrapper__title {
        padding: 0 32px
    }

    .cmp-three-cards__wrapper__slider {
        gap: 32px;
        padding: 0 32px
    }

    .cmp-three-cards-card {
        height: 486px
    }

        .cmp-three-cards-card:hover .cmp-three-cards-card__overlay {
            height: 298px
        }

    .cmp-three-cards-card__overlay {
        height: 268px
    }

    .cmp-three-cards-card__overlay__info {
        padding: 32px 16px
    }

    .cmp-three-cards-card__overlay__info__text .cmp-text p {
        font-size: 20px
    }
}

@media(min-width:1436px) {
    .cmp-three-cards__wrapper__title .cmp-title__text {
        font-size: 60px;
        line-height: 64px
    }

    .cmp-three-cards-card {
        height: 520px
    }

        .cmp-three-cards-card:hover .cmp-three-cards-card__overlay {
            height: 311px
        }

    .cmp-three-cards-card__overlay {
        height: 281px
    }

    .cmp-three-cards-card__overlay__info__title .cmp-title__text {
        font-size: 30px;
        line-height: 34px
    }

    .cmp-three-cards-card__overlay__info__text .cmp-text p {
        font-size: 24px;
        line-height: 28px
    }
}

@media(min-width:1436px) {
    .cmp-three-cards__wrapper__slider {
        padding: 0
    }
}
