/* BOX VANTAGGI */
#box_vantaggi { width: 1080px; margin: 60px auto 0; }
#box_vantaggi h2 { font-size: 22px; line-height: 30px; font-weight: 700; margin: 0 0 30px; }
#box_vantaggi .table_vantaggi {
    display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 30px; row-gap: 0;
}
#box_vantaggi .table_vantaggi > div {
    box-sizing: border-box; padding: 37px 30px 46px; font-size: 18px; line-height: 22px; text-align: center;
    font-weight: 400; color: #FFF; background: #B5B5B5;
}
#box_vantaggi .table_vantaggi > div.vantaggio1 { background: #F6A841; }
#box_vantaggi .table_vantaggi > div.vantaggio2 { background: #18407E; }
#box_vantaggi .table_vantaggi img { width: auto; height: 84px; margin: 0 auto 27px; }
#box_vantaggi .table_vantaggi strong {
    display: block; font-family: 'Noto Serif', serif; font-weight: 700;
    font-size: 22px; line-height: 30px; margin: 0 0 10px; text-transform: uppercase;
}
#box_vantaggi .table_vantaggi span { display: block; }
@media screen and (max-width: 1120px) {
    #box_vantaggi { width: auto; margin: 60px 20px 0; }
}
@media screen and (max-width: 960px) {
    #box_vantaggi .table_vantaggi { column-gap: 15px; }
    #box_vantaggi .table_vantaggi > div { padding: 27px 20px 36px; }
}
@media screen and (max-width: 767px) {
    #box_vantaggi .table_vantaggi {
        grid-template-columns: repeat(1, 1fr); column-gap: 0; row-gap: 20px;
    }
}

/* TESTO VANTAGGI */
#testo_vantaggi {
    width: 1080px; margin: 60px auto 0; font-weight: 300; font-size: 18px; line-height: 29px; color: #333;
}
#testo_vantaggi h2 { margin: 0 0 30px; }
#testo_vantaggi p {
    font-weight: 300; font-size: 18px; line-height: 29px; color: #333; margin: 0 0 12px; padding: 0;
}
#testo_vantaggi p:last-child { margin: 0; }
#testo_vantaggi ul { list-style: none; margin: 0 0 12px; padding: 0; }
#testo_vantaggi ul:last-child { margin: 0; }
#testo_vantaggi li {
    margin: 0 0 20px; background-repeat: no-repeat; background-position: 0 4px;
    box-sizing: border-box; padding: 0 0 0 40px; background-size: 20px auto; background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHJ4PSIxIiBmaWxsPSIjRjZBODQxIi8+PC9zdmc+");
}
#testo_vantaggi li:last-child { margin: 0; }
@media screen and (max-width: 1120px) {
    #testo_vantaggi { width: auto; margin: 60px 20px 0; }
}
@media screen and (max-width: 767px) {
    #testo_vantaggi, #testo_vantaggi p { font-size: 16px; line-height: 26px; }
    #testo_vantaggi h2 { margin: 0 0 24px; }
    #testo_vantaggi li { background-position: 0 2px; padding: 0 0 0 30px; }
}

