.owl-carousel .owl-item img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

.btn_1.prenota_subito {
	background: #dc3545;
}

.btn_1.prenota_subito:hover {
	background: #111;
}

.btn_4,
.btn_4.learn-more .circle,
.hamburger,
.hamburger_2,
.hamburger_2 .hamburger__box,
.sidebar-navigation nav,
a.animated_link,
main {
	position: relative
}

.btn_1,
.sidebar-navigation nav a,
a,
a.animated_link,
a.btn_1,
a:focus,
a:hover {
	text-decoration: none
}

.hamburger_2,
.hero.home-search {
	overflow: visible
}

.image,
.layer {
	visibility: hidden
}

.hero .wrapper h1,
.hero .wrapper h3,
.hero .wrapper small,
.phone_element a span em,
.sidebar-navigation nav a,
.slide-text h2,
.slide-text h3,
.slide-text small,
.title small,
a.box_cat_rooms .info small {
	text-transform: uppercase;
	text-transform: uppercase
}

.box_facilities,
.btn_4.learn-more .button-text,
.closebt,
.logo_panel,
.review_card .user_info,
.title.center,
footer .copy {
	text-align: center
}

html * {
	-webkit-font-smoothing: antialiased
}

body {
	background: #faf8f5;
	font-size: .9375rem;
	line-height: 1.6;
	font-family: Montserrat, Helvetica, sans-serif;
	color: #333
}

main {
	z-index: 2;
	background-color: #faf8f5
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #333;
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.3
}

.hero .wrapper p strong,
.title small,
h3,
h4,
h5,
h6,
strong {
	font-weight: 600
}

p {
	margin-bottom: 25px;
	font-size: 16px
}

p.lead strong {
	font-weight: 500
}

hr {
	margin: 30px 0;
	border-color: #d9e1e6;
	opacity: 1
}

hr.more_margin {
	margin: 60px 0
}

a {
	color: #978667;
	transition: .3s ease-in-out;
	outline: 0
}

a:focus,
a:hover {
	color: #24262d;
	outline: 0
}

.title small {
	letter-spacing: 3px;
	display: block;
	margin-bottom: 5px
}

.title h2,
.title h3 {
	font-weight: 700;
	font-size: 2.375rem;
	margin-bottom: 15px
}

.title h3 {
	font-size: 1.9375rem
}

.title.white small {
	color: #ebd7b2;
	opacity: .8
}

.btn_4:hover .button-text,
.title.white h2,
.title.white h3 {
	color: #fff
}

#carousel-home .owl-carousel .owl-slide-animated,
.slide-animated {
	transform: translateY(20px);
	opacity: 0;
	visibility: hidden;
	transition: 50ms
}

#carousel-home .owl-carousel .owl-slide-animated.is-transitioned,
.is-transitioned .slide-animated {
	transform: none;
	opacity: 1;
	visibility: visible;
	transition: .5s
}

.is-transitioned .slide-animated.one {
	transition-delay: 0.5s;
	-webkit-transition-delay: 0.5s;
	-moz-transition-delay: 0.5s;
	-o-transition-delay: 0.5s
}

.is-transitioned .slide-animated.two {
	transition-delay: 0.7s;
	-webkit-transition-delay: 0.7s;
	-moz-transition-delay: 0.7s;
	-o-transition-delay: 0.7s
}

.is-transitioned .slide-animated.three {
	transition-delay: 0.9s;
	-webkit-transition-delay: 0.9s;
	-moz-transition-delay: 0.9s;
	-o-transition-delay: 0.9s
}

.is-transitioned .slide-animated.four {
	transition-delay: 2.5s;
	-webkit-transition-delay: 2.5s;
	-moz-transition-delay: 2.5s;
	-o-transition-delay: 2.5s
}

.btn_4.learn-more .button-text,
.btn_4.learn-more .circle,
.btn_4.learn-more .circle .icon,
.btn_4.learn-more .circle .icon.arrow {
	transition: .45s cubic-bezier(.65, 0, .076, 1)
}

.spazio-cta {
	margin-left: 30%
}

.btn_1,
a.btn_1 {
	border: none;
	color: #fff;
	background: #6a6d5c;
	outline: 0;
	cursor: pointer;
	display: inline-flex;
	padding: 14px 25px;
	font-weight: 600;
	transition: .3s ease-in-out;
	border-radius: 25px;
	align-items: center;
	justify-content: center;
	line-height: 1
}

#carousel-home .cover,
.background-image {
	background-size: cover;
	background-repeat: no-repeat
}

.bg_color_1,
.btn_1:hover,
a.btn_1:hover {
	background-color: #4b514d
}

.btn_1.inverse,
a.btn_1.inverse {
	background-color: #fff;
	color: #333
}

.btn_1.full-width,
a.btn_1.full-width {
	width: 100%;
	text-align: center
}

.btn_1.outline,
a.btn_1.outline {
	background-color: transparent;
	border: 2px solid #6a6d5c;
	color: #6a6d5c
}

.btn_1.outline.white,
a.btn_1.outline.white {
	border-color: #fff;
	color: #fff
}

.btn_1.outline:hover,
a.btn_1.outline:hover {
	background-color: #4b514d;
	border: 2px solid transparent;
	color: #fff
}

.btn_4 {
	display: inline-block;
	cursor: pointer
}

.btn_4.learn-more {
	width: 160px;
	height: auto
}

.btn_4.learn-more .circle {
	display: block;
	margin: 0;
	width: 2.6rem;
	height: 2.6rem;
	background: #978667;
	border-radius: 1.625rem
}

.btn_4:hover .circle,
a.box_cat_rooms:hover .info span:before,
header {
	width: 100%
}

.btn_4.learn-more .circle .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #fff
}

.btn_4.learn-more .circle .icon.arrow {
	left: .425rem;
	width: 1.125rem;
	height: .125rem;
	background: 0 0
}

.btn_4.learn-more .circle .icon.arrow::before {
	position: absolute;
	content: "";
	top: -.25rem;
	right: .0625rem;
	width: .625rem;
	height: .625rem;
	border-top: .125rem solid #fff;
	border-right: .125rem solid #fff;
	transform: rotate(45deg)
}

.btn_4.learn-more .button-text {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: .75rem 0;
	margin: 0 0 0 1.5rem;
	color: #333;
	font-weight: 600;
	line-height: 1.1
}

.btn_4:hover .circle .icon.arrow {
	background: #fff;
	transform: translate(1rem, 0)
}

a.animated_link::before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 2px;
	bottom: -5px;
	left: 0;
	background-color: #24262d;
	transform: scaleX(0);
	transform-origin: top left;
	transition: transform .3s
}

a.animated_link.active::before,
a.animated_link:hover::before {
	transform: scaleX(1)
}

header {
	padding: 20px 0;
	z-index: 999;
	position: fixed;
	left: 0;
	top: 0;
	background-color: rgba(255, 255, 255, 0);
	transition: .3s
}

header .logo_sticky {
	display: none
}

header .logo_normal,
header.reveal_header.headroom--not-top .logo_sticky,
header.reveal_header.headroom--top .logo_normal,
span[data-jarallax-element] {
	display: block
}

header.reveal_header .container-fluid {
	padding-right: 25px;
	padding-left: 25px
}

header.reveal_header.headroom--not-top {
	border-bottom: 1px solid #ededed;
	background-color: #fff
}

.azienda span a,
.box_facilities.white h3,
.menu_panel_details a,
.slide-text.white,
.slide-text.white h2,
.slide-text.white h3,
footer a:hover,
header.fixed_header.sticky nav ul li a.btn_1,
header.reveal_header.headroom--top nav ul li a {
	color: #fff
}

.bg_white,
header.fixed_header nav ul li a.animated_link:before,
header.reveal_header.headroom--top nav ul li a.animated_link:before {
	background-color: #fff
}

.menu_v4 .closebt,
.menu_v4 .hamburger_2,
.menu_v4 .layer,
header.fixed_header.sticky .logo_normal,
header.reveal_header.headroom--not-top .logo_normal,
header.reveal_header.headroom--top .logo_sticky {
	display: none
}

.hamburger_2,
header nav ul li,
header.fixed_header.sticky .logo_sticky {
	display: inline-block
}

header nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: right
}

