/**
 * 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=Montserrat:wght@400;500;600;700&display=swap');

:root {
    --cBlu: #003ca6;
    --cDBlu: #0e3575;
    --cRed: #b8052e;
    --cLGreen: #e5f7f7;
    --cGreen: #00c4b3;
    --cDGreen: #02b3b2;
    --cCiano: #048ad7;
    --cLGray: #898988;
    --cGray: #5f5f64; 
    --cDGray: #434342; 
    --cBlack: #394656;
    --cDBlack: #000000;
    --cWhite: #FFFFFF;
    --cLWhite: #f0f1f5;
    
    --cShadow: rgb(2, 179, 178, 0.5);
}


/* SYSTEM */

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

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

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

.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-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; }
.margin-bottom { margin-bottom: 1em; }
.margin-top2 { margin-top: 2em; }
.margin-bottom2 { margin-bottom: 2em; }
.margin-top3 { margin-top: 3em; }
.margin-bottom3 { margin-bottom: 3em; }
.margin-top4 { margin-top: 4em; }
.margin-bottom4 { margin-bottom: 4em; }
.nomargin { margin: 0!important; }
.nomargin-top { margin-top: 0;}
.nomargin-bottom { margin-bottom: 0;}
.h-100 { height: 100%; }
.w-100 { width: 100%; }
.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;
}

.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;
}

/*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%;
}

#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(--cWhite);
    background-color: var(--cWhite);
    font: 16px/1.4 Helvetica,Arial,sans-serif;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: var(--cBlack);
    margin: 0px 0px;
}

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

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

h2, .h2 { font-weight: 400; font-size: 2em; line-height: 1.2; } /*36*/

h3, .h3 { font-weight: 400; font-size: 1.777em; line-height: 1.4; } /*32*/

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

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

h6, .h6 { font-weight: 400; font-size: 0.777em; line-height: 1.4; } /*14*/

p.big { font-size: 1.111em; } /*20*/

p, ul ol { 
  font-family: 'Montserrat', sans-serif;
  font-size: 1em;
  color: var(--cBlack);
  line-height: 1.4;
  font-weight: 400;
  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 {
    /*Using a Bootstrap glyphicon as the bullet point*/
    content: "◆";
    font-family: 'Montserrat', sans-serif; 
    font-size: 1em;
    float: left;
    margin-top: 0px;
    margin-left: -1.4em;
    color: #02b3b2;
}

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: 1.5em;
  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: 400; 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: 400;
  content: "◆";
  position: absolute;
  left: -1em;
  top: -14px;
  font-size: 2em;
  color: #02b3b2;
  z-index: 1;
}
ol.list-number li:before { 
  font-weight: 400;
  content: counters(item, ".") ""; counter-increment: item; 
  color: #FFF;
  font-size: 0.777em;
  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(--cBlu); text-decoration: none; }

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

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

.marker, .form-required, .request { color: var(--cBlu); font-weight: 400; display: none; }

.evidenza { color: var(--cDGreen); }
.Blu { color: var(--cBlu); }
.DBlu { color: var(--cDBlu); }
.Red { color: var(--cRed); }
.LGreen { color: var(--cLGreen); }
.Green { color: var(--cGreen); }
.DGreen { color: var(--cDGreen); }
.Ciano { color: var(--cCiano); }
.LGray { color: var(--cLGray); }
.Gray { color: var(--Gray); }
.DGray { color: var(--DGray); }
.LWhite { color: var(--cLWhite); }
.White { color: var(--cWhite); }
.Black, .CText { color: var(--cBlack); }
.DBlack { color: var(--cDBlack); }

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

.bgBlu { background-color: var(--cBlu); }
.bgDBlu {  background-color: var(--cDBlu); }
.bgRed { background-color: var(--cRed); }
.bgLGreen { background-color: var(--cLGreen); }
.bgGreen { background-color: var(--cGreen); }
.bgDGreen { background-color: var(--cDGreen); }
.bgCiano { background-color: var(--cCiano); }
.bgLGray {  background-color: var(--cLGray); }
.bgGray { background-color: var(--cGray); }
.bgDGray { background-color: var(--cDGray); }
.bgLWhite { background-color: var(--cLWhite); }
.bgWhite { background-color: var(--cWhite); }
.bgBlack { background-color: var(--cBlack); }
.bgDBlack { background-color: var(--cDBlack); }

strong,b { font-weight: 700; }

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

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

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

