@charset "UTF-8";

/* CSS Document */

html, body {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	font-size: 20px;
	line-height: 28px;
	color: #ff0000;
	background-color: #E4E2E3;
	-webkit-font-smoothing: antialiased;
	-webkit-backface-visibility: hidden;
	text-rendering: optimizeLegibility;
	background-repeat: no-repeat;
	min-width: 994px;
	-moz-osx-font-smoothing: grayscale; /*PATCH PER FONT BOLDED SU FIREFOX*/
}

strong,
b{
	font-weight: 700;
}

a{
	text-decoration: none;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	html, body {
		min-width: 320px;
		font-size: 54px;
		line-height: 70px;
	}
}

/* CLASSI PER CARATTERI */

.t_rol{
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

.t_rom{
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
}

.t_rob{
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}

.t_rar{
	font-family: 'Raleway', sans-serif;
	font-weight: 400;
}

.t_rab{
	font-family: 'Raleway', sans-serif;
	font-weight: 700;
}

/* CLASSI COLORE */

.c_bg_grigioscuro{
	background-color: #8B8178;
}

.c_bg_grigio{
	background-color: #7F8486;
}

.c_bg_nero{
	background-color: #1F1F26;
}

.c_bg_azzurro{
	background-color: #A2B3BF;
}

.c_bg_bianco{
	background-color: #FFFFFF;
}


.c_grigioscuro{
	color: #8B8178;
}

.c_grigio{
	color: #7F8486;
}

.c_nero{
	color: #1F1F26;
}

.c_azzurro{
	color: #A2B3BF;
}

.c_bianco{
	color: #FFFFFF;
}


/* DIMENSIONI ICONE */

/*
.material-icons,
.fa{
	line-height: inherit !important;
}

.material-icons.md-18 { font-size: 18px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-40 { font-size: 40px; }
.material-icons.md-48 { font-size: 48px; }
.material-icons.md-54 { font-size: 54px; }
.material-icons.md-88 { font-size: 88px; }

.fa-24 { font-size: 24px; }


@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){

	.material-icons.md-18 { font-size: 36px; }
	.material-icons.md-24 { font-size: 48px; }
	.material-icons.md-36 { font-size: 72px; }
	.material-icons.md-40 { font-size: 140px; }
	.material-icons.md-48 { font-size: 96px; }
	.material-icons.md-54 { font-size: 108px; }
	.material-icons.md-88 { font-size: 176px; }
	
	.fa-24 { font-size: 48px; }

}
*/

/* ANIMAZIONE */

.animato{
	-webkit-transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
}

.animatolento{
	-webkit-transition: all .5s ease-out;
	-moz-transition: all .5s ease-out;
	-o-transition: all .5s ease-out;
	transition: all .5s ease-out;
}

/* OMBREGGIATURE */

.ombra{
	box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.25);
}

/* DISABLE SELECT */

.disable-select {
	-webkit-user-select: none;  
	-moz-user-select: none;    
	-ms-user-select: none;      
	user-select: none;
}

/* GENERALI LAYOUT */

#header{
	height:106px;
	width:100%;
	min-width: 994px;
	z-index: 30;
	position: absolute;
	overflow: hidden;
	background-image: url(../img_static/html/sf_header.png);
	background-repeat: repeat-x;
}

#footer{
	width:100%;
	min-width: 994px;
	z-index: 15;
	position: absolute;
	top: 20000px;
	overflow: hidden;
	clear: both;
	-webkit-transition: all .5s ease-in;
	-moz-transition: all .5s ease-in;
	-o-transition: all .5s ease-in;
	transition: all .5s ease-in;
}

#contenitore{
	min-height: 300px;
	width:100%;
	min-width: 994px;
	z-index: 10;
	position: relative;
	top:100px;
}

.centrato{
	width: 994px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.tuttalarghezza{
	width: 100%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.tuttaltezza{
	height: 2000px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#header{
		width:100%;
		min-width: 0px;
		background-image: url(../img_static/html/sf_header_mob.png);
		height: 150px;
		position: fixed;
	}

	#footer{
		min-width: 0px;
	}

	#contenitore{
		min-height: 400px;
		width:100%;
		min-width: 0px;
		top:140px;
		overflow: hidden;
	}

	.centrato{
		width: 100%;
	}
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2) and (orientation : landscape){
	#header{
		background-image: url(../img_static/html/sf_header.png);
		height: 106px;
	}

	#footer{
		min-width: 0px;
	}

	#contenitore{
		min-height: 400px;
		top:100px;
	}
}