header nav ul li {
	font-weight: 600;
	margin-left: 50px
}

header nav ul li:first-child {
	margin-left: 0
}

header.fixed_header nav ul li a {
	color: #fff;
	font-size: 18px
}

header.fixed_header.sticky {
	transition: .3s ease-in-out;
	border-bottom: 1px solid #d9e1e6;
	background-color: #fff
}

.box_item_info .box_item_footer a.animated_link,
.sidebar-navigation nav ul li.back a:focus,
.sidebar-navigation nav ul li.back a:hover,
header.fixed_header.sticky nav ul li a {
	color: #333
}

.headroom--not-top .hamburger-inner,
.headroom--not-top .hamburger-inner::after,
.headroom--not-top .hamburger-inner::before,
.headroom--not-top .hamburger__inner,
.headroom--not-top .hamburger__inner::after,
.headroom--not-top .hamburger__inner::before,
header.fixed_header.sticky .hamburger__inner,
header.fixed_header.sticky .hamburger__inner::after,
header.fixed_header.sticky .hamburger__inner::before,
header.fixed_header.sticky nav ul li a.animated_link:before {
	background-color: #333
}

.hamburger_2 {
	top: 8px;
	padding: 0;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: .15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0
}

.hamburger_2:hover .hamburger__inner {
	animation: .4s burger
}

.hamburger_2:hover .hamburger__inner:before {
	animation: .4s .1s burger
}

.hamburger_2:hover .hamburger__inner:after {
	animation: .4s .2s burger
}

.hamburger_2 .hamburger__box {
	width: 24px;
	height: 24px;
	display: inline-block
}

.hamburger_2 .hamburger__inner {
	display: block;
	top: 50%;
	margin-top: -2px
}

.hamburger_2 .hamburger__inner,
.hamburger_2 .hamburger__inner::after,
.hamburger_2 .hamburger__inner::before {
	width: 24px;
	height: 2px;
	background-color: #fff;
	border-radius: 0;
	position: absolute;
	transition-property: transform;
	transition-duration: .15s;
	transition-timing-function: ease
}

.hamburger_2 .hamburger__inner::after,
.hamburger_2 .hamburger__inner::before {
	content: "";
	display: block
}

.hamburger_2 .hamburger__inner::before {
	top: -8px
}

.hamburger_2 .hamburger__inner::after {
	bottom: -8px
}

@keyframes burger {

	0%,
	100% {
		transform-origin: 0 100%;
		transform: scale(1, 1)
	}

	50% {
		transform-origin: 0 100%;
		transform: scale(0, 1)
	}
}

.hamburger {
	top: 8px !important
}

.animated {
	animation-duration: .5s;
	animation-fill-mode: both;
	will-change: transform, opacity
}

@keyframes slideDown {
	0% {
		transform: translateY(-100%)
	}

	100% {
		transform: translateY(0)
	}
}

.animated.slideDown {
	animation-name: slideDown
}

@keyframes slideUp {
	0% {
		transform: translateY(0)
	}

	100% {
		transform: translateY(-100%)
	}
}

.animated.slideUp {
	animation-name: slideUp
}

.nav_panel {
	overflow-y: auto;
	transform: translateX(100%);
	top: 0;
	right: 0;
	bottom: 0;
	width: 350px;
	height: 100%;
	position: fixed;
	z-index: 99999;
	background-color: #fff;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
	transition: .5s cubic-bezier(.77, 0, .175, 1)
}

.no_scroll,
.panel_menu {
	overflow: hidden
}

.nav_panel.show {
	transform: translateX(0)
}

.logo_panel {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 135px;
	background-color: #faf8f5
}

.sidebar-navigation {
	border-top: 1px solid #ededed;
	overflow-x: hidden;
	width: 100%;
	position: absolute;
	padding-top: 20px;
	top: 135px;
	bottom: 0;
	left: 0;
	padding-left: 20px;
	padding-right: 10px;
	z-index: 9999
}

.sidebar-navigation nav {
	height: 100%;
	min-height: 450px
}

.sidebar-navigation nav a {
	font-size: .875rem;
	color: #333;
	font-weight: 600
}

.progress-wrap:hover::after,
.sidebar-navigation nav a.active,
.sidebar-navigation nav ul li a:focus,
.sidebar-navigation nav ul li a:hover {
	color: #978667
}

.sidebar-navigation nav ul {
	list-style: none;
	position: absolute;
	top: 0;
	padding: 1rem;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 1;
	transition: .4s cubic-bezier(.645, .045, .355, 1)
}

.sidebar-navigation nav ul ul {
	right: calc(200% + 10px);
	left: calc(100% + 20px)
}

.sidebar-navigation nav ul li.parent>a:after {
	font-family: bootstrap-icons;
	content: "\f285";
	float: right
}

.sidebar-navigation nav ul li.back a {
	color: #999;
	text-transform: none;
	background-color: rgba(255, 255, 255, .2)
}

.sidebar-navigation nav ul li.back {
	margin-left: -20px
}

.sidebar-navigation nav ul li.back>a:before {
	font-family: bootstrap-icons;
	content: "\f284";
	margin-right: 5px;
	float: left
}

.sidebar-navigation nav ul li a {
	margin-bottom: 10px;
	padding: .35rem .65rem;
	display: block;
	position: relative;
	transition: .2s
}

.sidebar-navigation nav ul .active {
	left: 0;
	right: 0
}


.container-item.active a,
.hero.cat_hover .cat_nav_hover ul li a:hover .info span,
.panel_menu.active .panel__content,
.sidebar-navigation nav ul .active>li>a,
a.box_cat_rooms:hover .info span {
	opacity: 1
}

.sidebar-navigation nav ul.hidden>li>a {
	opacity: 0
}

.sidebar-navigation nav ul ul .active {
	left: calc(100% + 20px);
	right: calc(100% + 20px)
}

.panel_footer {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 99999;
	padding: 0 25px;
	font-size: .875rem
}

#carousel-home,
#carousel-home .owl-carousel,
#newsletter .form-group,
.phone_element,
.submenu_version .main-menu ul li {
	position: relative
}

.phone_element {
	border-top: 1px solid #d9e1e6;
	padding: 20px 0;
	line-height: 1.4
}

.closebt,
a.close_panel {
	position: absolute;
	color: #ccc
}

.phone_element a {
	display: flex;
	align-items: center
}

.phone_element a span {
	font-size: 1.125rem;
	font-weight: 600;
	color: #978667
}

.phone_element a span em {
	color: #333;
	display: block;
	font-style: inherit;
	font-size: .6875rem;
	font-weight: 500;
	letter-spacing: 2px
}

.phone_element a i {
	margin-right: 15px;
	font-size: 1.875rem;
	color: #978667
}

.phone_element.no_borders {
	padding-top: 5px;
	border-top: none
}

.closebt {
	transition: .3s ease-in-out;
	cursor: pointer;
	display: inline-block;
	right: 25px;
	top: 0
}

.image,
.panel_menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.closebt i {
	font-size: 2.625rem
}

.closebt:hover {
	transform: rotate(90deg);
	opacity: 1
}

a.close_panel {
	right: 20px;
	top: 10px;
	font-size: 2rem
}

a.close_panel:hover {
	color: #444
}

.panel_menu {
	bottom: 0;
	right: 0;
	z-index: 99;
	background-color: #4b514d;
	transition: .6s cubic-bezier(.19, 1, .56, 1);
	transform: translate3d(0, -100%, 0)
}

.panel_menu.active {
	transform: translate3d(0, 0, 0)
}

.panel_menu .panel__content {
	height: 100%;
	width: 100%;
	text-align: left;
	opacity: 0;
	transition: .6s 0.6s
}

.panel_menu .panel__content .panel__content_wrapper {
	padding: 0 15px;
	background-color: rgba(75, 81, 77, .9);
	width: 100%;
	height: 100%;
	color: #fff;
	display: flex;
	align-items: center
}

.list_ok ul,
.panel_menu .panel__content .contacts ul,
footer ul {
	list-style: none;
	padding: 0;
	margin: 0 0 25px
}

.menu_panel_details p,
footer h5 {
	margin-bottom: 20px
}

.panel_menu .panel__content .contacts ul li a {
	display: flex;
	align-items: center
}