.btn,
.btn-primary, .btn-secondary, .btn-gradient { 
  border: 1px solid var(--cDBlu) !important;
  background-color: var(--cDBlu);
  font-family: 'Montserrat', sans-serif;
  font-size: 1em;
  font-size: 0.777em;
  font-weight: 400;
  font-weight: 400;
  color: var(--cWhite) !important;
  padding: 0.8em 4em;
  padding: 0.5em 2em;
  -webkit-border-radius: 50px; 
  -moz-border-radius: 50px;
  border-radius: 50px;
  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;
  box-shadow: 0px 3px 6px #666666;
  box-shadow: 0px 3px 15px var(--cShadow);
/*  border-radius: 27px;*/
  text-transform: none;
}

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

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

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


.btn-secondary {
  background-color: var(--cWhite) !important;
  border-color: transparent !important; 
  color: var(--cBlu) !important;
  
  border: 2px solid transparent !important;
  box-shadow: 0 0 6px 0 var(--cDGreen);
  box-shadow: 2px 1000px 1px #FFF inset;
  background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)), linear-gradient(101deg, #00c4b3, #003ca6) !important;
  background-origin: border-box;
  background-clip: content-box, border-box;

}

.btn-secondary:hover {
  background-color: transparent !important;
  background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)), linear-gradient(101deg, #003ca6, #00c4b3) !important;
  box-shadow: none;
  border-color: transparent !important; 
  color: var(--cWhite) !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: 400;
  position: relative;
/*  top: 2px;*/
}

.btn:hover .icon-custom:before { color: var(--cWhite) !important; }

.btn-secondary .icon-custom:before { color: var(--cGreen) !important; }
.btn-secondary:hover .icon-custom:before { color: var(--cWhite) !important; }

.btn-gradient {
  border-width: 0.75px;
  border-style: solid;
  background-color: rgb(255, 255, 255);
  box-shadow: 0px 9px 20.01px 2.99px rgba(0, 196, 179, 0.09);
  /* position: absolute;
  left: 232px;
  top: 490px;
  width: 202px;
  height: 41px;
  z-index: 27; */
}

.SVGplus { 
  position: relative; 
  display: block; 
  width: 30px; 
  height: 30px; 
  /* width: 1.5em;  */
  /* height: 1.5em;  */
}
.SVGplus #cicle { fill: var(--cBlack); opacity: 0.4;  }
.SVGplus #plus { fill: var(--cWhite); }

.active .SVGplus #cicle { fill: var(--cBlack); opacity: 1;  }


.gradient-hor { 
  background: #104195;
  background: -moz-linear-gradient(90deg, #104195 0%, #104195 50%, #0e3575 50%, #0e3575 100%);
  background: -webkit-linear-gradient(90deg, #104195 0%, #104195 50%, #0e3575 50%, #0e3575 100%);
  background: linear-gradient(90deg, #104195 0%, #104195 50%, #0e3575 50%, #0e3575 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#104195",endColorstr="#0e3575",GradientType=1);
}


hr.barretta {
  /* background: #00c4b3;
  background: -moz-linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,60,166,1) 50%, rgba(0,196,179,1) 50%, rgba(0,60,166,1) 100%);
  background: -webkit-linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,60,166,1) 50%, rgba(0,196,179,1) 50%, rgba(0,60,166,1) 100%);
  background: linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,60,166,1) 50%, rgba(0,196,179,1) 50%, rgba(0,60,166,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00c4b3",endColorstr="#003ca6",GradientType=1); */

  background: rgb(0,196,179);
  background: -moz-linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,196,179,1) 25%, rgba(0,60,166,1) 40%, rgba(0,196,179,1) 60%, rgba(0,60,166,1) 75%, rgba(0,60,166,1) 100%);
  background: -webkit-linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,196,179,1) 25%, rgba(0,60,166,1) 40%, rgba(0,196,179,1) 60%, rgba(0,60,166,1) 75%, rgba(0,60,166,1) 100%);
  background: linear-gradient(90deg, rgba(0,196,179,1) 0%, rgba(0,196,179,1) 25%, rgba(0,60,166,1) 40%, rgba(0,196,179,1) 60%, rgba(0,60,166,1) 75%, rgba(0,60,166,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00c4b3",endColorstr="#003ca6",GradientType=1);

  position: relative;
  z-index: 0;
  width: 100%;
  top: auto;
  height: 4px;
  border: 0;
  margin: auto;
}

.round {
  -webkit-border-radius: 20px; 
  -moz-border-radius: 20px;
  border-radius: 20px;
}


/* 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 {
  -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 {
  -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 */
}