/* HEADER */

#centratohead{
	height: 106px;	
}

#logo{
	display: block;
	height: 60px;
	width: 158px;
	background-image: url(../img_static/html/logo.png);
	background-repeat: no-repeat;
	z-index: 40;
	margin-top: 20px;
	position: absolute;
	z-index: 33333333;
	left: 20px;
	background-size: 158px 60px;
	

}

#aprimenu{
	height: 106px;
	right: -14px;
	position: absolute;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#centratohead{
		height: 140px;	
	}
	
	#logo{
		height: 90px !important;
		width: 237px;
		background-size: 237px 90px;
		margin-top: 29px;
		left: 5%;
	}

	#aprimenu{
		height: 150px;
		float: right;
		margin-right: 5%;
	}
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2) and (orientation : landscape){
	#centratohead{
		height: 106px;	
	}
	
	#logo{
		display: block;
		height: 60px;
		width: 158px;
		background-image: url(../img_static/html/logo.png);
		background-repeat: no-repeat;
		z-index: 40;
		margin-top: 20px;
		position: absolute;
		z-index: 33333333;
		left: 20px;
		background-size: 158px 60px;
		
	
	}
	
	#aprimenu{
		height: 106px;
		right: -14px;
		position: absolute;
	}
}

/* FOOTER */

#footersopra{
	padding-top: 37px;
	padding-bottom: 23px;
	border-bottom: 1px solid #FFFFFF;
}

#logofooter{
	position: relative;
	display: block;
	width: 105px;
	height: 40px;
	background-image: url(../img_static/html/logofooter.png);
	background-repeat: no-repeat;
	margin-left: 20px;
	float: left;
	background-size: 105px 40px;
}

#contmenu_footer{
	position: relative;
	float: right;
	margin-top: 10px;
}

#contmenu_footer a{
	padding-left: 34px;
	padding-right: 34px;
	height: 20px;
	line-height: 20px;
	font-size: 16px;
	display: inline-block !important;
	border-right: 1px solid #FFFFFF;
	cursor: pointer !important;
	position: relative;
}

#contmenu_footer a:hover{
	color: rgba(255, 255, 255, 0.5);
}

#contshare{
	position: relative;
	float: right;
}

#contshare span{
	height: 20px;
	line-height: 20px;
	font-size: 16px;
	margin-top: 13px;
	margin-left: 34px;
}

#contshare div{
	height: 40px;
	line-height: 40px;
	width: 40px;
	font-size: 20px;
	text-align: center;
	display: inline-block;
	border: 1px solid #FFFFFF;
	border-radius: 40px;
	margin-top: 2px;
	margin-left: 5px;
	cursor: pointer;
	overflow: hidden;
}

#contshare div:hover{
	background-color: #FFFFFF;
	color: #8B8178;
}

#footersotto{
	padding-top: 33px;
	padding-bottom: 40px;
	text-align: center;
}

#footersotto span{
	padding-left: 9px;
	padding-right: 9px;
	display: inline-block;
	border-right: 1px solid #FFFFFF;
	height: 14px;
	line-height: 14px;
	font-size: 14px;
}

#footersotto span:last-child{
	border: none;
}

#footersotto a{
	display: block;
	height: 14px;
	cursor: pointer;
}

#footersotto a:hover{
	color: rgba(255, 255, 255, 0.5);
}

.spacerfooter{
	display: block;
	height: 80px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#footersopra{
		padding-top: 37px;
		padding-bottom: 23px;
		border-bottom: 1px solid #FFFFFF;
	}
	
	#logofooter{
		display: none;
	}
	
	#contmenu_footer{
		display: none;
	}
	
	#contshare{
		position: relative;
		float: right;
		width: 100%;
		text-align: center;
	}
	
	#contshare span{
		height: 40px;
		line-height: 40px;
		font-size: 40px;
		margin-top: 13px;
		margin-left: 34px;
	}
	
	#contshare div{
		height: 80px;
		line-height: 80px;
		width: 80px;
		font-size: 40px;
		border: 2px solid #FFFFFF;
		border-radius: 80px;
		margin-left: 20px;
	}
	
	#footersotto{
		padding-top: 33px;
		padding-bottom: 40px;
		text-align: center;
	}
	
	#footersotto span{
		width: 100%;
		padding: 0px;
		border:none;
		height: 60px;
		line-height: 60px;
		font-size: 40px;
	}
}

/* MENU DT */

