* {
	margin: 0;
	padding: 0;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	color: #424242;
}

button {
	border: none;
}

a {
	text-decoration: none;
}

b, strong {
	font-weight: 600;
}

h1 {
	font-family: "Josefin Sans", sans-serif;
	font-weight: 600;
	font-size: 46px;
	margin-bottom: 20px;
}

h2 {
	font-family: "Josefin Sans", sans-serif;
	font-size: 42px;
	font-weight: 600;
	margin-bottom: 10px;
}

p {
	font-family: 'Nunito', sans-serif;
	font-size: 18px;
	line-height: 1.5;
	font-weight: 200;
}

#header_top {
	width: 100%;
	height: 40px;
	background: #157327;
	float: left;
	z-index: 101;
}

#contatti_top {
	float: right;
	color: white;
	padding-top: 10px;
	padding-right: 10px;
	font-family: 'Nunito', sans-serif;
	font-size: 13px;
	letter-spacing: 3px;
}

#contatti_top a {
	color: white;
}

#pulsante_menu {
	color: white;
	margin: 10px;
	float: left;
	display: none;
	cursor: pointer;
}

#header_menu {
	position: absolute;
	top: 40px;
	width: 100%;
	z-index: 100;
	transition: background .4s;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: rgba(21, 115, 39, .5);
}

#header_menu.sticky {
	position: fixed;
	top: 0;
	background: #157327;
}

/* #header_menu.sticky #logo img {
	width: 180px;
} */

#header_menu.sticky nav {
	/* margin-top: 85px; */
	width: calc(100% - 220px);
}

.whatsapp {
	display: none;
}

#header_menu #logo {
	float: left;
	margin-top: 10px;
	margin-left: 20px;
	margin-bottom: 10px;
}

#header_menu #logo img {
  	height: 120px;
  	transition: height .3s;
}

#header_menu.sticky #logo img {
	height: 80px;
}

#header_menu nav {
	float: right;
	font-family: "Josefin Sans", sans-serif;
	font-size: 21px;
	font-weight: 400;
}

#header_menu nav ul {
	float: right;
}

#header_menu nav ul li {
	list-style: none;
	float: left;
	margin: 5px 30px;
}

#header_menu nav ul li a {
	color: white;
	transition: color .3s;
}

#header_menu nav ul li a:hover {
	/* color: #eeeeee; */
	opacity: 0.7;
}

#header_menu.sticky nav ul li a:hover {
	color: wheat;
}

#immagine_alta {
	width: 100%;
	height: calc(100vh - 40px);
	position: relative;
	float: left;
	overflow: hidden;
}

/* #immagine_alta img {
	width: 100%;
} */

#immagine_alta .desktop::before {
	content: "";
	display: block;
	padding-top: 100%;
}
.centra_immagine {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: translate(50%,50%);
}
.centra_immagine img {
	width: 100%;
	transform: translate(-50%,-50%);
	position: absolute;
	top: 0;
	left: 0;
}
	
#immagine_alta .mobile {
	display: none;
}

#main_wrapper section {
	float: left;
	width: 100%;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.bottone, .bottone_form {
	background: #157327;
	padding: 15px;
	color: white;
	border-radius: 10px;
	text-align: center;
	font-family: "Josefin Sans", sans-serif;
	font-size: 21px;
	line-height: 26px;
}
/*
.bottone {
	float: left;	
}
*/

.bottone {
	margin: 0 auto;
	width: 250px;
}

.bottone_form {
	width: 200px;
	cursor: pointer;
}

.bottone_form span {
	transition: opacity 400ms;
}

.bottone_form:hover span {
	opacity: 0.7;
}


.riga_form textarea {
	border: 1px solid #000000;
	width: calc(100% - 20px);
	padding: 10px;
	margin-bottom: 10px;
}

.bottone a {
	color: white;
	transition: opacity 400ms;
}

.bottone:hover a {
	opacity: 0.7;
}

.primo_bottone,.secondo_bottone {
	float: left;
	width: calc(50% - 40px);
/* 	width: calc(100% - 40px); */
	padding: 0px 20px;
}



.primo_bottone .bottone {
	float:right;
}

.contenitore_meta, #contenitore_appartamenti, #contenitore_quartiere, #contenitore_contattaci, #contenitore_avvera {
	width: calc(100% - 80px);
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px;
}

.contenitore_meta_alt {
	float: left;
	width: 100%;
}

