.col-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
}

.reverse.row-eq-height {
    display: -webkit-flex; /* Safari */
    -webkit-flex-direction: row-reverse; /* Safari 6.1+ */
    display: flex;
    flex-direction: row-reverse;
}

.row-eq-height {
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    -o-display: flex;
    display: flex;
}

.boxproduct-with-background .row-eq-height img {
    max-width: initial;
    width: 100%;
    height: 100%;
}

.box-content-text .pad-box h3 {
    margin-bottom: 10px;
    font-weight: 900;
    font-size: 34px;
}

.box-content-text .pad-box p {
    font-size: 18px;
    line-height: 1.56;
    font-weight: normal;
}

.image-stamp {
    width: 125px;
    height: 125px;
    line-height: 125px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 125 125'%3E%3Ctitle%3EAsset 1%3C/title%3E%3Cg id='Layer_2' data-name='Layer 2'%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cg id='E.ON_Bollo_Scritta_Grande' data-name='E.ON Bollo Scritta Grande'%3E%3Cpath id='Fill-281-Copy-4' d='M20.23,4A20.37,20.37,0,0,0,4,20.23a224.24,224.24,0,0,0,0,84.54A20.37,20.37,0,0,0,20.23,121a225.78,225.78,0,0,0,42.27,4,225.78,225.78,0,0,0,42.27-4A20.37,20.37,0,0,0,121,104.77a224.25,224.25,0,0,0,0-84.54A20.37,20.37,0,0,0,104.77,4,224.24,224.24,0,0,0,20.23,4Z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.image-stamp.top-left {
    top: 10px;
    left: 10px;
}

.image-stamp.top-right {
    top: 10px;
    right: 10px;
}

.image-stamp.bottom-left {
    bottom: 10px;
    left: 10px;
}

.image-stamp.bottom-right {
    bottom: 10px;
    right: 10px;
}

.image-stamp.small p {
    display: inline-block;
    vertical-align: middle;
    color: #FFFFFF;
    font-size: 18px;
}

.image-stamp.big p {
    display: inline-block;
    vertical-align: middle;
    color: #FFFFFF;
    font-size: 24px;
}

/* ++++++++++++++++++ IF CONTAINER IS NORMAL ++++++++++++++++++ */
.no-padding-image {
    padding-right: 0;
}

.no-padding-text {
    padding-right: 25px;
}

.reverse .no-padding-image {
    padding-left: 0;
    padding-right: 25px;
}

.reverse .no-padding-text {
    padding-right: 0;
    padding-left: 25px;
}

/* ++++++++++++++++++ IF CONTAINER IS FLUID ++++++++++++++++++ */
.container-fluid .reverse .no-padding-image {
    padding-left: 0;
    padding-right: 0;
}

.container-fluid .reverse .no-padding-text {
    padding-left: 0;
    padding-right: 0;
}

.container-fluid .anchor-image {
    margin-left: 0;
    margin-right: 0;
}

/* +++++++++++++++++++ WHITE BG-COLOR ++++++++++++++++++++ */
.boxproduct-with-background .box-content-text .color_set1 .pad-box,
.boxproduct-with-background .box-content-text .color_set2 .pad-box,
.boxproduct-with-background .box-content-text .color_set3 .pad-box {
    padding-top: 10px;
    padding-left: 30px;
    padding-right: 30px;
}

.boxproduct-with-background .top-margin.pad-box {
    padding-top: 35px;
}

.boxproduct-with-background .pad-box {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 60px;
}

.boxproduct-with-background .pad-box.no-links {
    padding-bottom: 40px;
}

.boxproduct-with-background .pad-box.links {
    padding-bottom: 0;
}

.boxproduct-with-background .color_set1 .pad-box.no-links,
.boxproduct-with-background .color_set2 .pad-box.no-links,
.boxproduct-with-background .color_set3 .pad-box.no-links {
    padding-bottom: 10px;
}

.boxproduct-with-background .reverse .color_set1 .pad-box,
.boxproduct-with-background .reverse .color_set2 .pad-box,
.boxproduct-with-background .reverse .color_set3 .pad-box {
    padding-left: 0;
}

/* +++++++++++++++++++ NEW REFACTOR ++++++++++++++++++++ */

.boxproduct-with-background .container .flex-row-reverse .img-container {
}

.boxproduct-with-background .container .flex-row-reverse .text-container {
    padding: 0;
}

.boxproduct-with-background .container .flex-row .img-container {
}

.boxproduct-with-background .container .flex-row .text-container {
    padding: 0;
}

.boxproduct-with-background .container-fluid .text-container {
    padding: 0;
}

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

    .boxproduct-with-background .anchor-image {
        display: block;
        height: calc(768px / 2);
    }

    .boxproduct-with-background .anchor-image img {
        max-width: 100%;
    }

    .boxproduct-with-background .reverse .color_set1 .pad-box,
    .boxproduct-with-background .reverse .color_set2 .pad-box,
    .boxproduct-with-background .reverse .color_set3 .pad-box {
        padding-left: 30px;
    }

    .boxproduct-with-background .container .flex-row .img-container,
    .boxproduct-with-background .container .flex-row-reverse .img-container,
    .boxproduct-with-background .container-fluid .flex-row .img-container,
    .boxproduct-with-background .container-fluid .flex-row-reverse .img-container {
        padding: 0;
        margin: 0;
    }

    .boxproduct-with-background .text-container {
        padding: 0;
    }

    .box-content-text .pad-box {
        padding-left: 30px;
        padding-right: 30px;
        padding-top: 25px;
    }

    .row-eq-height {
        flex-direction: column;
    }

    .reverse.row-eq-height {
        flex-direction: column;
    }

    .reverse .no-padding-text, .reverse .no-padding-image {
        padding-right: 0;
        padding-left: 0;
    }

    .no-padding-text, .no-padding-image {
        padding-right: 0;
        padding-left: 0;
    }

    .box-content-text .pad-box .link-automator {
        padding-bottom: 50px;
    }

    .box-content-text .pad-box h3 {
        font-size: 30px;
        font-style: normal;
        font-weight: 900;
        line-height: 1.07;
        margin-bottom: 20px;
    }

    .box-content-text .pad-box p {
        font-size: 16px;
        line-height: 1.31;
    }

    .reverse .color_set1 .pad-box, .reverse .color_set2 .pad-box, .reverse .color_set3 .pad-box {
        padding-left: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .boxproduct-with-background .anchor-image {
        height: calc(100vw / 2);
    }

    .image-stamp {
        width: 100px;
        height: 100px;
        line-height: 100px;
    }

    .image-stamp.small p {
        font-size: 14px;
    }

    .image-stamp.big p {
        font-size: 18px;
    }
}

@media only screen and (max-width: 450px) {
    .image-stamp {
        width: 90px;
        height: 90px;
        line-height: 90px;
    }

    .image-stamp.small p {
        font-size: 12px;
    }

    .image-stamp.big p {
        font-size: 16px;
    }
}