:root {
--rosso: #cf1115;
}

#content.nonVisibile, .moduletable.nonVisibile {display:none;} /*FONDAMENTALE per l'apertura del FORM RICHIESTA a tutto schermo*/

#CONTENITORE_TOP {position:fixed; left:0; top:0; min-height:70px; width:100%; border-bottom:1px solid #f2f2f2; background-color:#fff; z-index:999;}
#CONTENITORE_TOP.consfondo {background-color:#fff; transition:background-color 0.3s;}
#CONTENITORE_TOP.menu_aperto {height:100%; background-color:#161616;}

#logo {position:absolute; top:10px; left:20px; z-index:999;}
#logo img {float:left; width:200px;}

#menu_Responsive {position:absolute; right:0; top:0; width:100px; padding-left:10px; padding-right:10px; line-height:70px; text-align:center; cursor:pointer; z-index:999; background-color:#00619d; display:none;}
#menu_Responsive:hover {text-decoration:none;}
#menu_Responsive:before {content:"MENU"; font-size:20px; font-weight:500; color:#fff;}
#menu_Responsive.menu_aperto:before {content:"X"; color:#fff;}
#menu_Responsive:hover:before, #menu_Responsive.menu_aperto:hover:before {color:#fff;}
#menu_Responsive.menu_aperto:hover:before {font-weight:600;}
@media all and (max-width:959px) {#menu_Responsive {display:block;} #boxMenu {display:none;}}

#boxMenu {position:relative; float:left; width:100%; height:100%; text-align:center;}
@media all and (min-width:960px) {#boxMenu {display:block !important;}}



.banner_HP {height:90% !important; background-color:#C3D7F0;}
.banner_HP .camera_target {/*width:100%; left:auto;*/}
.banner_HP .camera_target img {height:100% !important; width:100% !important; left:0% !important; margin:0 !important;}
.banner_HP .camera_target:before {position:absolute; left:0; top:0; width:100%; height:100%; content:""; background-color:rgba(102,102,102,0.50); z-index:10;}
.banner_HP .camera_target_content {width:100%;}
.banner_HP .camera_caption {top:0; bottom:auto !important; position:relative !important; height:100%;}
.banner_HP .camera_caption > div {display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:0 50px !important; background-color:transparent !important;}
.banner_HP .camera_caption > div .camera_caption_title {font-size:50px; color:#fff;}
.banner_HP .camera_caption > div .camera_caption_desc {font-size:30px; line-height:36px; margin-top:30px; color:#fff;}



.pagHome h1 {padding:30px 10%; font-size:50px; font-weight:700; line-height:56px; text-align:center;}
.pagHome h3 {padding:0 10%; font-size:26px; line-height:30px; font-weight:400; text-align:center;}
.pagHome h3 i {display:block; margin-top:20px;}


.hp_Servizi {float:left; width:100%; text-align:center; font-size:0;}
.hp_Servizi h5 {float:left; width:100%; padding:80px 50px; font-size:50px; line-height:50px; font-weight:300; text-align:center;}

.hp_Servizi a {position:relative; float:left; width:80%; margin:0 0 34px 10%; border-radius:20px; background:#f2f2f2; vertical-align:top;}
.hp_Servizi a:hover {box-shadow:0 4px 10px rgba(0, 0, 0, 0.5);} 
.hp_Servizi a div {position:relative; float:left; width:100%; display:flex; flex-direction:column; justify-content:center;}
.hp_Servizi a div img {float:left; width:100%; border-radius:20px 20px 0 0;}
.hp_Servizi a div h6 {position:absolute;}
.hp_Servizi a div h6 small {display:inline-block; width:90%; padding:12px 20px 10px 20px; font-size:32px; line-height:30px; font-weight:400; background-color:#fff;}
.hp_Servizi a p {float:left; width:100%; padding:25px 10% 100px 10%; text-align:left;}
.hp_Servizi a span {position:absolute; bottom:30px; left:10%; padding:10px 40px 8px 20px; font-weight:300; color:#fff; background-color:#444;}
.hp_Servizi a:hover span {left:0; padding-left:calc(10% + 20px); background:var(--rosso);}

@media all and (min-width:861px) {
.hp_Servizi {padding-left:3%; padding-right:3%;}
.hp_Servizi a {display:flex; justify-content:flex-start;}
.hp_Servizi a div {width:40%;}
.hp_Servizi a div img { border-radius:20px 0 0 20px;}
.hp_Servizi a p {width:60%;}
.hp_Servizi a span {left:50%;}
.hp_Servizi a:hover span {left:40%;}
}
@media all and (min-width:1061px) {
.hp_Servizi  {display:flex; justify-content:center; flex-wrap:wrap; padding-left:3%; padding-right:3%;}
.hp_Servizi a {float:none; display:inline-block; width:31.33%; max-width:415px; margin-left:1%; margin-right:1%;}
.hp_Servizi a div {width:100%;}
.hp_Servizi a div img {float:left; width:100%; border-radius:20px 20px 0 0;}
.hp_Servizi a p {width:100%;}
.hp_Servizi a span {left:10%;}
.hp_Servizi a:hover span {left:0;}
}


.hp_Certificato {float:left; width:80%; margin-left:10%; margin-top:60px;}
@media all and (min-width:800px) {.hp_Certificato {position:relative; width:700px; margin-left:50%; left:-300px;} }
.hp_Certificato img {float:left; width:250px;}
.hp_Certificato span {float:left; margin-left:20px; margin-top:45px; font-size:26px; line-height:30px;}
.hp_Certificato span strong {font-size:26px; line-height:30px; font-weight:500;}



.pagAzienda {width:80%; margin-left:10%; color:#000;}
@media all and (min-width:1201px) {.pagAzienda {position:relative; left:-500px; width:100%; max-width:1000px; margin-left:50%;}}

.pagAzienda h5 {float:left; width:100%; padding:80px 50px; font-size:50px; line-height:56px; font-weight:100; text-align:center;}
.pagAzienda p {padding-bottom:15px;}


.banner {position:relative; float:left; width:100%; min-height:100px; margin-top:80px; padding:25px; font-size:50px; line-height:50px; color:#999; text-align:center; background-color:#e5e5e5;}



.rigaLavori {float:left; width:100%; padding-top:100px; padding-bottom:50px;}

.rigaLavori .boxLavori h5 {float:left; width:100%;}
.rigaLavori .boxLavori h5 span {float:left; width:auto; padding:15px 30px; margin-bottom:20px; font-size:40px; line-height:40px; font-weight:300; background-color:#bbb; border-radius:0 25px 25px 0;}
 

.rigaLavori .boxLavori div {float:left; width:100%; padding:25px 5% 100px 5%;}

.rigaLavori .boxLavori div figure {float:left; width:90%; margin:7px 5%;}
@media all and (min-width:1000px) {.rigaLavori .boxLavori div figure {width:31.33%; margin:7px 1%;} }

.rigaLavori .boxLavori div figure.big {float:left; width:90%; margin:7px 5%;}




    .segnaposto {float:left; width:100%; padding:115px 15% 50px 15%; margin-bottom:100px; text-align:center; background-color:#e5e5e5;}
    .segnaposto span {float:left; width:100%; font-size:70px; line-height:55px; font-weight:bold; color:#fff;}
    .segnaposto small {float:left; width:100%; margin-top:20px; font-size:28px; line-height:27px; font-weight:100; color:#fff;}


    .pagCategoria {text-align:center; font-size:0;}
    .pagCategoria h2 {float:left; width:100%; padding:70px 10% 70px 10%; font-size:38px; line-height:40px; font-weight:100; text-align:center;}
    .pagCategoria h2 strong {font-size:38px; line-height:40px; font-weight:500;}

    .pagCategoria .contenitore {float:left; width:100%;}
    .pagCategoria .puls {position:relative; float:left; width:80%; margin:0 0 34px 10%; border-radius:20px; background:#f2f2f2; vertical-align:top;}
    .pagCategoria .puls:hover {box-shadow:0 4px 10px rgba(0, 0, 0, 0.5);} 
    .pagCategoria .puls div {position:relative; float:left; width:100%;	display:flex; flex-direction:column; justify-content:center;}
    .pagCategoria .puls div img {float:left; width:100%; border-radius:20px 20px 0 0;}
    .pagCategoria .puls div h6 {position:absolute;}
    .pagCategoria .puls div h6 small {padding:10px 30px 8px 30px; font-size:32px; line-height:30px; font-weight:500; background-color:#fff;}
    .pagCategoria .puls p {float:left; width:100%; padding:25px 10% 100px 10%; text-align:left;}
    .pagCategoria .puls span {position:absolute; bottom:30px; left:10%; padding:10px 40px 8px 20px; font-weight:300; color:#fff; background-color:#444;}
    .pagCategoria .puls:hover span {left:0; padding-left:calc(10% + 20px); background:var(--rosso);}

    @media all and (min-width:861px) {
    .pagCategoria .contenitore {display:flex; justify-content:center; flex-wrap:wrap; padding-left:3%; padding-right:3%;}
    .pagCategoria .puls {float:none; display:inline-block; width:48%; max-width:415px; margin-left:1%; margin-right:1%;}
    }
    @media all and (min-width:1381px) {
    .pagCategoria h2 {position:relative; left:-600px; width:100%; max-width:1200px; margin-left:50%;}
    .pagCategoria .contenitore {padding-left:0%; padding-right:0%;}
    .pagCategoria .puls {max-width:310px; margin-left:0.6%; margin-right:0.6%;}
    }
    .pagCategoria h4 {float:left; width:100%; padding:70px 10% 30px 10%; font-size:38px; line-height:40px; font-weight:100; text-align:center;}
    .pagCategoria h4 strong {font-size:38px; line-height:40px; font-weight:500;}

    .pagCategoria .rigaConsulenza {float:left; width:100%; padding-top:30px; padding-bottom:64px; text-align:center;}
    .pagCategoria .rigaConsulenza p {padding:0 10% 20px 10%; font-size:26px; line-height:30px; font-weight:100;}
    .pagCategoria .rigaConsulenza p strong {font-size:26px; line-height:30px;}
    .pagCategoria .rigaConsulenza button {position:relative; display:inline-block; width:250px; background-color:var(--rosso);}
    .pagCategoria .rigaConsulenza button:before {float:left; width:100%; font-size:22px; line-height:58px; color:#fff; content:"Chiedi una consulenza";}
    .pagCategoria .rigaConsulenza button:hover {box-shadow:0px 0px 15px rgba(207, 17, 21, 0.9);}



















.boxRichiesta {display:none;}
.boxRichiesta.box_aperto {display:block; position:absolute; top:0; left:0; width:100%; height:100%; text-align:center; background-color:#81DAE6; z-index:999;}

.boxRichiesta .puls_chiudiFormRichiesta {position:fixed; top:20px; right:20px; width:40px; height:40px; color:#000; content:""; border-radius:50%; background:#fff url(../images/struttura/puls_zoom_chiudi.png) center no-repeat; z-index:10; cursor:pointer;}
.boxRichiesta .puls_chiudiFormRichiesta:hover {top:10px; right:10px; width:60px; height:60px;}
.boxRichiesta h6 {float:left; width:100%; padding:0 30px 50px 30px; font-size:38px; line-height:40px; font-weight:100; color:#fff;}

.boxRichiesta .formResponsive {height:100%; margin:0 !important;}
.boxRichiesta .formResponsive .formContainer {height:100%;}
.boxRichiesta .formResponsive .formContainer .formRow {height:100%; display:flex; flex-direction:row; align-items:center; background-color:#666;}

#formRichiesta .formValidation {float:left; width:100%; display:none;}
#formRichiesta #rsform_error_3 {float:left; width:100%; padding:25px 10% 30px 10%; font-size:24px; line-height:26px; font-weight:300; color:#fff;}
#formRichiesta #rsform_error_3 strong {font-size:28px; font-weight:600; color:#f33;}

.formSpan12 [class|="rsform-block"] {float:left; width:100%; text-align:center;}
@media all and (min-width:601px) {
.formSpan12 .rsform-block-nome, .formSpan12 .rsform-block-citta, .formSpan12 .rsform-block-telefono {text-align:right; width:50%;}
.formSpan12 .rsform-block-cognome, .formSpan12 .rsform-block-provincia, .formSpan12 .rsform-block-email {text-align:left; width:50%;}
}
#formRichiesta select,
#formRichiesta input,
#formRichiesta textarea {width:80% !important; height:50px; line-height:40px; margin:0 10% 6px 10%; padding:0 15px; border-radius:15px; border:none; font-size:24px; font-weight:300; color:#444; background-color:#fff;}
@media all and (max-width:410px) {#formRichiesta input, #formRichiesta select {float:left;}}
@media all and (min-width:601px) { #formRichiesta select, #formRichiesta input, #formRichiesta textarea {width:calc(96% - 20px) !important; margin-left:10px; margin-right:10px; max-width:360px;} #formRichiesta textarea {max-width:740px;}}
#formRichiesta textarea {height:130px; padding-top:15px; padding-bottom:15px; line-height:22px;}
#formRichiesta select {padding-inline:8px;}

#formRichiesta select.rsform-error, #formRichiesta input.rsform-error, #formRichiesta textarea.rsform-error {border:2px solid #f33 !important;}
#formRichiesta .formError{width:100%; height:auto; margin:0 0 5px 0; font-size:22px; line-height:20px; font-weight:100; color:#f33;}

#formRichiesta button#Puls_invio {width:80% !important; max-width:250px; margin:15px 10% 20px 10%; padding:20px 10px; border-radius:20px; border:none; font-size:24px; font-weight:300; color:#fff; text-shadow:none !important; text-transform:uppercase; background-color:rgba(0,0,0,0.60); cursor:pointer;}
#formRichiesta button#Puls_invio:hover {background-color:rgba(0,0,0,1.00);}

.rsfp_thankyou_popup_outer {display:flex; flex-direction:column; justify-content:center; background-color:rgba(0,0,0,0.90) !important;}
.rsfp_thankyou_popup_inner {float:left; width:80% !important; margin:40% 10% !important; padding:40px !important; background-color:var(--primario) !important; border-radius:25px;}
.ringraziamento {float:left; width:100%; text-align:center;}
.ringraziamento h6 {float:left; width:100%; font-size:36px; line-height:24px; font-weight:600; color:#fff;}
.ringraziamento p {float:left; width:100%; margin-top:20px; color:#fff;}
.rsfp_thankou_popup_close_btn {right:-10px !important; top:-10px !important; width:50px; height:50px; border-radius:50%; font-size:0 !important; background:#fff url(../images/struttura/puls_zoom_chiudi.png) center no-repeat;}
.rsfp_thankou_popup_close_btn:hover {right:-15px !important; top:-15px !important; height:60px; width:60px;}







.footer {float:left; width:100%; padding:60px 60px 60px 60px; margin-top:50px; background-color:#00619d;}
.footer h5 {float:left; width:100%; font-size:18px; line-height:18px; font-weight:400; color:#fff; letter-spacing:0.5px;}

.footer .sedi {float:left; width:100%; padding-top:20px; padding-bottom:20px;}
.footer .sedi p {float:left; width:100%; padding-top:10px; padding-bottom:10px; font-size:18px; line-height:20px; font-weight:400; color:#fff;}
.footer .sedi p strong {float:left; width:100%; font-weight:400; color:#fff;}

.footer .info {float:left; width:100%; padding-top:20px;}
.footer .info a {float:left; padding-top:10px; padding-bottom:10px; font-size:18px; line-height:20px; font-weight:400; color:#fff;}
.footer .info p {float:left; width:100%; padding-top:20px; font-size:16px; line-height:18px; font-weight:400; color:#fff;}