/* BOX CONSORZI */
#box_consorzi { margin: 60px 0 0; }
#box_consorzi .introduzione {
    width: 1080px; margin: 0 auto; font-weight: 300; font-size: 18px; line-height: 29px; color: #333;
}
#box_consorzi .introduzione h2 { margin: 0 0 30px; }
#box_consorzi .introduzione p {
    font-weight: 300; font-size: 18px; line-height: 29px; color: #333; margin: 0 0 12px; padding: 0;
}
#box_consorzi .introduzione p:last-child { margin: 0; }
#box_consorzi .consorzio {
    width: 100%; min-height: 600px; background: #F4F4F4; margin: 130px 0 0;
    display: grid; grid-template-columns: repeat(2, 1fr); column-gap: 0; row-gap: 0;
}
#box_consorzi .consorzio .col_testo div {
    width: 540px; height: 100%; margin: 0 0 0 auto; box-sizing: border-box; padding: 70px 50px 70px 0;
    font-weight: 300; font-size: 18px; line-height: 29px;
}
#box_consorzi .consorzio .col_testo.dx div { margin: 0 auto 0 0; padding: 70px 0 70px 50px; }
#box_consorzi .consorzio .col_testo h2 {
    display: block; font-size: 38px; line-height: 51px; font-weight: 700; padding: 0; margin: 0 0 10px;
}
#box_consorzi .consorzio .col_testo span {
    display: block; font-weight: 500; font-size: 20px; line-height: 32px; margin: 0 0 32px;
}
#box_consorzi .consorzio .col_testo p {
    font-weight: 300; font-size: 18px; line-height: 29px; margin: 0; padding: 0;
}
#box_consorzi .consorzio .col_testo ul { list-style: none; margin: 0; padding: 0; }
#box_consorzi .consorzio .col_testo li {
    margin: 0 0 20px; background-repeat: no-repeat; background-position: 0 4px;
    box-sizing: border-box; padding: 0 0 0 40px; background-size: 20px auto; background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHJ4PSIxIiBmaWxsPSIjRjZBODQxIi8+PC9zdmc+");
}
#box_consorzi .consorzio .col_testo li:last-child { margin: 0; }
#box_consorzi .consorzio .col_testo small {
    display: block; font-size: 14px; line-height: 22px; font-style: italic; margin: 20px 0 0;
    box-sizing: border-box; padding: 0 0 0 40px;
}
#box_consorzi .consorzio .col_immagine { position: relative; }
#box_consorzi .consorzio .col_immagine .immagine {
    width: 100%; height: 100%; position: absolute; z-index: 1;
    top: 0; bottom: 0; left: 0; right: 0; object-fit: cover;
}
#box_consorzi .consorzio .col_immagine .logo {
    width: 180px; height: auto; position: absolute; left: 50%; top: -90px; z-index: 2; transform: translateX(-50%);
}
@media screen and (max-width: 1140px) {
    #box_consorzi .consorzio .col_testo div { width: auto; margin: 0 0 0 30px; padding: 40px 30px 40px 0; }
    #box_consorzi .consorzio .col_testo.dx div { margin: 0 30px 0 0; padding: 40px 0 40px 30px; }
}
@media screen and (max-width: 1120px) {
    #box_consorzi .introduzione { width: auto; margin: 0 20px; }
}
@media screen and (max-width: 960px) {
    #box_consorzi .consorzio { min-height: 0; margin: 130px 0 0; display: flex; flex-direction: column; }
    #box_consorzi .consorzio .col_testo { order: 2; }
    #box_consorzi .consorzio .col_testo div { width: auto; height: auto; margin: 0; padding: 40px 30px; }
    #box_consorzi .consorzio .col_testo.dx div { margin: 0; padding: 40px 30px; }
    #box_consorzi .consorzio .col_immagine { order: 1; height: 0; padding-bottom: 50%; }
}
@media screen and (max-width: 767px) {
    #box_consorzi .introduzione, #box_consorzi .introduzione p { font-size: 16px; line-height: 26px; }
    #box_consorzi .introduzione h2 { margin: 0 0 24px; }
    #box_consorzi .consorzio { margin: 90px 0 0; }
    #box_consorzi .consorzio .col_testo div { padding: 30px 20px; font-size: 16px; line-height: 26px; }
    #box_consorzi .consorzio .col_testo.dx div { padding: 30px 20px; }
    #box_consorzi .consorzio .col_testo h2 { font-size: 30px; line-height: 34px; }
    #box_consorzi .consorzio .col_testo span { font-size: 16px; line-height: 26px; margin: 0 0 20px; }
    #box_consorzi .consorzio .col_testo p { font-size: 16px; line-height: 26px; }
    #box_consorzi .consorzio .col_testo li { background-position: 0 2px; padding: 0 0 0 30px; }
    #box_consorzi .consorzio .col_testo small { padding: 0 0 0 30px; }
    #box_consorzi .consorzio .col_immagine .logo { width: 120px; top: -60px; }
}

/* FORM CONTATTO */
#form_contatto_container { width: 1080px; margin: 100px auto 0; }
#form_contatto_container .introduzione {
    margin: 0 0 30px; font-weight: 300; font-size: 18px; line-height: 29px; color: #333;
}
#form_contatto_container .introduzione h2 { margin: 0 0 30px; }
#form_contatto_container .introduzione p {
    font-weight: 300; font-size: 18px; line-height: 29px; color: #333; margin: 0 0 12px; padding: 0;
}
#form_contatto_container .introduzione p:last-child { margin: 0; }
@media screen and (max-width: 1120px) {
    #form_contatto_container { width: auto; margin: 60px 20px 0; }
}
@media screen and (max-width: 767px) {
    #form_contatto_container .introduzione, #form_contatto_container .introduzione p { font-size: 16px; line-height: 26px; }
    #form_contatto_container .introduzione h2 { margin: 0 0 24px; }
}