.panel_menu .panel__content .contacts ul li a i {
	font-size: 1.5rem;
	margin-right: 10px
}

.panel_menu .wrapper_menu>ul {
	list-style: none;
	margin: 0 0 25px;
	padding: 0
}

.panel_menu .wrapper_menu>ul li a {
	position: relative;
	font-size: 2.25rem;
	font-weight: 600;
	letter-spacing: -.03em;
	text-decoration: none;
	color: #fff;
	transition: opacity .3s ease-in-out
}

.image {
	z-index: -1;
	opacity: 0;
	transition: 1s ease-in-out
}

.image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
	filter: grayscale(100%)
}

ul>li:first-child .image {
	opacity: 1;
	visibility: visible;
	transition-delay: 1s
}

.container-item.active a+.image,
.hero.cat_hover .container-item.active a+.image-bg {
	opacity: 1;
	visibility: visible;
	overflow: hidden;
	width: 100%;
	height: 100%
}

.wrapper_menu.hover a {
	opacity: .4
}

.menu_panel_details {
	width: 100%;
	font-size: 1rem;
	margin-bottom: 10px
}

.menu_panel_details h5 {
	color: #fff;
	font-size: 1.1875rem
}

.box_facilities.white i,
.menu_panel_details a:hover,
.social ul li a:hover,
footer a {
	color: #ebd7b2
}

.menu_v4 .hamburger_2 {
	top: 5px
}

.menu_v4 .logo_panel {
	display: none;
	border-bottom: 1px solid #ededed
}

.nav_panel #mainNav nav ul>li {
	display: block;
	margin: 15px 0;
	padding: 0 !important;
	opacity: 0;
	transition: .8s .5s;
	transform: translateY(30px)
}

.nav_panel #mainNav nav ul>li:first-child {
	transition-delay: 0.2s
}

.nav_panel #mainNav nav ul>li:nth-child(2) {
	transition-delay: 0.3s
}

.nav_panel #mainNav nav ul>li:nth-child(3) {
	transition-delay: 0.4s
}

.nav_panel #mainNav nav ul>li:nth-child(4) {
	transition-delay: 0.5s
}

.nav_panel #mainNav nav ul>li:nth-child(5) {
	transition-delay: 0.6s
}

.nav_panel.show #mainNav nav ul>li {
	transform: translateY(0);
	opacity: 1
}

@media only screen and (min-width:992px) {
	.submenu_version .main-menu {
		width: auto
	}

	.submenu_version .main-menu ul>li>a.btn_1:hover,
	.submenu_version .main-menu ul>li>a:hover {
		opacity: .6
	}

	.submenu_version .main-menu ul li.submenu:hover>a:after,
	.submenu_version .main-menu ul li.submenu:hover>a:before {
		bottom: -10px;
		opacity: 0
	}

	.submenu_version .main-menu ul ul {
		position: absolute;
		border-top: 2px solid #978667;
		z-index: 1;
		visibility: hidden;
		left: 0;
		top: 130%;
		margin: 0;
		display: block;
		text-align: left;
		padding: 0;
		background: #fff;
		min-width: 210px;
		box-shadow: 0 6px 12px 0 rgba(0, 0, 0, .175);
		transform: scale(.4);
		transform-origin: 10% top;
		transition: .2s, _ .2s, _ .2s;
		border-radius: 3px;
		opacity: 0
	}

	.submenu_version .main-menu ul ul:before {
		bottom: 100%;
		left: 12%;
		border: 7px solid transparent;
		content: " ";
		height: 0;
		width: 0;
		position: absolute;
		pointer-events: none;
		border-bottom-color: #978667;
		margin-left: -7px
	}

	.submenu_version .main-menu ul li:hover>ul {
		padding: 0;
		visibility: visible;
		opacity: 1;
		transform: scale(1);
		transition-delay: 0.2s;
		transition-duration: 0s, .2s, .2s
	}

	.submenu_version .main-menu ul ul li {
		display: block;
		margin: 0
	}

	.submenu_version .main-menu ul ul li a {
		font-size: .8125rem;
		color: #333 !important;
		display: block;
		padding: 12px 15px;
		font-weight: 500;
		transition: .3s
	}

	.submenu_version .main-menu ul ul li:first-child a:hover {
		border-radius: 3px 3px 0 0
	}

	.submenu_version .main-menu ul ul li:last-child a {
		border-bottom: none
	}

	.submenu_version .main-menu ul ul li:last-child a:hover {
		border-radius: 0 0 3px 3px
	}

	.submenu_version .main-menu ul ul li:hover>a {
		background-color: #f9f9f9;
		color: #978667 !important;
		padding-left: 20px;
		opacity: 1
	}
}

@media only screen and (max-width:991px) {
	.main-menu {
		overflow-y: auto;
		transform: translateX(102%);
		top: 0;
		right: 0;
		bottom: 0;
		width: 350px;
		height: 100%;
		position: fixed;
		z-index: 99999;
		background-color: #fff;
		transition: .5s cubic-bezier(.77, 0, .175, 1);
		box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
		-webkit-transition: .4s cubic-bezier(.77, 0, .175, 1);
		-moz-transition: .4s cubic-bezier(.77, 0, .175, 1)
	}

	.main-menu #mainNav {
		padding: 30px
	}

	.main-menu #mainNav ul {
		text-align: left
	}

	.main-menu #mainNav ul li {
		display: block;
		margin: 0
	}

	.main-menu #mainNav ul li a {
		display: block;
		color: #333 !important;
		text-transform: uppercase;
		padding: .35rem .65rem !important;
		margin: 0 0 10px
	}

	.main-menu #mainNav ul li a:before {
		display: none !important
	}

	.main-menu #mainNav ul li a.active,
	.main-menu #mainNav ul li a:hover,
	.submenu_version .main-menu #mainNav a.show-submenu.show_normal {
		color: #978667 !important
	}

	.main-menu #mainNav ul li a.btn_1 {
		background-color: transparent
	}

	.main-menu.show {
		transform: translateX(0)
	}

	.submenu_version .main-menu ul>li>a.show-submenu:hover:after {
		color: #978667
	}

	.submenu_version .main-menu ul>li>a.show-submenu:after {
		transition: .3s ease-in-out;
		font-family: bootstrap-icons;
		font-size: 1.125rem;
		content: "\f282";
		line-height: 1;
		float: right;
		transform: rotate(0)
	}

	.submenu_version .main-menu ul>li>a.show-submenu.show_normal:after {
		transform: rotate(180deg)
	}

	.submenu_version .main-menu ul li.submenu ul {
		border-left: 1px solid #ededed;
		margin: 0 0 15px 25px
	}

	.submenu_version .main-menu #mainNav ul li ul li a {
		text-transform: none !important;
		font-weight: 500;
		font-size: .875rem
	}

	.submenu_version .main-menu .show-submenu+ul {
		opacity: 0;
		display: none
	}

	.submenu_version .main-menu a.show-submenu.show_normal+ul {
		opacity: 1;
		display: block
	}
}

@media only screen and (max-width:560px) {
	.main-menu.show {
		width: 100%
	}
}

.opacity-mask {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2
}

.background-image {
	background-position: center center;
	transition: .5s;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1
}

.jarallax,
.styled-select,
footer,
footer .footer_bg {
	position: relative
}

.jarallax {
	z-index: 0
}

.jarallax>.jarallax-img {
	position: absolute;
	-o-object-fit: cover;
	object-fit: cover;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1
}

.kenburns .owl-item.active .item img,
img.jarallax-img.kenburns {
	transform-origin: 50% 50%;
	animation: 15s linear forwards kenburns;
	transition: 1s ease-in-out
}

@keyframes kenburns {
	0% {
		transform: scale3d(1.4, 1.4, 1.4) translate3d(-5%, -2%, 0);
		transition: transform 7s linear 1s
	}

	100% {
		transform: scale3d(1.25, 1.25, 1.25) translate3d(0, 0, 0);
		transition: transform 7s linear 1s
	}
}

img.jarallax-img.kenburns-2 {
	transform-origin: 50% 50%;
	animation: 10s linear forwards kenburns;
	transition: 1s ease-in-out
}

.hero {
	color: #fff;
	overflow: hidden
}

