.flex_layout.image_text_below .image_wrapper{
    margin-bottom: 4.5rem;
    position: relative;
    grid-column: 1 / -1;
    display: grid; grid-template-columns: repeat(12, minmax(0, 1fr));
    /* height: 100%; */
    height: fit-content;
}
.flex_layout.image_text_below .image{
    grid-column-end: span 11;
    order: 2;
}

.flex_layout.image_text_below .image img{
    object-fit: cover;

    aspect-ratio: 0.935;

    width: 100%; height: 100%;
}

.flex_layout.image_text_below .caption span{
    display: block;
    width: 100%;
    transform: translateY(-100%) rotate(90deg);
    transform-origin: bottom left;
    white-space: nowrap;
}


.flex_layout.image_text_below .image--left .caption{
    order: 3;
}

.flex_layout.image_text_below .image--right .caption{
    order: 1;
}

.flex_layout.image_text_below .image--right .caption span{
    transform: translate(100%, 0%) rotate(90deg);
    transform-origin: top left;
    place-self: end;
}

.flex_layout.image_text_below .content-wrapper{
    /* grid-column: 4 / span 7; */
    /* font-size: var(--body-large); */
}

.flex_layout.image_text_below .content-wrapper.col3{
    grid-column: 3 / span 7;
}

.flex_layout.image_text_below .content-wrapper.col4{
    grid-column: 4 / span 7;
}

@media only screen and (max-width: 992px){

    .flex_layout.image_text_below .image{
        margin-bottom: 0;
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .flex_layout.image_text_below .image img{
        grid-column: 1 / -1;
        order: 2;
    }

    .flex_layout.image_text_below .caption,
    .flex_layout.image_text_below .image--left .caption{
        grid-column: 1 / -1;
        order: 1;
    }

    .flex_layout.image_text_below .caption span,
    .flex_layout.image_text_below .image--right .caption span{
        display: block;
        transform: none;
        place-self: end;
        padding-inline: var(--grid-margin);
        padding-block: .5rem;
        white-space: wrap;
    }

    .flex_layout.image_text_below .content-wrapper{
        order: 3;
        grid-column: 1 / -1;
        padding: var(--grid-margin);
    }

    .flex_layout.image_text_below .content-wrapper.col3,
    .flex_layout.image_text_below .content-wrapper.col4{
        grid-column: 1 / -1;
    }
}