/**
 * 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=Roboto:100,300,400,500,700,900');

/* SYSTEM */

.wide {
    margin: 0 -9999px;
    padding: 0px 9999px;
    position: relative;
    background-color: #FFFFFF;
}

.wide.odd { background-color: #e4e2e2; }

.wide.even { background-color: #cae6f1; }

.padding-vertical { padding-bottom: 1em; padding-top: 1em; }
.padding-vertical2 { padding-bottom: 2em; padding-top: 2em; }
.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%;
}

.float { float: left; }

#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 #FFFFFF;
    font: 18px/1.2 Helvetica,Arial,sans-serif;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #1b395f;
    margin: 0px 0px;
}

h1, h2, h3, h4, h5, h6, p { 
    font-family: Helvetica,Arial,sans-serif;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    margin-top: 10px;
    margin-bottom: 10px;
    color: #2a5166;
    line-height: 1.2;
}

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

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

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


h3, .h3 { font-weight: 400; font-size: 1.5em; line-height: 1.2; }

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

h5, .h5 { font-size: 1em; line-height: 1.2; }

h6, .h6 { font-size: 0.9em; line-height: 1.2; }

p, ul { 
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    color: #1b395f;
    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.2em; }

.icustom.piccolo { font-size: 75%; }

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

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

a:link, a:visited, li a:link, li a:visited {  color: #6998a6; text-decoration: none; }

a:hover, a:focus, li a:hover { color: #083e50; outline: none; }

a:active, li a:active, a.active, li a.active { color: #083e50;  }


.evidenza a, .evidenza a:focus { color: #dd943c; }

.evidenza a:hover { color: #083e50; }

.marker, .form-required, .request { color: #1b395f; }

.evidenza { color: #dd943c; }
.lblu { color: #5f7585; }
.blu { color: #083e50; }
.lciano { color: #cae6f1; }
.ciano { color: #6998a6; }
.white { color: #FFFFFF; }
.black { color: #000000; }
.text { color: #1b395f; }

.bgwhite { background-color: #FFFFFF; }
.bggray { background-color: #e4e2e2; }
.bgciano { background-color: #cae6f1; }


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

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


/*HEADER*/
.omaggio .row  { background: transparent url("../images/fascia_pattern.png") scroll no-repeat bottom center / auto; }
.omaggio br { display: none; }

/*CASI*/
.casi .padding-custom { min-height: 79px; padding: 0.95rem 0; }

/*DOWNLOAD*/
.download .row  { background: transparent url("../images/fascia_pattern2.png") scroll no-repeat bottom center / auto; }
.download .esagono a:hover { opacity: 0.7; }


/*  WEBFORM  */
.webform-client-form p,
.webform-client-form label { color: #5f7585; }

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

.webform-component label,
.webform-component .description {
    font-family: 'Roboto', sans-serif;
    display: inline;
    float: left;
    margin: 0 0 0.5em;
    font-size: 1em;
    position: relative;
    color: #5f7585;
    font-weight: 500;
    width: 100%;
    line-height: 1.3;
}

.webform-component .description { }

.webform-component input,
.webform-component select,
.webform-component textarea,
.webform-client-form fieldset {
    border: 0px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    background:  none no-repeat scroll 0 0 transparent;
    display: inline;
    float: left;
    font-size: 0.9em;
    font-weight: 400;
    margin: 0;
    position: relative;
    padding: 0.2em 0.5em;
    height: auto;
    color: #5f7585;
    border-radius: 0;
    box-shadow: none;
}

.webform-component textarea { resize: none; }

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    font-family: 'Roboto', 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 {
    font-size: 1.1em;
    color: #5f7585;
    font-weight: 400;
    line-height: 1.2;
    width: 100%;
    margin: 0.2em;
    padding-left: 1.5em;
}

.webform-component.option-big .form-type-checkbox .control-label,
.webform-component.option-big .form-type-radio .control-label { font-size: 1.2em; }

.webform-component.col-padding { margin: 0.5em 0px; }

.webform-component .form-type-checkbox .control-label strong,
.webform-component .form-type-radio .control-label strong { 
    display: block; 
    clear: right; 
    color: #5f7585; 
    font-weight: 400; 
    margin-left: 5px;
}

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


.webform-component.custom .form-type-checkbox,
.webform-component.custom .form-type-radio { width: 10%; position: relative; }


.webform-component.custom.color label { font-weight: 400; font-size: 0.9em; }

.webform-component.custom.full label { 
/*    font-size: 1em;*/
/*    font-family: 'Roboto', sans-serif;*/
/*    color: #6c6e6e; */
}

.webform-component.full .form-type-checkbox,
.webform-component.full .form-type-radio { width: 10%; }

.webform-component.custom .form-type-checkbox img,
.webform-component.custom .form-type-radio img { 
    background-color: #FFFFFF;
}


.webform-component.custom .form-type-checkbox input,
.webform-component.custom .form-type-radio input { 
    position: absolute; 
    z-index:-1000; 
    left:-1000px; 
    left:0px; 
    top: auto;
    clip: rect(0 0 0 0);
    overflow: hidden;  
    height:1px; 
    width:1px; 
    margin:-1px; 
    padding:0; 
    border:0;
}

.webform-component.custom .form-type-checkbox label,
.webform-component.custom .form-type-checkbox .description,
.webform-component.custom .form-type-radio label,
.webform-component.custom .form-type-radio .description { 

}

.webform-component.custom .form-required { display: none; }


.webform-component .form-control { color: #1b395f; }
.webform-component .form-control::-webkit-input-placeholder { color: #5f7585; text-transform: none; } /* Chrome/Opera/Safari */
.webform-component .form-control::-moz-placeholder { color: #5f7585; text-transform: none; } /* Firefox 19+ */ 
.webform-component .form-control:-ms-input-placeholder { color: #5f7585; text-transform: none; } /* IE 10+ */ 
.webform-component .form-control:-moz-placeholder { color: #5f7585; text-transform: none; } /* 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; }

.webform-component.webform-component--col-sx--etichetta { padding-top: 0.5em; }

.webform-component.webform-component-markup h3 { font-weight: 400; }

.webform-component-markup .campi { font-weight: 500; 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: #1b395f; }


.webform-component.privacy .control-label {  font-size: 0.8em; line-height: 1.2; font-weight: 400; }


.webform-client-form .form-actions { 
    position: relative;
    text-align: right;
    margin: 0;
    padding-top: 0em;
}

.webform-client-form .form-actions .webform-previous { display: none; }

.webform-client-form .form-actions .form-submit { 
  background: #2c536b none no-repeat scroll 0 0;
  border: 0px solid #1b395f;
  border-radius: 0;
  color: #FFFFFF !important;
  font-family: 'Roboto', sans-serif;
  font-size: 1em !important;
  padding: 0.8em 3em;
  text-shadow: none;
  text-transform: uppercase;
  font-weight: 400;
  width: auto;
  position: relative;
  z-index: 1;
}


.webform-submit.button-primary:hover,
.webform-client-form .form-actions .form-submit:hover { background-color: #dd943c; }



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

        body { font-size: 19px; }
    }

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

        body { font-size: 20px; }

    }

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

        body { font-size: 21px; }

        .casi .float { padding-bottom: 2em; padding-top: 2em; }

    }

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

        body { font-size: 22px; }

        h5, .h5 { font-size: 1em; }

        .contatti br { display: none; }

    }

    @media only screen and (min-width : 1440px) {


    }

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


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

    }


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

    }

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

        h2.big, .h2.big { font-size: 2em; }

        .contatti h4 { font-size: 1.1em; }

        .webform-component label, .webform-component .description { font-size: 0.85em; }

    }

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

    }

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

      .header h3 { font-size: 1.7em; }
      .omaggio h2.big { font-size: 1.9em; }
      .omaggio h2 { font-size: 1.35em; }

    }

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

      h2.big, .h2.big {  font-size: 1.8em; }
      h2, .h2 { font-size: 1.7em; }
      h4, .h4 { font-size: 1em; }
      h5, .h5 { font-size: 1.1em; }

      .omaggio br { display: block; }
      .omaggio h2.big { font-size: 1.9em; }
      .omaggio h2 { font-size: 1.6em; }

      .casi .padding-custom { min-height: auto; padding: 1em 15px; }
      .casi .padding-custom  h3 { text-align: center; font-size: 1.2em; }


      .webform-component.full .form-type-checkbox, 
      .webform-component.full .form-type-radio { width: 20%; margin: 1em 0; }

    }


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