.error_page,
.hero.full-height {
	height: 100vh
}

.hero.medium-height {
	height: 70vh
}

.hero.small-height {
	height: 60vh
}

.hero .wrapper {
	text-align: left;
	height: 100%
}

.hero .wrapper small {
	letter-spacing: 3px;
	display: block;
	margin: 0 0 10px;
	color: #ebd7b2;
	font-weight: 600;
	letter-spacing: 1px
}

.hero .wrapper h1,
.hero .wrapper h3 {
	color: #fff;
	font-size: 3.1875rem;
	margin: 0 0 10px;
	font-weight: 700
}

.hero .wrapper p {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.4;
	margin-bottom: 0
}

#newsletter h5,
.home a.box_contents,
.social ul {
	margin: 0 0 25px
}

footer {
	color: #fff;
	background: linear-gradient(rgba(106, 109, 92, .9), rgba(106, 109, 92, .9)) center/cover no-repeat, url('../img/case/004.jpg') center/cover no-repeat
}

footer .footer_bg {
	padding-top: 230px;
	z-index: 2;
	overflow: hidden
}

footer .footer_bg .background-image {
	opacity: .3;
	filter: grayscale(100%)
}

footer .footer_bg .gradient_over {
	background: 0 0;
	background: linear-gradient(to bottom, transparent, #24262d);
	top: 0;
	bottom: 0;
	height: 100%;
	left: 0;
	pointer-events: none;
	position: absolute;
	width: 100%;
	z-index: 3
}

footer .move_content {
	position: relative;
	z-index: 4
}

footer h5 {
	color: #fff;
	font-size: 1.25rem
}

footer hr {
	opacity: .1
}

footer .copy {
	padding: 25px 0;
	background-color: #1f2127;
	font-size: .8125rem
}

.social ul {
	display: block;
	list-style: none;
	padding: 0
}

.social ul li {
	display: inline-block;
	margin: 0 5px
}

.social ul li a {
	display: block;
	color: #fff
}

.box_facilities h3,
.contact_info ul li h4,
.slide-text p,
.social ul li a i {
	font-size: 1.3125rem
}

.styled-select {
	max-width: 180px;
	overflow: hidden;
	height: 40px;
	line-height: 40px;
	border: none;
	background-color: rgba(255, 255, 255, .05);
	border-radius: 3px;
	padding-right: 35px
}

.item-img img,
.marquee {
	max-width: 100%
}

.styled-select.lang-selector:after {
	font-family: bootstrap-icons;
	content: "\f3ee";
	color: #fff;
	position: absolute;
	right: 15px;
	top: 0
}

.styled-select select {
	background: 0 0;
	width: 110%;
	padding-left: 15px;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	height: 30px;
	color: #ccc;
	font-size: .8125rem;
	margin: 0;
	font-weight: 500;
	appearance: window;
	-moz-appearance: window;
	-webkit-appearance: none;
	cursor: pointer;
	outline: 0
}

.styled-select select:focus {
	color: #fff;
	outline: 0;
	box-shadow: none
}

.styled-select select::-ms-expand {
	display: none
}

.styled-select.lang-selector select option {
	color: #555
}

#comments,
.contact_info ul li,
.footer_links,
.form-group,
.reviews_sum_details {
	margin-bottom: 25px
}

.footer_links ul {
	line-height: 1.9
}

.footer_links ul li a {
	display: inline-block;
	color: #fff
}

.footer_links ul li a:hover {
	transform: translateX(10px)
}

#newsletter input[type=email] {
	border: 0;
	height: 45px;
	border-radius: 3px;
	padding-left: 15px;
	background-color: rgba(255, 255, 255, .06);
	color: #fff
}

#newsletter input[type=email]:focus {
	border: 0;
	box-shadow: none
}

#newsletter button[type=submit] {
	position: absolute;
	right: 5px;
	color: #fff;
	font-size: 1.375rem;
	top: 2px;
	border: 0;
	opacity: .6;
	height: 45px;
	cursor: pointer;
	background-color: transparent;
	transition: .3s ease-in-out;
	outline: 0
}

.layer {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 100%;
	min-height: 100%;
	z-index: 9999;
	background-color: rgba(0, 0, 0, .35);
	transition: .1s;
	opacity: 0
}

.layer-is-visible {
	opacity: 1;
	visibility: visible
}



.qty-buttons {
	position: relative;
	width: 100%;
	display: inline-block
}

.qty-buttons label {
	position: absolute;
	left: 15px;
	top: 13px;
	font-weight: 500;
	color: #6c757d;
	font-size: .9375rem
}

.qty-buttons input.qty {
	width: 100%;
	text-align: left;
	padding-left: 80px
}

.hero.cat_hover .cat_nav_hover ul li a .info,
a.box_cat_rooms .info {
	z-index: 9;
	padding: 25% 30px 60px;
	transform: translate(0, 0);
	transition: .4s
}

.qty-buttons input.qtyminus,
.qty-buttons input.qtyplus {
	position: absolute;
	width: 36px;
	height: 36px;
	border: 0;
	outline: 0;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent: -9999px;
	box-shadow: none;
	border-radius: 50%;
	top: 8px
}

.box_overlay,
a.box_cat_rooms {
	position: relative;
	border-radius: 10px
}

.qty-buttons input.qtyplus {
	background: url("../img/plus.svg") center center no-repeat #f5f5f5;
	right: 15px
}

.qty-buttons input.qtyminus {
	background: url("../img/minus.svg") center center no-repeat #f5f5f5;
	right: 55px
}

.qty-buttons.version_2 .form-control {
	height: 50px
}

.qty-buttons.version_2 input.qty {
	padding-left: 15px
}

.qty-buttons.version_2 input.qtyplus {
	background: url("../img/plus.svg") center center no-repeat #fff;
	right: 5px
}

.qty-buttons.version_2 input.qtyminus {
	background: url("../img/minus.svg") center center no-repeat #fff;
	right: 40px
}

#carousel-home .static {
	position: static
}

#carousel-home .cover {
	background-position: center;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	max-height: none !important;
	z-index: 2;
	opacity: 1 !important
}

#carousel-home .owl-carousel .owl-slide {
	height: 100vh;
	position: relative
}

#carousel-home .owl-carousel .owl-slide-title.is-transitioned {
	transition-delay: 0.2s;
	-webkit-transition-delay: 0.2s;
	-moz-transition-delay: 0.2s;
	-o-transition-delay: 0.2s
}

#carousel-home .owl-carousel .owl-slide-title-2.is-transitioned {
	transition-delay: 0.4s;
	-webkit-transition-delay: 0.4s;
	-moz-transition-delay: 0.4s;
	-o-transition-delay: 0.4s
}

#carousel-home .owl-carousel .owl-slide-title-3.is-transitioned {
	transition-delay: 0.6s;
	-webkit-transition-delay: 0.6s;
	-moz-transition-delay: 0.6s;
	-o-transition-delay: 0.6s
}

#carousel-home .owl-carousel .owl-slide-title-4.is-transitioned {
	transition-delay: 0.8s;
	-webkit-transition-delay: 0.8s;
	-moz-transition-delay: 0.8s;
	-o-transition-delay: 0.8s
}

#carousel-home .owl-carousel .owl-dots .owl-dot,
#carousel-home .owl-carousel .owl-nav [class*=owl-]:focus {
	outline: 0
}

.owl-carousel .owl-dots {
	margin-top: 0 !important;
	right: 15px;
	width: 40px;
	top: 50%;
	transform: translateY(-50%);
	position: absolute;
	z-index: 3
}

.owl-carousel.nav-dots-orizontal .owl-dots {
	margin-top: 20px !important;
	width: 100%;
	position: static
}

.slide-text h2,
.slide-text h3 {
	font-size: 3.1875rem;
	font-weight: 700
}

.slide-text small {
	color: #ebd7b2;
	letter-spacing: 4px;
	font-weight: 600;
	display: block;
	margin: 0 0 10px
}

.slide-text.black {
	color: #111
}

.pagination a:hover:not(.active),
.slide-text.black h2 {
	color: #000
}

#icon_drag_mobile {
	position: absolute;
	right: 20px;
	bottom: 20px;
	background: url("../img/drag_icon.svg") no-repeat;
	width: 50px;
	height: 30px;
	opacity: .6;
	z-index: 99;
	display: none
}

