:root {
	
	/* ----- font-family ----- */
	--primary-font: 'Libre Bodoni', serif;
	
	/* ----- line-height ----- */
	--line-height: calc(1em + 8px);
	
	/* ----- color ----- */
	--primary-color: #2c3e48;
	
}


/* ----- font - family ----- */
body, header, footer,
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,
p, span, li, a, label, [class*="btn"], .input-group {
	font-family: var(--primary-font) !important;
}


/* ----- font - weight ----- */
body, header, footer,
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,
p, span, li, a, label, [class*="btn"], .input-group {
	font-weight: 400 !important;
}


/* ----- font - line height ----- */
body, header, footer,
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,
p, span, li, a, label, [class*="btn"], .input-group {
	line-height: var(--line-height) !important;
}


/* ----- font - size ----- */
h1, .h1 {
	font-size: 26px;
}
h3, .h3 {
	font-size: 20px;
}


/* ----- text ----- */
.text-primary {
	color: var(--primary-color) !important;
}
a.text-primary:hover {
	color: var(--primary-color) !important;
	text-decoration: underline;
}


/* ----- btn ----- */
[class*="btn"] {
	padding: 10px 20px;
	transition: 0.2s all ease-in-out;
}
.btn-primary {
	background-color: white !important;
	color: var(--primary-color) !important;
}
.btn-primary:hover {
	background-color: var(--primary-color) !important;
	color: white !important;
}


/* ----- background ----- */
.bg-black {
	background-color: black !important;
}

/* ----- slider ----- */
#slider {
	height: var(--height-slider) !important;
}
#slider.inspiro-slider .slide {
	background-position: center;
}

/* ----- subheader ----- */
#page-title {
  padding: 200px 0;
  position: relative;
}
#page-title:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
}
#page-title .container {
  position: relative;
  z-index: 10;
}
#page-title .container .breadcrumb ul li + li:before {
  content: '\f054';
  font-family: 'Font Awesome 6 Pro';
  color: white;
}


/* ----- index ----- */
body .body-inner {
  position: relative;
}
.banner-logo-desktop,
.banner-booking-mobile,
.banner-logo-mobile {
	background-color: white;
  padding-top: 10px;
  padding-bottom: 10px;
}
.banner-logo-desktop {
	position: relative;
}
.banner-logo-mobile,
.banner-booking-mobile {
	position: absolute;
	display: none;
	z-index: 20;
}
.banner-logo-mobile {
	top: 0;
}
.banner-booking-mobile {
	bottom: 0;
}
.divider-vertical-white {
	display: none;
}
.cookie-edit-preference {
	left: inherit !important;
	right: 10px !important;
	top: 10px !important;
}
/* --- versione old con sfondo sfumato e testi bianchi ---
.banner-logo-desktop,
.banner-booking-mobile {
	position: absolute;
	bottom: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  padding-top: 80px;
  padding-bottom: 30px;
}
.banner-logo-mobile {
	position: absolute;
	top: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), transparent);
  padding-top: 30px;
  padding-bottom: 80px;
}
.banner-logo-mobile,
.banner-booking-mobile {
	display: none;
}
.divider-vertical-white {
	display: block;
	width: 1px;
	height: 70px;
	background-color: white;
}
*/


/* ------------------------- MARGIN E PADDING ------------------------- */

.ml-neg-13 { margin-left: -13px !important }

.m-0 { margin: 0px !important }
.m-5 { margin: 5px !important }
.m-10 { margin: 10px !important }
.m-15 { margin: 15px !important }
.m-20 { margin: 20px !important }
.m-25 { margin: 25px !important }
.m-30 { margin: 30px !important }
.m-35 { margin: 35px !important }
.m-40 { margin: 40px !important }
.m-50 { margin: 50px !important }
.m-60 { margin: 60px !important }
.m-70 { margin: 70px !important }
.m-80 { margin: 80px !important }
.m-90 { margin: 90px !important }
.m-100 { margin: 100px !important }
.m-110 { margin: 110px !important }
.m-120 { margin: 120px !important }
.m-130 { margin: 130px !important }
.m-140 { margin: 140px !important }
.m-150 { margin: 150px !important }
.m-200 { margin: 200px !important }

