.banner.template-1 {
    & .banner-container {
        margin: 0 auto;
    }

    & .banner-slide {
        width: 100%;
        position: relative;
    }

    & .banner-text {
        position: absolute;

        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 10;
        pointer-events: none;
        word-break: break-word;

        display: flex;
        justify-content: center;
        align-items: center;
        justify-self: center;
        margin: auto auto;
        align-self: center;
    }

    & .swiper-pagination {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
    }

    .banner-media {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }
}

.banner.template-1 {
    background: var(--section-background-mobile-color, rgba(0, 0, 0, 0));
    margin: var(--section-margin-mobile-top, 0) var(--section-margin-mobile-right, 0) var(--section-margin-mobile-bottom, 0) var(--section-margin-mobile-left, 0);

    padding: calc(var(--section-padding-mobile-top, 3) * 1rem) calc(var(--section-padding-mobile-right, 0) * 1rem) calc(var(--section-padding-mobile-bottom, 3) * 1rem) calc(var(--section-padding-mobile-left, 0) * 1rem);

    border-style: var(--section-border-mobile-top-style, solid) var(--section-border-mobile-right-style, solid) var(--section-border-mobile-bottom-style, solid) var(--section-border-mobile-left-style, solid);
    border-width: calc(var(--section-border-mobile-top-width, 0) * 1rem) calc(var(--section-border-mobile-right-width, 0) * 1rem) calc(var(--section-border-mobile-bottom-width, 0) * 1rem) calc(var(--section-border-mobile-left-width, 0) * 1rem);
    border-color: var(--section-border-mobile-top-color, rgba(255, 255, 255, 1)) var(--section-border-mobile-right-color, rgba(255, 255, 255, 1)) var(--section-border-mobile-bottom-color, rgba(255, 255, 255, 1)) var(--section-border-mobile-left-color, rgba(255, 255, 255, 1));
    border-radius: calc(var(--section-border-mobile-left-radius, 0) * 1rem) calc(var(--section-border-mobile-top-radius, 0) * 1rem) calc(var(--section-border-mobile-right-radius, 0) * 1rem) calc(var(--section-border-mobile-bottom-radius, 0) * 1rem);

    min-height: var(--section-dimensions-mobile-minHeight, auto);
    height: var(--section-dimensions-mobile-height, auto);
    max-height: var(--section-dimensions-mobile-maxHeight, none);

    & .banner-container {
        min-width: var(--section-dimensions-mobile-minWidth, auto);
        width: var(--section-dimensions-mobile-width, auto);
        max-width: var(--section-dimensions-mobile-maxWidth, none);
    }

    & .banner-text {
        min-width: var(--adText-dimensions-mobile-minWidth, auto);
        width: var(--adText-dimensions-mobile-width, auto);
        max-width: var(--adText-dimensions-mobile-maxWidth, none);
        min-height: var(--adText-dimensions-mobile-minHeight, auto);
        height: var(--adText-dimensions-mobile-height, auto);
        max-height: var(--adText-dimensions-mobile-maxHeight, none);

        font-size: calc(var(--adText-font-mobile-fontSize, 1.5) * 1rem);
        font-weight: var(--adText-font-mobile-fontWeight, 700);
        line-height: var(--adText-font-mobile-lineHeight, 1);
        text-align: var(--adText-font-mobile-textAlign, center);
        font-family: var(--adText-font-mobile-fontFamily, var(--global-font-family));
        text-transform: var(--adText-font-mobile-textTransform, none);

        border-radius: calc(var(--adText-border-mobile-left-radius, 0) * 1rem) calc(var(--adText-border-mobile-top-radius, 0) * 1rem) calc(var(--adText-border-mobile-right-radius, 0) * 1rem) calc(var(--adText-border-mobile-bottom-radius, 0) * 1rem);
    }

    & .title {
    margin: var(--title-margin-mobile-top, 0) var(--title-margin-mobile-right, 0) var(--title-margin-mobile-bottom, 2) var(--title-margin-mobile-left, 0);
        color: var(--title-font-mobile-textColor, rgba(0, 0, 0, 1));
        font-size: calc(var(--title-font-mobile-fontSize, 1.5) * 1rem);
        font-weight: var(--title-font-mobile-fontWeight, 700);
        line-height: var(--title-font-mobile-lineHeight, 1);
        text-align: var(--title-font-mobile-textAlign, center);
        font-family: var(--title-font-mobile-fontFamily, var(--heading-font-family));
        text-transform: var(--title-font-mobile-textTransform, none);
    }
    
    & .banner-media {
        border-style: var(--ads-border-mobile-top-style, solid) var(--ads-border-mobile-right-style, solid) var(--ads-border-mobile-bottom-style, solid) var(--ads-border-mobile-left-style, solid);
        border-width: calc(var(--ads-border-mobile-top-width, 0) * 1rem) calc(var(--ads-border-mobile-right-width, 0) * 1rem) calc(var(--ads-border-mobile-bottom-width, 0) * 1rem) calc(var(--ads-border-mobile-left-width, 0) * 1rem);
        border-radius: calc(var(--ads-border-mobile-left-radius, 0) * 1rem) calc(var(--ads-border-mobile-top-radius, 0) * 1rem) calc(var(--ads-border-mobile-right-radius, 0) * 1rem) calc(var(--ads-border-mobile-bottom-radius, 0) * 1rem);
        border-color: var(--ads-border-mobile-top-color, rgba(255, 255, 255, 1)) var(--ads-border-mobile-right-color, rgba(255, 255, 255, 1)) var(--ads-border-mobile-bottom-color, rgba(255, 255, 255, 1)) var(--ads-border-mobile-left-color, rgba(255, 255, 255, 1));

        min-width: var(--ads-dimensions-mobile-minWidth, auto);
        width: var(--ads-dimensions-mobile-width, 100%);
        max-width: var(--ads-dimensions-mobile-maxWidth, none);
        min-height: var(--ads-dimensions-mobile-minHeight, auto);
        height: var(--ads-dimensions-mobile-height, auto);
        max-height: var(--ads-dimensions-mobile-maxHeight, none);
        padding: calc(var(--ads-padding-mobile-top, 0) * 1rem) calc(var(--ads-padding-mobile-right, 0) * 1rem) calc(var(--ads-padding-mobile-bottom, 1.5) * 1rem) calc(var(--ads-padding-mobile-left, 0) * 1rem);

        &:hover {
            border-color: var(--ads-border-mobile-top-colorHover, rgba(255, 255, 255, 1)) var(--ads-border-mobile-right-colorHover, rgba(255, 255, 255, 1)) var(--ads-border-mobile-bottom-colorHover, rgba(255, 255, 255, 1)) var(--ads-border-mobile-left-colorHover, rgba(255, 255, 255, 1));
        }
    }
}