a.box_cat_rooms {
	display: block;
	margin-bottom: 25px;
	height: 500px;
	overflow: hidden;
	background-color: #ccc;
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, .2)
}

.box_item_info,
a.box_contents {
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, .1)
}

a.box_cat_rooms .info {
	position: absolute;
	width: 100%;
	display: block;
	color: #fff;
	left: 0;
	bottom: -75px;
	backface-visibility: hidden;
	background: 0 0;
	background: linear-gradient(to bottom, transparent, #000)
}

a.box_cat_rooms .info small {
	font-weight: 600;
	letter-spacing: 2px;
	display: block;
	margin-bottom: 0;
	font-size: .75rem;
	color: #fff
}

a.box_cat_rooms .info h3 {
	color: #fff;
	font-size: 1.625rem;
	font-weight: 600;
	margin-bottom: 15px
}

a.box_cat_rooms .info span {
	font-size: .9375rem;
	display: inline-flex;
	align-items: center;
	font-weight: 600;
	opacity: 0;
	position: relative
}

a.box_cat_rooms .info span:before {
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 10px;
	height: 2px;
	content: "";
	transition: width .5s;
	background-color: #fff
}

a.box_cat_rooms .info span:hover {
	background-color: #24262d;
	border-color: transparent
}

a.box_cat_rooms figure {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%
}

a.box_cat_rooms:hover .info {
	transform: translate(0, -65px)
}

a.box_cat_rooms:hover .background-image {
	transform: scale(1.1)
}

.box_facilities {
	padding: 0 25px 25px;
	border-width: 2px;
	border-style: solid;
	border-right: 0;
	-o-border-image: linear-gradient(to bottom, #ededed, rgba(0, 0, 0, 0)) 1 60%;
	border-image: linear-gradient(to bottom, #ededed, rgba(0, 0, 0, 0)) 1 60%
}

.box_facilities i {
	font-size: 3.875rem;
	color: #978667
}

.box_facilities.no-border {
	border-width: 0
}

.box_facilities.white {
	-o-border-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0)) 1 60%;
	border-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(0, 0, 0, 0)) 1 60%
}

.owl-carousel .animated {
	animation-duration: 1s;
	animation-fill-mode: both
}

.animated.flip {
	backface-visibility: visible;
	animation-name: flip
}

@keyframes flipInX {
	0% {
		transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
		transition-timing-function: ease-in;
		opacity: 0
	}

	40% {
		transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
		transition-timing-function: ease-in
	}

	60% {
		transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
		opacity: 1
	}

	80% {
		transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
	}

	100% {
		transform: perspective(400px)
	}
}

.flipInX {
	backface-visibility: visible !important;
	animation-name: flipInX
}

.box_overlay {
	background-color: #24262d;
	padding: 45px 45px 45px 225px;
	min-height: 170px;
	color: #fff;
	margin-bottom: 20px
}

.pic,
.pic h4 {
	position: absolute
}

.pic {
	left: 45px;
	top: 45px;
	text-align: left
}

.pic h4 {
	left: 95px;
	top: 18px;
	color: #fff;
	font-size: .875rem;
	font-weight: 500
}

.avatar img,
.item-img .content {
	left: 50%;
	transform: translate(-50%, -50%)
}

.pic h4 small {
	display: block;
	color: #fff;
	margin-top: 3px;
	letter-spacing: normal !important
}

.box_item_info small,
a.box_contents small {
	letter-spacing: 2px;
	text-transform: uppercase
}

.pic figure {
	width: 80px;
	height: 80px;
	overflow: hidden;
	border-radius: 50%
}

.pic figure img {
	width: 80px;
	height: auto
}

.comment {
	border-left: 1px solid rgba(255, 255, 255, .3);
	padding-left: 30px;
	font-size: 1.125rem;
	font-style: italic;
	text-align: left
}

.accordion .card {
	border: 0;
	margin-bottom: 10px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .05);
	border-radius: 5px
}

.accordion .card .card-header {
	background-color: #fff;
	padding: 20px;
	border: 0
}

.accordion .card-body {
	padding: 0 20px
}

.accordion .card-header h5 {
	font-size: 1.0625rem;
	color: #333
}

.accordion .card-header h5 a {
	border: 0;
	display: block;
	color: #333
}

.accordion .card-header h5 a i.indicator {
	font-size: 1.125rem;
	font-weight: 400;
	float: right;
	color: #333;
	transform: rotate(45deg);
	transition: .3s ease-in-out
}

.accordion .card-header h5 a.collapsed i {
	transform: rotate(0)
}

.box_item_info {
	background-color: #fff;
	z-index: 9;
	position: relative;
	padding: 40px 40px 20px;
	border-radius: 10px
}

.box_item_info small {
	font-weight: 600;
	display: block;
	margin-bottom: 0;
	font-size: .875rem;
	color: #978667
}

.box_item_info h2 {
	font-size: 1.875rem;
	font-weight: 600;
	margin-bottom: 20px
}

.box_item_info .facilities ul {
	list-style: none;
	padding: 0;
	margin: 0 0 15px
}

.box_item_info .facilities ul li {
	float: left;
	display: flex;
	align-items: center;
	line-height: 1;
	margin: 0 25px 10px 0
}

.box_item_info .facilities ul li:last-child {
	margin: 0
}

.box_item_info .facilities ul li i {
	height: 36px;
	font-size: 1.875rem;
	color: #978667;
	margin-right: 15px
}

.box_item_info .box_item_footer {
	border-top: 2px solid #ededed;
	margin-top: 15px;
	padding: 25px 0 15px
}

.row_list_version_1,
.row_list_version_3 {
	margin-bottom: 60px
}

.row_list_version_1 .box_item_info {
	max-width: 750px;
	margin: -250px 60px 60px
}

.row_list_version_2 {
	margin-bottom: 120px
}

.row_list_version_2 .owl-carousel .owl-dots {
	right: auto;
	left: 15px
}

.row_list_version_2 .box_item_info {
	margin: 0 0 0 -100px
}

.row_list_version_2.inverted .owl-carousel .owl-dots {
	left: inherit;
	right: 15px
}

.row_list_version_2.inverted .box_item_info {
	margin: 0 -100px 0 0
}

@media (max-width:1199px) {
	.box_facilities {
		border-width: 0
	}

	.row_list_version_2 .box_item_info {
		margin: -150px 30px 0
	}

	.row_list_version_2.inverted .box_item_info {
		margin: -50px 30px 0
	}
}

.row_list_version_3 .box_item_info {
	max-width: 750px;
	margin: -100px 60px 60px
}

.booking_wrapper {
	border-radius: 10px;
	background-color: rgba(151, 134, 103, .05);
	padding: 20px 20px 0
}

.booking_wrapper hr {
	border-color: #d9e1e6;
	opacity: 1;
	margin: 0 0 25px
}

.booking_wrapper .form-control::-moz-placeholder {
	color: #333
}

.booking_wrapper .form-control::placeholder {
	color: #333
}

.owl-carousel.border-radius .owl-item {
	border-radius: 10px;
	overflow: hidden
}

.specifiche_casa ul {
	margin: 0 0 25px;
	padding: 0;
	list-style: none
}

.specifiche_casa ul li {
	float: left;
	width: 100%;
	margin: 0 5px;
	padding: 10px 0;
	border-bottom: 1px solid #ededed;
	display: flex;
	align-items: center;
	font-size: 17px;
	font-weight: 500
}

.specifiche_casa ul li i {
	font-size: 2.125rem;
	margin-right: 15px;
	color: #978667
}

.progress {
	margin-bottom: 0;
	height: 5px
}

.progress-bar {
	background-color: #978667;
	width: 1px;
	transition: .8s 1s
}

.reviews_sum_details h6 {
	font-size: 1rem
}

.reviews_sum_details strong {
	position: relative;
	top: -10px
}

.review_card {
	border-radius: 10px;
	padding: 25px 25px 1px;
	margin-bottom: 30px;
	background-color: rgba(151, 134, 103, .05)
}

.review_card .reply .user_info figure,
.review_card .user_info figure {
	width: 50px;
	height: 50px;
	overflow: hidden;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	margin-bottom: 10px
}