#form_preventivo { width: 670px; box-sizing: border-box; padding: 0; margin: 0 0 0 -20px; }
#form_preventivo .campo_preventivo, #form_preventivo .campo_preventivo_mobile,
#form_preventivo .campo_preventivo_submit { float: left; position: relative; width: 295px; margin: 0 20px 40px; }
#form_preventivo .campo_preventivo_wide { float: left; position: relative; width: 630px; margin: 0 20px 40px; }
#form_preventivo .text-right { text-align: right; }
#form_preventivo label {
    display: block; font-size: 12px; line-height: 16px; color: #606060;
    font-weight: 500; margin-bottom: 2px; text-align: left;
}
#form_preventivo input, #form_preventivo select, #form_preventivo textarea {
    width: 100%; max-width: 100%; height: 50px; background: none; border: none;
    border-bottom: 1px solid #AAA; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
    box-sizing: border-box; font-size: 14px; color: #333; font-weight: 400; font-family: 'Montserrat', sans-serif;
    padding: 0; cursor: pointer; -webkit-font-smoothing: antialiased; line-height: 49px;
    -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0;
    -webkit-appearance: none; -moz-appearance: none; transition: all 0.2s ease;
}
#form_preventivo select {
    padding: 0; background-repeat: no-repeat; background-size: 10px auto;
    background-position: calc(100% - 10px) center; background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iNiIgdmlld0JveD0iMCAwIDEwIDYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkgMUw1IDVMMSAxIiBzdHJva2U9IiNGNkE4NDEiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+");
}
#form_preventivo option { color: #333; }
#form_preventivo textarea { height: 80px; padding: 0 0 16px; line-height: 19px; resize: none; }
#form_preventivo input:hover, #form_preventivo textarea:hover, #form_preventivo select:hover,
#form_preventivo input:focus, #form_preventivo textarea:focus, #form_preventivo select:focus {
    outline: none; border-bottom: 1px solid #F6A841;
}
#form_preventivo input.errore, #form_preventivo select.errore {
    border-bottom: 1px solid #E72752; background: #FFDFDF; color: #E72752;
}
#form_preventivo ::placeholder { color: #717171; opacity: 1; }
#form_preventivo :-ms-input-placeholder { color: #717171; }
#form_preventivo ::-ms-input-placeholder { color: #717171; }
#form_preventivo button.submit {
    width: auto; height: 48px; font-size: 16px; font-weight: 500; color: #555; line-height: 46px;
    display: inline-block; font-family: 'Montserrat', sans-serif; border: 1px solid #F6A841; box-sizing: border-box;
    padding: 0 30px; background: #FFF; transition: all 0.2s ease; -webkit-border-radius: 25px;
    -moz-border-radius: 25px; border-radius: 25px; margin: 0 auto 0 0;
}
#form_preventivo button.submit:hover, #form_preventivo button.submit:focus { background: #F6A841; color: #FFF; }
#form_preventivo button.submit svg { margin: 0 0 -2px 12px; }
#form_preventivo button.submit line, #form_preventivo button.submit path { transition: all 0.2s ease; }
#form_preventivo button.submit:hover line, #form_preventivo button.submit:focus line,
#form_preventivo button.submit:hover path, #form_preventivo button.submit:focus path { stroke: #FFF; }
#form_preventivo a { color: #333; text-decoration: underline; font-size: 12px; display: inline-block; transition: all 0.2s ease; }
#form_preventivo a:hover, #form_preventivo a:active, #form_preventivo a:focus { color: #F6A841; text-decoration: underline; }
@media screen and (max-width: 960px) {
    #form_preventivo { width: 100%; text-align: center; margin: 0 0 0 -2%; }
    #form_preventivo .text-right { text-align: center; }
    #form_preventivo input, #form_preventivo select, #form_preventivo textarea { font-size: 14px; }
    #form_preventivo .campo_preventivo, #form_preventivo .campo_preventivo_wide,
    #form_preventivo .campo_preventivo_submit { width: 96%; margin: 0 2% 30px; }
    #form_preventivo .campo_preventivo_submit.text-right { margin: 0 2%; }
    #form_preventivo .campo_preventivo_mobile { width: 46%; margin: 0 2% 30px; }
    #form_preventivo a { display: block; text-align: left; }
}
@media screen and (max-width: 500px) {
    #form_preventivo button.submit { display: block; width: 100%; }
}
@media screen and (max-width: 400px) {
    #form_preventivo .campo_preventivo_mobile { width: 96%; margin: 0 2% 30px; }
}
