/**
 * 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/css?family=Signika:300,400,600,700&display=swap');
:root {
    --cBlue: #0158ac;
    --cOrange: #E76E23;
    --cAqua: #3C9EA0;
    --cGray: #828181;
    --cBlack: #000000;
    --cWhite: #FFFFFF
}

/* SYSTEM */

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

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

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

.padding-vertical { padding-bottom: 1em; padding-top: 1em; }
.padding-vertical2 { padding-bottom: 2em; padding-top: 2em; }
.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; }
.nopadding-top { padding-top: 0;}
.nopadding-bottom { padding-bottom: 0;}
.margin-top { margin-top: 1em; }
.margin-bottom { margin-bottom: 1em; }
.nomargin-top { margin-top: 0;}
.nomargin-bottom { margin-bottom: 0;}
.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-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);
    font: 22px/1.3 Helvetica,Arial,sans-serif;
    font-family: 'Signika', sans-serif;
    font-weight: 400;
    color: var(--cBlue);
    margin: 0px 0px;
}

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

h1, .h1 { font-weight: 400; font-size: 1.3em; line-height: 1.3; }

h1.title, .h1.title { font-weight: 400; font-size: 2em; line-height: 1; }

h2, .h2 { font-weight: 400; font-size: 1.2em; line-height: 1.3; }

h3, .h3 { font-weight: 400; font-size: 1.1em; line-height: 1.3; }

h4, .h4 { font-size: 1em; line-height: 1.3; }

h5, .h5 { font-size: 0.8em; line-height: 1.3; }

h6, .h6 { font-size: 0.7em; line-height: 1.3; }

p, ul { 
    font-family: 'Signika', sans-serif;
    font-size: 1em;
    color: var(--cBlue);
    line-height: 1.3;
    font-weight: 400;
    margin-top: 0px;
}

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: "\e258";
    font-family: 'Glyphicons Halflings';
    font-size: 1em;
    float: left;
    margin-top: 4px;
    margin-left: -1.1em;
    color: #005573;
}

p.big { font-size: 1.3em; }

.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; transition: all 0.25s ease-in-out 0s; }

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

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

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

.marker, .form-required, .request { color: var(--cBlue); }

.evidenza { color: var(--cAqua); }
.blu { color: var(--cBlue); }
.orange { color: var(--cOrange); }
.acqua { color: var(--cAqua); }
.gray { color: var(--cGray); }
.white { color: var(--cWhite); }
.black { color: var(--cBlack); }

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 { 
  font-family: 'Signika', sans-serif;
  border: none; 
  padding: 0.5em 2.5em 0.6em;
  background: var(--cOrange);
  color: var(--cWhite) !important;
  font-size: 1.1em;
  border-radius: 0;
  font-weight: 400;
}

.gradient-hor { 
    background: #FFF; /* For browsers that do not support gradients */    
    background: -webkit-linear-gradient(left, #FFF, #000); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(right, #FFF, #000); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(right, #FFF, #000); /* For Firefox 3.6 to 15 */
    background: linear-gradient(to right, #FFF , #000); /* Standard syntax (must be last) */
}

.border { border: 1px solid var(--cGray); }

/*SEZ-PROD*/
.sez-prod .m-rc { margin-right: 6em; }

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

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

.webform-client-form p,
.webform-client-form label { color: var(--cBlack);  }

.webform-client-form h2 { font-size: 3em; line-height: 1.2; }
.webform-client-form h3 { font-size: 1.8em; line-height: 1.2; }
.webform-client-form h4 { font-size: 1.3em; line-height: 1.3; }

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

.webform-component label,
.webform-component .description {
    font-family: 'Signika', sans-serif;
    display: inline;
    float: left;
    margin: 0 0 0.5em;
    margin: 0;
    font-size: 0.7em;
    text-transform: uppercase;
    position: relative;
    color: var(--cBlue); 
    font-weight: 700;
    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(--cBlack); 
    background:  none no-repeat scroll 0 0 transparent;
    display: inline;
    float: left;
    font-size: 0.8em;
    font-weight: 300;
    margin: 0;
    position: relative;
    padding: 0.2em 0.5em;
    padding: 0.5em 0em;
    padding-bottom: 0;
    height: auto;
    color: var(--cBlack); 
    border-radius: 0;
    box-shadow: none;
}

.webform-component input,
.webform-component select,
.webform-component textarea { border-bottom: 1px solid var(--cAqua); }

.webform-component textarea { resize: none; }

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    font-family: 'Signika', sans-serif;
    margin-bottom: 0;
    margin-top: 5px;
    width: 50%;
    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: uppercase;
    font-size: 0.7em;
    color: var(--cBlue); 
    font-weight: 400;
    line-height: 1.2;
    width: 100%;
    margin: 0.2em;
    padding-left: 1.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; 
}

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

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

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

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

.container-visual .webform-component.webform-component-markup { padding: 0px; }


.webform-component-markup .campi { font-weight: 400; font-size: 0.8em; margin: 2em 0 0; }

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

.webform-component.privacy { margin: 0; }
.webform-component.privacy a  { color: var(--cBlue); }

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


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

.webform-client-form .form-actions .form-submit { 
  font-family: 'Signika', sans-serif;
  border: none;
  color: var(--cWhite) !important;
  font-size: 1em;
  padding: 0.5em 1em 0.5em;
  text-shadow: none;
  text-transform: none;
  font-weight: 400;
  z-index: 1;
  transition: all 0.25s ease-in-out 0s;
  border-radius: 0;
  background: var(--cBlue) none no-repeat scroll 0 0;
  position: relative;
  outline: none;
  width: auto;

}

.webform-client-form .form-actions .form-submit:hover { background-color: var(--cAqua);  }

/*==================================================
=            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: 22px; }

    }

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

        body { font-size: 23px; }
    }

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

        body { font-size: 24px; }

    }

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

        body { font-size: 25px; }

    }

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

        body { font-size: 26px; }

    }


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

      /*SEZ-PROD*/
      .sez-prod .m-rc { margin-right: 0em; }

      /*SEZ-CONTATTI*/
      .sez-contatti p.h3 br { display: none; }

      .grazie .h1.title br { display: none; }

    }

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

    }

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

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

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

    }

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

    }

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