#menu_dt{
	position: absolute;
	width: 100%;
	z-index: 25;
	height: 100px;
	overflow: auto !important;
	min-width: 994px;
	background-color: rgba(162, 180, 191, 0.9);
}

#contmenu_dt{
	opacity: 0;
	height: 100%;
	display: block;
	position: relative;
}

#contmenusopra_dt{
	position: relative;
	padding-top: 139px;
	padding-bottom: 40px;
	width: 994px;
	border-bottom: 10px solid #ffffff;
	height: 100%;
}

#contmenusopra_dt ul {
	margin: 0;
	padding: 0;
	list-style: none;
	margin-left: 20px;
	display: block;
	position: relative;
}

#contmenusopra_dt ul li {
	position: relative;
	height: 75px;
	line-height: 74px;
	font-size: 42px;
}

#contmenusopra_dt ul li::after{
	display: block;
	height: 1px;
	width: 40px;
	background-color: #ffffff;
	position: absolute;
	content: "";
}

#contmenusopra_dt ul li:last-child::after{
	display: none;
}

#contmenusopra_dt ul li a:hover{
	color: #7F8486;
}

#contlen_dt{
	position: absolute;
	top: 142px;
	right: 0px;
	width: 66px;
}

#contlen_dt a{
	display: block;
	height: 58px;
	line-height: 57px;
	font-size: 22px;
}

#contlen_dt a::after{
	display: block;
	height: 1px;
	width: 20px;
	background-color: #ffffff;
	position: absolute;
	content: "";
}

#contlen_dt a:last-child::after{
	display: none;
}

#contlen_dt a:hover{
	color: #7F8486;
}

#contlen_dt a:last-child span{
	font-size: 32px;
	cursor: pointer !important;
	margin-left: -2px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#menu_dt{
		position: fixed !important;
		min-width: 0px;
	}
	
	#contmenu_dt{
		opacity: 0;
	}
	
	#contmenusopra_dt{
		padding-top: 189px;
		padding-bottom: 180px;
		width: 100%;
		border: none;
	}
	
	#contmenusopra_dt ul {
		margin-left: 5%;
	}
	
	#contmenusopra_dt ul li {
		position: relative;
		height: 130px;
		line-height: 130px;
		font-size: 80px;
	}
	
	#contmenusopra_dt ul li::after{
		height: 2px;
		width: 80px;
	}
	
	#contlen_dt{
		top: 189px;
		right: 5%;
		width: 120px;
	}
	
	#contlen_dt a{
		display: block;
		height: 110px;
		line-height: 110px;
		font-size: 45px;
	}
	
	#contlen_dt a::after{
		height: 2px;
		width: 40px;
	}
	
	#contlen_dt a:last-child span{
		font-size: 80px;
		margin-left: -4px;
		height: 110px;
		line-height: 110px;
	}
}

/* HOME */

#h_contslide{
	border-bottom: 10px solid #FFFFFF;
	height: 550px;
}

#h_contpay{
	display: block;
	width: 380px;
	height: 240px;
	background-image: url(../img_static/html/logo_pay.png);
	background-repeat: no-repeat;
	position: absolute;
	overflow: auto;
	margin: auto;
	top: 0; left: 0; bottom: 0; right: 0;
	opacity: 0;
}

#h_contpuls{
	margin-top: 60px;
}

.h_puls{
	display: block;
	width: 306px;
	height: 546px;
	border-bottom: 8px solid #A2B3BF;
	position: relative;
	float: left;
	margin-right: 38px;
	text-align: center;
}

.h_puls:last-child{
	margin: 0px;	
}

.h_puls span{
	font-size: 72px;
	position: relative;
	width: 100%;
	text-align: center;
	display: inline-block;
	margin-top: 40px;
}

.h_puls h2{
	position: relative;
	width: 90%;
	margin-left: 5%;
	font-size: 20px;
	text-align: center;
	margin-top: 30px;
}

.h_puls img{
	display: block;
	width: 306px;
	height: 173px;
	border-bottom: 4px solid #A2B3BF;
	border-top: 4px solid #A2B3BF;
	margin-top: 25px;
}

.h_puls p{
	position: relative;
	width: 90%;
	margin-left: 5%;
	font-size: 16px;
	text-align: left;
	margin-top: 25px;
}

