/**
 * This file should get overwritten if Method 1 is used. If Method 2 is chosen,
 * remove this comment and start adding your styles to this file.
 */

/* CSS Document */
@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@300;400;500;600;700&display=swap');


:root {
  --cDBlu: #576d81;  

  --cTesto:#5d686e;

  --cRosso: #e62b21;
  --cDRosso: #c91617; 
  
  --cViola: #e50287;
  
  --cVerde: #3aaa35;
  --cDVerde: #007c7c;

  --cLCiano: #58b6e7;
  --cCiano: #1881c0;
  --cDCiano: #0068ac;

  --cLGrigio: #e4e8f0;   
  --cGrigio: #d4d6d6;
  --cDGrigio: #bcc5cd;  /*b4bfc7*/
  --cXDGrigio: #6e6f6e;
  
  --cLNero: #1c1e23;
  --cNero: #000000;
  
  --cLBianco: #f3f3f3;  
  --cBianco: #FFFFFF;
  
  --cShadow: #a8adbb9e; 

  --cBGHeader: #E0DFDD;

  --cBtnsubmit: #0054a6;
}



/* SYSTEM */

.wide {
  margin: 0 -9999px;
  padding: 0px 9999px;
  position: relative;
/*  background-color: var(--cBianco);*/
}

.wide.odd { background-color: var(--cDRosso); }

.wide.even { background-color: var(--cLCiano); }

.half-pb { padding-bottom: 0.5em; }
.half-pt { padding-top: 0.5em; }


.padding-vertical { padding-bottom: 1em; padding-top: 1em; }
.padding-vertical2 { padding-bottom: 2em; padding-top: 2em; }
.padding-vertical3 { padding-bottom: 3em; padding-top: 3em; }
.padding-vertical4 { padding-bottom: 4em; padding-top: 4em; }
.padding-left { padding-left: 15px; }
.padding-right { padding-right: 15px; }
.padding-inline { padding-inline: 15px; }
.padding-inline2 { padding-inline: 4.5em; }
.margin-inline { margin-inline: 15px; }
.padding-top { padding-top: 1em; }
.padding-bottom { padding-bottom: 1em; }
.padding-top2 { padding-top: 2em; }
.padding-bottom2 { padding-bottom: 2em; }
.padding-top3 { padding-top: 3em; }
.padding-bottom3 { padding-bottom: 3em; }
.padding-top4 { padding-top: 4em; }
.padding-bottom4 { padding-bottom: 4em; }
.nopadding-top { padding-top: 0;}
.nopadding-bottom { padding-bottom: 0;}
.margin-top { margin-top: 1em !important; }
.margin-bottom { margin-bottom: 1em !important;}
.margin-top2 { margin-top: 2em !important; }
.margin-bottom2 { margin-bottom: 2em !important; }
.nomargin { margin: 0 !important;}
.nomargin-top { margin-top: 0;}
.nomargin-bottom { margin-bottom: 0;}
.h-100 { height: 100%; }
.w-100 { width: 100%; }
.m-auto { margin: auto auto; }
.mx-auto { margin: auto 0; }
.my-auto { margin: 0 auto; }
.mt-auto { margin-top: auto; }
.mb-auto { margin-bottom: auto; }
.alpha { padding-left: 0px; }
.omega { padding-right: 0px; }

.table { margin: 0; padding: 1em 0; }

.grid-flex {
  width: 100%;
  float: left;
  position: relative;
  display: block;
}

.row-flex  {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

.d-flex,
.row-flex  {
  -ms-box-orient: horizontal;
  display: -webkit-box;/* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -moz-box;
  display: -ms-flexbox;/* TWEENER - IE 10 */
  display: -moz-flex;
  display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;

  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;

  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;

  position: relative;
}

.d-flex {
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;

}

/*FIX SAFARI*/
.row-flex:before, .row-flex:after { display: none; }


/*.d-flex-column  {  */
/*  display: flex;*/
/*  flex-direction: column; */
/*}*/

/*.sm-d-flexr-row  { flex-direction: row-reverse; }*/
/*.sm-d-flexr-column { flex-direction: column-reverse; }*/

.row-full {
  width: 100vw;
  position: relative;
  margin-left: -50vw;
  left: 50%;
}

.row-fullR {
  width: 50vw;
  position: relative;
  margin-left: -50vw;
  left: 50vw;
}

#page { 
  overflow: hidden;
/*  background-color: #003c84;
	-webkit-appearance: none;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
  box-shadow: 5px 5px 20px #666666;
  margin: 50px 0 20px;*/
}

/* DEFAULT */

body {
  background: none no-repeat scroll 0 0 var(--cBianco);
  background-color: var(--cLBianco);
  font: 16px/1.4 Arial, Helvetica, sans-serif;
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  color: var(--cDBlu);
  margin: 0px 0px;
}

