body,html{height: 100%;}
body{font-family:'Oswald',Arial;font-weight: 300; font-size:18px;line-height:1.4;color:#333;background: #fff;}
h1, h2, h3, h4, h5, h6{font-weight:normal;margin:0;}
img{border:0;max-width:100%;max-height:100%;}
ul,ol{margin-bottom:0px;}
a,a:hover,a:active,a:focus{color:#000;text-decoration:none;}
a,button{outline: none;}

.top_bar{
	position: relative;
	z-index: 2;
	padding: 20px 0 20px 0;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.90);
}

.bottom_bar{
	position: relative;
	height: 130px;
	width: 100%;
	background-color: #cc3333;
}

.top_img img{
	position: relative;
	width: 100%;
}

.top_img{
	position: relative;
	margin-top: -140px;
}

.pic img{


	-webkit-transition:  .3s ease;
	-moz-transition: .3s ease;
	transition: .3s ease;
}


.pic img:hover {
	border-radius:50px;
}


.title {
	text-transform: uppercase;
	font-size: 1.8em;
	color: #fff;
	font-weight: 400;
}

/* SEPARATORI */


.sep10{
	height: 10px;
	clear: both;
}

.sep15{
	height: 15px;
	clear: both;
}

.sep30{
	height: 30px;
	clear: both;
}

.sep45{
	height: 45px;
	clear: both;
}

.sep60{
	height: 60px;
	clear: both;
}
.plan{
	
	position: relative;
	background: #fff;
	margin-right: -15px;
	padding-left: 30px;
}

.plan .text{ 
	position: absolute;
	bottom: 45px;
	left: 45px;
}

.planimetry{
	margin-top: -70px;
}



.caption {
	font-size: 0.9em;
	font-style: italic;
}

.desc {
	border-bottom: 60px solid #fff;
	background: #fff;
}

.middle_bar {
	background: #cc3333;
	margin-top: -60px;
	min-height: 200px;
}

#booking_form .input-group-addon{
	border-right: 0;
	background: #fff;
	border-radius: 0;
	text-transform: uppercase;
	border: 0;
	font-size: 1.2em;
	font-weight: 700;
}

#booking_form .input-group{
	padding: 5px 0 5px 0;
	background: #fff;
}
#booking_form .fa{
	font-size: 1.5em;
}

#booking_form .input-group .form-control{
	text-align: center;
	font-weight: 700;
	color: #C33;
	border: 0;
	font-size: 1.2em;
	box-shadow: none;
}

#booking_form .input-group .form-control:focus{
	box-shadow: none;
	border:0;
}

#booking_form .input-group-btn .btn.btn-default{
	border-radius: 0;
	background: #fff;
	border: 1px solid #fff;
}

.datepicker td, .next, .prev{
	cursor: pointer;
}

.datepicker{
	max-width: 250px;

}

.datepicker .switch{
	cursor: pointer;
}

.datepicker td.day:hover, span.month:hover, span.year:hover{
	background: #cc3333;
	color: #fff;
}
.datepicker td.day{
	padding: 2px;
}

.datepicker td span {
	display: block;
	width: 56px;
	height: 54px;
	line-height: 54px;
	float: left;
	text-align: center;
	margin: 2px;
	cursor: pointer;
}

.datepicker td, .datepicker th {
	text-align: center;
	width: 65px;
	height: 32px;
}


#booking_form select{
	-webkit-appearance: none;
	appearance: none;
	-moz-appearance: none;
}

#booking_form select::-ms-expand {display: none;}

#booking_form select{
	background: #fff url("../images/arrow-select.jpg") right no-repeat;
	border: 0;
	color: #C33;
	border-radius: 0;
	cursor:pointer;
	height: 44px;
	font-size: 1.2em;
}

.form-control:focus{
	border: 0;
	box-shadow: none;
	outline: 0;
}

.email_form{
	float: left;
	width: 49.5%;
}

.phone_form {
	float:right;
	width: 49.5%;
}

.email_form .form-control{
	font-style: italic;
	background: #fff;
	border-radius: 0;
	border: 0;
	font-size: 1.2em;

}

.phone_form .form-control{
	font-style: italic;
	background: #fff;
	border-radius: 0;
	border: 0;
	font-size: 1.2em;

}

.name_form .form-control{
	font-style: italic;
	background: #fff;
	border-radius: 0;
	border: 0;
	font-size: 1.2em;

}

option {
	font-weight: 300;

}