@container page-container (min-width: 768px) {
    .banner.template-1 {
        margin: var(--section-margin-tablet-top, 0) var(--section-margin-tablet-right, 0) var(--section-margin-tablet-bottom, 0) var(--section-margin-tablet-left, 0);
        padding: calc(var(--section-padding-tablet-top, 3) * 1rem) calc(var(--section-padding-tablet-right, 0) * 1rem) calc(var(--section-padding-tablet-bottom, 3) * 1rem) calc(var(--section-padding-tablet-left, 0) * 1rem);

        border-width: calc(var(--section-border-tablet-top-width, 0) * 1rem) calc(var(--section-border-tablet-right-width, 0) * 1rem) calc(var(--section-border-tablet-bottom-width, 0) * 1rem) calc(var(--section-border-tablet-left-width, 0) * 1rem);
        border-radius: calc(var(--section-border-tablet-left-radius, 0) * 1rem) calc(var(--section-border-tablet-top-radius, 0) * 1rem) calc(var(--section-border-tablet-right-radius, 0) * 1rem) calc(var(--section-border-tablet-bottom-radius, 0) * 1rem);

        min-height: var(--section-dimensions-tablet-minHeight, auto);
        height: var(--section-dimensions-tablet-height, auto);
        max-height: var(--section-dimensions-tablet-maxHeight, none);

        & .banner-container {
            min-width: var(--section-dimensions-tablet-minWidth, auto);
            width: var(--section-dimensions-tablet-width, auto);
            max-width: var(--section-dimensions-tablet-maxWidth, none);
        }

        & .title {
            margin: var(--title-margin-tablet-top, 0) var(--title-margin-tablet-right, 0) var(--title-margin-tablet-bottom, 2) var(--title-margin-tablet-left, 0);
            font-size: calc(var(--title-font-tablet-fontSize, 1.75) * 1rem);
            line-height: var(--title-font-tablet-lineHeight, 1);
            text-align: var(--title-font-tablet-textAlign, center);
        }

        & .banner-text {
            min-width: var(--adText-dimensions-tablet-minWidth, auto);
            width: var(--adText-dimensions-tablet-width, auto);
            max-width: var(--adText-dimensions-tablet-maxWidth, none);
            min-height: var(--adText-dimensions-tablet-minHeight, auto);
            height: var(--adText-dimensions-tablet-height, auto);
            max-height: var(--adText-dimensions-tablet-maxHeight, none);

            font-size: calc(var(--adText-font-tablet-fontSize, 1.5) * 1rem);
            line-height: var(--adText-font-tablet-lineHeight, 1);
            text-align: var(--adText-font-tablet-textAlign, center);

            padding: calc(var(--adText-padding-tablet-top, .5) * 1rem) calc(var(--adText-padding-tablet-right, 1) * 1rem) calc(var(--adText-padding-tablet-bottom, .5) * 1rem) calc(var(--adText-padding-tablet-left, 1) * 1rem);

            border-radius: calc(var(--adText-border-tablet-left-radius, 0) * 1rem) calc(var(--adText-border-tablet-top-radius, 0) * 1rem) calc(var(--adText-border-tablet-right-radius, 0) * 1rem) calc(var(--adText-border-tablet-bottom-radius, 0) * 1rem);
        }

        & .banner-media {
            border-width: calc(var(--ads-border-tablet-top-width, 0) * 1rem) calc(var(--ads-border-tablet-right-width, 0) * 1rem) calc(var(--ads-border-tablet-bottom-width, 0) * 1rem) calc(var(--ads-border-tablet-left-width, 0) * 1rem);
            border-radius: calc(var(--ads-border-tablet-left-radius, 0) * 1rem) calc(var(--ads-border-tablet-top-radius, 0) * 1rem) calc(var(--ads-border-tablet-right-radius, 0) * 1rem) calc(var(--ads-border-tablet-bottom-radius, 0) * 1rem);

            min-width: var(--ads-dimensions-tablet-minWidth, auto);
            width: var(--ads-dimensions-tablet-width, 100%);
            max-width: var(--ads-dimensions-tablet-maxWidth, none);
            min-height: var(--ads-dimensions-tablet-minHeight, auto);
            height: var(--ads-dimensions-tablet-height, 24rem);
            max-height: var(--ads-dimensions-tablet-maxHeight, none);
            padding: calc(var(--ads-padding-tablet-top, 0) * 1rem) calc(var(--ads-padding-tablet-right, 0) * 1rem) calc(var(--ads-padding-tablet-bottom, 1.5) * 1rem) calc(var(--ads-padding-tablet-left, 0) * 1rem);
        }
    }
}

