/**
   CONTATTI
========================================================================================== 
**/


/* Primo banner
------------------------------------------------------------------------------------------ */
.pc_first_banner{
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	background: #252b2b no-repeat center center;
	background-size: cover;
	color: #FFF;
}
	.pc_first_banner::after{
		content: '';
		min-width: 100%;
		min-height: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		background: #000;
		z-index: 0;
		opacity: 0.6;
	}

	.pc_first_banner h1{
		max-width: 750px;
		margin: 0 auto;
		line-height: 57px;
		font-size: 53px;
		text-transform: uppercase;
		z-index: 2;
	}
	.pc_first_banner .links{ margin-top: 30px; font-size: 14px; font-weight: 300; text-transform: uppercase; }
		.pc_first_banner .links a{
			width: auto;
			height: 38px;
			display: inline-block;
			padding-left: 55px;
			line-height: 38px;
			color: #FFF;
			z-index: 2;
		}
		.pc_first_banner .links a::before{
			content: '';
			width: 38px;
			height: 38px;
			display: block;
			border-radius: 50%;
			position: absolute;
			left: 0;
			top: 50%;
			transform: translate(0, -50%);
			background: url(/img/icon_arrow_down.svg) no-repeat center center;
			background-size: contain;
			transition-duration: 0.4s;
		}
			.pc_first_banner .links a:hover::before{ background-color: rgba(255, 255, 255, 0.4); }
		.pc_first_banner .links a:nth-of-type(2){ margin-left: 50px; }


/* Personale
------------------------------------------------------------------------------------------ */
.contacts{
	height: auto;
	overflow: hidden;
	padding: 120px 0;
	box-sizing: border-box;
	background: rgba(191, 202, 200, 0.5);
}
	.contacts .address{
		width: 90%;
		max-width: 425px;
		height: auto;
		min-height: 425px;
		padding: 40px;
		box-sizing: border-box;
		overflow: hidden;
		float: left;
		background: #FFF;
	}
		.contacts .address h1{ margin-bottom: 25px; font-size: 33px; line-height: 38px; }
		.contacts .address .section{ width: 100%; float: left; margin-bottom: 20px; }
		.contacts .address div.section:nth-of-type(1){ margin-bottom: 45px; }

			.contacts .address .section .title{ width: 30%; float: left; font-size: 13px;  letter-spacing:2px; font-weight: 700; text-align: right; text-transform: uppercase; }
			.contacts .address .section .text{ width: 62%; float: right; }
				.contacts .address .section .text p{ margin: 0; }
				.contacts .address .section .map_link{
					height: 20px;
					padding: 5px 25px 0 0;
					margin-top: 15px;
					display: inline-block;
					line-height: 20px;
					font-size: 12px;
					text-transform: uppercase;
					background: url(/img/contatti/icon_marker.svg) no-repeat right bottom 4px;
					background-size: 20px;
				}
				.contacts .address .section .map_link:hover{ text-decoration: underline; }

	.personnel_mosaic{ width: 745px; height: auto; overflow: hidden; float: right; }
		.personnel_mosaic ul{
			width: 100%;
			height: auto;
			overflow: hidden;
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
		}
		.personnel_mosaic ul li{
			width: 45%;
			height: 85px;
			padding-top: 28px;
			margin-bottom: 30px;
			overflow: hidden;
		}
			.personnel_mosaic ul li h5{
				position: absolute;
				top: 0;
				left: 0;
				font-size: 13px;
				letter-spacing: 2px;
				font-weight: 700;
				font-family: 'Open Sans', sans-serif;
				text-transform: uppercase;
			}
			.personnel_mosaic ul li img{
				width: 70px;
				height: 70px;
				margin-right: 10px;
				float: left;
				border-radius: 50%;
			}
			.personnel_mosaic ul li h6{
				width: calc(100% - 90px);
				padding-top: 9px;
				float: left;
				clear: right;
				font-size: 16px;
				font-weight: 700;
				font-family: 'Open Sans', sans-serif;
			}
			.personnel_mosaic ul li a{ float: left; }
			.personnel_mosaic ul li p{ width: calc(100% - 90px); margin: 0; float: left; }

