@charset "utf-8";
/* Reset.css */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {margin: 0;padding: 0;border: 0;font-size: 100%;vertical-align: baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ""; content: none;}
.clearfix:before, .clearfix:after {content: ""; display: table; }
.clearfix:after {clear: both;}
.clearfix {zoom: 1;}
html {overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;}
* {margin:0; padding:0;border:none;-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; outline:none;}
.clear {clear:both; width:100%;height:0; margin:0;padding:0;border:none;}
/* ======================================================================== */

body {width:100%;height:auto;font-family: 'Montserrat', sans-serif;font-size:20px;}

/*** HEADING ***/
header { width: 100%; background: url(/assets/img/header.webp) center center repeat; }
.header-container {display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: flex-start; max-width: 1440px; margin: 0 auto; padding: 40px; box-sizing: border-box; }

.header-logo { flex: 0 0 460px;margin-top:-30px; text-align: left; }
.header-logo img { max-width: 100%; height: auto; }

.header-content { flex: 1 1 auto; padding:20px 40px; box-sizing: border-box; }

.header-form { flex: 0 0 320px;margin-top: 0; box-sizing: border-box; }
.header-form form { display: flex; flex-direction: column; gap: 10px; }
h1 {font-size:32px;margin:0 0 20px 0;color:rgba(255,255,255,1.00);;}
h1 strong {text-decoration: underline; text-decoration-color:rgba(255,156,0,0.99); text-decoration-thickness: 2px; text-underline-offset: 4px}
header h2 {font-size:24px;margin:0 0 20px 0;color:rgba(255,156,0,0.99);}
header h2 strong {text-decoration: underline; text-decoration-color:rgba(255,255,255,1.00); text-decoration-thickness: 2px; text-underline-offset: 4px}
header p {color:rgba(255,255,255,1.00);}

