html{ height: 100%; }

body{
	height: 100%;
	line-height: 24px;
    padding: 0px;
    margin: 0px;
	position: relative;
    text-align: left;
    font-family: 'OpenSans', Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 300;
    color: #3c3c3c;
    /*color: #3c3c3c;*/
	background: #FFFFFF;
    /*
    -webkit-hyphens: auto;
	   -moz-hyphens: auto;
	    -ms-hyphens: auto;
	     -o-hyphens: auto;
	        hyphens: auto; 
	*/
	-webkit-text-size-adjust: none;
	   -moz-text-size-adjust: none;
	    -ms-text-size-adjust: none;
	     -o-text-size-adjust: none;
	        text-size-adjust: none; 
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

table{
    margin: 0px;
    padding: 0px;
    font-family: 'OpenSans', Arial, Helvetica, sans-serif;
    font-size: 14px;
    text-align: left;
	border-collapse: collapse;
}

a { color: #8C8C8C; text-decoration: none; border-bottom: 1px solid #8C8C8C; }
.no-touch a:hover 	{ border-bottom: 1px dashed #8C8C8C; }
	a span 	{ cursor: pointer; }

img { border: 0px; }

abbr { text-decoration: none; font-weight: normal; cursor: help; }
address { font-style: normal; }

article, header, hgroup, section, aside, nav, footer, figure, main, button 
{ display: block; }

abbr { border: none;}

.bianco			{ color: #FFFFFF; }
.nero 			{ color: #000000; }
.grigio 		{ color: #808080; }
.rosso 			{ color: #E20613; }
.verde 			{ color: #2C6A71; }
.arancione 		{ color: #D56538; }
.viola			{ color: #8c184c; }
.netzone_orange { color: #FF7203; }
.azzurro 		{ color: #76C4D5; }

.center			{ text-align: center;}
.left			{ text-align: left;}
.right			{ text-align: right;}
.giustificato	{ text-align: justify;}

.maiuscolo { text-transform: uppercase;}
.weight_normal { font-weight: normal;}
.weight_bold { font-weight: bold;}
.weight_black { font-weight: 900;}
.weight_semibold { font-weight: 600;}
.italic { font-style: italic;}

.reset 			{ margin: 0; padding: 0; list-style: none; font-weight: inherit; font-size: inherit; }
	button.reset { border: none; border-spacing: 0; background: none; }
.hidden			{ visibility: hidden; }
.visibile 		{ display: block; }
.invisibile 	{ display: none; }
.clear 			{ display: block; clear: both; }
	.clear_left { display: block; clear: left; }
.clearfix:after	{ content: ''; height: 0; display: block; visibility: hidden; clear: both; }
.loading 		{ background: #FFFFFF url(/immagini_layout/loading.gif) center center / 50px 50px no-repeat; }

.float_right 	{ float: right; }
.float_left 	{ float: left; }
.relative 		{ position: relative;}

.desk_hidden { display: none; }

.center_width { max-width: 980px; margin: 0 auto; }
.center_width_w { max-width: 1200px; margin: 0 auto; }

.center_in_space { 
	display: block;
	position: relative; 
	left: 50%; 
	-webkit-transform: translate(-50%,0);
	   -moz-transform: translate(-50%,0);
	    -ms-transform: translate(-50%,0);
	     -o-transform: translate(-50%,0);
	        transform: translate(-50%,0);
}

.valigner:before {
	content: '';
	width: 0;
	margin-left: -0.25em;
	height: 100%;
	display: inline-block;
	vertical-align: middle;
}

	.valigner > * {
		max-width: 99%;
		display: inline-block;
		vertical-align: middle;
	}

#alert_noscript{
	padding: 10px 0;
	position: relative;
	z-index: 99;
	text-align: center;
	color: #000;
	background: #ED7B7B;
}
	.js #alert_noscript { display: none; }

#alert_cookies {
    width: 100%;
    padding: 15px 0;
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    background: rgb(0,0,0);
    background: rgba(0,0,0,.9);
}

	#alert_cookies > div {
	    max-width: 920px;
	    padding: 0 50px 0 10px;
	    margin: 0 auto;
	    position: relative;
	    color: #ffffff;
	}

		#alert_cookies a { color: #FFFFFF;}
		#alert_cookies #cookies_ok {
			padding: 8px;
			border: 1px solid #FFFFFF;
            position: absolute;
            top: 0;
            right: 0;
            font-size: 15px;
		}


#contenitore {
	min-height: 100%;
	padding: 0;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		 -o-box-sizing: border-box;
			box-sizing: border-box; 
	position: relative;
	z-index: 2;
	overflow: hidden;
	-webkit-backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
	-webkit-transform: translateZ(0);
}


.btn {
	width: 180px;
	padding: 2px 10px;
	border: 1px solid #AD4733;
	display: block;
	font-size: 12px;
	text-transform: uppercase;
	text-align: center;
	color: #FFF;
	white-space: nowrap;
	background: #AD4733;
	-webkit-transition: opacity .5s;
	   -moz-transition: opacity .5s;
	    -ms-transition: opacity .5s;
	     -o-transition: opacity .5s;
	        transition: opacity .5s; 
}
	.btn.negative { color: #AD4733; background: #FFFFFF; } 
	.btn.white { border-color: #FFF; color: #AD4733; background: #FFFFFF; } 
	.no-touch .btn:hover {
		border-style: solid; 
		border-color: inherit;
		-webkit-opacity: .7;
		   -moz-opacity: .7;
		    -ms-opacity: .7;
		     -o-opacity: .7;
		        opacity: .7; 
	}

h1,h2,h3,h4,h5,h6,strong 
{ font-weight: 600; font-size: 26px; color: #000000; }

p, ul { 
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

em { 
	font-style: normal; 
	font-weight: 600; 
}

.text_list {
	padding-left: 1em;
	list-style: none;
}
	.text_list li {position: relative;}
		.text_list li:before {
			content: '\2219';
			position: absolute;
			left: -1em;
			top: 0;
		}


.animintro [data-animate-action-function="animProperty"] {
	-webkit-opacity: 0;
	   -moz-opacity: 0;
	    -ms-opacity: 0;
	     -o-opacity: 0;
	        opacity: 0; 
}

.animintro [data-animate-action-function="waterfall"] > * 
,.animintro [data-animate-action-function="waterfallOnScroll"] > * 
{
	-webkit-opacity: 0;
	   -moz-opacity: 0;
	    -ms-opacity: 0;
	     -o-opacity: 0;
	        opacity: 0; 
}



/*	INTESTAZIONE
******************************************************************************************************/

#intestazione {
	min-height: 89px;
	position: relative;
	z-index: 50;
	background: #FFF;
}
	
	#logo {
		margin: 0;
		position: absolute;
		left: 0;
		top: 90px;
		font-size:  24px;
		/*text-align: center;*/
	}
		#logo a
		,#logo a:hover
		{ border: none; }


	#toggle_menu { position: absolute; top: -50px; }
	#toggle_menu_label {
		min-width: 45px;
		height: 33px;
		line-height: 45px;
		padding: 12px 0 0 0;
		margin: 0;
		border: none;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 100;
		text-align: center;
		color: #FFFFFF;
		background: none;
		cursor: pointer;
	}
		#toggle_menu_label img { margin: 0 auto; }

		#toggle_menu:checked + #toggle_menu_label { height: 32px; padding-top: 13px; }
			#toggle_menu_label .open { display: block; }
				#toggle_menu:checked + #toggle_menu_label .open { display: none;}
			#toggle_menu_label .close { display: none; }
				#toggle_menu:checked + #toggle_menu_label .close { display: block;}


		#nav_menu #site_menu {
			width: 735px; 
			padding-right: calc(70.41% - 735px);
			border-top: 9px solid #AD4733;
			float: right;
		}
			#nav_menu #site_menu li { float: left; }
				#nav_menu #site_menu li + li { margin-left: 3px; }
				#nav_menu #site_menu li a {
					line-height: 40px;
					padding-right: 24px;
					border: none;
					display: block;
					position: relative;
					font-size: 14px;
					color: #3c3c3c;
					overflow: hidden;
				}
					#nav_menu #site_menu li a:after {
						content: attr(data-hover);
						width: 100%;
						height: 100%;
						line-height: 40px;
						display: block;
						position: absolute;
						bottom: 100%;
						left: 0;
						font-weight: 600;
						background: #FFF;
					}

						.no-touch #nav_menu #site_menu > li > a:hover:after 
						,#nav_menu #site_menu > li.active > a:after 
						{
							bottom: 0;
						} 


			#nav_menu #lang_menu { 
				padding-top: 9px;
				float: left;
			}

				#nav_menu #lang_menu li {
					line-height: 14px;
					margin-top: 13px;
					float: left; 
				}

					#nav_menu #lang_menu li + li {
						padding-left: 5px;
						margin-left: 5px;
						border-left: 1px solid #AD4733;
					}

						#nav_menu #lang_menu li a { 
							border: none;
							font-size: 13px;
							text-transform: uppercase; 
							color: #9B9A9A; 
						}
							.no-touch #nav_menu #lang_menu li a:hover 
							,#nav_menu #lang_menu li.attivo a 
							{ color: #3c3c3c; }






/*	POPUP BOX
******************************************************************************************************/


.custom_popup_box {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 200;
	background: rgb(255,255,255);
	background: rgba(255,255,255,.8);
}

	.custom_popup_box > div {
		width: 80%;
		width: calc(100% - 20px);
		max-width: 600px;
		padding: 50px;
		margin: 0 10px;
		border: 1px solid #cccccc;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%);
		   -moz-transform: translate(-50%,-50%);
		    -ms-transform: translate(-50%,-50%);
		     -o-transform: translate(-50%,-50%);
		        transform: translate(-50%,-50%); 
		background: #FFFFFF;
		-webkit-box-shadow: 10px 10px 1px rgba(183, 182, 182, 0.3);
		   -moz-box-shadow: 10px 10px 1px rgba(183, 182, 182, 0.3);
		    -ms-box-shadow: 10px 10px 1px rgba(183, 182, 182, 0.3);
		     -o-box-shadow: 10px 10px 1px rgba(183, 182, 182, 0.3);
		        box-shadow: 10px 10px 1px rgba(183, 182, 182, 0.3); 
	}

		.custom_popup_box > div .close_btn {
		    min-width: 30px;
		    height: 30px;
		    padding: 0;
		    border: none;
		    border-spacing: 0;
		    display: none;
		    position: absolute;
		    right: 10px;
		    top: 10px;
		    background: none;
		    cursor: pointer;
		}

			.js .custom_popup_box > div .close_btn { display: block; }
			.custom_popup_box > div .close_btn:after {
			    content: "\00d7";
			    width: 100%;
			    height: 100%;
			    line-height: 36px;
			    display: block;
			    font-size: 34px;
			    font-weight: 300;
			    text-align: center;
			}
			.custom_popup_box > div .close_btn span { display: none; }





/*	CONTENUTO
******************************************************************************************************/

main { 
	padding: 0 0 60px 0;
	position: relative; 
	z-index: 10; 
}

.page_title { 
	line-height: 30px;
	margin-top: 0;
	font-size: 22px; 
	text-transform: uppercase;
}

.page_section { padding: 40px 0; position: relative; }
	.page_section.main {
		min-height: 250px;
		padding: 0;
	}

	.col_left {
		width: calc(29.69% - 60px);
		padding-top: 15px;
		/*padding-bottom: 80px;*/
		border-top: 1px solid #6F6F6E;
		float: left;
	}
		.col_left .title {
			margin: 0;
			font-size: 16px;
			color: #3c3c3c;
		}
		.col_left a {
			border-bottom: none;
			font-size: 12px;
			font-weight: 600;
		}

	.col_right {
		width: 735px;
		/*padding-bottom: 80px;*/
		margin-right: 110px;
		margin-right: calc(70.41% - 735px);
		float: right;
	}

	.contact_btns { margin-top: 230px; position: relative; }
		.contact_btns:after { 
			content: '';
			width: 100%;
			height: 1px;
			display: block;
			position: absolute;
			bottom: 50px;
			left: 0;
			background: #6f6f6e;
		}

		.contact_btns > p { line-height: 20px; margin: 10px 0 15px 0; font-size: 14px; }
			.contact_btns .btn { border-bottom: 1px solid #AD4733;}
			.contact_btns .btn + .btn { margin-top: 40px; }


.sedi_section { padding-bottom: 80px; }
	.sedi_section:before {
		content: '';
		width: 3000px;
		height: 100%;
		margin-left: -1500px;
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 10;
		background: #F6F6F6
	}
	.sedi_section > * { position: relative; z-index: 12; }


	.sedi_list li {
		width: 33%;
		line-height: 20px;
		padding-top: 18px;
		margin-right: .5%;
		float: left;
		font-size: 14px;
	}
		.sedi_list li:nth-child(3n)  { margin-right: 0; }

		.sedi_list header { min-height: 60px; }
			.sedi_list h3 { margin: 0; font-size: 14px; font-weight: bold; } 
			.sedi_list h5 { margin: 0; font-size: 14px; }
		.sedi_list p { height: 80px; margin: 0 0 10px 0;}
			.sedi_list p a { border: none; color: #3c3c3c; }
		.sedi_list li > a.to_dettaglio {
			line-height: 18px;
			border: none;
			display: block;
			font-size: 12px;
			font-weight: normal;
		}
			.sedi_list li > a.to_dettaglio:before {
				content: '+';
				width: 16px;
				height: 16px;
				line-height: 16px;
				margin-right: 10px;
				border: 1px solid #AD4733;
				-webkit-border-radius: 50%;
				   -moz-border-radius: 50%;
				    -ms-border-radius: 50%;
				     -o-border-radius: 50%;
				        border-radius: 50%; 
				display: inline-block;
				font-size: 14px;
				font-weight: normal;
				text-align: center;
			} 
				.sedi_list li > a.to_dettaglio:hover:before { content: '\203A'; }

				.sedi_list li img { max-width: 100%; }


.has_tooltip { display: inline-block; position: relative; }
	.no-touch .has_tooltip:before 
	{
		content: attr(data-tooltip);
		padding: 3px 5px;
		margin-bottom: 6px;
		display: none;
		position: absolute;
		bottom: 100%;
		left: 50%;
		-webkit-transform: translate(-50%,0);
		   -moz-transform: translate(-50%,0);
		    -ms-transform: translate(-50%,0);
		     -o-transform: translate(-50%,0);
		        transform: translate(-50%,0);
		font-size: 12px;
		color: #FFF;
		background: #AD4733;
		white-space: nowrap;
	}
	.no-touch .has_tooltip:after {
		content: '';
		margin-left: -4px;
		margin-bottom: 2px;
		border-top: 4px solid #AD4733;
		border-left: 4px solid transparent;
		border-right: 4px solid transparent;
		display: none;
		position: absolute;
		bottom: 100%;
		left: 50%;
	   -moz-transform: scale(.999);
	}

	.no-touch .has_tooltip:hover:before
	,.no-touch .has_tooltip:hover:after 
	{ display: block; }

	.no-touch .has_tooltip.bottom:before {
		margin-bottom: 0;
		margin-top: 6px;
		bottom: auto;
		top: 100%;
	}

	.no-touch .has_tooltip.bottom:after {
		margin-left: -4px;
		margin-bottom: 0;
		margin-top: 2px;
		border-top: none;
		border-bottom: 4px solid #AD4733;
		bottom: auto;
		top: 100%;
	} 





/*	FOOTER
******************************************************************************************************/

#footer { 
	width: 100%;
	padding: 18px 0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 100;
	font-size: 12px;
	color: #FFF;
	background: #AD4733;
}

	#footer p { margin-top: 0; margin-bottom: 0; }
	#footer a { text-transform: lowercase; color: #FFF; }
		#footer a:hover { border-color: #FFF; }


#footer #torna_su_btn {
	padding: 16px 10px 10px 10px;
	border: none;	
	display: block;
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 150;
	text-transform: uppercase;
	white-space: nowrap;
	color: #FFFFFF;
	background: rgb(125,125,125);
	background: rgba(0,0,0,.6);
	-webkit-transition: background .5s;
	   -moz-transition: background .5s;
	    -ms-transition: background .5s;
	     -o-transition: background .5s;
	        transition: background .5s; 
}
	.no-touch #footer #torna_su_btn:hover {
		border: none;
		background: rgb(0,0,0);
		background: rgba(0,0,0,1);
		text-decoration: none;
	} 

	#footer #torna_su_btn:before {
		content: '';
		width: 16px;
		height: 16px;
		margin: 0 auto;
		border-top: 1px solid #FFFFFF;
		border-left: 1px solid #FFFFFF;
		display: block;
		-webkit-transform: rotate(45deg);
		   -moz-transform: rotate(45deg);
		    -ms-transform: rotate(45deg);
		     -o-transform: rotate(45deg);
		        transform: rotate(45deg); 
	} 


/*###################################################################################################*/