/* Form
------------------------------------------------------------------------------------------ */
.contact{ height: auto; overflow: hidden; padding: 100px 0; }
		.contact h3{ width: 245px; float: left; line-height: 38px; font-size: 30px; }
		.c_form{ width: 940px; height: auto; overflow: hidden; float: right; }
			.cf_left{ width: 48%; padding: 1px; float: left; }
			.cf_right{
				width: 48%;
				height: 315px;
				padding: 1px;
				position: absolute;
				top: 0;
				right: 0;
			}
			.input_group{ margin-bottom: 25px; }
			div.input_group:nth-last-of-type(1){ margin-bottom: 0; }
			.input_group label{
				width: auto;
				position: absolute;
				left: 15px;
				bottom: 18px;
				z-index: 1;
				transition-duration: 0.4s;
				pointer-events: none;
				font-size: 15px;
				color: rgba(52, 52, 52, 0.5);
			}
				.input_group label.over{
					width: auto;
					padding: 0;
					left: 15px;
    				bottom: 36px;
					font-size: 10px;
					z-index: 3;
					color: rgba(52, 52, 52, 1);
				}
			.cf_right .input_group{ height: 100%; }
			.input_group textarea{ height: 100%; }
			.cf_right label{ bottom: initial; top: 18px; }
			.cf_right label.over{ bottom: initial; top: -6px; }

	.cf_send{
		width: 100%;
		height: auto;
		margin-top: 40px;
		overflow: hidden;
		float: left;
		line-height: 18px;
	}
		.privacy{ float: left; }
		.cf_send .checkbox_label{ width: auto; padding-left: 30px; }
		.cf_send input[type="submit"]{ float: right; }
.form_alert{ float: right; }


/* Modulo
------------------------------------------------------------------------------------------ */
.form_stripe{
	width: 100%;
	height: auto;
	min-height: 210px;
	padding: 50px 0;
	box-sizing: border-box;
	background: #00BA61;
	color: #FFF;
}
	.fs_container{ width: 90%; max-width: 650px; height: auto; overflow: hidden; margin: 0 auto; }
	.fs_container h4{ font-size: 35px; line-height: 38px; text-align: left; }
		.fs_container a{ display: inline-block; font-size: 11px; margin-top: 35px; text-transform: uppercase; }
		.fs_container a:hover{ color: #FFF; text-decoration: underline; }
			.fs_container a::after{
				content: '';
				width: 70px;
				height: 1px;
				display: block;
				position: absolute;
				right: -80px;
				top: 50%;
				transform: translateY(-50%);
				background: #FFF;
			}



/* Schermi Intermedi
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media (max-width: 1336px){

.contacts .address .section .title{ width: 100%; text-align: left; }
.contacts .address .section .text{ width: 100%; text-align: left; }

	.contacts .address{ width: 40%; }
	.personnel_mosaic{ width: 50%; }
		.personnel_mosaic ul li{ width: 100%; padding-top: 25px; }


/* ----------------- */
}
/* Fine schermi Intermedi */



/* Schermi Intermedi
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media (max-width: 1335px){

.contact h3{ width: 100%; margin-bottom: 40px; }
.c_form{ width: 100%; }

/* ----------------- */
}
/* Fine schermi Intermedi */





/* Tablet
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media (max-width: 768px){

.contacts{ padding: 80px 0; }
	.contacts .address{ width: 100%; max-width: 100%; margin-bottom: 60px; }
	.personnel_mosaic{ width: 100%; max-width: 100%; }

.cf_left, .cf_right{ width: 100%; }
.cf_right{ margin-top: 30px; float: left; position: relative; }


/* ----------------- */
}
/* Fine Tablet */




/* Schermi Piccoli
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media (max-width: 767px){

.pc_first_banner{ height: 60.8vw; }
	.pc_first_banner h1{ line-height: 24px; font-size: 20px; }
	.pc_first_banner .links a{ display: none; }

.contact{ padding: 60px 0; }
.cf_send .privacy{ width: 100%; float: initial; }
.cf_send input[type="submit"]{ margin: 30px auto; display: block; float: initial; }

/* ----------------- */
}
/* Fine schermi Piccoli */



/* Schermi Piccoli
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= */
@media (max-width: 359px){

.personnel_mosaic ul li{ height: auto; padding-top: 0; margin-bottom: 40px; }
.personnel_mosaic ul li h5{ margin-bottom: 0; position: relative; }
.personnel_mosaic ul li h6{ width: 100%; padding-top: 4px; }


/* ----------------- */
}
/* Fine schermi Piccoli */