#progetto .contenitore_meta {
	display: flex;
	align-items: center;
	padding-bottom: 0;
}

.prima_meta, .seconda_meta {
	float: left;
	width: calc(50% - 20px);
	margin: 10px;
}

.prima_meta img {
	width: 100%;
	border-radius: 10px;
}

.seconda_meta img {
	width: 100%;
	border-radius: 10px;
}

.un_terzo {
	float: left;
	width: calc(calc(100% / 3) - 20px);
	margin: 10px;
}

.un_terzo img {
	max-width: 100%;
	border-radius: 10px;
}

.due_terzi {
	float: left;
	width: calc((calc(100% / 3) * 2) - 20px);
	margin: 10px;
}

#bottoni_progetto {
	width: 100%;
	float: left;
	margin-top: 20px;
}

#contenitore_appartamenti {
	background: #eeeeee;
}

/*APPARTAMENTI*/
#elenco_appartamenti { float: left; width: 100%; margin-top: 20px; }
.appartamento_singolo {float: left;width: calc(100% - 20px);border: 1px solid #cccccc;padding: 20px 10px 15px 10px; /*height: 90px;*/ font-family: 'Nunito', sans-serif; border-radius: 10px; margin-bottom: 20px;}
.appartamento_singolo .nome_appartamento {float: left;width: calc(100% - 570px);}
.appartamento_singolo .nome_appartamento b {
	font-weight: 700;
}
.appartamento_singolo .nome_appartamento ul {
	list-style-type: none;	
	margin: 12px 0 12px 12px;
}
.appartamento_singolo .nome_appartamento ul:last-of-type { margin-bottom:0; }

.appartamento_singolo .prezzo_appartamento .venduto {float: right;background: red;color: white;padding: 8px;border-radius:8px;/*transform: rotate(-25deg);margin-top: 20px;*/font-size: 12px; letter-spacing: 2px;font-weight: bold;}
.appartamento_singolo .prezzo_appartamento {float: left;width: 170px;text-align: right;padding-right: 10px; font-size:22px; font-weight:600; }
.appartamento_singolo .mq_coperti_appartamento {float: left;width: 130px; text-align: center; font-size:17px; }
.appartamento_singolo .mq_scoperti_appartamento {float: left;width: 130px; text-align: center; font-size:17px; }

.appartamento_singolo .camere_appartamento {float: left;width: 65px; text-align: center;}
.appartamento_singolo .bagni_appartamento {float: left;width: 65px; text-align: center;}
.appartamento_singolo .mq_coperti_appartamento p,.appartamento_singolo .mq_scoperti_appartamento p,.appartamento_singolo .camere_appartamento p,.appartamento_singolo .bagni_appartamento p {
	font-size: 12px;
	color: #aeaeae;	
}

.interno_singolo:not(:last-child) { float:left; width:100%; margin-bottom:15px; }

.appartamento_singolo .box_immagini_appartamento {
	float: left;
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 10px;
}

.appartamento_singolo .immagine_appartamento {
	float: left;
	/* width: 120px; */
	width: calc(100% / 7);
	margin-right: 10px;
	position: relative;
	overflow: hidden;
	border-radius: 10px;
}

.appartamento_singolo .immagine_appartamento:last-child { margin-right:0; }

.appartamento_singolo .immagine_appartamento::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.appartamento_singolo .immagine_appartamento img {
	width: 100%;
	transform: translate(-50%,-50%);
	position: absolute;
	top: 0;
	left: 0;
}

.utility_image {
	visibility: hidden;
	width: 100%;
	position: absolute;
	bottom: 0;
	z-index: 2;
	background: rgba(21, 115, 39, 0.5);
	/* height: 100%; */
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding: 5px 0;
	transition: background .4s;
}

.immagine_appartamento:hover .utility_image {
	visibility: visible;
}

.immagine_appartamento .utility_image:hover {
	background: rgba(21, 115, 39, 0.8);
}

#mappa_location {
	width: 100%;
	height: 400px;
	border-radius: 10px;
}

#check_mappa_point {
	width: 100%;
	float: left;
}

#check_mappa_point .pointer_singolo {
	float: left;
	width: calc(33% - 20px);
	padding: 10px;
	font-family: 'Nunito', sans-serif;
}

#check_mappa_point .pointer_singolo svg {
	width: 20px;
}	 

#check_mappa_point .pointer_singolo input {
	margin: 0 10px;
	
}

