.image-text {
	overflow: hidden;
}

.flex-row {
    display: flex;
    flex-wrap: wrap;
}

.image-text .flex-row {
    flex-direction: column-reverse;
    align-items: center;
}

.image-text__img {
    margin-top: 64px;
    position: relative;
    z-index: 1;
    height: 482px;
}

.image-text__img img {
    border-radius: 30px;
    max-height: 600px;
    max-width: 660px;
}

img.image-text__img__pattern {
    border-radius: 0;
    position: absolute;
    top: -105px;
    left: 15px;
    z-index: -1;
    width: 230px;
    height: auto;
    transform: rotate(40deg);
}

.image-text__img__tag {
    border-radius: 23px;
    height: 120px;
    width: 113px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--black);
    top: -28px;
    right: 0;
    position: absolute;
}

.image-text__img__tag img {
    width: 75px;
    height: auto;
}

.image-text__text {
    margin-top: 32px;
}

.image-text__img--full {
    margin: 0;
}

.image-text__img--video {
    height: 306px;
    margin: 0;
}

.video-bttn {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    z-index: 2;
}

.video-bttn svg {
    transition: all .3s;
}

.image-text__half--contain .image-text__img {
    height: auto;
}

.image-text__half--contain .image-text__img img {
    object-fit: contain!important;
    height: auto!important;
    max-width: none !important;
}

@media (min-width: 768px) {
    .image-text__img {
        margin-top: 76px;
        height: 482px;
        width: 548px;
        margin-left: auto;
        margin-right: auto;
    }

    img.image-text__img__pattern {
        top: -130px;
        left: -115px;
        width: 350px;
        transform: rotate(0deg);
    }

    .image-text__img__tag {
        height: 169px;
        width: 160px;
        top: -50px;
        right: -59px;
    }

    .image-text__img__tag img {
        width: 106px;
    }

    .image-text__text {
        margin-top: 32px;
        width: 548px;
        margin-left: auto;
        margin-right: auto;
    }

    .image-text__img--full {
        margin: 0;
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .image-text__text--full,
    .image-text__img--video {
        width: 100%;
    }

    .image-text__img--video {
        height: 482px;
        margin: 0;
    }
}


@media (min-width: 1200px) {

    .image-text .flex-row {
        flex-direction: row;
    }

    .image-text .flex-opposite {
        flex-direction: row-reverse;
    }

    .image-text__img {
        margin-top: 0;
        height: auto;
        width: 502px;
        margin-right: 0;
    }

    img.image-text__img__pattern {
        top: -130px;
        left: -115px;
        width: 350px;
    }

    .image-text__img__tag {
        top: -63px;
        right: -20px;
    }

    .image-text__text {
        margin: 0;
        width: 100%;
    }

    .image-text__text h2 {
        margin-right: 60px;
    }

    .image-text__text--sml {
        max-width: 600px;
    }

    .image-text--left .image-text__text--sml,
    .image-text--right .image-text__img {
        margin-left: auto;
    }

    .image-text--left .image-text__img {
        margin-right: 79px;
    }

    .image-text--left .image-text__img--video {
        margin: 0;
    }

    /* No-accent: fixed image box for object-fit: cover; scoped off video variant. */
    .image-text--no-accent .image-text__img:not(.image-text__img--video) img {
        width: 100%;
        max-width: 100%;
        height: 600px;
        max-height: 600px;
        object-fit: cover;
        object-position: center;
    }

    .image-text__img--video  {
        width: 100%;
    }

    .image-text__img--video {
        height: auto;
    }

    .video-bttn:hover svg {
        transform: scale(1.1);
    }

    .bg-black img.image-text__img__pattern,
    .bg-red img.image-text__img__pattern {
        filter: brightness(0) invert(1);
    }

    .image-text--margins {
        margin-top: 67px;
    }
 
    .image-text--margins .image-text__img {
        margin-top: 13px;
        height: auto;
        width: 502px;
        margin-right: 0;
    }

}