.review_card .reply .user_info figure img,
.review_card .user_info figure img {
	width: 50px;
	height: auto;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

.review_card .user_info h5 {
	font-size: .8125rem
}

.review_card .review_content h4 {
	font-size: 1.125rem
}

.review_card .review_content .rating {
	float: left;
	font-weight: 600;
	font-size: 1.625rem;
	color: #978667
}

.review_card .review_content .rating small {
	font-size: .75rem;
	font-weight: 600
}

.review_card .review_content .rating strong {
	font-size: .8125rem;
	font-weight: 400;
	color: #333
}

.review_card .reply .user_info h5,
.review_card .review_content .rating em {
	font-size: .875rem
}

.review_card .review_content em {
	font-size: .8125rem;
	padding-top: 12px;
	color: #777;
	float: right
}

.review_card .review_content ul {
	margin: 35px 0 25px;
	padding: 0
}

.review_card .review_content ul li {
	display: inline-block;
	font-size: .8125rem;
	margin-right: 0
}

.review_card .review_content ul li a {
	background-color: #f0f0f0;
	padding: 7px 10px 5px;
	border-radius: 3px;
	color: #333
}

.review_card .review_content ul li a:hover {
	background-color: #24262d;
	color: #fff
}

.review_card .review_content ul li a i {
	margin-right: 5px
}

.review_card .review_content ul li:last-child {
	float: right;
	margin-right: 0
}

.review_card .reply {
	padding-top: 30px
}

.review_card .reply .review_content {
	border-left: 3px solid #ddd;
	padding-left: 20px
}

.review_card .reply .review_content em {
	color: #999;
	font-style: italic;
	float: right;
	position: relative;
	top: -10px
}

a.box_contents {
	margin: 0 10px 45px;
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background-color: #fff
}

a.box_contents .wrapper {
	padding: 20px 40px 50px 60px;
	position: relative
}

a.box_contents figure {
	position: relative;
	overflow: hidden;
	transition: .7s
}

a.box_contents figure img {
	transition: 1s cubic-bezier(.25, .46, .45, .94)
}

a.box_contents figure em {
	position: absolute;
	z-index: 4;
	bottom: 0;
	left: 10px;
	background-color: #24262d;
	color: #fff;
	padding: 10px 15px;
	line-height: 1;
	text-transform: uppercase;
	font-style: normal;
	font-size: .75rem
}

a.box_contents small {
	font-weight: 600;
	color: #ddd;
	top: 5px;
	left: 40px;
	display: block;
	width: 150%;
	transform: rotate(90deg);
	transform-origin: 0 0;
	white-space: nowrap;
	position: absolute
}

.avatar,
.comment_right,
.custom_badge,
.item-img,
.list_ok ul li,
.marquee,
.pinned-image,
a.box_contents em {
	position: relative
}

a.box_contents small:after {
	background-color: #eee;
	width: 100%;
	height: 1px;
	content: "";
	display: inline-block;
	margin: 4px
}

a.box_contents h2 {
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 30px
}

a.box_contents em {
	font-style: normal;
	font-weight: 600
}

a.box_contents em:before {
	position: absolute;
	bottom: -8px;
	left: 0;
	width: 10px;
	height: 2px;
	content: "";
	transition: width .5s;
	background-color: #978667
}

a.box_contents:hover em:before {
	width: 100%;
	background-color: #333
}

a.box_contents:hover img {
	transform: scale(1.2)
}


.avatar {
	float: left;
	margin-right: 25px;
	width: 68px;
	height: 68px;
	overflow: hidden;
	border-radius: 50%
}

.avatar img {
	width: 68px;
	height: auto;
	position: absolute;
	top: 50%
}

.comment_right {
	display: table;
	background-color: #f7f7f7;
	border-radius: 3px;
	padding: 20px 20px 0
}

.comment_right:after,
.comment_right:before {
	right: 100%;
	top: 30px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-radius: 3px
}

.comment_right:after {
	background-color: rgba(0, 0, 0, 0);
	border-right-color: #f7f7f7;
	border-width: 15px;
	margin-top: -15px
}

.comment_right:before {
	border-color: transparent;
	border-width: 16px;
	margin-top: -16px
}

.comment_info {
	padding-bottom: 7px
}

.comment_info span {
	padding: 0 10px
}

.contact_info {
	background-color: #fff;
	border-radius: 10px;
	padding: 30px 45px 30px;
	margin-bottom: 25px;
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, .05)
}

.contact_info ul {
	list-style: none;
	padding: 0;
	margin: 0
}

.contact_info ul li i {
	font-size: 2.25rem;
	color: #978667
}

.contact_info ul li small {
	font-style: oblique;
	opacity: .8
}

.map_contact iframe {
	width: 100%;
	filter: grayscale(85%);
	height: 450px;
	margin-bottom: -10px
}

.error_page h1 {
	font-size: 5.625rem
}

.gallery-intro {
	margin-top: 60px
}

.item-img {
	border-radius: 10px;
	overflow: hidden
}

.item-img .content {
	position: absolute;
	text-align: center;
	top: 50%;
	background: rgba(0, 0, 0, .65);
	z-index: 1;
	display: flex;
	justify-content: center;
	flex-direction: column;
	height: 100%;
	width: 100%;
	transition: .2s ease-in-out;
	opacity: 0
}

.item-img .content a {
	opacity: 0;
	transition: .2s;
	font-size: 24px;
	width: 100%;
	height: 100%;
	display: block;
	display: flex;
	align-items: center;
	justify-content: center
}

.item:hover .content {
	height: calc(100% - 30px);
	width: calc(100% - 30px);
	opacity: 1
}

.item:hover .content a {
	opacity: 1;
	color: #fff
}

.hero.cat_hover .cat_nav_hover ul {
	list-style: none;
	padding: 0;
	margin: 25px 0 0;
	display: flex
}

.hero.cat_hover .cat_nav_hover ul li a {
	display: block;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, .1);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	background-color: rgba(255, 255, 255, 0);
	min-height: 135px;
	position: relative;
	overflow: hidden
}

.hero.cat_hover .cat_nav_hover ul li a .info {
	position: absolute;
	width: 100%;
	display: block;
	color: #fff;
	left: 0;
	bottom: -70px !important
}

.hero.cat_hover .cat_nav_hover ul li a .info h2 {
	color: #fff;
	font-size: 1.3125rem;
	font-weight: 600;
	margin-bottom: 4px
}

.hero.cat_hover .cat_nav_hover ul li a .info span {
	font-weight: 500;
	opacity: 0
}

.hero.cat_hover .cat_nav_hover ul li a:hover .info {
	transform: translate(0, -35px)
}

.hero.cat_hover .image-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	opacity: 0;
	visibility: hidden;
	transition: 1s ease-in-out
}

.hero.cat_hover .image-bg img,
.hero.cat_hover .image-bg video {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%
}

.hero.cat_hover .container-item.active a {
	background-color: rgba(255, 255, 255, .1);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px)
}

.custom_badge {
	line-height: 1;
	text-transform: uppercase;
	font-weight: 700;
	color: #fff;
	margin-left: 5px;
	display: inline-block;
	border-radius: 3px;
	background-color: red;
	font-size: .6875rem;
	padding: 3px 5px;
	top: -1px
}

.carousel_item_centered .owl-item,
.carousel_item_centered_rooms .owl-item {
	opacity: .5;
	transform: scale(.85) !important;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0) scale(.85, .85) !important;
	transition: .3s ease-in-out;
	overflow: hidden
}

.carousel_item_centered .owl-item.active.center,
.carousel_item_centered_rooms .owl-item.active.center {
	opacity: 1;
	backface-visibility: hidden;
	transform: scale(1) !important
}

.marquee {
	width: 100vw;
	height: 100px;
	overflow: hidden;
	font-size: 120px;
	font-weight: 700;
	margin-top: -60px
}

.marquee .track {
	position: absolute;
	white-space: nowrap;
	will-change: transform;
	animation: 140s linear infinite marquee
}

.marquee .content {
	opacity: .05;
	line-height: 1.2
}

@keyframes marquee {
	from {
		transform: translateX(0)
	}

	to {
		transform: translateX(-30%)
	}
}