h1, h2, h3, h4, h5, h6, p,
.h1, .h2, .h3, .h4, .h5, .h6 { 
  font-family: Arial, Helvetica, sans-serif;
  font-family: 'Barlow', sans-serif;
  font-weight: 300;
  margin-top: 0px;
  margin-bottom: 10px;
  color: var(--cDBlu);
  line-height: 1.4;
}

h1.big, .h1.big { font-weight: 300; font-size: 2.944em; line-height: 1.1; } /*53*/

h1, .h1 { font-weight: 300; font-size: 2.666em; line-height: 1.2; } /*48*/

h2, .h2 { font-weight: 300; font-size: 2.222em; line-height: 1.2; } /*40*/

h3, .h3 { font-weight: 300; font-size: 1.7772em; line-height: 1.3; } /*32*/

h4, .h4 { font-weight: 300; font-size: 1.333em; line-height: 1.4; } /*24*/

h5, .h5 { font-weight: 300; font-size: 1em; line-height: 1.4; } /*16*/

h6, .h6 { font-weight: 300; font-size: 0.888em; line-height: 1.4; } /*16*/


p.big { font-size: 1.166em; } /*21*/

p, ul ol { 
  font-family: 'Barlow', sans-serif;
  font-size: 1em;
  color: var(--cDBlu);
  line-height: 1.4;
  font-weight: 300;
  margin-top: 0px;
}

ul, ol {}


ul.bullet-image {  list-style: outside url("../images/arrow.png") none; padding-left: 3em; }
ul.list-unstyled {  list-style: outside none none; padding-left: 2em; }
ul.list-bullet { padding-left: 1.5em; list-style: outside none none;  }
ul.list-bullet li { display: block; margin-bottom: 0.3em; }
ul.list-bullet li:before {
    content: "•";
    font-family: "Barlow";
    font-size: 1em;
    float: left;
    margin-top: 0px;
    margin-left: -1.5em;
    color: var(--cDBlu);
}

ul.list-inumber { padding-left: 2em; }

ul.list-inumber li { margin-bottom: 0.5em; }

ul.list-inumber li:before {
  font-family: "fontello";
  content: "";
  font-size: 1em;
  top: -0.3em;
  left: 0.1em;
  position: relative;
}

ul.list-inumber li:nth-child(1):before {
  content: '\e802';
}

ul.list-inumber li:nth-child(2):before {
  content: '\e801';
}

ul.list-inumber li:nth-child(3):before {
  content: '\e803';
}


ol.list-increment { counter-reset: item; padding-left: 0em; }
ol.list-increment li { display: block; }
ol.list-increment li:before { font-weight: 300; content: counters(item, ".") ". "; counter-increment: item;  }


ol.list-number { padding-left: 2em; counter-reset: item; }
ol.list-number li { position: relative; display: block; margin-bottom: 0.3em; }

ol.list-number li:after {
  font-weight: 300;
  content: "•";
  position: absolute;
  left: -1em;
  top: -14px;
  font-size: 1em;
  color: var(--cDBlu);
  z-index: 1;
}
ol.list-number li:before { 
  font-weight: 300;
  content: counters(item, ".") ""; counter-increment: item; 
  color: var(--cDBlu);
  font-size: 1em;
  z-index: 2;
  position: relative;
  top: 0px;
  left: -1em;
}


.thin { font-weight: 100!important; }
.extra-light { font-weight: 200!important; }
.light { font-weight: 300!important; }
.normal { font-weight: 400!important; }
.medium { font-weight: 500!important; }
.semi-bold { font-weight: 600!important; }
.bold { font-weight: 700!important; }
.extra-bold { font-weight: 800!important; }
.ultra-bold { font-weight: 900!important; }


/* STYLE */

a, img { border: 0 none; 
  -webkit-transition: all 0.25s ease-in-out 0s; 
  -moz-transition: all 0.25s ease-in-out 0s; 
  -o-transition: all 0.25s ease-in-out 0s; 
  -ms-transition: all 0.25s ease-in-out 0s; 
  transition: all 0.25s ease-in-out 0s; 
}

.transition {
  -webkit-transition: all 0.25s ease-in-out 0s; 
  -moz-transition: all 0.25s ease-in-out 0s; 
  -o-transition: all 0.25s ease-in-out 0s; 
  -ms-transition: all 0.25s ease-in-out 0s; 
  transition: all 0.25s ease-in-out 0s; 
}

.cover img,
.img-cover { width: 100%; height: 50vw; height: auto; object-fit: cover; object-position: 50% 50%;  object-position: center top; }

a:link, a:visited, li a:link, li a:visited { color: var(--cDCiano); text-decoration: none; }

a:hover, a:focus, li a:hover { color: var(--cDCiano); outline: none; }

a:active, li a:active, a.active, li a.active { color: var(--cCiano);  }