.rotate45-svg svg {
  -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-origin: center center;
  -moz-transition-origin: center center;
  -o-transition-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;  
  -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-svg svg {
  -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 */
}



@keyframes floating {
  from { transform: translate(0,  0px); }
  65%  { transform: translate(0, 19px); }
  to   { transform: translate(0, -0px); }    
}

@keyframes floatX {
  from { 
    -webkit-transform: translateX(0px); 
    -moz-transform: translateX(0px); 
    -o-transform: translateX(0px); 
    -ms-transform: translateX(0px); 
    transform: translateX(0px); 
  }
  to {
    -webkit-transform: translateX(-0.5em); 
    -moz-transform: translateX(-0.5em); 
    -o-transform: translateX(-0.5em); 
    -ms-transform: translateX(-0.5em); 
    transform: translateX(-0.5em);   
  }
}

.floatX { animation: floatX 2.5s infinite ease-in-out alternate; }


@keyframes floatY {
  from { 
    -webkit-transform: translateY(0px); 
    -moz-transform: translateY(0px); 
    -o-transform: translateY(0px); 
    -ms-transform: translateY(0px); 
    transform: translateY(0px); 
  }
  to {
    -webkit-transform: translateY(-0.5em); 
    -moz-transform: translateY(-0.5em); 
    -o-transform: translateY(-0.5em); 
    -ms-transform: translateY(-0.5em); 
    transform: translateY(-0.5em);   
  }
}

.floatY { animation: floatY 2.5s infinite ease-in-out alternate; }



/*SCROLL-TO-TOP*/
.scroll-to-top {
    position: fixed;
    display: none;
    text-align: center;
    color: var(--cGreen);
    background: none;
    line-height: 1;
    z-index: 98;
    background:var(--cWhite);
    padding: 0;
    right: 0.5em;
    bottom: 0.5em;
    width: 2em;
    height: 2em;
    -webkit-border-radius: 50px; 
    -moz-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(--cGreen); }
.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(--cGreen); font-size: 1.4em; line-height: 0; }


/* DIALOG */
.ui-dialog {
  font-family: Helvetica,Arial,sans-serif;
  font-family: 'Montserrat', sans-serif;
  z-index: 1000000000;
  top: 0; left: 0;
  margin: auto;
  position: fixed;
  max-width: 100%;
  max-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.ui-dialog .ui-dialog-content {
  flex: 1;
}

.ui-widget-header,
.ui-state-default,
.ui-button {
  background: #CCCCCC;
  border: 1px solid #B8B8B8;
  color: #000;
  font-weight: bold;
}


/* custom style for modal content*/

.ui-widget.warning-dialog {
  font-family: Helvetica,Arial,sans-serif;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  color: var(--cBlack);
  font-size: 1em;
  background: var(--cWhite);
}

.ui-widget-content.warning-dialog {
  border: 1px solid var(--cRed);
  color: var(--cBlack);
}

/*.ui-dialog.warning-dialog {*/
/*    left: 0;*/
/*    outline: 0 none;*/
/*    padding: 0 !important;*/
/*    position: absolute;*/
/*    top: 0;*/
/*}*/

.ui-dialog.warning-dialog .ui-dialog-content {
  padding: 1em 1em;
}

.ui-dialog.warning-dialog .ui-dialog-content .dialog {
  line-height: 1.4;
}

.ui-dialog.warning-dialog .ui-widget-header {
  background: var(--cWhite);
  border: 0;
  color: var(--cRed);
  font-weight: 400;
}

.ui-dialog.warning-dialog .ui-dialog-titlebar  {
  position: relative;
  font-size: 1em;
  color: var(--cRed);
  padding: 0.3em .5em;
}

.ui-dialog.warning-dialog .ui-dialog-buttonpane {
  background: var(--cWhite);
  border-top: 0px solid var(--cRed);
  padding: 0em 0.5em 0.5em 0em;
  margin-top: 0;
}

.ui-dialog.warning-dialog  .ui-dialog-buttonpane button {
  font-family: Helvetica,Arial,sans-serif;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1em;
  margin: 0;
}


.ui-dialog.warning-dialog .ui-dialog-titlebar-close {
  display: none;
}

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

  .ui-dialog.warning-dialog .ui-dialog-content {
      min-height: 4em !important;
  }
  
  .ui-dialog.warning-dialog  .ui-dialog-buttonpane button {
      color: var(--cWhite) !important;
  }

}

