﻿@keyframes shine-skeleton-lines {
    0 {
        background-position: -100px
    }

    40%,100% {
        background-position: 600px
    }
}

.mod__max-w-xl {
    max-width: 1436px;
    margin: auto
}

.cmp-banner {
    position: relative;
    padding: 32px 0;
    overflow: hidden
}

.cmp-banner__container {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    gap: 16px
}

.cmp-banner__content {
    position: relative;
    text-align: center;
    padding: 0 16px;
    z-index: 1
}

.cmp-banner__buttons {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center
}

@media(min-width:764px) {
    .cmp-banner__container {
        flex-wrap: wrap;
        align-content: center;
        flex-direction: row
    }

    .cmp-banner__content {
        padding: 0;
        text-align: left
    }

    .cmp-banner__buttons {
        flex-direction: row
    }
}

@media(min-width:764px) {
    .cmp-banner__container--h-align-right, .cmp-banner__container--left {
        text-align: right;
        flex-direction: row-reverse
    }

        .cmp-banner__container--h-align-right .cmp-banner__content {
            text-align: right
        }

        .cmp-banner__container--h-align-right .cmp-banner__buttons {
            justify-content: flex-end
        }

    .cmp-banner__container--h-align-center {
        justify-content: center
    }

        .cmp-banner__container--h-align-center .cmp-banner__content {
            text-align: center
        }

        .cmp-banner__container--h-align-center .cmp-banner__buttons {
            justify-content: center
        }

    .cmp-banner__container--v-align-top {
        align-content: start
    }
}

@media(min-width:764px) {
    .cmp-banner__container--h-align-center .cmp-banner__content {
        max-width: 472px
    }
}

@media(min-width:1016px) {
    .cmp-banner__container--h-align-center .cmp-banner__content {
        max-width: 628px
    }
}

.cmp-banner--bg-image .cmp-banner__content {
    padding-top: 100px;
    z-index: 1
}

.cmp-banner--bg-image .cmp-banner__title, .cmp-banner--bg-image .cmp-banner__text {
    text-shadow: 3px -3px 30px rgba(0,0,0,0.8)
}

.cmp-banner--bg-image .cmp-banner__bg {
    z-index: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 135px;
    overflow: hidden
}

    .cmp-banner--bg-image .cmp-banner__bg:after {
        position: absolute;
        content: '';
        width: 100%;
        height: 50px;
        left: 0;
        bottom: 0;
        background: var(--bg-color-primary);
        -webkit-mask-image: linear-gradient(to bottom,transparent 0,#fff 80%);
        mask-image: linear-gradient(to bottom,transparent 0,#fff 80%)
    }

    .cmp-banner--bg-image .cmp-banner__bg img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center
    }

@media(min-width:764px) {
    .cmp-banner--bg-image .cmp-banner__content {
        padding-top: 0
    }

    .cmp-banner--bg-image .cmp-banner__bg {
        height: 100%
    }

        .cmp-banner--bg-image .cmp-banner__bg:after {
            width: 50%;
            height: 100%;
            background: var(--bg-color-primary);
            -webkit-mask-image: linear-gradient(to left,transparent 0,#fff 100%);
            mask-image: linear-gradient(to left,transparent 0,#fff 100%)
        }

    .cmp-banner--bg-image .cmp-banner__container--h-align-right + .cmp-banner__bg:after {
        left: initial;
        right: 0;
        background: var(--bg-color-primary);
        -webkit-mask-image: linear-gradient(to right,transparent 0,#fff 100%);
        mask-image: linear-gradient(to right,transparent 0,#fff 100%)
    }

    .cmp-banner--bg-image .cmp-banner__container--h-align-center + .cmp-banner__bg:after {
        content: none
    }
}

@media(min-width:1436px) {
    .cmp-banner--bg-image .cmp-banner__bg {
        max-width: 1436px;
        left: 50%;
        transform: translateX(-50%)
    }
}
