/* ==========================================================================
   STILI GENERICI
   ========================================================================== */
audio, canvas, iframe, img, svg, video {
  vertical-align: middle;
}
textarea {
  resize: vertical;
}
/*questo sotto non somma il padding*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}
/* ==========================================================================
   STILI SITO
   ========================================================================== */


   :root {
  --primario: #0F2B4A;
   /*--primario: #004065;*/
  
  --bianco: #ffffff;
}
@font-face {
	font-family: 'helveticaneuelight';
	src: url('/css/HelveticaNeueLight/helvetica-neue-light-1361522102-webfont.eot');
	src: url('/css/HelveticaNeueLight/helvetica-neue-light-1361522102-webfont.eot?#iefix') format('embedded-opentype'), url('/css/HelveticaNeueLight/helvetica-neue-light-1361522102-webfont.woff') format('woff'), url('/css/HelveticaNeueLight/helvetica-neue-light-1361522102-webfont.ttf') format('truetype'), url('/css/HelveticaNeueLight/helvetica-neue-light-1361522102-webfont.svg#helveticaneuelight') format('svg');
	font-weight: normal;
	font-style: normal;
}
body {
	font-family: 'helveticaneuelight', sans-serif;
	font-size: 16px;
	line-height: 22px;
	color:var(--bianco);
	background-color: var(--primario);
}
.wrapper {
	width: 90%;
	margin: 0 5%;
}
img {
	height: auto;
	max-width: 100%;
	width: auto;
}
figure{
	margin: 0;
}
a {
	color: var(--bianco)
}
h1, h2.home {
	font-size: 40px;
	margin-bottom: 20px;
	line-height: 46px;
}
h1 sup, h2 sup{
	font-size: 25px;
}
h2 {
	font-size: 30px;
	line-height: 32px;
	margin: 0 0 5px 0;
	font-weight: bold;
}
h3 {
	font-size: 19px;
	line-height: 22px;
	margin: 0 0 5px 0;
	font-weight: bold;
}
p.small{
	font-size: 14px;
}
p sup{
	font-size: 13px;

}
.pulsante-thin{
	color: var(--bianco);
	text-decoration: underline;
}
.pulsante{
	background-color: var(--primario);
	color: #fff;
	border: none;
	padding: 12px 25px;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: bold;
		border-radius: 15px;
}
.box-download {
	background: #808080;
	padding: 15px;
	color: #fff;
	text-align: center;
	font-size: 18px;
}
.box-download a {
	color: #fff;
}


/*struttura*/
.flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex-nowrap {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.flex30, .flex40, .flex50, .flex60, .flex70{
	flex: 0 0 100%;
}
.box-stondato{
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 40px;
	margin: 40px 0;
	padding: 30px;
}
.box-stondato ol, .box-stondato ul{
	padding-left: 15px;

}
.box-bianco{
	background-color: var(--bianco);
	color: var(--primario);
	border-radius: 40px;
	margin: 40px 0;
	padding: 30px;
}
.box-bianco a{
	color: var(--primario);
}


.text-center{
	text-align: center;
}
.text-uppercase{
	text-transform: uppercase;
}
.pBig{
	padding: 80px 0;
}
.p50{
	padding: 50px 0;
}
/*to TOP*/
	#toTop {
	width: 50px;
	height: 50px;
	position: fixed;
	bottom: 15px;
	right: 10px;
	background: url("/images/freccia-top.png") no-repeat;
	z-index: 100;
	display: none;
	
}

	/* HEADER
--------------------------------------------------------------- */

