/* ==========================================================
   yost.technology - STYLE YOST
   componenti strutturali e colonne riutilizzabili
   ========================================================== */

.y2col-titolo,
.y3col-titolo {
    font-weight: bold;
    text-align: center;
}

.y2col-testo,
.y3col-testo {
    text-align: center;
}

.ycol1 li,
.maintext ul li {
    position: relative;

    margin: 10px 0;
    padding-left: 30px;

    color: #181717;
    letter-spacing: 0;
}

.ycol1 li:before,
.maintext ul li:before {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;
    left: 0;

    margin: auto;

    color: #444444;

    font-family: FontAwesome;
}

.ycol1:last-child li:before {
    color: #888888;
}

.maintext h1 + .trecol .ycol1 .col {
    text-align: center;
}

.trecol .ycol1 .col {
    line-height: 160%;
}

.maintext h1 + .trecol .ycol1 .col strong {
    color: #444444;
}

.trecol .ycol1 .col img {
    display: block;
    margin-top: 15px;
}

footer .trecol {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

    max-width: 1200px;
    margin: auto;
    padding: 60px 0 30px;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.trecol .ycol1 p {
    margin: 0 0 20px;
}

.duecol,
.trecol,
.quattrocol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    justify-content: center;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
}

.duecol {
    margin: 0 -15px;
}

.trecol {
    margin: 0 -10px;
}

.quattrocol {
    margin: 0 -5px;
}

.duecol .ycol1 {
    width: 50%;
}

.duecol .ycol1 .col {
    margin: 0 15px 30px;
    padding: 0;
}

.trecol .ycol1 {
    width: 33.33%;
}

.trecol .ycol1 .col {
    margin: 0 10px 30px;
    padding: 0;
}

.quattrocol .ycol1 {
    width: 25%;
}

.quattrocol .ycol1 .col {
    margin: 0 5px 30px;
    padding: 0;
}

.duecol.grid-right,
.duecol.grid-left {
    display: block;
}

.duecol.grid-right:after,
.duecol.grid-left:after {
    content: "";

    display: block;
    clear: both;
}

.duecol.grid-right .ycol1,
.duecol.grid-left .ycol1 {
    float: left;
}

.duecol.grid-left .ycol1:nth-child(3) {
    width: 100%;
}

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

.quattrocol .ycol1,
    .trecol .ycol1 {
        width: 50%;
    }

}

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

.duecol,
    .trecol,
    .quattrocol {
        display: block;
        margin: 0;
    }

.duecol .ycol1,
    .trecol .ycol1,
    .quattrocol .ycol1 {
        width: 100%;
        max-width: initial;
        margin: auto;
    }

.ycol1 .col {
        margin: 0 0 30px !important;
    }

.duecol.grid-right .ycol1,
    .duecol.grid-left .ycol1,
    .duecol.grid-left .ycol1:nth-child(3) {
        float: none;
    }

}

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

.trecol .ycol1 {
        width: 50%;
    }

}

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

.duecol .ycol1,
    .trecol .ycol1,
    .quattrocol .ycol1 {
        width: 100%;
    }

}