/** FORM **/
.header-form h2 {margin-bottom:6px; font-size:26px; font-weight:800;text-align: center; text-transform:uppercase;}
form 						{overflow:hidden;}
fieldset div 		{position:relative;width:100%;margin:0 0 10px 0; background-color: rgba(255,255,255,1.00);}
fieldset input, fieldset select {width:100%;padding:14px 16px;font-size:13px;font-weight:normal;background:none;color:#000; border:none;border-bottom: rgba(0,0,0,1.00) solid 1px!important;outline: none;}
input::placeholder {opacity:1;}
input:focus, select:focus, textarea:focus {box-sizing: border-box;background: rgba(248,255,225,1.00);border:none;outline: none;}
select {-webkit-appearance:none;-moz-appearance:none;appearance:none;}
.select {padding:14px 10px 14px;font-size:14px;font-weight:normal;background: url("/assets/img/select-arrow.webp") no-repeat 97% 50%;color:#000!important;border-bottom: rgba(0,0,0,1.00) solid 1px!important;}
fieldset div.prefisso {display: inline-block;width: 30%;margin-right:2.5%;}
fieldset div.numero {display: inline-block;float:right;width: 66%;}
fieldset #campi-obbligatori {float:left;background:none!important;border:none;}
fieldset #campi-obbligatori label {margin:20px 0 0 0;font-size:12px;color: rgba(255,255,255,1.00);}
fieldset #privacy_box	{overflow:hidden;margin:0 0 10px 0;padding:0 8px 8px 8px;font-size:12px;line-height:18px!important;color: rgba(255,255,255,1.00);background:none!important;border:none;}
fieldset #privacy_box input {display:inline;width:15px;height:15px;margin:0 2px 0 4px;}
fieldset #privacy_box p {display:inline;margin-bottom:0!important;font-size:12px;line-height:18px;}
fieldset #privacy_box strong {font-size:12px; font-weight:700;}
fieldset #variabili {display:none;background:none;}
fieldset #domanda {display:none;}
fieldset a {color:orange;text-decoration: underline;}
#invia {margin:0 auto;width:100%; max-width:220px;}
#invia2 {margin:0;border:none;border-radius: 4px;background: none;}
.item {float:none;border:none;background:none;}
.item .jqconferma {display:block;width:100%;margin:0;padding:8px 16px;font-family: 'Figtree', sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;color:rgba(0,0,0,1.00);background-color:rgba(255,156,0,0.99)!important;border-bottom: rgba(0,0,0,0.00) solid 1px; cursor:pointer;}
.item:hover .jqconferma:hover {background-color:rgba(255,255,255,1.00)!important;transition: all 0.3s}
#nome-errore,#cognome-errore,#telefono-errore,#email-errore,#provincia-errore{display:none;}
.error {position:absolute;bottom:0;left: 0; margin:0!important;padding:2px!important;font-size:10px!important; line-height:9px!important;background-color:#EF801F;color:#FFFFFF;}
input, select, input:focus, select:focus {border-bottom: rgba(174,201,11,0.99) solid 1px; background:rgba(248,255,225,1.00);}
input:required:focus:invalid, select:required:focus:invalid {	border-bottom:rgb(169,57,6) solid 1px;background:none;} 
input:required:valid, select:required:valid {	border-bottom:#0C0 solid 1px;background:none;}
::placeholder {color:#000;}

/*** CONTENUTI ***/
.row {overflow:hidden;margin:0 0 20px 0;}
.container {overflow:hidden;width:100%; max-width:1440px; margin:0 auto;padding:60px 40px 40px; }
.container h2 {margin:0 0 8px 0;font-size:28px; line-height:30px;font-weight: 800; text-align: center; color:rgba(11,52,102,1.00);}

p {margin:0 0 20px 0;font-size:20px; line-height:28px;}

/** TABELLA **/
.tabella { display: flex; flex-wrap: wrap; gap: 20px;margin-top:30px;padding:26px 20px 20px; border-top:rgba(255,156,0,0.99) solid 4px;border-radius: 12px;}
.riga { display: flex; flex-direction: column; flex: 1 1 calc(25% - 20px); padding: 20px; background-color: #f9f9f9; border-radius: 8px; box-sizing: border-box;box-shadow: 5px 5px 10px rgba(0,0,0,0.56); }
.cella.titolo { font-weight: bold; margin-bottom: 6px; position: relative; padding-left: 25px;color: rgba(11,52,102,1.00); }
.cella.titolo::before { content: ''; position: absolute; top: 6px; left: 0; width: 10px; height: 10px; background-color: rgba(11,52,102,1.00); border-radius: 50%; }
.cella.cont { padding: 0px; box-sizing: border-box; position: relative; padding-left: 25px; }
.cella.cont::before { content: ''; position: absolute; top: 6px; left: 0; width: 10px; height: 10px; background-color:rgba(255,156,0,0.99); }

/** footer **/
footer {overflow:hidden;width:100%;background: url(/assets/img/header.webp) center center repeat;}
.footer { max-width:1440px; margin:0 auto;padding:60px 40px 40px; text-align:center; color:rgba(255,255,255,1);}

/** VARIE ***/
.mb-40 {margin-bottom:20px;}
.link {cursor:pointer; text-decoration:underline;}
.hidden-desk {display:none;}
.fluid {width: 100%;height: auto;}
.centered {text-align: center;}
.orange {color:rgba(255,156,0,0.99)!important;}
.link-blu {text-decoration: underline; text-decoration-color:rgba(11,52,102,1.00); text-decoration-thickness: 1px; text-underline-offset: 4px;cursor:pointer;}



@media (max-width: 1380px) { 
header {}
.header-container { flex-wrap: wrap; flex-direction: column; align-items: center;max-width:720px;padding:20px 10px 20px; text-align: center; } 
.header-logo {flex: 0 0 380px;margin: 0 auto; text-align: center; } 
.header-content { flex: 1 1 auto; max-width: 100%; order: 1; margin: 0; padding: 10px 20px; } 
.header-form { flex: 1 1 auto; max-width: 100%; order: 2; margin: 20px 0 0;padding:0 20px; }
fieldset div.prefisso {margin-left:-10px;}
.container {max-width:720px;padding:60px 20px 40px; }
.footer { max-width:720px; margin:0 auto;padding:60px 40px 40px;}
}


@media (max-width: 768px) {
.header-container {padding:40px 10px;} 
.container {padding:60px 20px 20px; }
.hidden-desk {display:block;}
}





@media (max-width: 620px) {
.header-container { flex-wrap: wrap; flex-direction: column; align-items: center;max-width:720px;padding:40px 10px; text-align: center; } 
.header-logo {flex: 0 0 300px;} 
.header-form {padding:0; }
	h1 {font-size:26px;}
.container {padding:40px 20px 20px; }
	.tabella {padding:30px 10px;}
	.riga {flex: 1 1 100%; }
}
















