.page-template-simple-flex .sf-text-image-video .sf-tiv-grid {
    display: grid;
    gap: 30px;
    align-items: start;
}

.page-template-simple-flex .sf-text-image-video .layout-5050 {
    grid-template-columns: 1fr 1fr;
}

.page-template-simple-flex .sf-text-image-video .layout-2575 {
    grid-template-columns: 1fr 2fr;
}

.page-template-simple-flex .sf-text-image-video .layout-7525 {
    grid-template-columns: 2fr 1fr;
}

.page-template-simple-flex .sf-text-image-video .media-first .sf-tiv-media {
    order: 1;
}

.page-template-simple-flex .sf-text-image-video .media-first .sf-tiv-text {
    order: 2;
}

.page-template-simple-flex .sf-text-image-video .sf-tiv-media img,
.page-template-simple-flex .sf-text-image-video .sf-tiv-media video,
.page-template-simple-flex .sf-text-image-video .sf-embed-wrap iframe {
    width: 100%;
    border: 0;
    display: block;
    border-radius: 15px;
}

.page-template-simple-flex .sf-text-image-video .sf-embed-wrap {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    border-radius: 15px;
    overflow: hidden;
}

.page-template-simple-flex .sf-text-image-video .sf-embed-wrap iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.page-template-simple-flex .sf-embed-facade {
    position: absolute;
    inset: 0;
    cursor: pointer;
    display: block;
}

.page-template-simple-flex .sf-embed-facade img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    display: block;
}

.page-template-simple-flex .sf-embed-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.page-template-simple-flex .sf-embed-play svg {
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.5));
}

.page-template-simple-flex .sf-embed-facade:hover .sf-embed-play {
    transform: translate(-50%, -50%) scale(1.12);
}

@media screen and (max-width: 900px) {
    .page-template-simple-flex .sf-text-image-video .sf-tiv-grid {
        grid-template-columns: 1fr;
    }

    .page-template-simple-flex .sf-text-image-video .sf-tiv-col.mobile-last {
        order: 2;
    }
}