.h_puls a{
	position: absolute;
	padding-left: 3px;
	padding-right: 3px;
	text-decoration: underline;
	font-size: 14px;
	cursor: pointer;
	right: 5%;
	bottom: 10px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#h_contslide{
		border-bottom: 20px solid #FFFFFF;
		height: 920px;
	}
	
	#h_contpuls{
		margin-top: 80px;
	}
	
	.h_puls{
		width: 100%;
		height: auto;
		border-bottom: none;
		margin-right: 0px;
		margin-bottom: 80px;
	}
	
	.h_puls:last-child{
		margin-bottom: 40px;	
	}
	
	.h_puls span{
		font-size: 96px;
		margin-top: 60px;
	}
	
	.h_puls h2{
		font-size: 60px;
		margin-top: 60px;
	}
	
	.h_puls img{
		display: block;
		width: 90%;
		margin-left: 5%;
		height: auto;
		border-bottom: 20px solid #A2B3BF;
		border-top: 20px solid #A2B3BF;
		margin-top: 60px;
	}
	
	.h_puls p{
		font-size: 54px;
		line-height: 70px;
		margin-top: 60px;
		padding-bottom: 160px;
	}
	
	.h_puls a{
		padding-left: 6px;
		padding-right: 6px;
		font-size: 42px;
		cursor:auto;
		right: 10%;
		bottom: 80px;
	}
}

/* PROFILO AIENDALE */

#g_contslide{
	height: 400px;
	border-bottom: 10px solid #FFFFFF;
}

.g_conticona{
	display: block;
	height: 110px;
	width: 110px;
	position: absolute;
	line-height: 110px;
	text-align: center;
	margin-top: -60px;
	left: 50%;
	margin-left: -477px;
	z-index: 90;
}

.g_conticona span{
	font-size: 56px;
	line-height: inherit;
}

.g_contdesc{
	margin-top: 20px;
	padding-bottom: 80px;
}

.g_contdesc p{
	position: relative;
	margin-top: 40px;
	width: 954px;
	margin-left: 20px;
}

#teklaimg{
	position: relative;
	float: right;
	margin-right: 20px;
	margin-left: 20px;
	margin-top: 40px;
	border: 4px solid #A2B3BF;
}

.g_conttrattino{
	display: block;
	height: 20px;
	width: 110px;
	position: absolute;
	left: 50%;
	margin-left: -477px;
	margin-top:-10px;
	z-index: 91;
}

.g_trattino,
.g_notrattino{
	display: block;
	width: 954px;
	margin-left: 20px;
	padding-top: 70px;
	padding-bottom: 40px;
	font-size: 42px;
	position: relative;
}

.g_trattino::after{
	display: block;
	height: 1px;
	width: 40px;
	background-color: #7F8080;
	position: absolute;
	content: "";
	margin-top:40px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#g_contslide{
		border-bottom: 20px solid #FFFFFF;
	}
	
	.g_conticona{
		height: 240px;
		width: 240px;
		line-height: 240px;
		margin: 0px;
		margin-top: -180px;
		left: 5%;
	}
	
	.g_conticona span{
		font-size: 112px;
	}
	
	.g_contdesc{
		padding-bottom: 160px;
	}

	.g_contdesc p{
		position: relative;
		margin-top: 80px;
		width: 90%;
		margin-left: 5%;
	}
	
	#teklaimg{
		margin-right: 5%;
		margin-top: 80px;
		border: 4px solid #A2B3BF;
		padding: 10px;
	}
	
	.g_conttrattino{
		display: block;
		height: 40px;
		width: 240px;
		left: 5%;
		margin: 0px;
		margin-top:-20px;
	}
	
	.g_trattino,
	.g_notrattino{
		width: 90%;
		margin-left: 5%;
		padding-top: 100px;
		padding-bottom: 80px;
		font-size: 90px;
		line-height: 100px;
	}
	
	.g_trattino::after{
		display: block;
		height: 2px;
		width: 80px;
		margin-top:60px;
	}
}

/* SERVIZI */

#g_contslide_bassa{
	height: 150px;
	border-bottom: 10px solid #FFFFFF;
}

.servizio{
	display: block;
	position: relative;
	float: left;
	margin-left: 20px;
	margin-right: 18px;
	width: 458px;
	overflow: hidden;
	margin-bottom: 20px;
	margin-top: 60px;
	min-height: 287px;
}

.servizio img{
	display: block;
	position: relative;
	float: left;
	width: 458px;
	height: 199px;
	border: none;
	margin: 0px;
	border-bottom: 4px solid #A2B3BF;
}

.servizio h2{
	font-size: 26px;
	line-height: 31px;
	width: 438px;
	margin-top: 20px;
	margin-left: 10px;
	text-align: center;
	position: relative;
	float: left;
}