#contenitore_form {
	max-width: 680px;
}

.riga_form {
	float: left;
	width: 680px;
	margin-bottom: 20px;
}

.riga_form input[type=text] {
	border: 1px solid rgba(76, 78, 100,0.22);
	width: calc(100% - 20px);
	padding: 10px;
	font-family: 'Nunito', sans-serif;
	font-size: 12px;
	border-radius: 10px;
	transition: border .3s;
}

.riga_form input[type=text]:focus {
	outline: none !important;
	border: 1px solid #157327;
}

.riga_form input[type=text]::-webkit-input-placeholder {
   color: rgba(76, 78, 100,0.6);
}

.riga_form input[type=text]::-moz-placeholder {
   color: rgba(76, 78, 100,0.6);
   opacity: 1;
}

.riga_form input[type=text]:-ms-input-placeholder {
   color: rgba(76, 78, 100,0.6);
}

.riga_form textarea {
	border: 1px solid rgba(76, 78, 100,0.22);
	font-family: 'Nunito', sans-serif;
	font-size: 12px;
	transition: border .3s;
	border-radius: 10px;
	height: 120px;
	transition: border .3s;
}

.riga_form textarea:focus {
	outline: none !important;
	border: 1px solid #157327;
}

.riga_form textarea::-webkit-input-placeholder {
   color: rgba(76, 78, 100,0.6);
}

.riga_form textarea::-moz-placeholder {
   color: rgba(76, 78, 100,0.6);
   opacity: 1;
}

.riga_form textarea:-ms-input-placeholder {
   color: rgba(76, 78, 100,0.6);
}
.riga_form input[type=button] {
	float: right;
}

.riga_form .errore {
	font-family: 'Nunito', sans-serif;
	color: red;
	font-size: 10px;
}

.riga_form a {
	text-transform: none;
	font-family: 'Nunito', sans-serif;
	font-size: 12px;
	color: black;
	margin-left: 5px;
}

footer {
	float: left;
	width: calc(100% - 20px);
	background: #157327;
	padding: 10px;
	font-family: 'Nunito', sans-serif;
}

.footer_copyright {
	color: white;
	font-size: 12px;
	text-align: center;
	float: left;
	width: 100%;
	margin: 20px 0;
}
.footer_info {
	color: #FFF;
	padding: 40px 40px 0;
	width: calc(100% - 80px);
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: self-end;
	justify-content: space-evenly;
	border-bottom: 1px solid #CCCCCC;
}
.footer_colonna {
	color: #FFF;
	font-weight: 300;
	margin-bottom: 20px;
}

.footer_colonna a {
	color: white;
	text-decoration: none;
}

.footer_copyright {
    color: white;
    font-size: 12px;
    text-align: center;
    float: left;
    width: 100%;
    margin: 30px 0 20px;
}

.footer_copyright a {
	color: #FFF;
	text-decoration: underline;
}
.footer_copyright a:hover {
	text-decoration: none;
}

.submit_form {
	width: 100%;
	float: left;
	margin-top: 70px;
}

.centra {
	margin: 0 auto;
}

#lightbox {
	font-family: 'Nunito', sans-serif;
	font-size: 12px;
}

.box_promo {
    position: absolute;
    top: 220px;
    right: 0;
}

#cookie {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: rgba(0,0,0,0.7);
	padding: 10px;
	text-align: center;
	color: white;
	font-family: 'Nunito', sans-serif;
	font-weight: 200;
}

#cookie span {
	background: white;
	color: black;
	padding: 2px 6px;
	margin-left: 10px;
	border-radius: 6px;
}

#cookie span a {
	color: black;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
}

#contenitore_avvera {
	padding-top: 60px;
	text-align: center;
}
#contenitore_avvera p {
	color: #374d64;
	font-size: 28px;
	font-family: 'Josefin Sans', sans-serif;
	line-height: 1.4;
	margin-top: 20px;
}
#contenitore_avvera p span {
	font-weight: 400;
}