@container page-container (min-width: 992px) {
    .banner.template-1 {
        margin: var(--section-margin-desktop-top, 0) var(--section-margin-desktop-right, 0) var(--section-margin-desktop-bottom, 0) var(--section-margin-desktop-left, 0);
        padding: calc(var(--section-padding-desktop-top, 3) * 1rem) calc(var(--section-padding-desktop-right, 0) * 1rem) calc(var(--section-padding-desktop-bottom, 3) * 1rem) calc(var(--section-padding-desktop-left, 0) * 1rem);

        border-width: calc(var(--section-border-desktop-top-width, 0) * 1rem) calc(var(--section-border-desktop-right-width, 0) * 1rem) calc(var(--section-border-desktop-bottom-width, 0) * 1rem) calc(var(--section-border-desktop-left-width, 0) * 1rem);
        border-radius: calc(var(--section-border-desktop-left-radius, 0) * 1rem) calc(var(--section-border-desktop-top-radius, 0) * 1rem) calc(var(--section-border-desktop-right-radius, 0) * 1rem) calc(var(--section-border-desktop-bottom-radius, 0) * 1rem);

        min-height: var(--section-dimensions-desktop-minHeight, auto);
        height: var(--section-dimensions-desktop-height, auto);
        max-height: var(--section-dimensions-desktop-maxHeight, none);

        & .banner-container {
            min-width: var(--section-dimensions-desktop-minWidth, auto);
            width: var(--section-dimensions-desktop-width, auto);
            max-width: var(--section-dimensions-desktop-maxWidth, none);
        }

        & .title {
            margin: var(--title-margin-desktop-top, 0) var(--title-margin-desktop-right, 0) var(--title-margin-desktop-bottom, 2) var(--title-margin-desktop-left, 0);
            font-size: calc(var(--title-font-desktop-fontSize, 2) * 1rem);
            line-height: var(--title-font-desktop-lineHeight, 1);
            text-align: var(--title-font-desktop-textAlign, center);
        }

        & .banner-text {
            min-width: var(--adText-dimensions-desktop-minWidth, auto);
            width: var(--adText-dimensions-desktop-width, auto);
            max-width: var(--adText-dimensions-desktop-maxWidth, none);
            min-height: var(--adText-dimensions-desktop-minHeight, auto);
            height: var(--adText-dimensions-desktop-height, auto);
            max-height: var(--adText-dimensions-desktop-maxHeight, none);

            font-size: calc(var(--adText-font-desktop-fontSize, 1.5) * 1rem);
            line-height: var(--adText-font-desktop-lineHeight, 1);
            text-align: var(--adText-font-desktop-textAlign, center);

            padding: calc(var(--adText-padding-desktop-top, .5) * 1rem) calc(var(--adText-padding-desktop-right, 1) * 1rem) calc(var(--adText-padding-desktop-bottom, .5) * 1rem) calc(var(--adText-padding-desktop-left, 1) * 1rem);

            border-radius: calc(var(--adText-border-desktop-left-radius, 0) * 1rem) calc(var(--adText-border-desktop-top-radius, 0) * 1rem) calc(var(--adText-border-desktop-right-radius, 0) * 1rem) calc(var(--adText-border-desktop-bottom-radius, 0) * 1rem);
        }

        & .banner-media {
            border-width: calc(var(--ads-border-desktop-top-width, 0) * 1rem) calc(var(--ads-border-desktop-right-width, 0) * 1rem) calc(var(--ads-border-desktop-bottom-width, 0) * 1rem) calc(var(--ads-border-desktop-left-width, 0) * 1rem);
            border-radius: calc(var(--ads-border-desktop-left-radius, 0) * 1rem) calc(var(--ads-border-desktop-top-radius, 0) * 1rem) calc(var(--ads-border-desktop-right-radius, 0) * 1rem) calc(var(--ads-border-desktop-bottom-radius, 0) * 1rem);

            min-width: var(--ads-dimensions-desktop-minWidth, auto);
            width: var(--ads-dimensions-desktop-width, 100%);
            max-width: var(--ads-dimensions-desktop-maxWidth, none);
            min-height: var(--ads-dimensions-desktop-minHeight, auto);
            height: var(--ads-dimensions-desktop-height, 27rem);
            max-height: var(--ads-dimensions-desktop-maxHeight, none);

            padding: calc(var(--ads-padding-desktop-top, 0) * 1rem) calc(var(--ads-padding-desktop-right, 0) * 1rem) calc(var(--ads-padding-desktop-bottom, 1.5) * 1rem) calc(var(--ads-padding-desktop-left, 0) * 1rem);
        }
    }
}