/* dialog styles */

.ui-dialog {
    z-index:1000000000;
    top: 0; left: 0;
    margin: auto;
    position: fixed;
    max-width: 100%;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.ui-dialog .ui-dialog-content {
    flex: 1;
}

.ui-widget-header,
.ui-state-default,
.ui-button {
  background: #CCCCCC;
  border: 1px solid #B8B8B8;
  color: #000;
  font-weight: bold;
}


/* custom style for modal content*/

.ui-widget.warning-dialog {
    font-family: Arial, Helvetica, sans-serif;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: var(--cBlack);
    font-size: 1em;
    background: var(--cWhite);
}

.ui-widget-content.warning-dialog {
    border: 1px solid var(--cRed);
    color: var(--cBlack);
}

/*.ui-dialog.warning-dialog {*/
/*    left: 0;*/
/*    outline: 0 none;*/
/*    padding: 0 !important;*/
/*    position: absolute;*/
/*    top: 0;*/
/*}*/

.ui-dialog.warning-dialog .ui-dialog-content {
    padding: 1em 1em;
}

.ui-dialog.warning-dialog .ui-dialog-content .dialog {
    line-height: 1.4;
}

.ui-dialog.warning-dialog .ui-widget-header {
    background: var(--cWhite);
    border: 0;
    color: var(--cRed);
    font-weight: 400;
}

.ui-dialog.warning-dialog .ui-dialog-titlebar  {
    position: relative;
    font-size: 0.8em;
    color: var(--cRed);
    padding: 0.3em .5em;
}

.ui-dialog.warning-dialog .ui-dialog-buttonpane {
    background: var(--cWhite);
    border-top: 0px solid var(--cRed);
    padding: 0em 0.5em 0.5em 0em;
    margin-top: 0;
}

.ui-dialog.warning-dialog  .ui-dialog-buttonpane button {
  border: 1px solid var(--cRed) !important;
  background-color: var(--cRed) !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 1em; 
  font-weight: 400;
  font-weight: 400;
  color: var(--cWhite) !important;
  padding: 0.5em 2em;
  /* padding: 1em 2em; */
  -webkit-border-radius: 50px; 
  -moz-border-radius: 50px;
  border-radius: 50px;
  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;
  box-shadow: 0px 3px 6px #666666;
  box-shadow: none;
/*  border-radius: 27px;*/
  text-transform: none;
}


.ui-dialog.warning-dialog .ui-dialog-titlebar-close {
    display: none;
}

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

  .ui-dialog.warning-dialog .ui-dialog-content {
      min-height: 4em !important;
  }

  .ui-dialog.warning-dialog  .ui-dialog-buttonpane button {
      color: #FFF !important;
  }

}

/*STRUCTURE*/
/* .structure { max-width: 2000px; } */
.structure {
  /* background: transparent url(../images/top_motivo.png) scroll no-repeat top center / contain; */
  /* background-color: var(--cLWhite) */
}

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



/*TOP*/
.top .ptop a { color: var(--cWhite); }

.top .lsirona { text-align: right; }


/* HEADER */
/* .header .wrapper-contain {
  background: transparent url("../images/header_motivo.jpg") scroll no-repeat right bottom / auto;
  background-color: var(--cBlu);
  padding: 3em 2em 0;
}
 */


/*CONTATTI*/
.contatti .wrapper-modulo .row-form { padding-top: 2em; }


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

.footer-first a { color: var(--cBlack); }
.footer-first a:hover { text-decoration: underline; }

.footer-first .wrapper-logo { text-align: right; }

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



/*WEBFORM*/
/*.alert.alert-dismissible.messages { display: none; }*/

.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: 'Montserrat', sans-serif;
    display: inline;
    float: left;
    margin: 0.5em 0px;
    margin: 0.5em 0 0;
    position: relative;
    font-weight: 400;
    font-size: 1em;
}

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

.webform-component .description { }

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

.webform-client-form fieldset { padding: 0; }

.webform-component input,
.webform-component select,
.webform-component textarea {  
  border: 1px solid var(--cLGray); 
  padding: 1em;
  -webkit-border-radius: 0px; 
  -moz-border-radius: 0px;
  border-radius: 0px;
  background-color: var(--cWhite);
  height: 100%;
  height: 3.2em;
}

.webform-component textarea { resize: none; }

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    /* font-family: 'Montserrat', sans-serif;
    margin-bottom: 0;
    margin-top: 5px;
    width: 50%;
    float: left; */
}