.servizio h2 span{
	font-size: 20px;
	line-height: 24px;
	width: 438px;
	margin-left: 10px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#g_contslide_bassa{
		height: 250px;
		border-bottom: 20px solid #FFFFFF;
	}
	
	.servizio{
		margin: 0px;
		margin-left: 5%;
		width: 90%;
		margin-bottom: 50px;
		margin-top: 60px;
	}
	
	.servizio img{
		width: 100%;
		height: auto;
		border-bottom: 10px solid #A2B3BF;
	}
	
	.servizio h2{
		font-size: 52px;
		line-height: 70px;
		width: 90%;
		margin: 0px;
		margin-left: 5%;
		margin-top: 30px;
	}
	
	.servizio h2 span{
		font-size: 46px;
		line-height: 30px;
		width: 90%;
		margin-left: 5%;
	}
}

/* LISTA PROGETTI */

#lp_contdesc{
	padding-bottom: 0px;
}

#lp_cont{
	padding-bottom: 15px;
}

.lp_puls{
	display: block;
	width: 306px;
	height: 350px;
	position: relative;
	float: left;
	margin-right: 38px;
	margin-top: 50px;
}

.lp_puls:nth-child(-n+3){
	margin-top: 70px;
}

.lp_puls:nth-child(3n){
	margin-right: 0px;
}

.lp_puls img{
	display: block;
	width: 306px;
	height: 173px;
	border: none;
	border-bottom: 4px solid #A2B3BF;
	position: relative;
}

.lp_puls p{
	position: relative;
	width: 90%;
	margin-left: 5%;
	font-size: 16px;
	text-align: left;
	margin-top: 25px;
}

.lente{
	display: block;
	width: 40px;
	height: 40px;
	position: absolute;
	right: 5%;
	bottom: -10px;
}

.lente span{
	display: block;
	height: 40px;
	width: 40px;
	text-align: center;
	line-height: 40px;
	font-size: 24px;
}

.lp_puls:hover .lente{
	color:#A2B3BF;
	background: #FFFFFF;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#lp_contdesc{
		padding-bottom: 0px;
	}
	
	#lp_cont{
		padding-bottom: 50px;
	}
	
	.lp_puls{
		width: 43%;
		height: 650px;
		margin: 0px;
		margin:0px;
		margin-top: 140px;
	}
	
	.lp_puls:nth-child(-n+3){
		margin-top: 140px;
	}
	
	.lp_puls:nth-child(-n+2){
		margin-top: 140px;
	}
	
	.lp_puls:nth-child(3n){
		margin-right: 0px;
	}
	
	.lp_puls:nth-child(odd){
		float: left;
		margin-left: 5%;
	}
	
	.lp_puls:nth-child(even){
		float: right;
		margin-right: 5%;
	}
	
	.lp_puls img{
		display: block;
		width: 100%;
		height: auto;
		border-bottom: 10px solid #A2B3BF;
	}
	
	.lp_puls p{
		font-size: 40px;
		text-align: left;
		margin-top: 25px;
		line-height: 55px;
	}
	
	.lp_puls a{
		display: block;
		width: 120px;
		height: 120px;
		right: 5%;
		bottom: -35px;
	}
	
	.lp_puls a span{
		height: 120px;
		width: 120px;
		line-height: 120px;
		font-size: 80px;
	}
}




/* SCHEDA PROGETTO */

#p_contfoto{
	display: block;
	position: relative;
	float: left;
	width: 622px;
	height: 472px;
	border: 4px solid #A2B3BF;
	margin-left: 20px;
	background: #f5f5f5;
	margin-top: 70px;
	overflow: hidden;
}

#p_contimg{
	position: relative;
	width: 622px;
	height: 472px;
	display: block;
}

.p_maskimg{
	position: relative;
	width: 622px;
	height: 472px;
	display: block;
}

#p_contimg img{
	display: block;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	margin: auto;
	position: absolute; 
}

#controlligallery{
	display: block;
	width: 622px;
	height: 472px;
	position: absolute;
	z-index: 999999999999;
	margin-top: -472px;
	opacity: 0;
}

#controlligallery:hover{
	opacity: 1;
}

#controlligallery .c_bianco{
	display: block;
	line-height: 52px;
	width: 48px;
	height: 48px;
	border-radius: 48px;
	text-align: center;
	position: absolute;
	background: rgba(31, 31, 38, 0.4);
	font-size: 24px;
	cursor: pointer;
}

#avantigallery{
	top:233px;
	right: 10px;
}

#indietrogallery{
	top:233px;
	left: 10px;
}

