.oxi-image-square-hover-style-21 .oxi-image-hover-heading,
.oxi-image-square-hover-style-21 .oxi-image-hover-content {
    line-height: 120%;
}

.oxi-image-square-hover-style-21 .oxi-image-hover-figure .oxi-image-hover-image {
    z-index: 10;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-caption-tab {
    display: flex;
    justify-content: flex-start;
    text-align: left;
    overflow: hidden;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-figure.top_to_bottom .oxi-image-hover-caption-tab{
    justify-content: flex-end;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-button{
    position: absolute;
    right: 0;
    left: 0;
    z-index: 1;
    text-align: right;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-figure.top_to_bottom .oxi-image-hover-button{
    bottom:  0;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-figure.bottom_to_top .oxi-image-hover-button{
    top: 0;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-figure.top_to_bottom .oxi-image-hover-figure-caption{
    bottom:  auto;
    height: 100%;
    margin: 0  0 0 0 ;
}
.oxi-image-square-hover-style-21 .oxi-image-hover-figure.bottom_to_top .oxi-image-hover-figure-caption{
    top: auto;
    height: 100%;
    margin: 0  0 0 0 ;
}

.oxi-image-square-hover-style-21:hover .oxi-image-hover-figure .oxi-image-hover-figure-caption,
.oxi-image-square-hover-style-21.oxi-touch .oxi-image-hover-figure .oxi-image-hover-figure-caption{
    margin: -10px;
}
.oxi-image-square-hover-style-21:hover .oxi-image-hover-figure .oxi-image-hover-figure-caption,
.oxi-image-square-hover-style-21.oxi-touch .oxi-image-hover-figure .oxi-image-hover-figure-caption{
    height: 130%;
}