.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    width: 100%;
    width: 50%;
    width: 33%;
    width: 25%;
    width: 20%;
    
    left: 1em;
    margin-top: 1em;
    margin-bottom: 0.3em;

    background-color: var(--cWhite);
    -webkit-border-radius: 0px; 
    -moz-border-radius: 0px;
    border-radius: 0px;
    padding: 1em;
    margin-right: 1em;

    padding: 1em 0.5em;
    padding: 0.5em 0.5em;
    margin: 1em 0.5em 0.5em 0;
    margin: 1em 0.5em 0em 0;
    
    
}

.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(--cGray); 
    font-weight: 400;
    line-height: 1.4;
    width: 100%;
    margin: 0.2em;
    padding-left: 1.5em;

    /* left: 0.5em; */

}

.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; 

    border: 1px solid var(--cGray);
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;  
  

    margin: 0em 0 0.2em -2em;
    margin: 0em 0 0em -1em;
    width: 1.5em;
    height: 1.5em;
    padding: 0; 
}

.webform-component .form-type-checkbox input,
.webform-component .form-type-radio input { 
    margin: 0em 0 0em -1em;
    width: 1.2em;
    height: 1.2em;
    font-size: 1em;

    left: -0.5em;

}




.webform-component.highlight label {
    color: var(--cRed) !important;
}

.webform-component.campo-list .form-type-checkbox,
.webform-component.campo-list .form-type-radio {
    width: 100%;
    left: 0.5em;
    margin-top: 1em;
}

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



.webform-component.domanda { 
  background-color: var(--cWhite);
  padding: 1em 15px 1em;
  padding: 0.5em 15px 1em;
  margin: 0em 0 0em;  
}

.webform-component.domanda label {
  position: relative;
  font-size: 1em;
  color: var(--cGray);
  font-weight: 400;

}

.webform-component.domanda input {
  position: relative;
  font-size: 1emm;
  color: var(--cGray);
  font-weight: 400;

}

.webform-component.domanda .control-label,
.webform-component.domanda .form-radios,
.webform-component.domanda .form-checkboxes { 
  position: relative;
  width: 100%;
  display: block;
  float: left;
  padding: 0 15px;
}

.webform-component.domanda .control-label { 
  padding: 0;
  padding-left: 2em;
  /* margin: 0; */
}

.webform-component.domanda .form-radios { }

.webform-component.domanda .control-label strong {
  clear: both;
  display: block;
  font-weight: 700;
  margin-bottom: 1em;
  margin-bottom: 0em;

  clear: unset;
  float: left;
  width: 100%;
  color: var(--cGray); 
  font-size: 1em;
  position: absolute;
  left: 0;
  top: -0.1em;
  width: auto;
  margin: 0;
}

.webform-component.domanda .control-label em {
  clear: both;
  display: block;
  font-weight: 400;
  font-size: 1em; 
  margin-bottom: 1em;
  margin-bottom: 0em;
  color: var(--cGray);
  clear: unset;
  float: left;
  width: 100%;
}


.webform-component.domanda.campo-list .form-type-checkbox,
.webform-component.domanda.campo-list .form-type-radio {
    margin-top: 0;
    margin-bottom: 0.3em;
}

.webform-component.domanda .form-type-checkbox label,
.webform-component.domanda .form-type-radio label { 
  /* padding: 0;  */
}

.webform-component.domanda .form-type-checkbox input,
.webform-component.domanda .form-type-radio input {
  /* width: 1.3em;
  height: 1.3em; */
}


.webform-component .form-control { color: var(--cDBlack); } 
.webform-component .form-control::-webkit-input-placeholder { color: var(--cLGray);  } /* Chrome/Opera/Safari */
.webform-component .form-control::-moz-placeholder { color: var(--cLGray);   } /* Firefox 19+ */ 
.webform-component .form-control:-ms-input-placeholder { color: var(--cLGray);   } /* IE 10+ */ 
.webform-component .form-control:-moz-placeholder { color: var(--cLGray);   } /* Firefox 18- */

.webform-component .form-control:focus { 
  box-shadow: none;
  border-color: var(--cDGreen) !important;
}

.webform-componen.campoform { margin-bottom: 1em; }

.webform-component.campoform { margin: 1em 0 0;  }
.webform-component.campoform label { 
  width: 100%; 
  margin: 0.5em 0 0.8em; 
  font-size: 1em;
  font-weight: 400;
  color:  var(--cGray);
  /* text-transform: uppercase; */
}