#zoomgallery{
	top:10px;
	right: 10px;
	display: none !important;
}

#p_coldati{
	display: block;
	position: relative;
	float: right;
	width: 286px;
	height: 480px;
	margin-right: 20px;
	margin-top: 70px;
}

.p_dato{
	display: block;
	width: 100%;
	margin-bottom: 20px;
	position: relative;	
}

.p_dato span{
	font-size: 22px;
	line-height: 25px;
}

.p_dato h3{
	font-size: 26px;
	line-height: 29px;
}

.p_dato:after{
	display: block;
	height: 1px;
	width: 40px;
	background-color: #7F8080;
	position: absolute;
	content: "";
	margin-top:10px;
}

#p_contmappa{
	display: block;
	width: 100%;
	height: 192px;
}

#p_contmappa .gmnoprint a, #p_contmappa .gmnoprint span, #p_contmappa .gm-style-cc {
    display:none;
}
#p_contmappa .gmnoprint div {
    background:none !important;
}

#p_contdesc p{
	position: relative;
	float: left;
	font-size: 16px;
	line-height: 22px;
	margin-top: 80px;
}

.downpdf{
	position: relative;
	float: left;
	padding: 5px;
	padding-left: 30px;
	padding-right: 30px;
	font-size: 20px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	
	#p_contfoto{
		display: block;
		position: relative;
		float: left;
		/*width: 90%;
		height: 550px;*/
		margin-left: 5%;
		margin-top: 70px;
	}
	
	#p_contimg{
		width: 100%;
		height: 100%;
	}
	
	.p_maskimg{
		width: 100%;
		height: 100%;
	}
	
	#p_contimg img{
		display: block;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
		margin: auto;
		position: absolute; 
	}
	
	#controlligallery{
		display: none;
	}
	
	#controlligallery:hover{
		opacity: 0;
		display: none;
	}
	
	#p_coldati{
		width: 286px;
		height: auto;
		margin-right: 5%;
		margin-top: 60px;
	}
	
	.p_dato{
		margin-bottom: 20px;
	}
	
	.p_dato span{
		font-size: 40px;
		line-height: 45px;
	}
	
	.p_dato h3{
		font-size: 46px;
		line-height: 58px;
	}
	
	.p_dato::after{
		display: block;
		height: 2px;
		width: 80px;
	}	
	
	#p_coldati div:last-child:after{
		content: none !important;
	}
	
	#p_contmappa{
		display: none;
	}
	
	#p_contdesc p{
		font-size: 54px;
		line-height: 70px;
		margin-top: 80px;
		width: 90%;
		margin-left: 5%;
	}
	
	.downpdf{
		display: none;
	}
	
	
}





/* LOCATOR */

#g_contlocator{
	margin-top: 80px;
	padding-bottom: 20px;
	overflow: hidden;
}

.d_trattino{
	display: block;
	width: 954px;
	margin-left: 20px;
	padding-top: 40px;
	padding-bottom: 40px;
	font-size: 42px;
	position: relative;
}

.d_trattino::after{
	display: block;
	height: 1px;
	width: 40px;
	background-color: #7F8080;
	position: absolute;
	content: "";
	margin-top:40px;
}

#g_contmap{
	display: block;
	width: 954px;
	height: 525px;
	margin-left: 20px;
	margin-top: 40px;
}

/* POPUP FLOTTANTE */

#l_info{
	display: block;
	height: 30px;
	overflow: hidden;
	position: absolute;
	z-index: 9999999999998;
	line-height: 30px;
	padding-left: 10px;
	padding-right: 10px;
	border-bottom: 2px solid #A2B3BF;
	display: none;
}

#l_info_p{
	display: block;
	text-align: left;
	font-size: 15px;
}

.lnksi{
	display: inline-block;
	height: 26px;
	width: 26px;
	line-height: 26px;
	text-align: center;
	margin-top: 2px;
	margin-left: 10px;
	margin-right: -8px;
}

.lnksi span{
	font-size: 16px;
	line-height: 26px;
}

@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	#g_contlocator{
		margin-top: 80px;
		padding-bottom: 40px;
	}
	
	.d_trattino{
		width: 90%;
		margin-left: 5%;
		padding-top: 100px;
		padding-bottom: 80px;
		font-size: 90px;
		line-height: 100px;
	}
	
	.d_trattino::after{
		display: block;
		height: 2px;
		width: 80px;
		margin-top:60px;
	}
	
	#g_contmap{
		display: block;
		width: 100%;
		height: 750px;
		margin-left: 0px;
		margin-top: 80px;
	}
	
	.gmnoprint{
		display: none;
	}
}