header {
	padding:10px 0;
}
header .flex{
	align-items: center;
}
.lingue{
	margin-left: 30px;
}
.lingue a{
	border: solid 1px rgba(255, 255, 255, 0.2);
	border-radius: 50px;
	text-decoration: none;
	padding: 3px 0 0 5px;
	color: var(--bianco);
	font-size: 14px;
	height: 30px;
	width: 30px;
	display: inline-flex;
	margin-right: 10px;

}
.lingue a:first-child{
	padding: 3px 0 0 9px;
}
.lingue a.active, .lingue a:hover {
	background-color: var(--bianco);
	border: solid 1px var(--bianco);
	color: var(--primario);
}
/*HOME
--------------------------------------------------------------- */
.slide{
	background-image: url(/images/porta-vighi.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	height: 600px;
	color: var(--bianco);
	border-top: solid 1px var(--primario);
	display: block;
}
.slide h1, .slide p{
	width: 100%;
}
.slide h1{
	padding-top: 50px;
	color: var(--bianco);
}
.stilevita{
	margin-bottom: 70px;
}
.stilevita .flex50, .speciali .flex30{
	position: relative;
	margin-bottom: 10px;
}
.stilevita .flex50 figcaption, .speciali .flex30 figcaption{
	position: absolute;
	bottom: 0;
	padding: 30px;

}
.speciali{
	margin-bottom: 70px;
}
/*.speciali .flex30{
	flex: 0 0 31%;
}*/
.porte-home figure img{
	width: 100%;
}

.duplicazione{
	background: url(/images/duplicazione-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.area-riservata{
	text-align: center;
}

.area-riservata input{
	width: 100%;
	border: 0;
	padding: 12px;
	margin: 0 0 20px 0;
	border: solid 1px #ccc;
	border-radius: 15px;
}

a.fast-price{
	background:#fff;
	color: var(--primario);
	background-size: 100%;
	padding: 20px;
	font-weight:400;
	text-decoration: none;
	border-radius: 20px;
	border: solid 1px var(--primario);
}
.area-riservata input{
	margin:5px 0;}
.area-riservata-container{
		background:#1a3b5e;}
		.area-riservata-container h1{
			padding:7px 0;
	color:#99badb !important;
	letter-spacing:3px;}

/*DOWNLOAD
--------------------------------------------------------------- */
.download {
	background: url(/images/download-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;

}
.download a{
	display: block;
	background: url("/images/ico-download.png") no-repeat;
	background-position: left center;
	padding: 8px 0 8px 40px;


}

/* BOX AREA RISERVATA */
#area_riservata form input{
	margin-bottom:8px;
	border:none;
	margin-left:10px;
}
#area_riservata form input[type=password]{
	margin-left:11px;
}
#area_riservata form input[type=submit]{
	padding:0px;
	margin:0px;
	margin-bottom:20px;
}
#area_riservata form{
	font-size:13px;
}
#area_riservata h1{
	color:#7eb0fc;
	margin:0px;
}
#area_riservata {
	width: 270px;
	float: left;
	margin-right: 35px;
	font-size:15px;
	margin-top:20px;
}
#area_riservata input.area_riservata, #area_riservata a{
	background:none;
	color:#7eb0fc;
	border:0;
	text-decoration:none;
	font-weight:bold;
	font-size:15px;
}

/* AREA RISERVATA 
--------------------------------------------------------------- */
.area-riservata {
	background: url(/images/download-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;

}
.area-riservata-login {
	background: url(/images/download-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;

}
#documenti-ar{
	padding:40px;
	border: dashed 1px var(--primario);
border-radius: 40px;}
	#documenti-ar h3{
		margin-top:0;}

	.ar ul.flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-items: stretch;
	list-style-type: none;
		}
.ar ul.flex li{
			flex: 0 1 49%;
			margin-bottom: 30px;
		}
		.ar ul.flex li a{
			font-weight: bold;
		}
		.ar ul.flex li p{
			margin: 0;
		}
.ar .pulsante ul.flex li{
				padding-right:18px;}
				
				
.dati-utente{
	background-color:#CCC;
	padding:20px;}