.webform-component.campoform input,
.webform-component.campoform select,
.webform-component.campoform textarea {
  /* background-color: var(--cWhite); */
  /* border: 0px solid var(--cWhite); */
  font-size: 1em;
  /* -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px; */
  width: 100%;
  /* padding: 1em;   */

}



.webform-component.campoform .form-control { color: var(--cDBlack); }
.webform-component.campoform .form-control::-webkit-input-placeholder { color: var(--cLGray);  } /* Chrome/Opera/Safari */
.webform-component.campoform .form-control::-moz-placeholder { color: var(--cLGray);   } /* Firefox 19+ */
.webform-component.campoform .form-control:-ms-input-placeholder { color: var(--cLGray);   } /* IE 10+ */
.webform-component.campoform .form-control:-moz-placeholder { color: var(--cLGray);   } /* Firefox 18- */



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

.webform-client-form fieldset.fieldset-wrapper-modulo {  }

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

.webform-component-markup.webform-component--wrapper-modulo--campi { width: 100%; text-align: left; margin-top: 1em; padding: 0.5em 15px 0; }

.webform-component-markup .campi { font-weight: 400; font-size: 0.777em; margin: 0.2em; }

.webform-component.privacy .form-type-checkbox, 
.webform-component.privacy .form-type-radio { width: 90%; left: 1em; background: transparent; padding: 0 5px; }

.webform-component.privacy { margin: 0; margin: 1em 0em 0; padding: 0 15px; }
.webform-component.privacy a { color: var(--cDGreen); font-weight: 400; text-decoration: underline; }

.webform-component.privacy .control-label { text-transform: none; font-size: 0.777em; line-height: 1.4; font-weight: 400; color: var(--cGray); }


.webform-client-form .form-actions { 
  position: relative;
  text-align: right;
  float: right;
  width: 50%;
  margin: -3em 0 0;
}

.webform-client-form .form-actions .form-submit { 
  font-family: 'Montserrat', sans-serif;
/*  border: none;*/
/*  color: var(--cDBlu) !important;*/
/*  background: var(--cDBlu) none no-repeat scroll 0 0;*/
  font-size: 1em;
  padding: 0.8em 4em;
  text-shadow: none;
  text-transform: none;
  font-weight: 400;
  z-index: 1;
  transition: all 0.25s ease-in-out 0s;
  /* text-transform: uppercase; */
  -webkit-border-radius: 0px; 
  -moz-border-radius: 0px;
  border-radius: 0px;
  position: relative;
  outline: none;
  width: auto;

}

.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: 16px; }

    }

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

        body { font-size: 16px; }
    }

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

        body { font-size: 16px; }

    }

    /* 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; }


    }


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


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

    }

    /* Medium Devices, Laptop MD*/
    @media (min-width: 992px) and (max-width: 1199px) { 



    }

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


    
    }

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



    }

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

        .xs-d-flexr-column { flex-direction: column-reverse; }
        
        .container-fluid {  }
        .layout-mobile { padding-right: 0px; padding-left: 0px;  }

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

        .round {
          -webkit-border-radius: 0px; 
          -moz-border-radius: 0px;
          border-radius: 0px;
        }

        .padding-vertical4 { padding-bottom: 3em; padding-top: 3em; }

        /* .bottone { text-align: center;  padding: 1em 0; } */

        h1, .h1 { font-size: 2.4em; }
        h2, .h2 { font-size: 1.8em; }

        /* HEADER */
        .header .wrapper-ccenter { padding: 3em 0 3em; }
        
        .header .box-image img { max-width: 30%; }



        /*FOOTER*/
        /* .footer-first { padding-bottom: 5em; } */
        /* .footer-first .wrapper-logo { text-align: right; } */
        /* .footer-first .wrapper-logo img { max-width: 70%; } */
        
        .footer-first .wrapper-address { text-align: left; } 
        
        /*WEBFORM*/
        .webform-client-form .form-actions {
          position: relative;
          text-align: center;
          float: left;
          width: 100%;
          margin: 3em 0 0;
        }
        
        
        /* .webform-component .form-type-checkbox,
        .webform-component .form-type-radio,
        .webform-component.campo-3col .form-type-checkbox,
        .webform-component.campo-3col .form-type-radio { width: 100%; }         
        .webform-client-form .form-actions { margin: 4em 0 2em; }         */
        

    }

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

        /* HEADER */
        .header .box-image img { max-width: 50%; }


    }

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


    }

    /* 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) { 

}