/* CONTATTI */

.c_col{
	margin-top: 80px;
	border-bottom: 8px solid #A2B3BF;
}

#c_col_sx{
	width: 306px;
	position: relative;
	float: left;
}

#c_col_dx{
	width: 650px;
	position: relative;
	float: right;
}

.c_col h2{
	display: block;
	position: relative;
	height: 74px;
	line-height: 74px;
	width: 100%;
	text-align: center;
	font-size: 20px;
	border-bottom: 4px solid #A2B3BF;
}

#c_col_sx img{
	width: 306px;
	border-bottom: 4px solid #A2B3BF;
}

#c_col_sx h3{
	display: block;
	width: 266;
	margin-left: 20px;
	font-size: 24px;
	margin-top: 20px;
}

#c_col_sx h4{
	display: block;
	width: 266;
	margin-left: 20px;
	font-size: 18px;
	line-height: 29px;
	margin-top: 10px;
}

#c_col_sx h5{
	display: block;
	width: 266;
	margin-left: 20px;
	font-size: 16px;
	line-height: 22px;
	margin-top: 40px;
	margin-bottom: 80px;
}

#contactform{
	padding-top: 20px;
	padding-bottom: 80px;
}

.labform{
	display: block;
	font-size: 18px;
	text-indent: 20px;
	width: 610px;
	height: 40px;
	line-height: 50px;
	margin-left: 20px;
	position: relative;
	float: left;
}

.inputform{
	display: block;
	font-size: 18px;
	padding-left: 20px;
	padding-right: 20px;
	width: 570px;
	height: 40px;
	margin-left: 20px;
	position: relative;
	float: left;
	background-color: #dce1e5;
	border: none;
	text-decoration: none;
}

.textareaform{
	width: 570px;
	height: 190px;
	position: relative;
	float: left;
	border: 0px;
	outline: 0px;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	text-decoration: none;
	background-color: #dce1e5;
	resize: none;
	margin-left: 20px;
	font-size: 18px;
}

div:not(#foo) > input[type='checkbox'] {
	position: absolute;
	left: 30px;
	clip: rect(1px, 1px, 1px, 1px);
}

input[type=checkbox] + label{
	width:610px !important;
	height: 40px;
	margin-left: 20px;
	background-image: url("../img_static/html/sf_check.png");
	background-repeat: no-repeat;
	background-position: 570px 0px;
	line-height: 40px !important;
	text-align: right;
	cursor: pointer;
	margin-top: 30px;
}

input[type=checkbox] + label span{
	margin-right: 50px;
}

input[type=checkbox]:checked + label{
	background-position: 570px -40px;
}

.invioform{
	position: relative;
	float: right;
	padding: 5px;
	padding-left: 30px;
	padding-right: 30px;
	font-size: 20px;
	text-align: center;
	border: 0px;
	outline: 0px;
	text-decoration: none;
	margin-right: 20px;
	margin-top: 20px;
	cursor: pointer;
	margin-bottom: 40px;
}

#obbligatori{
	position: relative;
	float: left;
	margin-left: 40px;
	font-size: 16px;
	margin-top: 24px;
}

#rispostaform{
	width: 570px;
	position: relative;
	float: left;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	/*background-color: rgba(203, 8, 8, 0.5);*/
	margin-left: 20px;
	font-size: 18px;
	overflow: auto;
	margin-bottom: 80px;
	display: none;
}