button.btn-1{
	background: #333;
	font-size: 1.2em;
	float: right;
	width: 275px;
	border: 0;
	color: #fff;
	text-transform: uppercase;
	font-weight: 400;
	padding: 5px;

	-webkit-transition: color .4s, background .4s;
	-moz-transition: color .4s, background .4s;
	-o-transition: color .4s, background .4s;
	transition: color .4s, background .4s;
}

button.btn-1:hover{
	color: #333;
	background: #fff;
}

/** cookie-box **/

#cookie-box{
	background: #f3f3f3;
	padding:5px;
	text-align: center;
	font-size: .9em;
	position: fixed;
	top:0px;
	left:0px;
	right: 0px;
	z-index: 9999;
}
#cookie-box a{
	text-decoration: underline;
}
#cookie-box .btn{
	display: inline-block;
	padding:2px 15px;
	margin-left:10px;
	border-width: 1px;
	float: none;
	color: #777;
	opacity: 1;
}




.form_size .caption {
	color: #fff;
}

.border_middle {
	position: absolute;
	height: 60px;
	background: #C33;
	/* right: 15px; */
	width: 50%;
	top: 0px;
	/* left: 15px; */
	z-index: 2;

}


#map {
	height: 500px;

}

#map img{
	max-height: none;
	max-width: none;
}


.footer {
	position: relative;
	background: #cc3333;
	color: #fff;
}

.footer .fa.fa-map-o{
	color: #333;
}

.logo_footer {
	height: 150px;
	width: 100%;
}

.logo_footer img {
	float: left;
}

.footer .indication{
	color: #333;
    font-weight: 400;;
}

.border_footer {
	position: absolute;
	height: 60px;
	background: #CC3333;
	top: -60px;
	width: 50%;

}

.form_size {
	position: absolute;
	padding-left: 45px;
	padding-right: 45px;
	z-index: 4;
	background: #cc3333;
}

.background_col{
	background: #fff;
}

.title_price {
	color: #fff;
	margin-bottom: 5px;
	margin-top: 10px;
	padding-bottom: 5px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1em;
	text-align: left;
	/*border-bottom: 1px solid #fff;*/
}

.price {
	text-transform: uppercase;
	font-size: 0.8em;
	color: #fff;
	text-align: right;
}

.sep50 {
	height: 50px;
	clear: both;
}

.map_container {
	position: relative;
}


.footer .credits a{
	margin-top:15px;
	display: inline-block;
	opacity: .7;
	animation: .3s ease-in-out; 
}
.footer .credits a:hover{
	animation-name: credits-anim; 
}
@keyframes credits-anim{ 
	25% {transform: rotate(5deg);}
	50% {transform: rotate(0deg);}
	75% {transform: rotate(-5deg);}
	100% {transform: rotate(0deg);}
} 


.white_color {
	color: #fff;
}

.logo_footer_edile img{
	height: 30px;
	margin-right: 15px;
}

.arrive {
	margin-top: -40px;
}

.text_arrive_list {
	color: #333;
}

#loader {
	background: rgba(255, 255, 255, 0.9) url("../images/loader.gif") no-repeat center center;
	/* border: 1px #000 solid; */
	height: 120px;
	width: 120px;
	position: fixed;
	top: 50%;
	padding: 80px;
	left: 50%;
	margin-top: -60px;
	margin-left: -60px;
	display: none;
	z-index: 10000;
	border-radius: 100px;
	opacity: 1;;
}

p.validate {
	color: #2f8d55;
	font-size: 1.3em;
	font-weight: 400;
	margin: 0;
}

p.error{
	color: #cc3333;
	font-size: 1.3em;
	font-weight: 400;
	margin: 0;
}

#risultato {
	border: 1px #c33 solid;
	position: fixed;
	top: 50%;
	padding: 15px;
	left: 50%;
	width: 380px;
	margin-top: -30px;
	margin-left: -190px;
	display: none;
	z-index: 10000;
	background: rgba(255,255,255,0.9);
	border-radius: 50px;
}

.fancybox-title-float-wrap{
	bottom: auto;
}
.fancybox-title-float-wrap .child{
	background: transparent;
	color:#fff;
}
.fancybox-title-float-wrap .child b{
	color:#c33;
}

/* RESPONSIVE */

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

	body{
		font-size:20px;
	}


	.planimetry {
		margin-top: 45px

	}

	.bottom_bar .title{
		color: #C33;
		padding-top:15px;
	}

	.form_size {
		position: relative !important;
	}

	.border_middle {
		display: none;
	}

	.border_footer{
		display: none;
	}

	.arrive {
		margin-top: 15px;
	}


}
