.text-image-flip.component {
    position: relative;
    z-index: 20;
    overflow: hidden;
}
.text-image-flip .flex-set.image_left {
    flex-direction: row;
}
.text-image-flip .flex-set.image_right {
    flex-direction: row-reverse;
}
.text-image-flip .flex-set {
    display: flex;
    padding-top: 150px;
    padding-bottom: 150px;
}
.text-image-flip .flex-set .image {
    width: 40%;
    position: relative;
    overflow: hidden;
}
.text-image-flip .flex-set .content {
    width: 60%;
}
/* image */
.text-image-flip .flex-set .image .img_16_9 {
    padding-bottom: 80%;
    min-height: 100%;
}
/* content */
.text-image-flip .flex-set .content .inside {
    padding-top: 10%;
    padding-bottom: 10%;
    width: 75%;
}
.text-image-flip .content .inside .icon {
    height: 50px;
    width: auto;
}


.text-image-flip .flex-set.image_left .image::after {
    content: '';
    height: 140px;
    width: 140px;
    display: block;
    position: absolute;
    top: -70px;
    right: -70px;
    transform: rotate(-45deg);
    background-color: var(--space);
}
.text-image-flip .flex-set.image_right .image::after {
    content: '';
    height: 140px;
    width: 140px;
    display: block;
    position: absolute;
    top: -70px;
    left: -70px;
    transform: rotate(-45deg);
    background-color: var(--space);
}


.text-image-flip .space_background .flex-set.image_left .image::after,
.text-image-flip .space_background .flex-set.image_right .image::after {
    background-color: var(--space);
}
.text-image-flip .ice_background .flex-set.image_left .image::after,
.text-image-flip .ice_background .flex-set.image_right .image::after {
    background-color: var(--ice);
}

.text-image-flip .flex-set.image_left .content .inside {
    padding-left: 16.66666%;
    float: left;
}
.text-image-flip .flex-set.image_right .content .inside {
    padding-right: 16.66666%;
    float: right;
}

@media(max-width: 1399.98px) {
    .text-image-flip .flex-set .content .inside {
        width: 85%;
    }
    .text-image-flip .flex-set.image_left .image::after {
        height: 110px;
        width: 110px;
        top: -55px;
        right: -55px;
    }
    .text-image-flip .flex-set.image_right .image::after {
        height: 110px;
        width: 110px;
        top: -55px;
        left: -55px;
    }
}
@media(max-width: 991.98px) {
    .text-image-flip .flex-set .content .inside {
        width: 90%;
    }
    .text-image-flip .flex-set {
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .text-image-flip .flex-set.image_left .image::after {
        height: 80px;
        width: 80px;
        top: -40px;
        right: -40px;
    }
    .text-image-flip .flex-set.image_right .image::after {
        height: 80px;
        width: 80px;
        top: -40px;
        left: -40px;
    }
    .text-image-flip .content .inside .icon {
        height: 40px;
    }
}
@media(max-width: 575.98px) {
    .text-image-flip .flex-set.image_left {
        flex-direction: column;
    }
    .text-image-flip .flex-set.image_right {
        flex-direction: column;
    }
    .text-image-flip .flex-set.image_left .content .inside,
    .text-image-flip .flex-set.image_right .content .inside {
        padding-left: 15px;
        padding-right: 15px;
        width: 100%;
    }
    .text-image-flip .flex-set {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .text-image-flip .flex-set .image,
    .text-image-flip .flex-set .content {
        width: calc(100% - 40px);
    }
    .text-image-flip .flex-set.image_left .image,
    .text-image-flip .flex-set.image_left .content {
        margin: 0;
    }
    .text-image-flip .flex-set.image_left .content .inside {
        padding-right: 0;
    }
    .text-image-flip .flex-set.image_right .image,
    .text-image-flip .flex-set.image_right .content {
        margin-left: 40px;
    }
    .text-image-flip .flex-set.image_right .content .inside {
        padding-left: 0;
        padding-right: 15px;
    }
    .text-image-flip .content .inside .icon {
        height: 35px;
    }
}

/* adjacent blocks */
.text-image-flip:has(+ .text-image-flip) .flex-set {
    padding-bottom: 0px;
}