@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	.c_col{
		margin-top: 100px;
		border-bottom: 20px solid #A2B3BF;
	}
	
	#c_col_sx{
		width: 90%;
		margin-left: 5%;
	}
	
	#c_col_dx{
		width: 90%;
		margin-right: 5%;
		float: right;
		padding-bottom: 160px;
	}
	
	.c_col h2{
		height: 102px;
		line-height: 102px;
		font-size: 46px;
		border-bottom: 8px solid #A2B3BF;
	}
	
	#c_col_sx img{
		width: 100%;
		border-bottom: 8px solid #A2B3BF;
	}
	
	#c_col_sx h3{
		width: 90%;
		margin-left: 5%;
		font-size: 52px;
		margin-top: 20px;
	}
	
	#c_col_sx h4{
		display: block;
		width: 90%;
		margin-left: 5%;
		font-size: 40px;
		line-height: 46px;
	}
	
	#c_col_sx h5{
		width: 90%;
		margin-left: 5%;
		font-size: 36px;
		line-height: 42px;
	}
	
	#contactform{
		padding-top: 20px;
		padding-bottom: 160px;
		margin-bottom: 60px;
	}
	
	.labform{
		font-size: 36px;
		text-indent: 5%;
		width: 90%;
		height: 80px;
		line-height: 90px;
		margin-left: 5%;
	}
	
	.inputform{
		display: block;
		font-size: 36px;
		padding-left: 5%;
		padding-right: 5%;
		width: 80%;
		height: 80px;
		margin-left: 5%;
	}
	
	.textareaform{
		width: 80%;
		height: 300px;
		padding-left: 5%;
		padding-right: 5%;
		padding-top: 20px;
		margin-left: 5%;
		font-size: 36px;
		line-height: 46px;
	}
	
	input[type=checkbox] + label{
		display: none;
	}
	
	input[type=checkbox] + label span{
		margin-right: 100px;
	}
	
	input[type=checkbox]:checked + label{
		background-position: 570px -40px;
	}
	
	.invioform{
		padding: 20px;
		padding-left: 30px;
		padding-right: 30px;
		font-size: 40px;
		margin-right: 5%;
		margin-top: 40px;
		margin-bottom: 80px;
	}
	
	#obbligatori{
		position: relative;
		float: left;
		margin-left: 5%;
		font-size: 40px;
		margin-top: 40px;
	}
	
	#rispostaform{
		width: 80%;
		padding-left: 5%;
		padding-right: 5%;
		padding-top: 20px;
		padding-bottom: 20px;
		margin-left: 5%;
		font-size: 40px;
		line-height: 50px;
		margin-bottom: 160px;
	}
}




/* COOKIEINFO E PRIVACYINFO*/

#contprivacy{
	padding: 20px;
	font-size: 16px;
	line-height: 24px;
}

#contprivacy h1{
	font-size: 28px;
	line-height: 38px;
}

#contprivacy h2{
	font-size: 22px;
	line-height: 32px;
	margin-top: 40px
}

#contprivacy p{
	margin-top: 15px;	
}

#contprivacy li{
	margin-left: 20px;
	margin-top: 10px;
}

#contprivacy a{
	font-weight: 700;
	font-style: italic;
	color: #7F8486;
}

#cookieChoiceInfo{
	background: rgba(45, 40, 28, 1) !important;
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

#cookieChoiceInfo a{
	font-size: 14px !important;
	float: left;
	margin-left: 10px !important;
	margin-right: 10px !important;
	font-weight: 700;
	text-decoration: underline;
	color:#ffffff !important;
}

#cookieChoiceInfo span{
	font-size: 14px !important;
	float: left;
	margin-left: 10px !important;
	margin-right: 10px !important;
	color:#ffffff !important;
}

a#cookieChoiceDismiss{
	float: right;
	margin-right: 20px !important;
	margin-left: 0px !important;
	border: 1px solid #ffffff;
	padding-top: 2px;
	padding-bottom: 2px;
	padding-left: 10px;
	padding-right: 10px;
	text-decoration: none !important;
	top:1px;
	color:#ffffff !important;
}


@media (min-width: 320px) and (max-device-width:768px) and (-webkit-min-device-pixel-ratio: 2){
	
	#contprivacy{
		padding: 0px;
		padding-bottom: 100px;
		padding-top: 100px;
		width: 80%;
		padding: 5%;
		font-size: 32px;
		line-height: 48px;
	}
	
	#contprivacy h1{
		font-size: 45px;
		line-height: 60px;
	}
	
	#contprivacy h2{
		font-size: 38px;
		line-height: 42px;
		margin-top: 40px
	}
	
	#contprivacy p{
		margin-top: 30px;	
	}
	
	#contprivacy li{
		/*margin-left: 5%;*/
		margin-top: 20px;
	}
	



	#cookieChoiceInfo{
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}
	
	#cookieChoiceInfo a{
		font-size: 38px !important;
		float: left;
		margin-left: 40px !important;
		margin-right: 20px !important;
		line-height: 50px;
	}
	
	#cookieChoiceInfo span{
		font-size: 38px !important;
		float: left;
		margin-left: 40px !important;
		margin-right: 40px !important;
		line-height: 50px;
		margin-bottom: 50px;
	}
	
	a#cookieChoiceDismiss{
		float: right;
		margin-right: 40px !important;
		margin-left: 0px !important;
		border: 3px solid #ffffff;
		padding-top: 5px;
		padding-bottom: 5px;
		padding-left: 20px;
		padding-right: 20px;
		top:1px;
	}
	
}