@media (max-width:1024px) {
	#pulsante_menu {
		display: block;
	}
	#contatti_top {
		font-size: 14px !important;
		margin-top: 0px;
		letter-spacing: 1px;
	}
	
	#header_top {
		position: fixed;
	}
	
	#header_menu {
		flex-direction: column;
	}
	
	#header_menu #logo {
		width: calc(100% - 40px);
		margin-right: 20px;
		text-align: center;
	}
	
	#header_menu nav ul {
		background: #157327;
		border-radius: 0 0 8px 8px;
		padding-top: 10px;
		box-shadow: 0px 4px 8px -4px rgba(76, 78, 100, 0.5);
	}
	
	
	#header_menu nav {
		/* background: #fafafa; */
		top:40px;
		position: fixed;
		margin-top: 0px;
		display: none;
		width: 100%;
	}
	
	#header_menu nav li {
		width: calc(100% - 40px);
		margin: 15px 20px !important;
		font-size: 15px;
		letter-spacing: 2px;
	}
	
	#immagine_alta {
	    width: : 100% !important;
	    height: auto !important;
	    overflow: hidden;
	}
	
	#immagine_alta img {
	    width: auto;
	    height: 100%;
	    margin-left: 50%;
		transform: translateX(-50%);
	}
	
	#immagine_alta .desktop {
		display: none;
	}
	
	#immagine_alta .mobile {
		display: block;
	}
	
	h1 {
		font-size: 18px;
	}
	
	#progetto .contenitore_meta {
		flex-direction: column;
		padding: 40px 20px;
		width: calc(100% - 40px);
	}
	
	#contenitore_appartamenti,
	#contenitore_quartiere,
	#contenitore_contattaci,
	#contenitore_avvera { width: calc(100% - 40px); padding:40px 20px; }
	
	.prima_meta,.seconda_meta {
		width: calc(100% - 20px) !important;
		min-height: auto;
	}	
	
	.prima_meta img,.seconda_meta img {
		width: 100% !important;
		margin: 0px;
	}
	
	.un_terzo,.due_terzi {
		width: calc(100% - 20px) !important;
	}
	
	.un_terzo img {
		max-width: 100% !important;
	}
	
	.primo_bottone {
		width: calc(100% - 40px);
		
	}
	.secondo_bottone {
		width: calc(100% - 40px);
	}
	
	.primo_bottone .bottone,.secondo_bottone .bottone {
		margin: 5px auto;
		float: none;
		text-align: center;
	}
	
	.riga_form {
		width: 100%;
	}
	
	.whatsapp {
		display: block !important;
		float: left;
	}

	
	
	.appartamento_singolo .box_immagini_appartamento {
		display: flex !important;
		-webkit-flex-wrap: nowrap !important;
		-ms-flex-wrap: nowrap !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		overflow-y: hidden;
	}
	
	.appartamento_singolo {
		height: auto;
		margin-bottom: 10px;
	}
	
	.appartamento_singolo .utility_image {
		visibility: visible;
		background: rgb(255,255,255);
		background: linear-gradient(0deg, rgba(255,255,255,0.75) 0%, rgba(255,255,255,0) 75%);
	}
	
	.appartamento_singolo .utility_image svg path {
		fill: #424242;
	}
	
	.appartamento_singolo .utility_image a:first-child {
		display: none;
	}
	
	.appartamento_singolo .immagine_appartamento {
		width: calc(100% - 20px);
		-webkit-box-flex: 0 !important;
		-webkit-flex: 0 0 auto !important;
		-ms-flex: 0 0 auto !important;
		flex: 0 0 auto !important;
	}
	
	.appartamento_singolo .immagine_appartamento img {
		width: 100%;
	}
	
	.appartamento_singolo .nome_appartamento,
	.appartamento_singolo .prezzo_appartamento {
		width: 100%;
	    text-align: center;
	}
	
	.appartamento_singolo .prezzo_appartamento {
		margin-top: 10px;
		margin-bottom: 10px;
	}
	
	.appartamento_singolo .mq_coperti_appartamento,
	.appartamento_singolo .mq_scoperti_appartamento,
	.appartamento_singolo .camere_appartamento,
	.appartamento_singolo .bagni_appartamento {
	    width: 50%;
	    text-align: center;
	}
	
	.appartamento_singolo .camere_appartamento,
	.appartamento_singolo .bagni_appartamento {
		margin-top: 10px;
	}
	
	#check_mappa_point .pointer_singolo {
		width: calc(100% - 20px) !important;
	}

	.box_promo {
	    top: inherit;
	    bottom: 0;
	    width: 100%;
	    background: #e36666;
	}
	
	.footer_colonna {
		text-align: center;
	}
	
}

/* .lightbox .lb-image {
	width: auto !important;
	height: calc(100vh - 108px) !important;
} */