.modal-content {
	border: none !important;
	border-radius: 0 !important;
	padding: 25px
}

.list_ok ul li {
	padding-left: 45px
}

.list_ok ul li strong {
	color: #333
}

.list_ok ul li:before {
	color: #978667;
	position: absolute;
	left: 0;
	top: -7px;
	font-family: bootstrap-icons;
	content: "\f19f";
	font-size: 2rem
}

.pinned-image {
	display: flex;
	height: 90vh;
	justify-content: center;
	overflow: hidden
}

.pinned-image.rounded_container {
	border-radius: 15px
}

.pinned-image--medium {
	height: 75vh
}

.pinned-image--small {
	height: 45vh
}

.pinned-image__container {
	transform: scale(.8);
	border-radius: 15px;
	overflow: hidden
}

.pinned-image__container-overlay {
	background: rgba(0, 0, 0, .6);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0
}

.pinned-image__container,
.pinned-image__container img,
.pinned-image__container video {
	height: 100%;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
	position: absolute;
	top: 0;
	width: 100%;
	background-color: #ccc
}

.pinned_over_content {
	padding: 0 60px;
	width: 100%;
	left: 50%;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translate3d(-50%, -50%, 0)
}

.pinned_over_content h2 {
	color: #fff;
	font-size: 3.25rem;
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.2
}

.parallax_wrapper {
	position: relative;
	margin-bottom: 25px
}

.parallax_wrapper .img_over {
	left: -25%;
	bottom: 10%;
	position: absolute;
	z-index: 99
}

.parallax_wrapper .img_over img {
	border: 4px solid #fff;
	width: 50%;
	height: auto;
	box-shadow: 10px 10px 26px 0 rgba(0, 0, 0, .21)
}

.parallax_wrapper.inverted .img_over {
	text-align: right;
	left: inherit;
	right: -25%
}

img.rounded-img {
	border-radius: 10px
}

.bg_gray {
	background-color: #f4f4f4
}

.pattern {
	background: url("../img/pattern.png") top left no-repeat fixed
}

.bg_gray.pattern {
	background: url("../img/pattern.png") top left no-repeat #f4f4f4
}

.bg_gray.pattern.bg_fixed {
	background-attachment: fixed
}

.pattern_2 {
	background: url("../img/pattern_2.png") top right no-repeat #fff
}

.pattern_3 {
	background: url(../img/pattern_2.png) top right no-repeat #faf8f5
}

#message-newsletter {
	font-size: .875rem;
	padding-bottom: 5px
}

.error_message {
	color: red
}

.form-group label {
	font-weight: 500;
	margin-bottom: 3px
}

.form-group.with-icon {
	position: relative;
	margin-bottom: 0
}

.form-group.with-icon i {
	font-size: 1.3125rem;
	position: absolute;
	top: 8px;
	right: 15px;
	color: #978667
}

.form-control {
	border-color: #ededed;
	font-size: .875rem;
	color: #333;
	height: 50px
}

.progress-wrap,
.progress-wrap::after {
	height: 46px;
	width: 46px;
	transition: .2s linear;
	cursor: pointer
}

.form-control:focus {
	border-color: #ddd;
	outline: 0;
	box-shadow: 0 0 0 .2rem transparent
}

textarea.form-control {
	height: 130px !important
}

.nice-select {
	border-radius: .375rem !important
}

.progress-wrap {
	position: fixed;
	right: 30px;
	bottom: 30px;
	border-radius: 50px;
	z-index: 999;
	opacity: 0;
	display: none;
	visibility: hidden;
	transform: translateY(15px);
	box-shadow: inset 0 0 0 2px rgba(0, 0, 0, .2)
}

.progress-wrap.active-progress {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: translateY(0)
}

.progress-wrap::after {
	position: absolute;
	font-family: bootstrap-icons;
	content: "\f145";
	text-align: center;
	line-height: 46px;
	font-size: 24px;
	color: #999;
	left: 0;
	top: 0;
	display: block;
	z-index: 1
}

.progress-wrap svg path {
	fill: none
}

.progress-wrap svg.progress-circle path {
	stroke: #978667;
	stroke-width: 4;
	box-sizing: border-box;
	transition: .2s linear
}

.margin_120,
.margin_120_0 {
	padding-top: 120px
}

.margin_120 {
	padding-bottom: 120px
}

.margin_60_35 {
	padding-top: 60px;
	padding-bottom: 35px
}

.margin_80 {
	padding-top: 80px;
	padding-bottom: 80px
}

.margin_80_55 {
	padding-top: 80px;
	padding-bottom: 55px
}

.margin_80_0 {
	padding-top: 80px
}

.margin_60_0 {
	padding-top: 60px
}

@media (max-width:991px) {
	header nav ul li:first-child {
		display: none
	}

	.hamburger_2 {
		top: 5px
	}

	.panel_menu .wrapper_menu {
		margin-top: 100px
	}

	.header_color {
		background-color: #4b514d
	}

	.menu_v4 .closebt,
	.menu_v4 .hamburger_2,
	.menu_v4 .layer {
		display: block
	}

	.menu_v4 .logo_panel {
		display: flex
	}

	.hero.full-height,
	.hero.medium-height,
	.hero.small-height {
		min-height: 600px
	}

	.parallax_section_1 {
		min-height: 650px
	}

	.hero.home-search {
		z-index: 9999 !important
	}

	footer {
		z-index: 0
	}

	.booking_form {
		padding: 0;
		background: 0 0;
		box-shadow: none
	}

	.booking_form input {
		border: none;
		background-color: #fff;
		border-radius: 5px;
		margin-bottom: 10px
	}

	.booking_form input:focus {
		border-right: none
	}

	.booking_form .form-group {
		margin-bottom: 5px
	}

	.booking_form input[type=submit] {
		margin: 20px 0 0;
		border-radius: 3px
	}

	a.box_cat_rooms {
		height: 400px
	}

	.parallax_wrapper {
		padding-left: 25%
	}

	.parallax_wrapper .img_over {
		left: 0
	}

	.parallax_wrapper.inverted {
		padding-left: inherit;
		padding-right: 25%
	}

	.parallax_wrapper.inverted .img_over {
		left: inherit;
		right: 0
	}

	.progress-wrap {
		display: none !important
	}

	.margin_80 {
		padding-bottom: 60px;
		padding-top: 60px
	}

	.margin_80_55 {
		padding-top: 60px;
		padding-bottom: 35px
	}

	.margin_60_0,
	.margin_80_0 {
		padding-top: 60px
	}
}

@media (max-width:575px) {
	.review_card .review_content .rating {
		float: none;
		display: block
	}

	.review_card .review_content .rating em {
		float: none;
		display: inline-block;
		margin-left: 10px
	}

	.review_card .review_content em {
		float: none;
		display: block;
		margin-top: 10px;
		margin-left: 0
	}

	.review_card .review_content ul li span {
		display: none
	}

	.review_card .review_content ul li a i {
		margin-right: 0
	}

	.review_card .reply .review_content strong {
		display: block
	}

	.review_card .reply .review_content em {
		float: none;
		display: block;
		margin-top: 10px
	}

	.margin_60_35 {
		padding-top: 30px;
		padding-bottom: 5px
	}

	.margin_60_0,
	.margin_80_0 {
		padding-top: 45px
	}
}

.add_bottom_60 {
	padding-bottom: 60px
}

.add_bottom_120 {
	padding-bottom: 120px
}

.add_bottom_90 {
	padding-bottom: 90px
}