.marker, .form-required, .request { color: var(--cDBlu); float: left; margin-right: 0.2em; display: none; }

.evidenza { color: var(--cDCiano); }
.DBlu, .CText { color: var(--cDBlu); }
.Rosso { color: var(--cRosso); }
.DRosso { color: var(--cDRosso); }
.Viola { color: var(--cViola); }
.LCiano { color: var(--cLCiano); }
.Ciano { color: var(--Ciano); }
.DCiano { color: var(--DCiano); }
.LGrigio { color: var(--cLGrigio); }
.Grigio { color: var(--cGrigio); }
.DGrigio { color: var(--cDGrigio); }
.XDGrigio { color: var(--cXDGrigio); }
.LBianco { color: var(--cBianco); }
.Bianco { color: var(--cBianco); }
.Nero { color: var(--cNero); }
.LNero { color: var(--cLNero); }
.cTesto { color: var(--cTesto); }


.fprimary { font-family: 'Barlow', sans-serif; }
.fsecondary { font-family: 'Barlow', sans-serif; }

.bgDBlu { background-color: var(--cDBlu); }
.bgViola { background-color: var(--cViola); }
.bgRosso { background-color: var(--cRosso); }
.bgDRosso { background-color: var(--cDRosso); }
.bgLCiano { background-color: var(--LCiano); }
.bgCiano { background-color: var(--Ciano); }
.bgDCiano { background-color: var(--DCiano); }
.bgLGrigio { background-color: var(--cLGrigio); }
.bgGrigio { background-color: var(--cGrigio); }
.bgDGrigio { background-color: var(--cDGrigio); }
.bgXDGrigio { background-color: var(--cXDGrigio); }
.bgLBianco { background-color: var(--cBianco); }
.bgBianco { background-color: var(--cBianco); }
.bgNero { background-color: var(--cNero); }
.bgLNero { background-color: var(--cLNero); }

strong,b { font-weight: 700; }

span.sup { 
  font-size: 70%; position: relative; top: -0.5em; 
  font-size: 50%; top: -1em;
}

sub { font-size: 70%; position: relative; top: 2px; }

.virgole {
  position: relative;
  padding: 0.2em 1em;
}

.virgole span.virgole {
  color: var(--cDRosso);
  font-weight: 300;
  font-size: 170%;
  position: absolute;
  left: 0;
  top: 0;
  padding: 0;
}

.virgole span.virgole:last-child {
  left: auto;
  top: auto;
  right: auto;
  bottom: -0.3em;
  padding-left: 0.2em;
}


.btn { border: none; padding: 0.6em 1em 0.8em; }

.btn,
.btn-primary, .btn-secondary,
.btn-tab { 
  border: 1px solid var(--cDCiano) !important;
  background-color: var(--cDCiano) !important; 
  font-family: Arial,'Barlow', sans-serif !important;
  font-size: 1em; 
  font-size: 0.888em;
  font-weight: 300;
  color: var(--cBianco) !important;
  padding: 1em 2em;
  padding: 0.8em 2em;
  -webkit-border-radius: 0px; 
  -moz-border-radius: 0px;
  -o-b-border-radius: 0px; 
  -ms-border-radius: 0px; 
  border-radius: 0px; 
  text-decoration: none; 
  -webkit-transition: all 0.25s ease-in-out 0s; 
  -moz-transition: all 0.25s ease-in-out 0s; 
  -o-transition: all 0.25s ease-in-out 0s; 
  -ms-transition: all 0.25s ease-in-out 0s; 
  transition: all 0.25s ease-in-out 0s; 
  outline: none !important;
  text-transform: none;
  white-space: normal;
  text-align: center;
  text-decoration: none!important;
  box-shadow: 0px 20px 40px 0px #a8adbb9e;
}





.btn:hover {
  border-color: var(--cBtnsubmit) !important;   
  background-color: var(--cBtnsubmit) !important;
  color: var(--cBianco) !important;
}

.btn-primary,
.webform-client-form .form-actions .form-submit {
  border-color: var(--cBtnsubmit) !important;   
  background-color: var(--cBtnsubmit) !important;
  color: var(--cBianco) !important;

}

.btn-primary:hover,
.webform-client-form .form-actions .form-submit:hover {
  border-color: var(--cCiano) !important;   
  background-color: var(--cCiano) !important;
  color: var(--cBianco) !important;

}

.btn-primary.focus, .btn-primary:focus {
  outline: none !important;
}

.btn-secondary {
  border-color: var(--cDBlu) !important;   
  background-color: var(--cDBlu) !important;
  color: var(--cBianco) !important;
}

.btn-secondary:hover {
  border-color: var(--cCiano) !important;   
  background-color: var(--cCiano) !important;
  color: var(--cBianco) !important;
}