.mb-0 { margin-bottom: 0px !important }
.mb-5 { margin-bottom: 5px !important }
.mb-10 { margin-bottom: 10px !important }
.mb-15 { margin-bottom: 15px !important }
.mb-20 { margin-bottom: 20px !important }
.mb-25 { margin-bottom: 25px !important }
.mb-30 { margin-bottom: 30px !important }
.mb-35 { margin-bottom: 35px !important }
.mb-40 { margin-bottom: 40px !important }
.mb-50 { margin-bottom: 50px !important }
.mb-60 { margin-bottom: 60px !important }
.mb-70 { margin-bottom: 70px !important }
.mb-80 { margin-bottom: 80px !important }
.mb-90 { margin-bottom: 90px !important }
.mb-100 { margin-bottom: 100px !important }
.mb-110 { margin-bottom: 110px !important }
.mb-120 { margin-bottom: 120px !important }
.mb-130 { margin-bottom: 130px !important }
.mb-140 { margin-bottom: 140px !important }
.mb-150 { margin-bottom: 150px !important }
.mb-200 { margin-bottom: 200px !important }

.mt-0 { margin-top: 0px !important }
.mt-5 { margin-top: 5px !important }
.mt-10 { margin-top: 10px !important }
.mt-15 { margin-top: 15px !important }
.mt-20 { margin-top: 20px !important }
.mt-25 { margin-top: 25px !important }
.mt-30 { margin-top: 30px !important }
.mt-35 { margin-top: 35px !important }
.mt-40 { margin-top: 40px !important }
.mt-50 { margin-top: 50px !important }
.mt-60 { margin-top: 60px !important }
.mt-70 { margin-top: 70px !important }
.mt-80 { margin-top: 80px !important }
.mt-90 { margin-top: 90px !important }
.mt-100 { margin-top: 100px !important }
.mt-110 { margin-top: 110px !important }
.mt-120 { margin-top: 120px !important }
.mt-130 { margin-top: 130px !important }
.mt-140 { margin-top: 140px !important }
.mt-150 { margin-top: 150px !important }
.mt-200 { margin-top: 200px !important }

.ml-0 { margin-left: 0px !important }
.ml-5 { margin-left: 5px !important }
.ml-10 { margin-left: 10px !important }
.ml-15 { margin-left: 15px !important }
.ml-20 { margin-left: 20px !important }
.ml-25 { margin-left: 25px !important }
.ml-30 { margin-left: 30px !important }
.ml-35 { margin-left: 35px !important }
.ml-40 { margin-left: 40px !important }
.ml-50 { margin-left: 50px !important }
.ml-60 { margin-left: 60px !important }
.ml-70 { margin-left: 70px !important }
.ml-80 { margin-left: 80px !important }
.ml-90 { margin-left: 90px !important }
.ml-100 { margin-left: 100px !important }
.ml-110 { margin-left: 110px !important }
.ml-120 { margin-left: 120px !important }
.ml-130 { margin-left: 130px !important }
.ml-140 { margin-left: 140px !important }
.ml-150 { margin-left: 150px !important }
.ml-200 { margin-left: 200px !important }

.mr-0 { margin-right: 0px !important }
.mr-5 { margin-right: 5px !important }
.mr-10 { margin-right: 10px !important }
.mr-15 { margin-right: 15px !important }
.mr-20 { margin-right: 20px !important }
.mr-25 { margin-right: 25px !important }
.mr-30 { margin-right: 30px !important }
.mr-35 { margin-right: 35px !important }
.mr-40 { margin-right: 40px !important }
.mr-50 { margin-right: 50px !important }
.mr-60 { margin-right: 60px !important }
.mr-70 { margin-right: 70px !important }
.mr-80 { margin-right: 80px !important }
.mr-90 { margin-right: 90px !important }
.mr-100 { margin-right: 100px !important }
.mr-110 { margin-right: 110px !important }
.mr-120 { margin-right: 120px !important }
.mr-130 { margin-right: 130px !important }
.mr-140 { margin-right: 140px !important }
.mr-150 { margin-right: 150px !important }
.mr-200 { margin-right: 200px !important }


.p-0 { padding: 0px !important }
.p-5 { padding: 5px !important }
.p-10 { padding: 10px !important }
.p-15 { padding: 15px !important }
.p-20 { padding: 20px !important }
.p-25 { padding: 25px !important }
.p-30 { padding: 30px !important }
.p-35 { padding: 35px !important }
.p-40 { padding: 40px !important }
.p-50 { padding: 50px !important }
.p-60 { padding: 60px !important }
.p-70 { padding: 70px !important }
.p-80 { padding: 80px !important }
.p-90 { padding: 90px !important }
.p-100 { padding: 100px !important }
.p-110 { padding: 110px !important }
.p-120 { padding: 120px !important }
.p-130 { padding: 130px !important }
.p-140 { padding: 140px !important }
.p-150 { padding: 150px !important }
.p-200 { padding: 200px !important }