@media (max-width:767px) {
	header {
		padding: 15px 0
	}

	header.reveal_header .container-fluid {
		padding-right: 15px;
		padding-left: 15px
	}

	.nav_panel {
		width: 100%
	}

	.panel_menu .panel__content .panel__content_wrapper {
		padding-top: 30px;
		overflow: auto;
		display: block
	}

	.panel_menu .wrapper_menu>ul li a {
		font-size: 1.5rem
	}

	.hero.full-height {
		height: 87vh
	}

	.hero .wrapper h1,
	.hero .wrapper h3 {
		font-size: 2.25rem
	}

	.hero .wrapper p {
		padding: 0;
		font-size: 1.125rem
	}

	footer .footer_bg {
		height: 160px;
		padding-top: 180px
	}

	.add_bottom_90,
	footer .move_content {
		padding-bottom: 60px
	}

	.review_card .user_info,
	footer h5 {
		margin-bottom: 10px
	}

	#newsletter h5 {
		margin: 0 0 15px
	}

	#carousel-home .owl-carousel .owl-slide {
		height: 90vh
	}

	.slide-text h2,
	.slide-text h3 {
		font-size: 2.625rem
	}

	#icon_drag_mobile {
		display: block
	}

	.box_facilities h3 {
		font-size: 1.125rem
	}

	.box_facilities.white {
		padding: 0;
		margin-bottom: 25px
	}

	.box_facilities.white i {
		font-size: 3.875rem
	}

	.box_overlay {
		padding: 30px
	}

	.pic {
		position: static;
		margin-bottom: 20px;
		width: 100%;
		text-align: center
	}

	.pic h4 {
		position: static
	}

	.pic figure {
		margin: 0 auto 10px
	}

	.comment {
		text-align: center;
		border: 0;
		padding: 0
	}

	.box_item_info .facilities ul li {
		float: none;
		width: 100%
	}

	.row_list_version_1 .box_item_info {
		margin: -150px 10px 0;
		padding: 20px 25px 10px
	}

	.row_list_version_2 {
		margin-bottom: 70px
	}

	.row_list_version_2 .box_item_info,
	.row_list_version_2.inverted .box_item_info {
		margin: -50px 10px 0;
		padding: 20px 25px 10px
	}

	.row_list_version_3 .box_item_info {
		margin: -40px 10px 0;
		padding: 20px 25px 10px
	}

	.review_card .user_info figure {
		float: left
	}

	.review_card .user_info h5 {
		float: left;
		margin: 18px 0 0 15px
	}

	.review_card .reply .user_info {
		display: none
	}

	#comments .replied-to {
		margin-left: 20px
	}

	.avatar {
		float: none;
		margin: 0 0 5px
	}

	.hero.cat_hover .cat_nav_hover ul {
		overflow-x: scroll;
		justify-content: start
	}

	.pinned_over_content {
		padding: 0 15px
	}

	.pattern_2 {
		background-size: 80% auto
	}

	.margin_120_95 {
		padding-top: 90px;
		padding-bottom: 65px
	}

	.add_bottom_120 {
		padding-bottom: 90px
	}
}

.clear:after,
.clear:before,
.pagination:after,
.pagination:before {
	content: "";
	display: table
}

.clear:after,
.pagination:after {
	clear: both
}

.pagination__wrapper {
	height: 50px;
	padding-top: 30px;
	margin-bottom: 30px;
	position: relative;
	text-align: center;
	width: 100%
}

.pagination__wrapper:before {
	top: -1px
}

.pagination__wrapper:after {
	bottom: -1px
}

@keyframes hoverAnimation {
	from {
		opacity: 1
	}

	to {
		opacity: 0
	}
}

.pagination {
	display: inline-block;
	list-style: none;
	margin: 0;
	padding: 0
}

.pagination li {
	display: block;
	float: left;
	padding: 5px
}

.pagination li:first-child {
	border: none
}

.pagination a,
.pagination span {
	background: 0 0;
	border: none;
	border-radius: 50%;
	box-sizing: border-box;
	color: rgba(0, 0, 0, .6);
	display: block;
	font-size: 16px;
	height: 40px;
	line-height: 40px;
	min-width: 40px;
	padding: 0
}

.pagination a {
	outline: 0;
	position: relative;
	transition: 170ms linear
}

.pagination a:before {
	background: rgba(0, 0, 0, .2);
	border-radius: 50%;
	content: "";
	cursor: pointer;
	height: 0;
	left: 50%;
	opacity: 0;
	position: absolute;
	transform: translate(-50%, -50%);
	transition: 270ms linear;
	top: 50%;
	width: 0
}

.pagination a:hover:not(.active):before {
	animation: 810ms linear forwards hoverAnimation;
	height: 40px;
	width: 40px
}

.pagination a.active {
	background: #24262d;
	color: #fff;
	cursor: default
}

.pagination .next,
.pagination .prev {
	font-size: 28px
}

.localita {
	text-transform: none !important;
	font-weight: 500 !important;
	font-size: 17px
}

.hero.wrapper {
	text-align: left
}

.title small {
	color: #b5a281;
	letter-spacing: 1px;
	font-size: 13px
}

.info-txt {
	display: block;
	font-size: 14px;
	color: #919191;
	font-weight: 600;
	text-transform: uppercase
}

.bandiera,
.grande,
.verde-c {
	display: inline-block
}

.intro em,
.lead {
	font-weight: 400
}

.btn_1.verde,
a.btn_1.verde {
	background: #6a6d5c;
	font-size: 17px
}

p.prefazione {
	color: #6a6d5c;
	font-size: 23px
}

.altezza-info {
	margin-top: 40px
}

.jarallax .title h2 {
	font-size: 3.5rem
}

.parallax_section_1 {
	overflow: hidden;
	height: 80vh !important
}

.margin_120_95 {
	padding-top: 120px;
	padding-bottom: 150px
}

.lead {
	font-size: 1.25rem
}

.intro em {
	font-family: "Moon Dance", cursive;
	font-style: normal;
	font-size: 47px;
	color: #333
}

.grande {
	margin: 30px 0 18px;
	padding-left: 56px;
	padding-right: 56px
}

.hero.cat_hover .cat_nav_hover ul li {
	padding: 0 20px 0 0;
	width: calc(30% - 10px);
	min-width: 300px;
	text-align: left
}

.hero.cat_hover {
	background: rgba(0, 0, 0, .4);
	position: relative;
	padding: 0 0 130px 27px
}

footer .move_content {
	padding-bottom: 5px;
	border-bottom: 1px solid #ffffff52;
	border-top: 1px solid #ffffff52;
	padding-top: 54px;
	margin-top: 150px
}

.row.azienda {
	margin-top: 30px;
	margin-bottom: 80px
}

.azienda span {
	text-align: right;
	display: block
}

.owl-carousel .item {
	height: 680px
}

.img-header {
	width: 140%
}

.bandiera {
	width: 30px;
	height: auto;
	margin-right: 10px
}

.sopra-100 {
	margin-top: 150px
}

.verde-c {
	font-size: 17px;
	color: #6a6d5c;
	font-weight: 500;
	margin-right: 20px
}

.alto-135 {
	margin-top: 135px
}

.piccolo {
	display: block;
	font-size: 13px;
	margin-top: 10px
}

.icona {
	display: inline-block;
	width: 24px;
	height: 24px;
	position: relative;
	top: -4px;
	left: 11px
}

@media (max-width:680px) {
	.owl-carousel .item {
		height: 500px;
	}

	.contact_info,
	.row.azienda {
		margin-top: 30px
	}

	.box_item_info h2,
	.hero .wrapper h1,
	.hero .wrapper h3 {
		font-size: 1.5rem
	}

	.hero.cat_hover .cat_nav_hover ul li a .info h2 {
		color: #fff;
		font-size: 1.1rem;
		font-weight: 600;
		margin-bottom: 0
	}

	.localita {
		font-size: 15px
	}

	p.prefazione {
		font-size: 16px
	}

	.margin_120_95 {
		padding-bottom: 60px
	}

	.jarallax .title h2 {
		font-size: 1.9rem
	}

	.title h2,
	.title h3 {
		font-size: 1.8rem
	}

	.sopra-mobile {
		margin-top: 80px;
		display: block;
	}

	footer .move_content {
		padding-bottom: 40px;
		padding-top: 60px;
		margin-top: 0
	}

	.row.azienda {
		margin-bottom: 0;
		padding-bottom: 29px;
		text-align: center
	}

	.azienda span {
		text-align: center;
		display: block
	}

	.spazio-cta {
		margin-left: 16px
	}

	.specifiche_casa ul li {
		float: left;
		width: 100%;
		margin: 0 5px;
		padding: 14px 0;
		font-size: 15px
	}

	.box_item_info .d-flex {
		display: block !important
	}

	a.animated_link {
		display: block;
		margin: 22px 0 0 14px
	}

	.pattern_3 .margin_120_95 {
		padding-top: 0
	}

	.logo_normal img {
		width: 200px
	}

	/* FIne Mobile */
}