.ar .titolo h1{
	margin:0px;
	width:100%;
	float:left;
	margin-bottom:50px;
}
.ar h3{
	margin-top:30px;
}
.ar .datiLogin{
	height:130px;
	float:right;
	margin:0px;
}
.ar .datiLogin h2{
	margin-top:0px;
	margin-bottom:5px;
}
.ar .datiLogin .newsletter_button{
	float:right;
	margin-right:0px;
}
.ar .datiLogin em {
	font-size:12px;
}
.ar .pulsante{
	padding:10px 0px;
	padding-bottom:0px;
}
.ar .pulsante ul{
	padding:0px !important;
}
.ar .pulsante ul li{
	list-style-type:none;
	display:inline-block;
	padding-right:200px;
}
.ar .pulsante ul li p{
	font-size:14px;
	font-style:italic;
}
.ar .pulsante a{
	color: #7EB0FC;
    font-size: 15px;
    font-weight: bold;
    text-decoration: none;
	text-transform:uppercase;
	padding-bottom:3px;
	outline:none;
}
.ar .pulsante a:hover{
	border-bottom:3px solid #7EB0FC;
}
.ar .pulsante span{
	margin-left:200px;
}
.ar .doc{
	min-height:200px;
}
.ar .boxRis {
	padding-top:4px;
}
.ar .filerow {
	display:none;
}
.ar .month {
	padding-top: 5px;
	font-weight: bold;
}

/*  FOOTER 
--------------------------------------------------------------- */
footer {
	background-color: var(--primario);
	padding: 60px 0 40px 0;
	color: #fff;
	border-top: solid 1px rgba(255, 255, 255, 0.5);
}
footer a {
	color: #fff;
	text-decoration: none;
}
footer p {
	text-align: center;
	font-size: 12px;
}
.mappa li {
	list-style-type: none;
	line-height: 22px;
}
.mappa a {
	color: #fff;
}
.mappa h1 a {
	color: #fff;
	text-align: left;
}
.mappa h1 {
	text-align: left;
}
footer #dove {
	background: url(/images/footer_dove.png) no-repeat top left;
	padding: 0 0 0 50px;
	min-height: 50px;
}
footer #tel {
	background: url(/images/footer_tel.png) no-repeat top left;
	padding: 0 0 0 50px;
	min-height: 50px;
}
footer #mail {
	background: url(/images/footer_mail.png) no-repeat top left;
	padding: 0 0 0 50px;
	min-height: 50px;
}
footer #credits {
	text-align: center;
	float: left;
}
footer #credits a {
	text-decoration: none;
	padding-left: 15px;
}
footer #social {
	width: 100%;
	text-align: center;
	margin-top: 10px;
}
footer #social img {
	margin-left: 8px;
}
/*FORM
--------------------------------------------------------------- */
#div2_ARGOMENTO_CONTATTO input {
	width: 5%;
	float: left;
}
#div2_ARGOMENTO_CONTATTO label {
	width: 94%;
	float: left;
	margin-top: 0;
}

 @media only screen and (min-width: 768px) {
	h1, h2.home {
	font-size: 50px;
	margin-bottom: 20px;
	line-height: 56px;
}
h1 sup, h2 sup{
	font-size: 25px;
}
h2 {
	font-size: 40px;
	line-height: 32px;
	margin: 0 0 5px 0;
}
h3 {
	font-size: 25px;
	line-height: 32px;
	margin: 0 0 5px 0;
}
/*struttura*/
.flex30{
	flex: 0 0 28%;
}
.flex40{
	flex: 0 0 38%;
}
.flex50{
	flex: 0 0 48%;
}
.flex60{
	flex: 0 0 60%;
}
.flex70{
	flex: 0 0 70%;
}

	 /*HOME
--------------------------------------------------------------- */	 
	 
	.slide{
	min-height: 500px;
}
.slide h1, .slide p{
	width: 40%;
}

}
@media only screen and (min-width: 1366px) {
  .wrapper, .wrapper-no-margin {
    width: 1296px;
    margin: 0px auto;
  }
	/* AREA RISERVATA 
--------------------------------------------------------------- */

.ar ul.flex li{
			flex: 0 1 32%;}


 }

  /* ==========================================================================
   Helper classes
   ========================================================================== */
  .clearfix:before, .clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
  }
  .clearfix:after {
    clear: both;
  }