.pb-0 { padding-bottom: 0px !important }
.pb-5 { padding-bottom: 5px !important }
.pb-10 { padding-bottom: 10px !important }
.pb-15 { padding-bottom: 15px !important }
.pb-20 { padding-bottom: 20px !important }
.pb-25 { padding-bottom: 25px !important }
.pb-30 { padding-bottom: 30px !important }
.pb-35 { padding-bottom: 35px !important }
.pb-40 { padding-bottom: 40px !important }
.pb-50 { padding-bottom: 50px !important }
.pb-60 { padding-bottom: 60px !important }
.pb-70 { padding-bottom: 70px !important }
.pb-80 { padding-bottom: 80px !important }
.pb-90 { padding-bottom: 90px !important }
.pb-100 { padding-bottom: 100px !important }
.pb-110 { padding-bottom: 110px !important }
.pb-120 { padding-bottom: 120px !important }
.pb-130 { padding-bottom: 130px !important }
.pb-140 { padding-bottom: 140px !important }
.pb-150 { padding-bottom: 150px !important }
.pb-200 { padding-bottom: 200px !important }

.pt-0 { padding-top: 0px !important }
.pt-5 { padding-top: 5px !important }
.pt-10 { padding-top: 10px !important }
.pt-15 { padding-top: 15px !important }
.pt-20 { padding-top: 20px !important }
.pt-25 { padding-top: 25px !important }
.pt-30 { padding-top: 30px !important }
.pt-35 { padding-top: 35px !important }
.pt-40 { padding-top: 40px !important }
.pt-50 { padding-top: 50px !important }
.pt-60 { padding-top: 60px !important }
.pt-70 { padding-top: 70px !important }
.pt-80 { padding-top: 80px !important }
.pt-90 { padding-top: 90px !important }
.pt-100 { padding-top: 100px !important }
.pt-110 { padding-top: 110px !important }
.pt-120 { padding-top: 120px !important }
.pt-130 { padding-top: 130px !important }
.pt-140 { padding-top: 140px !important }
.pt-150 { padding-top: 150px !important }
.pt-200 { padding-top: 200px !important }

.pl-0 { padding-left: 0px !important }
.pl-5 { padding-left: 5px !important }
.pl-10 { padding-left: 10px !important }
.pl-15 { padding-left: 15px !important }
.pl-20 { padding-left: 20px !important }
.pl-25 { padding-left: 25px !important }
.pl-30 { padding-left: 30px !important }
.pl-35 { padding-left: 35px !important }
.pl-40 { padding-left: 40px !important }
.pl-50 { padding-left: 50px !important }
.pl-60 { padding-left: 60px !important }
.pl-70 { padding-left: 70px !important }
.pl-80 { padding-left: 80px !important }
.pl-90 { padding-left: 90px !important }
.pl-100 { padding-left: 100px !important }
.pl-110 { padding-left: 110px !important }
.pl-120 { padding-left: 120px !important }
.pl-130 { padding-left: 130px !important }
.pl-140 { padding-left: 140px !important }
.pl-150 { padding-left: 150px !important }
.pl-200 { padding-left: 200px !important }

.pr-0 { padding-right: 0px !important }
.pr-5 { padding-right: 5px !important }
.pr-10 { padding-right: 10px !important }
.pr-15 { padding-right: 15px !important }
.pr-20 { padding-right: 20px !important }
.pr-25 { padding-right: 25px !important }
.pr-30 { padding-right: 30px !important }
.pr-35 { padding-right: 35px !important }
.pr-40 { padding-right: 40px !important }
.pr-50 { padding-right: 50px !important }
.pr-60 { padding-right: 60px !important }
.pr-70 { padding-right: 70px !important }
.pr-80 { padding-right: 80px !important }
.pr-90 { padding-right: 90px !important }
.pr-100 { padding-right: 100px !important }
.pr-110 { padding-right: 110px !important }
.pr-120 { padding-right: 120px !important }
.pr-130 { padding-right: 130px !important }
.pr-140 { padding-right: 140px !important }
.pr-150 { padding-right: 150px !important }
.pr-200 { padding-right: 200px !important }
.pr-60 { padding-right: 60px !important }
.pr-70 { padding-right: 70px !important }
.pr-80 { padding-right: 80px !important }
.pr-90 { padding-right: 90px !important }
.pr-100 { padding-right: 100px !important }
.pr-110 { padding-right: 110px !important }
.pr-120 { padding-right: 120px !important }
.pr-130 { padding-right: 130px !important }
.pr-140 { padding-right: 140px !important }
.pr-150 { padding-right: 150px !important }
.pr-200 { padding-right: 200px !important }