.btn .icon-custom:before {  
  -webkit-transition: all 0.25s ease-in-out 0s; 
  -moz-transition: all 0.25s ease-in-out 0s; 
  -o-transition: all 0.25s ease-in-out 0s; 
  -ms-transition: all 0.25s ease-in-out 0s; 
  transition: all 0.25s ease-in-out 0s; 
/*  color: #96d915;*/
  font-size: 1em;
  font-weight: 300;
  position: relative;
/*  top: 2px;*/
}

.btn:hover .icon-custom:before { color: var(--cBianco) !important; }
.icon-custom:before { font-weight: 300; }

/* .btn.big { font-size: 1.222em; } */

.icon-aslide { font-size: 2em; }
.icon-ssize { font-size: 2em; }
.icon-msize { font-size: 3em; }
.icon-bsize { font-size: 4em; }


/*https://www.colorzilla.com/gradient-editor/*/
.gradient-hor { 
  background: var(--cDBlu);
  background: linear-gradient(to right,  #2a2f6e 0%,#00b9e4 100%);

}

/*https://www.colorzilla.com/gradient-editor/*/
.gradient-ver { 
  background: var(--cDBlu);
  background: linear-gradient(to bottom,  #2a2f6e 0%,#00b9e4 100%);

}


/*SCROLL-TO-TOP*/
.scroll-to-top {
  position: fixed;
  display: none;
  text-align: center;
  color: var(--cDBlu);
  background: none;
  line-height: 1;
  z-index: 98;
  background:var(--cBianco);
  padding: 0;
  right: 0.5em;
  bottom: 0.5em;
  width: 2em;
  height: 2em;
  -webkit-border-radius: 50px; 
  -moz-border-radius: 50px;
  -o-b-border-radius: 50px; 
  -ms-border-radius: 50px; 
  border-radius: 50px; 
  -webkit-transition: all 0.25s ease-in-out 0s; 
  -moz-transition: all 0.25s ease-in-out 0s; 
  -o-transition: all 0.25s ease-in-out 0s; 
  -ms-transition: all 0.25s ease-in-out 0s; 
  transition: all 0.25s ease-in-out 0s; 
}
.scroll-to-top a { color: var(--cDBlu); }
.scroll-to-top a:focus, .scroll-to-top a:hover { color: var(--cDBlu); }
.scroll-to-top:hover {  -webkit-filter: invert(.2);  filter: invert(.2); }
.scroll-to-top i { color: var(--cDBlu); font-size: 1em; line-height: 0; }

/* EFFECT */
.rotate45,
.rotate90 {
  -webkit-transform:rotate(0deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(0deg); /* Firefox */
  -o-transform:rotate(0deg); /* Opera */
  -ms-transform:rotate(0deg); /* IE 9 */
  transform:rotate(0deg); /* tutti i nuovi browser */
  -webkit-transition: all 0.25s 0s ease-in-out;
  -moz-transition: all 0.25s 0s ease-in-out;
  -o-transition: all 0.25s 0s ease-in-out;
  -ms-transition: all 0.25s 0s ease-in-out;
  transition: all 0.25s 0s ease-in-out;
}

.rotate45:hover,
.active .rotate45 {
  -webkit-transform:rotate(45deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(45deg); /* Firefox */
  -o-transform:rotate(45deg); /* Opera */
  -ms-transform:rotate(45deg); /* IE 9 */
  transform:rotate(45deg); /* tutti i nuovi browser */
}

.rotate90:hover,
.active .rotate90 {
  -webkit-transform:rotate(90deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(90deg); /* Firefox */
  -o-transform:rotate(90deg); /* Opera */
  -ms-transform:rotate(90deg); /* IE 9 */
  transform:rotate(90deg); /* tutti i nuovi browser */
}

.rotate45-icon:before {
  -webkit-transform:rotate(0deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(0deg); /* Firefox */
  -o-transform:rotate(0deg); /* Opera */
  -ms-transform:rotate(0deg); /* IE 9 */
  transform:rotate(0deg); /* tutti i nuovi browser */
  -webkit-transition: all 0.25s 0s ease-in-out;
  -moz-transition: all 0.25s 0s ease-in-out;
  -o-transition: all 0.25s 0s ease-in-out;
  -ms-transition: all 0.25s 0s ease-in-out;
  transition: all 0.25s 0s ease-in-out;
}

/* .rotate-icon:hover:before, */
/* .btn-actions:hover .rotate-icon:before, */
.active .rotate45-icon:before {
  -webkit-transform:rotate(-90deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(-90deg); /* Firefox */
  -o-transform:rotate(-90deg); /* Opera */
  -ms-transform:rotate(-90deg); /* IE 9 */
  transform:rotate(-90deg); /* tutti i nuovi browser */
}

/* .rotate90-icon:before, */
.wrapper-tendina .rotate90-icon:before {
  -webkit-transform:rotate(0deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(0deg); /* Firefox */
  -o-transform:rotate(0deg); /* Opera */
  -ms-transform:rotate(0deg); /* IE 9 */
  transform:rotate(0deg); /* tutti i nuovi browser */
  -webkit-transition: all 0.25s 0s ease-in-out;
  -moz-transition: all 0.25s 0s ease-in-out;
  -o-transition: all 0.25s 0s ease-in-out;
  -ms-transition: all 0.25s 0s ease-in-out;
  transition: all 0.25s 0s ease-in-out;
}

/* .rotate-icon:hover:before, */
/* .btn-actions:hover .rotate-icon:before, */
/* .active .rotate90-icon:before, */
.wrapper-tendina .active .rotate90-icon:before {
  -webkit-transform:rotate(-180deg); /* Chrome, iOS, Safari e Android */
  -moz-transform:rotate(-180deg); /* Firefox */
  -o-transform:rotate(-180deg); /* Opera */
  -ms-transform:rotate(-180deg); /* IE 9 */
  transform:rotate(-180deg); /* tutti i nuovi browser */
}



/*STRUCTURE*/
/* .structure { max-width: 2000px; } */
/*.structure .container-fluid.grid { padding-left: 0; padding-right: 0; }*/

.fancybox-skin {
  position: relative;
  background: rgb(249, 249, 249);
}
.fancybox-inner .btn-close {
  background-color: rgba(255,255,255,0.6);
  background-color: rgb(249, 249, 249);
  position: fixed;
  top: 2em;
  right: 2em;
  width: auto;
  z-index: 1;
  border-radius: 50%;
}
/* .fancybox-close.fancybox-close-custom, */
.fancybox-close {
  background: url(https://cdn.iubenda.com/close.png) no-repeat scroll 0 0 transparent;
  border: medium none;
  display: block;
  height: 24px;
  position: absolute;
  right: -9px;
  top: -10px;
  width: 23px;
  z-index: 10010;
}

br.xs { display: none; } 

.border { border: 8px solid var(--cViola); }
.border-top { border-top: 8px solid var(--cViola); }
.border-bottom { border-bottom: 8px solid var(--cViola); }


.alert.alert-success { 
  /* color: var(--cDRosso);
  background-color: rgb(236,145,40,0.2);
  border-color: rgb(236,145,40,0.4); */
}

.form-group.error .control-label, .form-group.error label, 
.form-group.has-error .control-label, .form-group.has-error label {
  color: var(--cDRosso);
  font-weight: 300;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}


/*TOP*/
.top .logo { text-align: right; }

/* .top .logo img { max-width: 12em; } */


/* HEADER */
.header { 
  /* position: relative;  
  background-color: var(--cGrigio);
  background-color: var(--cBGHeader); */
}

.header .container-header {
  /* background: transparent url('../images/header_visual.jpg') no-repeat scroll right top / contain  ; */
}

.header .wrapper-corpo  { text-align: right; }


/* CARDS */

.border-radius { border-radius: 2em; }

/* Nascondi la freccia del menu a discesa */
select#edit-submitted-wrapper-modulo-provincia { 
  /* Mostra solo l'elenco senza la freccia */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;



 }

/* CONTATTI */
.contatti {}

.contatti .wrapper-contatti {
  background-color: var(--cBianco);
  margin: 0 15px;
  /* padding-top: 2em; */
  /* padding-bottom: 2em; */
}
.contatti .grid-modulo {
  padding: 3em; 
}


/* INVIATO */



/*FOOTER*/
.footer.container { display: none; }



.footer-first a { color: var(--cDBlu); }

.footer-first a.bplus { 
  /* text-decoration: underline;  */
  /* color: var(--cLCiano); */
}

.footer-first p { color: var(--cDBlu); }

.footer-first .wrapper-address { text-align: left; }

.footer-first .wrapper-iubenda { text-align: right; }
.footer-first .wrapper-iubenda span { margin: 0 0.2em; }
.footer-first .wrapper-iubenda span.spacer {  }



/*  WEBFORM  */
.webform-client-form p,
.webform-client-form label {   }


.webform-component,
.webform-component input,
.webform-component select,
.webform-component textarea,
.webform-client-form fieldset,
.webform-component label,
.webform-component .description,
.webform-client-form .form-actions {
  font-family: 'Barlow', sans-serif;
  display: inline;
  float: left;
  margin: 0.5em 0px;
  margin: 0.5em 0 0em;
  position: relative;
  font-weight: 300;
  font-size: 1em;
}

.webform-component label,
.webform-component .description {
  font-family: 'Barlow', sans-serif;
  display: inline;
  float: left;
  margin: 0.5em 0 0.5em;
  font-size: 1em;
  text-transform: none;
  position: relative;
  color: var(--cDBlu); 
  font-weight: 300;
  width: 100%;
  line-height: 1.4;
}

.webform-component .description { }

.webform-component input,
.webform-component select,
.webform-component textarea,
.webform-client-form fieldset {
  border: 0px solid var(--cDGrigio); 
  background:  none no-repeat scroll 0 0 transparent;
  background-color: var(--cBianco); 
  display: inline;
  float: left;
  font-size: 1em;
  font-weight: 300;
  margin: 0;
  position: relative;
  padding: 0;
  height: 100%;
  color: var(--cDBlu); 
  -webkit-border-radius: 0px; 
  -moz-border-radius: 0px;
  border-radius: 0px;
  box-shadow: none;
}

.webform-component input,
.webform-component select,
.webform-component textarea { border: 2px solid var(--cDGrigio); font-size: 1em; height: 2.5em; }
.webform-component textarea { resize: none; padding-left: 1.5em; padding-right: 1.5em; }

.webform-component select {  }


.webform-component input:focus, 
.webform-component input:active, 
.webform-component select:focus, 
.webform-component select:active, 
.webform-component textarea:focus, 
.webform-component textarea:active {
  border-color: var(--cDBlu);
  background-color: var(--cBianco);
  /* box-shadow: inset 0 1px 1px var(--cRed); */
  box-shadow: 0px 0px 15px var(--cShadow);
}


.webform-component.webform-component-checkboxes { margin-bottom: 0.5em; }

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
  font-family: 'Barlow', sans-serif;
  margin-bottom: 0;
  margin-top: 5px;

  width: 100%;
  float: left;
}

.webform-component .form-type-checkbox label,
.webform-component .form-type-checkbox .description,
.webform-component .form-type-radio label,
.webform-component .form-type-radio .description {
  text-transform: none;
  font-size: 1em;
  color: var(--cNero);
  font-weight: 400;
  line-height: 1.4;
  width: 100%;
  margin: 0.3em 0.2em;
  padding-left: 3em;
  padding-left: 2.5em;
  padding-left: 2em;
}

.webform-component .form-type-checkbox input,
.webform-component .form-type-radio input {
  margin: 0.2em 0;
  margin-left: -20px;
  margin: 0.1em 0 0.2em -25px;
  margin-left: -30px;
  width: auto;
  margin: 0em 0 0.2em -2.5em;
  margin: 0em 0 0.2em -2em;
  /* margin: -0.1em 0 0.2em -3.5em; */
  /* margin: -0.1em 0 0.2em -3em; */

  width: 1.2em;
  height: 1.2em;

}

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
  width: 20%;  
  /* width: 25%; */
/* width: 20%; */
/* width: 50%; */
/* width: 35%;*/
/* padding-left: 1.6em; */
}

.webform-component.campo-list .form-type-checkbox,
.webform-component.campo-list .form-type-radio {
  width: 100%;
}

.webform-component.campo-2col .form-type-checkbox,
.webform-component.campo-2col .form-type-radio {
  width: 50%;
}

.webform-component.campo-3col .form-type-checkbox,
.webform-component.campo-3col .form-type-radio {
  width: 33%;
}

/* .webform-component.domanda { margin-bottom: 1em; } */

.webform-component.domanda label,
.webform-component.domanda .description { font-weight: 700; font-size: 1em; margin: 0.5em 0 0.5em; }

/* .webform-component.domanda label strong,
.webform-component.domanda .description strong { margin-left: -2em; position: absolute; } */

.webform-component.domanda .form-type-checkbox label,
.webform-component.domanda .form-type-checkbox .description,
.webform-component.domanda .form-type-radio label,
.webform-component.domanda .form-type-radio .description { font-weight: 400; color: var(--cLNero); }

.webform-component.domanda input,
.webform-component.domanda select,
.webform-component.domanda textarea { }


.webform-component.campo-datalist {}
.webform-component.campo-datalist .webform-container-inline {
  display: flex;
  justify-content: space-around;
  width: 100%;
}
.webform-component.campo-datalist .webform-container-inline .form-item {
  min-width: 33%;
  margin: 0.15em 0.25rem;
}
.webform-component.campo-datalist .webform-container-inline .form-item:first-child { margin-left: 15px; margin-right: 0; }
.webform-component.campo-datalist .webform-container-inline .form-item:last-child { margin-right: 15px; margin-left: 0;}



.webform-component.campoform label,
.webform-component.campoform .description { font-weight: 600; font-size: 1em; margin: 0.5em 0 0.5em; }

.webform-component.campoform .form-type-checkbox label,
.webform-component.campoform .form-type-checkbox .description,
.webform-component.campoform .form-type-radio label,
.webform-component.campoform .form-type-radio .description { font-weight: 400; color: var(--cLNero); }


.webform-component.campoform input,
.webform-component.campoform select,
.webform-component.campoform textarea { }


.webform-component.campoform.campo-altro { padding-bottom: 1em; }

.webform-component.highlight label {
  color: var(--cDRosso);
}


.webform-component .form-control { color: var(--cLNero); padding: 0.5em 1em; }
.webform-component .form-control::-webkit-input-placeholder { color: var(--cDBlu);  }/* Chrome/Opera/Safari */
.webform-component .form-control::-moz-placeholder { color: var(--cDBlu);  }/* Firefox 19+ */ 
.webform-component .form-control:-ms-input-placeholder { color: var(--cDBlu);  }/* IE 10+ */ 
.webform-component .form-control:-moz-placeholder { color: var(--cDBlu);  }/* Firefox 18- */

.webform-component.campoform select.form-control:invalid { color: var(--cDBlu); }

.webform-client-form fieldset { background: none; border: none; box-shadow: none; margin: 0; padding: 0; }
.webform-client-form .panel-body { padding: 0; }

.webform-client-form .webform-component-fieldset { margin-top: 0em; }



.webform-component.webform-component-markup { width: 100%; margin-top: 0; padding: 0 15px; padding-top: 1em; }
.webform-component.webform-component-markup  a { text-decoration: underline; }

.webform-client-form .webform-component-fieldset.fieldset-wrapper-modulo { margin-bottom: 1em; }

.webform-component-markup.webform-component--wrapper-top--mhead { padding-top: 0em; padding-bottom: 1em; }
.webform-component-markup.webform-component--wrapper-modulo--campi { 
  padding: 0;
  margin: 0.5em 15px 0;
  width: 100%;
  text-align: left;  
}
.webform-component-markup .campi { font-family: 'Barlow', sans-serif;  font-size: 0.888em; font-size: 0.777em; line-height: 1.4; font-weight: 300; color: var(--cDBlu); margin: 0.5em 0; }

.webform-component.privacy .form-type-checkbox, 
.webform-component.privacy .form-type-radio { width: 100%; margin: 0; }

.webform-component.privacy { padding-top: 1em; margin-bottom: 0; }
.webform-component.privacy a { color: var(--cDBlu); font-weight: 300; text-decoration: underline; }

.webform-component.privacy .control-label { text-transform: none; font-size: 1em; font-size: 0.888em;  line-height: 1.4; font-weight: 300; color: var(--cDBlu); width: 100%; margin: 0.5em 0; }


.webform-component.privacy.infodent .control-label { border-top: 1px solid var(--cLGrigio); padding-top: 2em; }

.webform-client-form .form-actions { 
  position: relative;
  text-align: center;
  float: left;
  width: 100%;
  margin: 0em 0 1em;
}

.webform-client-form .form-actions .form-submit { 
  font-family: Arial,'Barlow', sans-serif;
  font-size: 1em;
  font-size: 0.888em;
  font-weight: 400;
  padding: 1em 2em;
  width: 100%;
  /* padding: 0.8em 2em; */
  text-shadow: none;
  text-transform: none;
  z-index: 1;
  text-transform: uppercase;
  position: relative;
  outline: none;
}

.form-actions .icon { display: none; }

.webform-client-form .form-actions .form-submit:hover {  }


/*==================================================
=    Bootstrap 3 Media Queries     =
==================================================*/

.img-responsive { display: inline-block; }


/*==========  Mobile First Method  ==========*/

 /* Custom, iPhone Retina */ 
  @media only screen and (min-width : 300px) {

      body { font-size: 18px; }

  }

 /* Extra Small Devices, Phones */ 
  @media only screen and (min-width : 575px) {
      
      body { font-size: 18px; }
  
  }

 /* Small Devices, Tablets */
  @media only screen and (min-width : 768px) {

      body { font-size: 18px; }

  }

 /* Medium Devices, Desktops */
  @media only screen and (min-width : 992px) {

      body { font-size: 18px; }

  }

 /* Large Devices, Wide Screens */
  @media only screen and (min-width : 1200px) {

      body { font-size: 18px;  }

  }


 /* Large Devices, Wide Screens */
  @media only screen and (min-width : 1600px) {



}





/*==========  Non-Mobile First Method  ==========*/


  /* Large Devices, Wide Screens LG */
  @media only screen and (max-width : 1200px) {
      


  
  }

  /* Large Devices, Wide Screens LG */
  @media only screen and (max-width : 1199px) {
      
      /* INVIATO */
      /* .inviato .wrapper-avviso { left: 0; } */

  }


  /* Medium Devices, Laptop MD*/
  @media (min-width: 992px) and (max-width: 1199px) { 
      
      /* PGRATUITA */      
      .pgratuita .wrapper-evidenza.d-flex .box-ccenter { width: 21em; }

      br { display: none; } 

  }

  /* Medium Devices, Desktops MD*/
  @media only screen and (max-width : 991px) {

    .h1 { font-size: 2em; }
    .h2 { font-size: 1.75em; }
    .h3 { font-size: 1.2em; }

    .margin-inline { padding-inline: 1.5em; }
      /*TOP*/
      .top .logo img { max-width: 8em; }

      /* CONTATTI */
      .contatti .grid-modulo {
        padding: 2em 1em;
      }

      /* WEBFORM */
      .webform-client-form .form-actions { 
        position: relative;
        text-align: center;
        float: left;
        width: 100%;
        margin: 1.5em 0 1.5em;
      }

      br { display: none; } 

  }

 /* Portrait tablets and small desktops */
  @media (min-width: 768px) and (max-width: 991px) {

      .sm-d-flexr-column { flex-direction: column-reverse; }

      .header .wrapper-visual .visual img {
        max-width: 130%;
        right: 1em;
        position: relative;
      }

      /* WEBFORM */
      .webform-component .form-type-checkbox,
      .webform-component .form-type-radio {
        width: 33%;
      }
  
      
  
  }

  /* Small Devices, Tablets SM*/
  @media only screen and (max-width : 767px) {

      br { display: none; } 
      br.xs { display: block; } 

      .logo-safe img{ width: 95%; }
      
      .bottone { text-align: left;  }
      
      .layout-mobile { padding-left: 0; padding-right: 0; }
      .container-mobile { max-width: 600px; }

      .xs-d-flexr-row  { flex-direction: row-reverse; }
      .xs-d-flexr-column { flex-direction: column-reverse; }

      /* .top .wrapper-logo, */
      .header .wrapper-corpo {
        /* max-width: 320px; */
        max-width: 18em;
        margin: auto;
      }
      
      /* HEADER */
      .header .wrapper-corpo {
        text-align: left;
        padding-top: 3em;
      }
      
      /* PGRATUITA */ 
      
      .pgratuita .wrapper-evidenza.d-flex > div {
        /* margin: 0 auto 1em; */
        margin: 0 1em 1em auto;
      }
      .pgratuita .wrapper-evidenza.d-flex .box-ccenter {
        margin: auto auto 0 0em;
        width: 25em;
      }
      
      /* CONTATTI */
      .contatti .grid-modulo {
        padding: 1em 0em;
      }


      /*FOOTER*/
      .footer-first .wrapper-copy,
      .footer-first .wrapper-credits,
      .footer-first .wrapper-iubenda { text-align: left; }

      /* WEBFORM */
      /* .webform-client-form fieldset { padding: 0; padding-bottom: 1em; } */        
      
      /* .contatti .wrapper-modulo { padding: 0 15px; }       */
      
      .webform-component.campoform label,
      .webform-component.campoform .description,
      .webform-component.domanda label,
      .webform-component.domanda .description {   }      
      
      .webform-component input, .webform-component select, .webform-component textarea {  }
      
      .webform-component .form-type-checkbox,
      .webform-component .form-type-radio,
      .webform-component.campo-list .form-type-checkbox,
      .webform-component.campo-list .form-type-radio,
      .webform-component.campo-2col .form-type-checkbox,
      .webform-component.campo-2col .form-type-radio,
      .webform-component.campo-3col .form-type-checkbox,
      .webform-component.campo-3col .form-type-radio { width: 100%; }
      
      /* .webform-component .form-type-checkbox,
      .webform-component .form-type-radio { width: 50%; } */

      .webform-component.campoform label, 
      .webform-component.campoform .description {  }
      .webform-component input,
      .webform-component select,
      .webform-component textarea {  } 

      .webform-component-markup .campi,
      .webform-component.privacy .control-label {  } 

      .webform-client-form .form-actions { margin: 2em 0 2.5em;  }

      .webform-client-form .form-actions .form-submit { 
        width: 100%;
      }
      



  }


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


  
  }

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

  /* Mobile Large, Extra Small Devices, Phones XS*/ 
  @media only screen and (max-width : 480px) {


  
  }


 /* Mobile Medium, iPhone Retina */ 
  @media only screen and (max-width : 374px) {


        
  }

 /* Mobile Small, Custom iPhone Retina */ 
  @media only screen and (max-width : 320px) {



  }

/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */

/* Small devices (tablets, 768px and up) */
@media (min-width: @screen-sm-min) {  }

/* Medium devices (desktops, 992px and up) */
@media (min-width: @screen-md-min) {  }

/* Large devices (large desktops, 1200px and up) */
@media (min-width: @screen-lg-min) {  }


@media (max-width: @screen-xs-max) {  }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {  }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) {  }
@media (min-width: @screen-lg-min) {  }

 /*==========  CROSS BROWSER  ==========*/

/*HOOK EXPLORER11*/
@media all and (-ms-high-contrast:none) { 

}


