/* !@group animations */

@keyframes pulse {

	from,
	to {
		opacity: 1;
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		opacity: .4;
	}

	20%,
	40%,
	60%,
	80% {
		opacity: .9;
	}
}

@keyframes pulse-offer {

	from,
	to {
		background-color: #c7e0e0;
	}

	10%,
	30%,
	50%,
	70%,
	90% {
		background-color: #ffffff;
	}

	20%,
	40%,
	60%,
	80% {
		background-color: #c7e0e0;
	}
}

@keyframes point-left {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-.8rem);
	}
}

@keyframes point-right {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(.8rem);
	}
}

body:not(.touch) .pulse:hover,
body:not(.touch) a:hover .pulse,
body:not(.touch) #open-menu:not(.open):hover .pulse,
body:not(.touch) .highlight .text:hover .highlight-cta {
	animation: pulse 10s infinite;
}

body:not(.touch) .point-left:hover,
body:not(.touch) a:hover .point-left,
body:not(.touch) button:hover .point-left {
	animation: point-left .5s cubic-bezier(.5, 0.05, 1, .5) alternate 10;
}

body:not(.touch) .point-right:hover,
body:not(.touch) a:hover .point-right,
body:not(.touch) button:hover .point-right {
	animation: point-right .5s cubic-bezier(.5, 0.05, 1, .5) alternate 10;
}

/* @end */

/* !@group common */

.pswp__counter {
	display: none;
}

.pswp__bg {
	background: var(--menu);
}

.shape {
	pointer-events: none;
}

.slideshow-prev,
.slideshow-next {

	width: 6.8rem;
	height: 4.5rem;
	position: relative;
}

.slideshow-next svg,
.slideshow-prev svg {
	fill: var(--gold);
}

.slideshow-prev::before,
.slideshow-next::before {

	pointer-events: none;
	content: '';
	display: block;
	background: var(--gold);
	height: .1rem;
	width: 0;
	position: absolute;
	top: 2.2rem;
	transition: width .35s ease-in;
}

.slideshow-prev::before {

	left: .1rem;
	transform-origin: left center;
}

.slideshow-next::before {

	right: .1rem;
	transform-origin: right center;
}

.slideshow-prev:hover::before,
.slideshow-next:hover::before {
	width: 6.7rem;
}

.slideshow-prev-small,
.slideshow-next-small {

	width: 2.8rem;
	height: 2.1rem;
	position: relative;
}

.slideshow-next-small svg,
.slideshow-prev-small svg {
	fill: var(--gold);
}

.slideshow-prev-small::before,
.slideshow-next-small::before {

	content: '';
	display: block;
	background: var(--gold);
	height: .1rem;
	width: 0;
	position: absolute;
	top: 1.1rem;
	transition: width .35s ease-in;
}

.slideshow-prev-small::before {

	left: .1rem;
	transform-origin: left center;
}

.slideshow-next-small::before {

	right: .1rem;
	transform-origin: right center;
}

body:not(.touch) .slideshow-prev-small:hover::before,
body:not(.touch) .slideshow-next-small:hover::before {
	width: 2.7rem;
}

.bullets {

	display: flex;
	flex-direction: row;
	align-items: center;
	padding-left: 2rem;
	padding-right: 2rem;
}

.bullet+.bullet {
	margin-left: 2rem;
}

.bullet .dot,
.bullet .outline {

	fill: var(--gold);
	transition: opacity .35s ease;
}

.bullet .dot {
	opacity: 0;
}

.bullet.glide__bullet--active .dot {
	opacity: 1;
}

.bullet.glide__bullet--active .outline {
	opacity: 0;
}

a.text-link,
span.text-link {

	display: inline-block;
	font-size: 2.1rem;
	line-height: 1;
	font-weight: 600;
	color: var(--teal);
	text-transform: uppercase;
	text-decoration: none;
	padding-left: 4.4rem;
	position: relative;
	transition: .35s ease;
}

a.text-link::before,
span.text-link::before {

	content: '';
	background-color: var(--teal);
	height: .2rem;
	width: 3rem;
	position: absolute;
	left: 0;
	top: .45ch;
	transition: .35s ease;
}

body:not(.touch) a.text-link:hover,
body:not(.touch) a:hover span.text-link,
body:not(.touch) span.text-link:hover,
body:not(.touch) .allclick:hover .text-link {
	--teal: var(--title);
}

body:not(.touch) a.text-link:hover::before,
body:not(.touch) a:hover span.text-link::before,
body:not(.touch) span.text-link:hover::before,
body:not(.touch) .allclick:hover .text-link::before {
	top: calc(100% - .5ch);
}

a.text-link.gold,
span.text-link.gold {
	--teal: var(--gold);
}

body:not(.touch) a.text-link.gold:hover,
body:not(.touch) a:hover span.text-link.gold,
body:not(.touch) span.text-link.gold:hover,
body:not(.touch) .allclick:hover .text-link.gold {
	--teal: var(--yellow);
}

a.text-link.white,
span.text-link.white {
	--teal: #f6f0e2;
}

body:not(.touch) a.text-link.white:hover,
body:not(.touch) a:hover span.text-link.white,
body:not(.touch) span.text-link.white:hover,
body:not(.touch) .allclick:hover .text-link.white {
	--teal: white;
}

[data-glide-dir] {
	cursor: pointer;
}

.icon-arrow-left .bar-left {

	transform-origin: left center;
	transition: width .35s ease-in;
}

.icon-arrow-right .bar-right {

	transform-origin: right center;
	transition: width .35s ease-in;
}

.iframe-container {

	overflow: hidden;
	/* 16:9 aspect ratio */
	padding-top: 56.25%;
	position: relative;
}

.iframe-container iframe {

	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

#webcam .iframe-container {

	width: calc(100vw - 12rem);
	max-width: 81rem;
}

/* @end */

/* !@group header */

.header-icon.icon-tel {

	-webkit-mask-image: url('../assets/svg/icon-tel.svg');
	mask-image: url('../assets/svg/icon-tel.svg');
}

.header-icon.icon-email {

	-webkit-mask-image: url('../assets/svg/icon-email.svg');
	mask-image: url('../assets/svg/icon-email.svg');
}

.header-icon.icon-whatsapp {

	-webkit-mask-image: url('../assets/svg/icon-whatsapp.svg');
	mask-image: url('../assets/svg/icon-whatsapp.svg');
}

.header-icon.icon-webcam {

	-webkit-mask-image: url('../assets/svg/icon-webcam.svg');
	mask-image: url('../assets/svg/icon-webcam.svg');
}

.menu-open #site-header {

	background-color: rgba(245, 243, 239, 0);
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

.menu-open #site-header {
	--text-light: inherit;
}

.menu-open .logo {

	opacity: 0;
	pointer-events: none;
}

.menu-open .logo.hide {
	display: none;
}

.menu-open.scroll #site-header {
	pointer-events: none;
}

/* @end */

/* !@group main cta */

#main-cta {

	transform-origin: right top;
	transition:
		background-color .35s ease-in,
		transform .35s ease-in;
}

body:not(.touch) #main-cta:hover {

	background-color: var(--cta-hover);
	transform: scale(1.02);
}

/* @end */

/* !@group menu */

#open-menu {
	cursor: context-menu;
}

#open-menu.open .label {
	opacity: 0;
}

.is-mobile #open-menu .label {
	line-height: .7;
}

#open-menu .bar {

	transition:
		fill .5s ease,
		transform .5s ease,
		opacity .5s ease;
}

#open-menu .bar.top {
	transform-origin: left center;
}

#open-menu .bar.bottom {
	transform-origin: right center;
}

#open-menu .close-1,
#open-menu .close-2 {
	transform-origin: center;
}

#open-menu.open .bar.top,
#open-menu.open .bar.bottom {
	transform: scaleX(0);
}

#open-menu.open .close-1 {
	transform: rotate(45deg);
}

#open-menu.open .close-2 {
	transform: rotate(-45deg);
}

#open-menu.open {
	cursor: pointer;
}

.menu-open #open-menu {
	--text-light: inherit;
}

#main-menu {

	opacity: 0;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	background: var(--menu);
	color: var(--text-light);
	pointer-events: none;
}

body.menu-open {
	overflow-y: hidden;
}

body.menu-open #page {

	filter: blur(min(3.3rem, 1.65vw));
	transform: scale(1.025);
}

.menu-open #main-menu {
	pointer-events: all;
}

.main-menu-inner {

	display: flex;
	flex-direction: column-reverse;
	max-width: 100%;
	height: 100%;
	margin-left: calc(min(8.5rem, 4.25vw) + 21rem);
	margin-right: calc(min(8.5rem, 4.25vw) + 21rem);
}

.menu-header {

	height: var(--header);
	display: flex;
	flex-direction: row;
	align-items: center;
}

.scroll .menu-header,
.no-slider .menu-header {
	height: var(--scroll);
}

.menu-container {

	flex-grow: 1;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}

.menu-container>.menu-main {
	flex: 0 0 68%;
}

.menu-container>.menu-aside {
	flex: 0 0 30%;
}

#main-menu a {

	font-size: min(5rem, 2.5vmax);
	line-height: 1;
	font-weight: 200;
	color: var(--text-light);
	text-decoration: none;
	transition: color .35s ease-in;
}

#main-menu a:hover,
#main-menu .click-show-menu>a {
	color: var(--teal);
}

.menu-list {

	width: 50%;
	margin: auto auto auto 0;
	text-align: left;
}

.menu-item {

	position: relative;
	text-align: left;
	padding-top: min(1.4rem, .7vmax);
	padding-bottom: min(1.4rem, .7vmax);
}

.icon-arrow-menu {

	padding-left: min(2rem, 1vmax);
	display: none;
}

.menu-item-has-children>a>.icon-arrow-menu {
	display: inline;
}

.icon-arrow-menu svg {

	fill: var(--text-light);
	transform-origin: center center;
	transition: fill .35s ease-in, transform .35s ease;
}

a:hover .icon-arrow-menu svg,
.click-show-menu>a .icon-arrow-menu svg {
	fill: var(--teal);
}

.click-show-menu .icon-arrow-menu svg {
	transform: rotate(90deg);
}


.sub-menu {

	position: absolute;
	top: 0;
	left: 100%;
	width: 100%;
	padding-top: .8ch;
}

.sub-menu.hide-menu {
	display: none;
}

.sub-menu .menu-item {

	text-align: left;
	padding-top: min(1.4rem, .7vmax);
	padding-bottom: min(1.4rem, .7vmax);
}

#main-menu .sub-menu .menu-item a {
	font-size: min(4rem, 2vmax);
}

.menu-aside {
	text-align: right;
}

.menu-aside ul {

	display: flex;
	flex-direction: column;
	align-items: flex-end;
	margin-right: auto;
}

.menu-aside span {

	display: block;
	font-size: 2.4rem;
	font-weight: 300;
	line-height: 1;
	text-transform: uppercase;
	padding-bottom: 5rem;
}

.menu-aside li {

	padding-top: min(1rem, 1vmax);
	padding-bottom: min(1rem, 1vmax);
}

.menu-aside a {
	text-transform: uppercase;
}

.menu-aside .menu-item {
	text-align: right;
}

#lang-menu {

	display: flex;
	flex-direction: row;
	align-items: flex-start;
	text-transform: uppercase;
}

#lang-menu li {

	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

#lang-menu li+li {
	border-left: .1rem solid var(--text-light);
}

#lang-menu a {

	font-size: 2rem;
	font-weight: 400;
}

.menu-item.mobile-only {
	display: none;
}


#ppcp-messages {
	display: none !important;
}


.paypal-button-row.paypal-button-number-1 {
	display: none !important;
}

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

	.main-menu-inner {

		margin-left: 5%;
		margin-right: 5%;
	}

	.menu-header {
		padding-left: 10rem;
	}
}

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

	.menu-container {

		margin-bottom: var(--cta-height);
		overflow-y: scroll;
	}

	.menu-aside {
		display: none;
	}

	.menu-header {
		padding-left: 6rem;
	}

	#lang-menu a {
		font-size: 1.6rem;
	}

	.icon-arrow-menu svg {
		height: 10px;
	}

	.menu-container>.menu-main {
		flex: 0 0 100%;
	}

	.menu-list {
		width: 100%;
	}

	#main-menu a {

		font-size: 2.2rem;
		font-weight: 500;
	}

	.menu-item {

		padding-top: .2rem;
		padding-bottom: .2rem;
	}

	.sub-menu {

		position: static;
		padding-left: 2rem;
	}

	#main-menu .sub-menu .menu-item a {
		font-size: 1.8rem;
	}

	.menu-item.mobile-only {
		display: list-item;
	}
}

/* @end */

/* !@group header slideshow */

.header-control {
	--gold: white;
}

.header-control {

	position: absolute;
	top: calc(50% - 2.2rem);
}

.header-control.slideshow-prev {
	left: min(10rem, 5vw);
}

.header-control.slideshow-next {
	right: min(10rem, 5vw);
}

.page-id-320 .payoff span {
	font-size: 6vw;
}

.page-id-317 .payoff span {
	font-size: 5vw;
}

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

	.page-id-320 .payoff span,
	.page-id-317 .payoff span {
		font-size: 12vw;
	}
}

/* @end */

/* !@group main content */

.featured-image::before {

	content: '';
	display: block;
	width: 100%;
	height: 88%;
	z-index: -1;
	position: absolute;
	bottom: max(-5rem, -2.5vw);
	left: max(-5rem, -2.5vw);
	background-color: #efeae1;
}

.featured-image .shape {

	position: absolute;
	right: 0;
	top: 50%;
	transform: translateX(50%);
}

.featured-slideshow {

	max-width: 53.6rem;
	margin-top: -7.9rem;
	cursor: grab;
}

.featured-controls {

	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	gap: 3rem;
	padding-bottom: 3.4rem;
}

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

	.featured-image::before,
	.featured-image .shape {
		display: none;
	}

	.featured-image {

		margin-right: -3rem;
		margin-left: -3rem;
	}

	.featured-slideshow {
		margin-top: 0;
	}

	.featured-controls {
		justify-content: center;
	}
}

/* @end */

/* !@group editor content */

.editor-content h2,
.editor-content h3,
.editor-content h4,
.editor-content h5,
.editor-content h6 {

	line-height: 1.2;
	text-transform: uppercase;
	margin-bottom: 1.7ch;
}

.editor-content h2 {

	color: #aca598;
	font-size: 3.5rem;
}

.editor-content h3 {

	color: var(--text);
	font-size: 2.2rem;
	font-weight: 500;
}

.editor-content h4,
.editor-content h5,
.editor-content h6 {

	color: var(--text);
	font-size: 1.9rem;
	font-weight: 500;
}

.editor-content strong,
.editor-content b {
	font-weight: 600;
}

.editor-content p {
	margin-bottom: 3ch;
}

.editor-content em,
.editor-content i {
	font-style: italic;
}

.editor-content ul {

	list-style-type: disc;
	margin-bottom: 3ch;
	padding-left: 2.6ch;
}

.editor-content ul li {
	padding: 0 0 .5ch .25ch;
}

.editor-content li::marker {
	color: var(--gold);
}

#contenuto-aggiuntivo .editor-content h2 {
	font-size: 2.5rem;
}

/* @end */

/* !@group shortcodes */

.webcam-shortcode-container {

	display: block;
	margin-bottom: 3ch;
}

a.webcam-shortcode {

	display: inline-flex;
	gap: 2rem;
	align-items: center;
	background: var(--cta2);
	color: #fff;
	font-weight: 600;
	padding: 1rem 3rem;
	text-decoration: none;
	transition: background-color .35s ease;
}

a.webcam-shortcode .header-icon {
	background-color: #fff;
}

a.webcam-shortcode:hover {
	background-color: var(--cta2-hover);
}

/* @end */

/* !@group sections */

.section-header {

	text-align: center;
	color: var(--section-text);
}

.section-header h2 {

	font-size: min(14rem, 7vw);
	font-weight: 200;
	line-height: .9;
	letter-spacing: .28ch;
	text-transform: uppercase;
	margin-bottom: min(6rem, 3vw);
}

.section-header .description {

	font-size: clamp(2rem, 1.4vw, 2.8rem);
	line-height: 1.4;
	margin-bottom: min(8rem, 4vw);
}

.section-header .description strong,
.section-header .description b {
	font-weight: 600;
}

.section-header .section-links {

	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: min(8rem, 4vw);
}

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

	.section-header .section-links {

		flex-direction: column;
		align-items: center;
	}
}

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

	.section-header h2 {
		font-size: 4.5rem;
	}
}

/* @end */

/* !@group buoni motivi */

#combo-buoni-motivi {
	background-color: #f2eee6;
}

.home #combo-buoni-motivi {
	background-color: var(--charcoal);
}

#combo-buoni-motivi>.parallax {
	height: min(57.3vw, 114.6rem);
}

#combo-buoni-motivi .section-header,
#combo-buoni-motivi .section-container {

	width: 100%;
	max-width: min(168.5rem, calc(100% - 6rem));
	margin: 0 auto;
}

#combo-buoni-motivi .section-header {

	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	position: relative;
	z-index: 1;
	margin-top: max(-21.5rem, -10.75vw);
}

#combo-buoni-motivi .section-header .inner {
	width: min(101.4rem, 50.7vw);
}

.home #combo-buoni-motivi .section-container {
	margin-top: min(20rem, 10vw);
}

body:not(.home) #combo-buoni-motivi .section-container {

	padding-top: min(20rem, 10vw);
	padding-bottom: min(6rem, 3vw);
}

#combo-buoni-motivi .section-header .description {

	color: #aca99a;
	margin-bottom: 0;
}

#combo-buoni-motivi .section-header .description p {

	max-width: 74rem;
	margin-left: auto;
	margin-right: auto;
}

#combo-buoni-motivi .section-header .description p strong {
	font-weight: 600;
}

.motivi-menu {

	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	position: relative;
	z-index: 2;
}

.motivi-menu>.inner {

	width: 60.17%;
	height: min(9rem, 4.5vw);
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
}

.button-motivo {

	color: #aca99a;
	font-size: 2rem;
	text-transform: uppercase;
	margin-left: min(3.5rem, 1.75vw);
	margin-right: min(3.5rem, 1.75vw);
	position: relative;
	transition: color .35s ease;
	cursor: pointer;
}

.button-motivo::after {

	content: '';
	display: block;
	background-color: var(--gold);
	width: .1rem;
	height: 0;
	position: absolute;
	top: calc(100% + min(1.8rem, 0.89vw));
	left: 50%;
	transition: height .35s ease;
}

.button-motivo:hover {
	color: var(--teal);
}

.button-motivo.active {
	color: var(--gold);
}

.button-motivo.active::after {
	height: min(9.8rem, 4.9vw);
}

.motivo-item {

	display: flex;
	flex-direction: row;
	position: relative;
	z-index: 1;
}

.motivo-item.hide {
	display: none !important;
}

.motivo-item .text {

	position: relative;
	width: 39.88%;
	margin: max(-9rem, -4.5vw) -11.09% min(9rem, 4.5vw) 0;
	z-index: 1;
}

.motivo-item::before {

	content: '';
	display: block;
	background-color: #e2d8c9;
	width: 39.88%;
	height: 100%;
	position: absolute;
	bottom: min(14rem, 7vw);
	left: min(5rem, 2.5vw);
	z-index: -1;
}

.home .motivo-item::before {
	background-color: #6f767a;
}

.motivo-item .text-inner {

	display: flex;
	flex-direction: column;
	background-color: #fff;
	height: 100%;
	padding: 3rem;
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
	transition: box-shadow .5s ease-in;
}

.motivo-item .text-inner:hover {
	box-shadow: min(5rem, 2.5vw) max(-5rem, -2.5vw) 0 rgba(0, 0, 0, .05);
}

.home .motivo-item .text-inner:hover {
	box-shadow: min(5rem, 2.5vw) max(-5rem, -2.5vw) 0 rgba(0, 0, 0, .15);
}

.motivo-item .text-center {

	margin: auto;
	width: min(39rem, 19.5vw);
}

.motivo-item h3 {

	color: var(--gold);
	font-size: min(5.4rem, 2.7vw);
	line-height: 1.2;
	font-weight: 300;
	text-transform: uppercase;
}

.motivo-item .description {

	margin-top: min(5rem, 2.5vw);
	margin-bottom: min(5rem, 2.5vw);
}

.motivo-item .image {

	width: 71.21%;
	overflow: hidden;
}

.motivo-item .image img {

	transform-origin: left center;
	transition: transform 2.5s ease-in;
}

.motivo-item .image.expand img {
	transform: scale(1.1);
}

.motivi-select {

	padding: 1.5rem;
	display: none;
	flex-direction: column;
	justify-content: center;
}

.motivi-select-label {

	text-align: center;
	color: var(--section-text);
	padding-bottom: 1.5rem;
}

#motivi-select {

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	color: var(--section-text);
	font-family: var(--font2);
	text-transform: uppercase;
	border-top: .1rem solid var(--section-text);
	border-bottom: .1rem solid var(--section-text);
	border-left: none;
	border-right: none;
	padding: .5rem 3rem .5rem 1rem;
	background: url('../assets/svg/select-light.svg') no-repeat center right .5rem;
	font-size: 2rem;
	width: 100%;
}

.touch .motivi-menu {
	display: none;
}

.touch .motivi-select {
	display: flex;
}

#contenuto-aggiuntivo+#combo-buoni-motivi {

	margin-top: max(-17rem, -8.5vw);
}

.woocommerce form input {
	display: block;
	width: 100%;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #ccc;
	-webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
	-webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
	-o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
	transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: #a46497;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	display: block;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	background-color: var(--cta2);
	padding: 3rem 2rem;
	margin: 6rem 4rem 0;
	border-radius: 4rem 0 4rem 4rem;
	transition: background-color .35s;
}

.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	color: #fff;
	background-color: #42a19d;
}

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

	#combo-buoni-motivi .section-header {
		justify-content: center;
	}

	#combo-buoni-motivi .section-header .inner {
		width: auto;
	}

	.motivo-item {
		flex-direction: column-reverse;
	}

	.motivo-item::before {
		display: none;
	}

	.motivo-item .image,
	.motivo-item .text {

		width: 100%;
		margin: 0;
	}

	.motivo-item .text-center {
		width: 100%;
	}

	.motivi-menu {
		justify-content: center;
	}
}

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

	#combo-buoni-motivi .section-header {
		margin-top: -6.1rem;
	}

	.motivo-item h3 {
		font-size: 3rem;
	}

	.home #combo-buoni-motivi {
		padding-bottom: 6rem;
	}
}

/* @end */

/* !@group buoni motivi list */

.motivi-list .motivo-item+.motivo-item {
	margin-top: min(25rem, 12.5vw);
}

.motivi-list .motivo-item:nth-of-type(even) {
	flex-direction: row-reverse;
}

.motivi-list .motivo-item:nth-of-type(even) .text {
	margin: max(-9rem, -4.5vw) 0 min(9rem, 4.5vw) -11.09%;
}

.motivi-list .motivo-item:nth-of-type(even)::before {

	left: initial;
	right: min(5rem, 2.5vw);
}

.motivi-list .motivo-item:nth-of-type(even) .text-inner:hover {
	box-shadow: max(-5rem, -2.5vw) max(-5rem, -2.5vw) 0 rgba(0, 0, 0, .05);
}

.motivi-list .motivo-item.no-link .text-inner:hover {
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

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


	.motivi-list .motivo-item:nth-of-type(even) {
		flex-direction: column-reverse;
	}

	.motivi-list .motivo-item:nth-of-type(even)::before {
		display: none;
	}

	.motivi-list .motivo-item:nth-of-type(even) .image,
	.motivi-list .motivo-item:nth-of-type(even) .text {

		width: 100%;
		margin: 0;
	}
}

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

	#combo-buoni-motivi .section-header {
		margin-top: -6.1rem;
	}
}

/* @end */

/* !@group offerte */

#combo-offerte {

	background-color: #fff;
	padding: 0 5.3rem min(7.5vw, 15rem);
	display: block;
}

.offerte-section-header {

	background-color: #fff;
	padding: min(10rem, 5vw) 5.3rem min(23.6rem, 11.8vw);
	margin: 0 -5.3rem max(-13.6rem, -6.8vw);
}

.offerte-section-header h2 {

	color: var(--teal);
	font-size: min(4.2rem, 2.1vw);
	line-height: 1.2;
	font-weight: 300;
	text-align: center;
}

.offerte-section-header h2 strong {
	text-transform: uppercase;
}

#combo-offerte>.section-content {

	position: relative;
	background-color: #f5f3ef;
	max-width: 165.6rem;
	margin-left: auto;
	margin-right: auto;
	padding-left: min(9vw, 18rem);
	padding-right: min(9vw, 18rem);
}

.card-slideshow {
	position: relative;
	z-index: 1;
}

.card-slideshow.single-category {
	padding-top: min(8rem, 4vw);
}

.card-slide {
	white-space: normal;
}

.offerte-tabs {

	display: flex;
	flex-direction: row;
	justify-content: center;
	margin-bottom: min(5.8rem, 2.9vw);
}

.offerte-tab {

	position: relative;
	color: #c9c6b4;
	font-size: min(2.8rem, 1.4vw);
	line-height: 1;
	text-transform: uppercase;
	display: flex;
	width: min(32rem, 16vw);
	height: min(12.8rem, 6.4vw);
	cursor: pointer;
	transition:
		padding-top .35s ease-in,
		color .35s ease-in;
}

.offerte-tab:hover {
	color: #7DC1C9;
}

.offerte-tab span:not(.shape) {
	margin: auto;
}

.offerte-tab .shape {

	opacity: 0;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: opacity .35s ease-in;
}

.offerte-tab .shape,
.offerte-tab .shape svg {

	width: min(9.2rem, 4.6vw);
	height: min(7.4rem, 3.69vw);
}

.offerte-tab+.offerte-tab {
	border-left: .1rem solid #c9c6b4;
}

.offerte-tab[data-state='active'] {

	color: #5e5959;
	padding-top: min(5rem, 2.5vw);
}

.offerte-tab[data-state='active'] .shape {
	opacity: 1;
}

#offerte-slider-controls {

	position: absolute;
	left: -18%;
	right: -18%;
	top: 40%;
	pointer-events: none;

	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

#offerte-slider-controls button {

	background-color: red;
	width: 10.5rem;
	height: 10.5rem;
	display: flex;
	background-color: #8bc5d0;
	pointer-events: all;
}


#offerte-slider-controls button:hover .slideshow-prev::before,
#offerte-slider-controls button:hover .slideshow-next::before {
	width: 6.7rem;
}

#offerte-slider-controls button>span {
	margin: auto;
}

#offerte-slider-controls .slideshow-next svg,
#offerte-slider-controls .slideshow-prev svg {
	fill: #fff;
}

#offerte-slider-controls .slideshow-prev::before,
#offerte-slider-controls .slideshow-next::before {
	background: #fff;
}

.home #combo-offerte {
	background-color: #f2eee6;
}

.home .offerte-section-header {
	background-color: var(--charcoal);
}

.home .offerte-section-header h2 {
	color: #b0ad9d;
}

.home #combo-offerte>.section-content {
	background-color: #fffaf2;
}

.home #combo-offerte>.section-content::after {

	content: '';
	display: block;
	height: min(2.4rem, 1.2vw);
	background-color: #f2eee6;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.offerte-select {

	padding: 1.5rem;
	margin-bottom: 2rem;
	display: none;
	flex-direction: row;
	justify-content: center;
}

#offerte-select {

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	color: var(--charcoal);
	font-family: var(--font2);
	text-transform: uppercase;
	border-top: .1rem solid var(--charcoal);
	border-bottom: .1rem solid var(--charcoal);
	border-left: 0;
	border-right: 0;
	padding: .5rem 3rem .5rem 1rem;
	background: transparent url('../assets/svg/select.svg') no-repeat center right .5rem;
	font-size: 2rem;
	width: 100%;
}

.touch .offerte-tabs {
	display: none;
}

.touch .offerte-select {
	display: flex;
}

.offerte-tabs.single-category,
.offerte-select.single-category {
	display: none;
}

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

	.offerte-tab {

		font-size: 1.8rem;
		height: 7rem;
	}

	#offerte-slider-controls .point-left {

		transform-origin: left center;
		transform: scale(.8);
	}

	#offerte-slider-controls .point-right {

		transform-origin: right center;
		transform: scale(.8);
	}
}

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

	#combo-offerte {

		padding-left: 2rem;
		padding-right: 2rem;
	}

	#combo-offerte>.section-content {

		padding-left: 2rem;
		padding-right: 2rem;
	}

	#offerte-slider-controls {

		left: -4rem;
		right: -4rem;
	}

	#offerte-slider-controls .point-left,
	#offerte-slider-controls .point-right {
		transform: scale(.45);
	}

	.offerte-section-header {

		padding-top: 3rem;
		padding-bottom: 5rem;
	}

	.offerte-section-header h2 {
		font-size: 2.4rem;
	}

	.offerte-section-header h2 br {
		display: none;
	}

	.home #combo-offerte {
		padding-bottom: 8rem;
	}
}

/* @end */

/* !@group card */

.item-card a {

	display: flex;
	flex-direction: column-reverse;
	max-width: 58.5rem;
	text-decoration: none;
	color: var(--text);
}

.item-card .text {
	padding: min(5rem, 2.5vw) min(5rem, 2.5vw) 0;
}

.item-card h2,
.item-card h3 {

	color: #5e5959;
	font-size: min(3.4rem, 1.7vw);
	text-transform: uppercase;
	font-weight: 300;
	line-height: 1;
	margin-bottom: min(4rem, 2vw);

	min-height: 4.2ex;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.item-card .excerpt {
	margin-bottom: min(4rem, 2vw);
}

.card-footer {

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
}

.card-footer .price-box {

	background: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	width: min(30rem, 15vw);
	padding: min(4rem, 2vw) min(2rem, 1vw) min(3rem, 1.5vw);
	margin-left: max(-2rem, -1vw);
}

.card-footer .price-box .row {

	display: flex;
	flex-direction: row;
	align-items: center;
}

.card-footer .price-box .prefix {

	color: #9a9795;
	font-size: min(1.8rem, 0.89vw);
	line-height: 1;
	text-transform: uppercase;
	text-align: right;
	padding-right: min(1rem, .5vw);
}

.card-footer .price-box .price {

	color: var(--teal);
	font-size: #8bc5d0;
	font-size: min(4.4rem, 2.2vw);
}

.card-footer .price-box .suffix {

	color: #9a9795;
	font-size: min(2.2rem, 1.1vw);
	line-height: 1;
	font-weight: 600;
	text-transform: uppercase;
}

.card-footer .text-link {
	margin-top: min(6rem, 3vw);
}

.item-card .image {
	position: relative;
}

.item-card .image>.inner {
	overflow: hidden;
}

.item-card .image img {
	transition: transform 2s ease-in;
}

body:not(.touch) .item-card:hover .image img {
	transform: scale(1.1);
}

.card-count-container {

	position: absolute;
	right: min(3rem, 1.5vw);
	bottom: max(-1.6rem, -.8vw);
	background-color: #fff;
	padding: min(4rem, 2vw) min(3.6rem, 1.8vw);
	display: flex;
	flex-direction: column;
	text-align: center;
	color: #9a9795;
	line-height: 1.2;
}

.card-count-container .countdown {

	color: var(--gold);
	font-size: min(2.5rem, 1.25vw);
}

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

	.item-card h2,
	.item-card h3 {
		font-size: 2.2rem;
	}

	.card-count-container .countdown {
		font-size: 1.8rem;
	}

	.card-footer .price-box {

		width: auto;
		padding: 1rem;
	}

	.card-footer .price-box .prefix {

		font-size: 1.6rem;
		padding-right: .5rem;
	}

	.card-footer .price-box .price {
		font-size: 3.5rem;
	}

	.card-footer .price-box .suffix {
		font-size: 1.8rem;
	}
}

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

	.item-card .text {
		padding: 3rem 3rem 2rem;
	}

	.item-card h2,
	.item-card h3 {

		font-size: 2rem;
		margin-bottom: 2rem;
	}

	.item-card .excerpt {

		font-size: 1.6rem;
		margin-bottom: 2rem;
	}

	.card-footer {

		flex-direction: column;
		align-items: center;
	}

	.card-footer .text-link {
		margin-top: 2rem;
	}
}

/* @end */

/* !@group servizi */

#combo-servizi {

	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	grid-column-gap: 0rem;
	grid-row-gap: 0rem;
	background-color: #f2eee6;
	padding-bottom: min(28.9vw, 58rem);
}

#combo-servizi>.parallax,
#combo-servizi>.inner {
	grid-area: 1 / 1 / 2 / 2;
}

#combo-servizi>.parallax {
	height: min(59vw, 118rem);
}

#combo-servizi .section-content {

	height: 100%;
	max-width: 187.6rem;
	padding-right: 3rem;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
}


#combo-servizi .section-header {

	position: relative;
	flex: 0 0 71%;
	padding-left: 3rem;
	padding-right: 3rem;
	top: min(28.6rem, 14.29vw);
}

#combo-servizi .section-header .section-links {
	padding-top: 3rem;
}

#combo-servizi .section-header h2 {
	color: #eadbb8;
}

#combo-servizi .section-header .description {

	color: #aca598;
	max-width: 80rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
}

#combo-servizi .servizi-image {

	position: relative;
	flex: 0 0 29%;
	bottom: max(-13.5vw, -27rem);
}

#combo-servizi .servizi-image::before {

	content: '';
	display: block;
	background-color: #e2d8c9;
	width: 100%;
	height: 88%;
	position: absolute;
	top: max(-2.25vw, -4.5rem);
	right: max(-2.25vw, -4.5rem);
}

#combo-servizi .servizi-image img {
	position: relative;
}

#combo-servizi .servizi-image .shape {

	position: absolute;
	left: 0;
	top: 66%;
	transform: translate(-50%, -50%);
}

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

	#combo-servizi {
		display: block;
	}

	#combo-servizi>.parallax,
	#combo-servizi>.inner {
		grid-area: initial;
	}
}

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

	#combo-servizi .section-content {
		padding-left: 3rem;
	}

	#combo-servizi .section-header {

		flex: 0 0 100%;
		padding: 0;
		top: initial;
		margin-top: -6.8rem;
	}

	#combo-servizi .servizi-image {
		display: none;
	}
}

/* @end */

/* !@group highlights */

#combo-highlights {

	background-color: #8d857b;
	padding-bottom: min(29rem, 14.49vw);
}

#combo-highlights.no-header {
	padding-top: min(11rem, 5.5vw);
}

#combo-highlights .parallax {
	height: min(82.6rem, 41.3vw);
}

#combo-highlights .section-header {

	position: relative;
	margin-top: max(-21.5rem, -10.75vw);
	padding: 0 3rem;
}

.highlights-content {

	max-width: min(165rem, calc(100vw - 6rem));
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 3rem;
}

.highlight {

	flex: 0 0 46.78%;
	display: flex;
	flex-direction: column-reverse;
	margin-bottom: clamp(3rem, 3vw, 6rem);
	color: var(--section-text);
}

.highlight.inactive {
	opacity: .3;
}

.highlight .text {

	z-index: 1;
	padding-left: 12%;
	padding-right: 12%;
	margin-top: max(-2.74vw, -4.7rem);
}

.highlight h3 {

	font-size: min(4.32vw, 7.4rem);
	font-weight: 200;
	line-height: .9;
	text-transform: uppercase;
	margin-bottom: min(2.92vw, 5rem);

	min-height: 3.9ex;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.highlight .image {

	background-color: #68635b;
	overflow: hidden;
	position: relative;
}

.highlight .image img {

	opacity: .75;
	transition: opacity 2.5s ease, transform 2.5s ease;
}

.highlight .image img.logo-ra {

	position: absolute;
	top: 5rem;
	right: 5rem;
	transition: all 1.5s ease;
}

body:not(.touch) .highlight:not(.inactive):hover .image img {

	opacity: 1;
	transform: scale(1.1);
}

body:not(.touch) .highlight:hover .image img.logo-ra {
	filter: brightness(2);
}

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

	.highlight h3 {
		text-align: center;
	}
}

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

	#combo-highlights .section-header {
		margin-top: -6rem;
	}

	.highlights-content {
		flex-direction: column;
	}

	.highlight {
		flex: 0 0 100%;
	}

	.highlight h3 {
		font-size: 3.5rem;
	}

	.highlight .text {
		margin-top: -2rem;
	}

	.home #combo-highlights {
		padding-bottom: 12rem;
	}
}

/* @end */

/* !@group galleria */

#galleria-pagina {

	padding: 0 3rem min(5rem, 2.5vw);
	background-color: #f2eee6;
	position: relative;
	z-index: 0;
}

#galleria-pagina::after {

	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: calc(8rem + min(17rem, 21.8%));
	background-color: var(--page);
	z-index: 0;
}

#galleria-pagina>.inner {

	max-width: 117rem;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 1;
}

#galleria-pagina>.inner .shape {

	position: absolute;
	right: 0;
	top: calc(8rem + min(17rem, 21.8%));
	transform: translate(50%, -50%);
}

.galleria-slideshow {
	cursor: grab;
}

.galleria-controls {

	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 3rem;
	padding-bottom: 3.4rem;
}

.single-camere #galleria-pagina,
.single-sale-meeting #galleria-pagina {

	background-color: var(--page);
	padding-bottom: min(12rem, 6vw);
}

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

	#galleria-pagina,
	.single-camere #galleria-pagina,
	.single-sale-meeting #galleria-pagina {

		padding-top: 6rem;
		padding-bottom: 6rem;
	}
}

/* @end */

/* !@group contenuto aggiuntivo */

#contenuto-aggiuntivo {

	background-color: #f2eee6;
	padding: min(5rem, 2.5vw) 3rem min(17rem, 8.5vw);
}

#contenuto-aggiuntivo>.inner {

	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
}

#combo-buoni-motivi+#contenuto-aggiuntivo>.inner {
	max-width: 168.5rem;
}

#combo-buoni-motivi+#contenuto-aggiuntivo>.inner>.container {

	width: 71.21%;
	margin-left: auto;
}

#combo-buoni-motivi+#contenuto-aggiuntivo>.inner>.container .editor-content {

	max-width: 90rem;
	margin-right: auto;
}

.single-camere #contenuto-aggiuntivo,
.single-sale-meeting #contenuto-aggiuntivo {
	background-color: var(--page);
}

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

	#contenuto-aggiuntivo {

		padding: 5rem 3rem 6rem;
	}

	#combo-buoni-motivi+#contenuto-aggiuntivo>.inner>.container {

		width: 100%;
		margin-left: initial;
	}

	#combo-buoni-motivi+#contenuto-aggiuntivo>.inner>.container .editor-content {

		max-width: 100%;
		margin-right: initial;
	}
}

/* @end */

/* !@group blockquote */

#blockquote {

	background-color: #f2eee6;
	padding: min(5rem, 2.5vw) 3rem min(5rem, 2.5vw);
}

#blockquote>.inner {

	max-width: 92rem;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.5em;
	line-height: 1.4;
	color: #aca598;
}

.single-camere #blockquote,
.single-sale-meeting #blockquote {
	background: var(--page);
}

/* @end */


/* !@group rimini */

#rimini {

	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	grid-column-gap: 0rem;
	grid-row-gap: 0rem;

	background-color: #c8b9a2;
	margin-bottom: min(25.6rem, 12.8vw);
}

#rimini .section-header {

	margin-top: max(-7rem, -3.5vw);
	margin-bottom: max(26rem, 13vw);
	padding-left: 3rem;
	padding-right: 3rem;
}

#rimini>.parallax,
#rimini>.section-content {
	grid-area: 1 / 1 / 2 / 2;
}

#rimini>.section-content {
	z-index: 1;
}

#rimini>.section-content .inner {

	margin-left: max(3rem, 14.75%);
	margin-right: max(3rem, 7.25%);
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 5rem;
}

#rimini .image-left {
	bottom: max(-4.5rem, -2.25vw);
}

#rimini .image-right {
	bottom: max(-15.8rem, -7.9vw);
}

#rimini .image-left,
#rimini .image-right,
#rimini .image-left img,
#rimini .image-right img {
	position: relative;
}

#rimini .image-left::before,
#rimini .image-right::before {

	content: '';
	position: absolute;
	background-color: #e0e5de;
	height: 100%;
}

#rimini .image-left::before {

	width: 50%;
	left: max(-4.5rem, -2.25vw);
	top: max(-4.5rem, -2.25vw);
}

#rimini .image-right::before {

	width: 40%;
	right: max(-4.5rem, -2.25vw);
	bottom: max(-4.5rem, -2.25vw);
}

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

	#rimini {
		margin-bottom: 10rem;
	}

	#rimini>.parallax {

		left: -30%;
		width: 130%;
	}

	#rimini .section-header {

		margin-bottom: 4rem;
		margin-top: -6rem;
	}

	#rimini .section-header h2 {
		margin-bottom: 6rem;
	}

	#rimini>.section-content .inner {
		flex-direction: column;
	}

	#rimini .description {
		display: none;
	}
}

/* @end */

/* !@group recensioni */

#combo-recensioni {

	background: #988670 url('../assets/backgrounds/recensioni.jpg') no-repeat center center;
	background-size: cover;
	padding:
		min(25.6rem, 12.8vw) 3rem min(29.5rem, 14.75vw);
}

#combo-recensioni>.inner {

	max-width: 154.4rem;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.reviews-header {

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 5rem;
}

.reviews-header h2 {

	overflow: hidden;
	text-indent: -400rem;
	background-repeat: no-repeat;
	background-position: left top;
}

#tripadvisor .reviews-header h2 {

	width: 19.2rem;
	height: 4.1rem;
	background-image: url('../assets/svg/tripadvisor-logo.svg');
}

#booking-com .reviews-header h2 {

	width: 18rem;
	height: 3rem;
	background-image: url('../assets/svg/booking-logo.svg');
}

.ratings {

	display: flex;
	flex-direction: row;
	align-items: center;
}

.ratings .label {

	font-size: 2.6rem;
	font-weight: 300;
	text-transform: uppercase;
}

.ratings .overall {

	width: 6.5rem;
	height: 6.5rem;
	display: flex;
	color: #fff;
	font-size: 3rem;
	font-weight: 600;
	margin-left: 3rem;
}

.ratings .overall span {
	margin: auto;
}

#tripadvisor .ratings .overall {

	border-radius: 50%;
	background-color: #00e19f;
}

#booking-com .ratings .overall {

	border-radius: 1.3rem 1.3rem 1.3rem 0;
	background-color: #0c2f73;
}

#booking-com .ratings .label {
	color: #edecea;
}

.tripadvisor-container {

	width: 55%;
	position: relative;
	display: flex;
}

#tripadvisor {

	height: 100%;
	width: 100%;
	background-color: var(--page);
	padding: min(5.5rem, 3.56vw) min(6rem, 3.8vw);
	position: relative;
	display: flex;
	flex-direction: column;
}

.tripadvisor-container::before {

	content: '';
	background-color: #6f6967;
	width: 50%;
	height: 88%;
	position: absolute;
	right: 0;
	bottom: 0;
	transform: skew(2deg, 2deg);
	z-index: 0;
	filter: blur(min(2.6rem, 1.68vw));
	mix-blend-mode: multiply;
	opacity: .6;
}

.feedback-slideshow {
	max-width: 62rem;
}

.feedback-slide {
	white-space: normal;
}

.feedback-slide h3 {

	color: var(--gold);
	font-size: 3.4rem;
	font-weight: 300;
	text-transform: uppercase;
	padding-bottom: 2rem;
}

.feedback-slide figcaption {

	font-size: 1.7rem;
	font-weight: 700;
	letter-spacing: .2ch;
	padding-top: 3rem;
}

.feedback-footer {

	margin-top: auto;
	padding-top: 4rem;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

a.feedback-more {

	font-weight: 600;
	text-decoration: underline;
	transition: color .35s ease;
}

body:not(.touch) a.feedback-more:hover {
	color: var(--yellow);
}

.feedback-controls {

	display: flex;
	flex-direction: row;
	align-items: center;
}

#booking-com {

	width: 37%;
	padding-top: min(5.5rem, 3.56vw);
	padding-bottom: min(5.5rem, 3.56vw);
}

.booking-table {

	width: 100%;
	color: white;
}

.booking-table th {

	text-align: left;
	text-transform: uppercase;
}

.booking-table tr td:nth-of-type(2) {

	width: 5.5rem;
	text-align: center;
}

.graph {

	display: block;
	width: 100%;
	height: 1.4rem;
	background-color: white;
	border-radius: .4rem;
	overflow: hidden;
	position: relative;
}

.graph>.value {

	display: block;
	height: 1.4rem;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: .4rem;
	background-color: #78aef2;
}

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

	#combo-recensioni>.inner {
		flex-direction: column;
	}

	.tripadvisor-container,
	#booking-com {
		width: 100%;
	}

	#booking-com {
		margin-top: 4rem;
	}
}

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

	.reviews-header {
		flex-direction: column;
	}

	.reviews-header h2 {
		margin-bottom: 2rem;
	}

	#tripadvisor {

		padding-top: 3rem;
		padding-bottom: 3rem;
	}

	.feedback-footer {

		flex-direction: column-reverse;
		align-items: center;
	}

	.feedback-controls {
		margin-bottom: 2rem;
	}

	.feedback-slide {

		text-align: center;
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

/* @end */

/* !@group recensioni list */

#feedback-list {

	padding-left: 3rem;
	padding-right: 3rem;
}

#feedback-list>.inner {

	max-width: 140rem;
	margin: 0 auto 8rem;
}

#feedback-list .feedback-slide {

	padding-bottom: 2rem;
}

#feedback-list .feedback-slide+.feedback-slide {

	border-top: .1rem solid #ccc;
	padding-top: 4rem;
}

.booking-section {

	background: #988670 url('../assets/backgrounds/recensioni.jpg') no-repeat center center;
	background-size: cover;
	padding: 5rem 3rem;
	margin-left: -3rem;
	margin-right: -3rem;
}

.booking-section #booking-com {

	width: 100%;
	max-width: 100rem;
	margin-left: auto;
	margin-right: auto;
}

/* @end */

/* !@group camere list */

.camere-filters {

	padding-left: 3rem;
	padding-right: 3rem;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.camera-filter {

	color: #b6b0a3;
	font-size: 2rem;
	font-weight: 400;
	text-transform: uppercase;
	cursor: pointer;
	padding: 0 3rem 11rem;
	position: relative;
	transition: color .35s ease;
}

.camera-filter::after {

	content: '';
	background-color: var(--gold);
	width: .1rem;
	height: 0;
	position: absolute;
	left: 50%;
	top: 4rem;
	transition: height .35s ease;
}

.camera-filter.active {
	color: var(--gold);
}

.camera-filter.active::after {
	height: calc(100% - 4rem);
}

#camere-list {

	background-color: #f2eee6;
	padding-top: min(11.5rem, 5.75vw);
	padding-bottom: min(11.5rem, 5.75vw);
	padding-left: 3rem;
	padding-right: 3rem;
}

.camera-block {

	max-width: 164.4rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: min(13rem, 6.5vw);
	display: flex;
	flex-direction: row;
}

.camera-block.hide {
	display: none !important;
}

.camera-block:nth-of-type(even) {
	flex-direction: row-reverse;
}

.camera-block>div {
	flex: 0 0 50%;
}

.camera-block .text {
	display: flex;
}

.camera-block .text-inner {

	width: 80%;
	margin: auto auto auto 4rem;
}

.camera-block:nth-of-type(even) .text-inner {

	margin-left: auto;
	margin-right: 4rem;
}

.camera-block h2 {

	color: var(--gold);
	font-size: min(6.4rem, 3.2vw);
	font-weight: 200;
	line-height: 1;
	margin-bottom: min(5rem, 2.5vw);
}

.camera-block-header {
	padding-bottom: min(7rem, 3.5rem);
}

.camera-block-details {

	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 3rem;
	color: #2b2b2b;
}

.details-1,
.details-2 {

	white-space: nowrap;
	padding-bottom: 1rem;
	border-bottom: .1rem #2b2b2b solid;
}

.camera-block .description {

	color: #aca598;
	font-size: min(2.9rem, 1.45vw);
	font-weight: 300;
	line-height: 1.3;
	padding-left: 10%;
	padding-bottom: 12%;
}


.camera-block .image {
	position: relative;
}

.camera-block .image::after {

	content: '';
	display: block;
	background-color: #e2d8c9;
	position: absolute;
	top: max(-5rem, -2.5vw);
	right: max(-5rem, -2.5vw);
	z-index: 0;
	width: 70%;
	height: 88%;
}

.camera-block:nth-of-type(even) .image::after {

	right: initial;
	left: max(-5rem, -2.5vw);
}

.camera-block .image .inner {

	overflow: hidden;
	position: relative;
	z-index: 1;
}

.camera-block .image .shape {

	position: absolute;
	left: 0;
	bottom: 14%;
	z-index: 1;
	transform: translate(-50%, 50%);
	transition: bottom .75s ease-in;
}

.camera-block:hover .image .shape {
	bottom: 0;
}

.camera-block:nth-of-type(even) .image .shape {

	left: initial;
	right: 0;
	transform: translate(50%, 50%);
}

.camera-block .image img {

	transform-origin: 15% center;
	transition: transform 1.5s ease-in;
}

.camera-block:nth-of-type(even) .image img {
	transform-origin: 85% center;
}

.camera-block:hover .image img {
	transform: scale(1.1);
}

.camere-select {

	padding: 1.5rem;
	display: none;
	flex-direction: row;
	justify-content: center;
}

#camere-select {

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	color: var(--charcoal);
	font-family: var(--font2);
	text-transform: uppercase;
	border: .1rem solid var(--charcoal);
	padding: .5rem 3rem .5rem 1rem;
	background: #fff url('../assets/svg/select.svg') no-repeat center right .5rem;
}

.touch .camere-filters {
	display: none;
}

.touch .camere-select {
	display: flex;
}

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

	.camera-block .description {
		font-size: 1.6rem;
	}

	.camera-block-details {
		gap: 1rem;
	}
}

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

	.camera-block,
	.camera-block:nth-of-type(even) {
		flex-direction: column-reverse;
	}

	.camera-block .text {

		margin-top: 2rem;
		margin-bottom: 4rem;
	}

	.camera-block .text-inner {

		width: 100%;
		margin: 0;
	}

	.camera-block h2 {
		font-size: 3.6rem;
	}

	.camera-block-details {
		font-size: 1.6rem;
	}

	.camera-block .image .shape {
		display: none;
	}

	.camera-block .description {

		padding-left: 0;
		padding-bottom: 3rem;
	}
}

/* @end */

/* !@group single camera */

.camera-aside>.inner {

	background: #fffaf2;
	padding: 5rem;
}

.camera-details-list {

	text-align: right;
	margin-bottom: 4rem;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.camera-details-list li {

	font-weight: 500;
	padding: 0 1rem 1rem 3rem;
	border-bottom: 0.1rem #2b2b2b solid;
	margin-bottom: .5rem;
}

.camera-aside .image {
	position: relative;
}

.camera-aside .image .description {

	position: absolute;
	left: 4rem;
	right: 4rem;
	bottom: -2rem;
	background: #fff;
	color: #9a9795;
	font-weight: 500;
	padding: 3rem 4rem;
	text-align: center;
}

a.camera-cta {

	display: block;
	color: #fff;
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	background-color: var(--cta2);
	padding: 3rem 2rem;
	margin: 6rem 4rem 0;
	border-radius: 4rem 0 4rem 4rem;
	transition: background-color .35s ease-in;
}

a.camera-cta:hover {
	background-color: var(--cta2-hover);
}

a.camera-cta.booking {
	background-color: var(--cta);
}

a.camera-cta.booking:hover {
	background-color: var(--cta-hover);
}

.camera-servizi {

	background-color: var(--charcoal);
	padding: min(6rem, 3vw) 3rem min(10rem, 5vw);
	margin-bottom: min(10rem, 5vw);
}

.camera-servizi>.inner {

	max-width: 160rem;
	margin-left: auto;
	margin-right: auto;
}

.camera-servizi h2 {

	color: var(--section-text);
	font-size: min(5rem, 2.5vw);
	font-weight: 200;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 5rem;
}

.camera-servizi-list {

	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.camera-servizi-list figure {

	width: 16.66%;
	text-align: center;
	padding: 0 2rem 3rem;
}

.camera-servizi-list figure img {

	margin-left: auto;
	margin-right: auto;
}

.camera-servizi-list figcaption {

	line-height: 1.2;
	padding-top: .5rem;
	color: #aca99a;
}

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

	.camera-servizi h2 {
		font-size: 3rem;
	}

	.camera-servizi-list figure {
		width: 20%;
	}
}

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

	.camera-servizi-list figure {
		width: 33.33%;
	}
}

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

	.camera-servizi {

		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	.camera-servizi-list figure {
		width: 50%;
	}

	a.camera-cta {
		margin: 3rem 0rem 0;
	}

	.camera-details-list {
		text-align: center;
	}
}

/* @end */

/* !@group offerte list */

.offerte-filters {

	padding-left: 3rem;
	padding-right: 3rem;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.offerta-filter {

	color: #b6b0a3;
	font-size: 2rem;
	font-weight: 400;
	text-transform: uppercase;
	cursor: pointer;
	padding: 0 3rem 11rem;
	position: relative;
	transition: color .35s ease;
}

.offerta-filter::after {

	content: '';
	background-color: var(--gold);
	width: .1rem;
	height: 0;
	position: absolute;
	left: 50%;
	top: 4rem;
	transition: height .35s ease;
}

.offerta-filter.active {
	color: var(--gold);
}

.offerta-filter.active::after {
	height: calc(100% - 4rem);
}

#offerte-list {

	background-color: #f2eee6;
	padding-top: min(11.5rem, 5.75vw);
	padding-bottom: min(11.5rem, 5.75vw);
	padding-left: 3rem;
	padding-right: 3rem;
}

#offerte-list>.inner {

	max-width: 129.8rem;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 5rem 3rem;
	margin-left: auto;
	margin-right: auto;
}

.offerta-block {

	background: #fffaf2;
	position: relative;
}

#offerte-list .offerta-block {

	width: calc(50% - 1.5rem);
	max-width: 58.4rem;
}

.offerta-block::after {

	content: '';
	display: block;
	background-color: #f2eee6;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2rem;
}

.offerta-block .card-footer {

	position: relative;
	z-index: 1;
}

.offerta-block.hide {
	display: none !important;
}

.offers-select {

	padding: 1.5rem;
	display: none;
	flex-direction: row;
	justify-content: center;
}

#offers-select {

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	color: var(--charcoal);
	font-family: var(--font2);
	text-transform: uppercase;
	border-top: .1rem solid var(--charcoal);
	border-bottom: .1rem solid var(--charcoal);
	border-left: none;
	border-right: none;
	padding: .5rem 3rem .5rem 1rem;
	background: transparent url('../assets/svg/select.svg') no-repeat center right .5rem;
	font-size: 2rem;
	width: 100%;
}

.touch .offerte-filters {
	display: none;
}

.touch .offers-select {
	display: flex;
}

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

	#offerte-list>.inner {
		flex-direction: column;
	}

	#offerte-list .offerta-block {

		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}

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

	.offerta-block {
		padding-bottom: 2rem;
	}

	.offerta-block::after {
		display: none;
	}

	.offerta-block .card-footer .text-link {
		margin-top: 2.5rem;
	}

}

/* @end */
/* !@group prodotti list */

.prodotti-filters {

	padding-left: 3rem;
	padding-right: 3rem;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.prodotto-filter {

	color: #b6b0a3;
	font-size: 2rem;
	font-weight: 400;
	text-transform: uppercase;
	cursor: pointer;
	padding: 0 3rem 11rem;
	position: relative;
	transition: color .35s ease;
}

/* .prodotto-filter::after {

	content: '';
	background-color: var(--gold);
	width: .1rem;
	height: 0;
	position: absolute;
	left: 50%;
	top: 6rem;
	transition: height .35s ease;
}

.prodotto-filter.active { color: var(--gold); }
.prodotto-filter.active::after { height: calc(100% - 8rem); } */

/* #prodotti-list {
	background-color: #f2eee6;
	padding-top: min(11.5rem, 5.75vw);
	padding-bottom: min(11.5rem, 5.75vw);
	padding-left: 3rem;
	padding-right: 3rem;
} */

#prodotti-list>.inner {

	max-width: 129.8rem;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 5rem 3rem;
	margin-left: auto;
	margin-right: auto;
}

.prodotto-block {

	background: #fffaf2;
	/* position: relative; */
}

/* #prodotti-list .prodotto-block {
	width: calc(50% - 1.5rem);
	max-width: 58.4rem;
} */

/* .prodotto-block::after {
	content: '';
	display: block;
	background-color: #f2eee6;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2rem;
} */

.prodotto-block .card-footer {

	position: relative;
	z-index: 1;
}

.prodotto-block.hide {
	display: none !important;
}

.prodotti-select {

	padding: 1.5rem;
	display: none;
	flex-direction: row;
	justify-content: center;
}

#prodotti-select {

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
	color: var(--charcoal);
	font-family: var(--font2);
	text-transform: uppercase;
	border-top: .1rem solid var(--charcoal);
	border-bottom: .1rem solid var(--charcoal);
	border-left: none;
	border-right: none;
	padding: .5rem 3rem .5rem 1rem;
	background: transparent url('../assets/svg/select.svg') no-repeat center right .5rem;
	font-size: 2rem;
	width: 100%;
}

.touch .prodotti-filters {
	display: none;
}

.touch .prodotti-select {
	display: flex;
}

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

	#prodotti-list>.inner {
		flex-direction: column;
	}

	#prodotti-list .prodotto-block {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}

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

	.prodotto-block {
		padding-bottom: 2rem;
	}

	.prodotto-block::after {
		display: none;
	}

	.prodotto-block .card-footer .text-link {
		margin-top: 2.5rem;
	}

}

/* @end */

/* !@group single offer */

.offerta-scaduta {

	display: block;
	font-size: 2.4rem;
	font-weight: 600;
	text-transform: uppercase;
	color: rgb(207, 0, 40);
	margin-bottom: 3rem;
}

.offerta-info {

	padding-left: 3rem;
	padding-right: 3rem;
	margin-bottom: min(8rem, 4vw);
}

.offerta-info>.inner {

	max-width: 160rem;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	align-items: center;
}

.offerta-info .offerta-image {

	width: 67.44%;
	min-width: 32rem;
	position: relative;
}

.offerta-count-container {

	position: absolute;
	left: min(4rem, 2vw);
	bottom: max(-1.6rem, -.8vw);
	background-color: #fff;
	padding: min(4rem, 2vw) min(3.6rem, 1.8vw);
	display: flex;
	flex-direction: column;
	text-align: center;
	color: #9a9795;
	line-height: 1.2;
}

.offerta-count-container .countdown {

	color: var(--gold);
	font-size: min(2.5rem, 1.25vw);
}

.offerta-info .offerta-aside {

	width: 54.2rem;
	background-color: var(--charcoal);
	padding: 4rem 7rem 4rem;
}

.offerta-aside div+div {
	border-top: .1rem solid #aca99a;
}

.offerta-aside .excerpt {

	color: #aca99a;
	font-size: 2.2rem;
	line-height: 1.4;
	padding-top: 4rem;
	padding-bottom: 4rem;
	text-align: center;
}

.offerta-slideshow {
	position: relative;
}

.offerta-extra {

	padding-left: 3rem;
	padding-right: 3rem;
	margin-bottom: min(8rem, 4vw);
}

.offerta-extra>.inner {

	max-width: 160rem;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}

.offerta-extra .extra-content {

	width: 58.4%;
	padding: 4.28% 7.34% 0;
}

.offerta-extra .other-details {

	width: 41.6%;
	background-color: #fffaf2;
	padding: 4.89% 4.28% 4.28%;
}

.other-details>h3 {

	color: #aca598;
	font-size: 3rem;
	font-weight: 200;
	text-transform: uppercase;
	margin-bottom: 2rem;
}

.offerta-aside .price-box {

	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	margin-bottom: 4rem;
}

.offerta-aside .price-box .row {

	display: flex;
	flex-direction: row;
	align-items: center;
}

.offerta-aside .price-box .prefix {

	color: #fff;
	font-size: min(2.45rem, 1.225vw);
	line-height: 1;
	text-transform: uppercase;
	text-align: right;
	padding-right: min(1rem, .5vw);
}

.offerta-aside .price-box .price {

	color: var(--teal);
	font-size: #8bc5d0;
	font-size: min(6rem, 3vw);
}

.offerta-aside .price-box .suffix {

	color: #fff;
	font-size: min(3rem, 1.5vw);
	line-height: 1;
	font-weight: 600;
	text-transform: uppercase;
}

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

	.offerta-info>.inner {
		flex-direction: column;
	}

	.offerta-info .offerta-image {
		width: 100%;
	}
}

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

	.offerta-extra>.inner {
		flex-direction: column;
	}

	.offerta-extra .extra-content,
	.offerta-extra .other-details {
		width: 100%;
	}

	.offerta-extra .extra-content {

		padding-left: 0;
		padding-right: 0;
	}
}

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

	.offerta-count-container .countdown {
		font-size: 1.8rem;
	}
}

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

	.offerta-info .offerta-aside {

		width: 100vw;
		padding: 4rem 2rem;
	}

	.offerta-aside .price-box .prefix {

		font-size: 1.5rem;
		padding-right: .5rem;
	}

	.offerta-aside .price-box .price {

		font-size: 4rem;
	}

	.offerta-aside .price-box .suffix {

		font-size: 2rem;
	}

	.offerta-info {

		padding-left: 0;
		padding-right: 0;
	}

	.offerta-extra {
		padding-bottom: 6rem;
	}
}

/* @end */

/* !@group Sale Meeting */

#combo-sale-blocks+#contenuto-aggiuntivo h2 {
	text-align: center;
}

#combo-sale-blocks+#contenuto-aggiuntivo ul {

	columns: 2;
	column-gap: 8%;
}

#combo-sale-blocks+#contenuto-aggiuntivo ul li {

	break-inside: avoid;
	padding-bottom: 1.5rem;
}

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

	#combo-sale-blocks+#contenuto-aggiuntivo ul {
		columns: 1;
	}
}

/* @end */

/* !@group sale meeting blocks */

#combo-sale-blocks {

	background-color: var(--charcoal);
	padding: min(5rem, 2.5vw) 3rem;
}

#combo-sale-blocks>.inner {

	max-width: 180rem;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
}

.sale-block {
	position: relative;
}

.sale-block .text {

	display: block;
	background: #fff;
	padding: 2rem;
	position: absolute;
	left: 50%;
	bottom: -2rem;
	transform: translateX(-50%);
	z-index: 1;
	white-space: nowrap;
}

.sale-block .text a {

	color: var(--text-grey);
	text-decoration: none;
}

.sale-block .text h2 {

	font-size: 2.2rem;
	text-transform: uppercase;
}

.sale-block+.sale-block {
	margin-left: 3rem;
}

.sale-block .image {

	overflow: hidden;
	position: relative;
}

.sale-block .image img {
	transition: transform 2.5s ease;
}

.sale-block:hover .image img {
	transform: scale(1.1);
}

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

	#combo-sale-blocks>.inner {
		flex-direction: column;
	}

	.sale-block {

		max-width: 77.2rem;
		margin: 0 auto 5rem;
	}

	.sale-block+.sale-block {
		margin-left: auto;
	}
}

/* @end */

/* !@group list sale meeting */

.page-template-template-sale-meeting #contenuto-aggiuntivo .editor-content>div {

	columns: 2;
	column-gap: 8%;
	margin-bottom: min(5rem, 2.5vw);
}

.page-template-template-sale-meeting #contenuto-aggiuntivo .editor-content>div>div {
	break-inside: avoid;
}

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

	.page-template-template-sale-meeting #contenuto-aggiuntivo .editor-content>div {
		columns: 1;
	}
}

/* @end */

/* !@group single sala meeting */



/* @end */

/* !@group footer */

#site-footer {

	padding-left: 3rem;
	padding-right: 3rem;
	margin-top: max(-7.4rem, -3.69vw);
}

#site-footer>.inner {

	max-width: 180rem;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
}

.footer-base {

	padding-top: 6rem;
	padding-bottom: 5rem;
}

#site-footer>.inner>div {

	width: 33.333%;
	display: flex;
}

#site-footer .left {
	order: 1;
}

#site-footer .content {
	order: 2;
}

#site-footer .right {
	order: 3;
}

#site-footer .content {

	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	text-align: center;
	padding: calc(3rem + min(7.4rem, 3.69vw)) 2rem 0;
}

#site-footer .content>* {

	color: #646261;
	margin-bottom: 5rem;
}

.footer-logo svg {

	/* fill: #646261; */
	filter: brightness(0) saturate(100%) invert(38%) sepia(6%) saturate(142%) hue-rotate(336deg) brightness(96%) contrast(88%);
	transition: filter .4s ease-in;
	transform: scale(0.7);
}


@media screen and (min-width: 1025px) and (max-width: 1680px) {
	.footer-logo svg {
		transform: scale(1);
	}
}

body:not(.touch) .footer-logo:hover svg {
	/* fill: var(--title); */
	filter: brightness(0) saturate(100%) invert(87%) sepia(25%) saturate(265%) hue-rotate(124deg) brightness(87%) contrast(85%);
}

.social {

	display: flex;
	flex-direction: row;
}

.social li+li {
	margin-left: min(2vw, 4rem);
}

.social a {

	color: #646261;
	font-size: 3rem;
	text-decoration: none;
	transition: color .4s ease-in;
}

body:not(.touch) .social a:hover {
	color: var(--title);
}

.footer-contacts {

	font-size: 2rem;
	font-weight: 600;
}

.footer-contacts a {

	color: #646261;
	text-decoration: none;
	transition: color .4s ease-in;
}

.footer-contacts a:hover {
	color: var(--title);
}

.mappa {

	margin-left: auto;
	margin-right: auto;
}

.footer-image {

	margin-left: auto;
	position: relative;
	z-index: 0;
}

.footer-image::before {

	content: '';
	background-color: #e0e5de;
	width: 100%;
	height: 88%;
	position: absolute;
	top: max(-5rem, -2.5vw);
	right: max(-5rem, -2.5vw);
	z-index: -1;
}

.footer-image .shape {

	position: absolute;
	top: 16%;
	transform: translateX(-50%);

}

.legal {
	margin-left: auto;
}

.legal--center {
	flex-wrap: wrap;
	margin-right: auto;
	margin-left: auto;
	justify-content: center;
	align-items: center;

	text-align: center;
	margin-bottom: 10px;
}

.legal ul {

	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-direction: row;
	color: #646261;
}

.legal ul li+li:before {

	content: '|';
	margin-left: .8rem;
	margin-right: .8rem;
}

.legal a {
	color: #646261;
}

.credits {
	justify-content: flex-end;
}

#credits {
	font-size: 1.4rem;
}

#credits img {

	vertical-align: middle;
	margin-left: .4rem;
}

a#map-button-mobile {

	display: inline-block;
	text-decoration: none;
	text-transform: uppercase;
	color: #fff;
	background: var(--cta2);
	padding: 1rem 3rem;
}

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

	#site-footer>.inner>div.legal {

		margin-left: 0;
		width: 66.66%;
	}
}

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

	#site-footer {
		padding-bottom: var(--cta-height);
	}

	#site-footer>.inner {

		flex-direction: column;
		align-items: center;
	}

	#site-footer>.inner>div {
		width: 100%;
	}

	#site-footer>.inner>.left,
	#site-footer>.inner>.right {
		display: none;
	}

	#site-footer>.inner>.content {
		width: 100%;
	}

	#site-footer .content>* {
		margin-bottom: 3rem;
	}

	.footer-base {

		padding-top: 0;
		padding-bottom: 0;
	}

	.credits {
		justify-content: center;
	}

	#credits {

		padding-top: 3rem;
		white-space: nowrap;
	}

	#chat-application {
		bottom: 8.5rem !important;
	}
}

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

	#site-footer {

		margin-top: 0;
		padding-top: 3rem;
	}

	.legal ul {
		flex-direction: column;
	}

	.legal ul li+li:before {
		display: none;
	}

	#chat-application {

		bottom: 5rem !important;
		right: 0 !important;
	}
}

/* @end */

/* !@group datepicker */

/* UI DatePicker Styles */

.ui-datepicker.ui-widget {

	width: auto;
	border: 0;
	padding: 1.5rem;
	margin-bottom: 2rem;
	border-radius: .3rem;
	box-shadow: 0 .2rem .6rem rgba(0, 0, 0, 0.05), 0 0 0 .1rem rgba(0, 0, 0, 0.07);
}

.ui-datepicker.ui-widget .ui-datepicker-header {

	padding: .6rem;
	min-height: 3.5rem;
	color: var(--text);
	text-transform: lowercase;
	font-size: 1.4rem;
	line-height: 1;
	background-color: #ffffff;
	background-image: initial;
	border: 0;
	border-radius: 0;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar {
	margin: 0;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar td {

	border: .1rem solid #e4e7e7;
	text-align: center;
	padding: 0;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar th {

	font-size: 1.3rem;
	color: #757575;
}

.ui-datepicker.ui-widget .ui-datepicker-next,
.ui-datepicker.ui-widget .ui-datepicker-prev {

	background-image: initial;
	border: .1rem solid #e4e7e7;
	border-radius: .2rem;
	display: inline-block;
	font: normal normal normal 1.4rem/1 FontAwesome;
	font-size: inherit;
	color: var(--text);
	background-color: #ffffff;
	width: 3.5rem;
	height: 3.0rem;
	text-align: center;
	transition: background-color 0.1s linear, border-color 0.1s linear;
	cursor: pointer;
}

.ui-datepicker.ui-widget .ui-datepicker-next:before,
.ui-datepicker.ui-widget .ui-datepicker-prev:before {

	position: absolute;
	font-size: 2rem;
	top: 50%;
	margin-top: -1rem;
}

.ui-datepicker.ui-widget .ui-datepicker-next .ui-icon,
.ui-datepicker.ui-widget .ui-datepicker-prev .ui-icon {

	display: none;
}

.ui-datepicker.ui-widget .ui-datepicker-next.ui-state-hover,
.ui-datepicker.ui-widget .ui-datepicker-prev.ui-state-hover {

	border: .1rem solid #bbbbbb;
	font-weight: initial;
}

.ui-datepicker.ui-widget .ui-datepicker-prev::before {

	content: "\36";
	right: 50%;
	margin-right: -.8rem;
	font-family: "edita-font" !important;
	font-style: normal !important;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none !important;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ui-datepicker.ui-widget .ui-datepicker-prev.ui-state-hover {

	top: .2rem;
	left: .2rem;
}

.ui-datepicker.ui-widget .ui-datepicker-next::before {

	content: "\70";
	left: 50%;
	margin-left: -.8rem;
	font-family: "edita-font" !important;
	font-style: normal !important;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none !important;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ui-datepicker.ui-widget .ui-datepicker-next.ui-state-hover {

	top: .2rem;
	right: .2rem;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar .ui-state-default {

	border: 0;
	background-color: #ffffff;
	background-image: initial;
	color: #333;
	padding: .3rem .9rem;
	font-weight: 300;
	font-size: 1.3rem;
	text-align: center;
	transition: background-color 0.1s linear;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar .ui-state-default.ui-state-hover,
.ui-datepicker.ui-widget .ui-datepicker-calendar .ui-state-default.ui-state-active {

	border: 0;
	background-color: #dedede;
	background-image: initial;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar .dp-highlight {

	border: 1px solid #438c16;
}

.ui-datepicker.ui-widget .ui-datepicker-calendar .dp-highlight .ui-state-default {

	background-color: var(--cta2);
	color: #ffffff;
}

.ui-datepicker.ui-widget.ui-datepicker-multi {

	z-index: 400 !important;
	padding: 1.5rem 0;
}

.ui-datepicker.ui-widget.ui-datepicker-multi .ui-datepicker-group {

	padding: 1.5rem 0;
	border-left: 1px solid #e4e7e7;
}

.ui-datepicker.ui-widget.ui-datepicker-multi .ui-datepicker-group:first-child {
	border: 0;
}

.ui-datepicker.ui-widget.ui-datepicker-multi table {
	width: 100%;
}

/* @end */

/* !@group modal */

.modal {

	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: var(--menu);
	z-index: 10;
	display: none;
	pointer-events: none;
}

.modal.opened {
	pointer-events: all;
}

.modal-dialog {

	margin: auto;
	background-color: #fff;
}

.modal-open .modal {
	display: flex;
}

body.modal-open {
	overflow-y: hidden;
}

body.modal-open #page {

	filter: blur(min(3.3rem, 1.65vw));
	transform: scale(1.025);
}

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

	.modal {
		overflow-y: scroll;
	}
}

/* @end */

/* !@group form preventivo */

.modal-dialog {
	max-width: 90rem;
}

.modal-content {
	padding: 0 3rem;
}

.modal-header {
	padding: 1.5rem;
}

#formModal .modal-close {

	float: right;
	font-size: 1.6rem;
	line-height: 3rem;
	color: var(--text);
	-webkit-appearance: none;
	appearance: none;
	background: none;
	cursor: pointer;
	transition: color .35s ease;
}

#formModal .modal-close:hover {
	color: var(--teal);
}

.modal-body {

	position: relative;
	padding: 1.5rem;
}

.edita-form-builder .efb-legend {

	color: var(--title);
	margin-top: -2rem;
	margin-bottom: 2rem;
	pointer-events: none;
}

.edita-form-builder .efb-legend h3 {

	font-size: 3rem;
	text-transform: uppercase;
}

.edita-form-builder label {

	font-size: 1.6rem;
	font-weight: 600;
}

input.efb-text,
input[type="text"].efb-text,
input[type="tel"].efb-text,
input[type="email"].efb-text,
input[type="url"].efb-text,
textarea.efb-textarea,
select.efb-select,
.edita-form-builder .fakeinput {

	border: .1rem solid #ccc;
	background-color: #fff;
	border-radius: 0;
	box-shadow: none;
	padding-right: 5rem;
	height: 5rem;
}

textarea.efb-textarea {
	height: 12rem;
}

form.edita-form-builder li .visibleIcon {

	color: var(--teal);
	top: 4.5rem;
	right: 2rem;
}

.edita-form-builder .efb-submit {

	font-size: 1.8rem;
	text-transform: uppercase;
	background-color: var(--cta2);
	font-weight: 600;
	transition: background-color .35s ease-in;
}

.edita-form-builder .efb-submit:active {
	background-color: var(--cta2-hover);
}

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

	.edita-form-builder .efb-legend h3 {
		line-height: 1.3;
	}
}

/* @end */

/* !@group form sala meeting */

#form-sala-meeting {
	margin-bottom: clamp(5rem, 4vw, 8rem);
}

.form-section {

	background-color: var(--charcoal);
	padding: min(5rem, 2.5vw) 3rem;
}

.form-section>.inner {

	max-width: 143rem;
	margin-left: auto;
	margin-right: auto;
}

.form-section .edita-form-builder .efb-legend {
	border-bottom: 0;
}

.form-section input.efb-text,
.form-section input[type="text"].efb-text,
.form-section input[type="tel"].efb-text,
.form-section input[type="email"].efb-text,
.form-section input[type="url"].efb-text,
.form-section textarea.efb-textarea,
.form-section select.efb-select,
.form-section .edita-form-builder .fakeinput {

	width: 100%;
	border: 0;
}

.form-section .edita-form-builder label,
.form-section .edita-form-builder label.efb-desc {
	color: #fff;
}

.form-section .efb-choice-subtitle {
	color: #fff;
}

.form-section .edita-form-builder .efb-submit {
	width: 100%;
}

.edita-form-builder .plusminus-content {
	border: 1px solid #CCC;
}

.form-section .edita-form-builder .open-room label,
.form-section .edita-form-builder .open-room label.efb-desc {
	color: var(--text);
}

.form-section .edita-form-builder .open-room .efb-choice-subtitle {
	color: var(--text);
}

/* @end */

/* !@group form mrpreno */

.form-section .myReplyForm label.input_label,
.form-section .myReplyForm .mandatory_fields_msg,
.form-section .myReplyForm .newsletter_optin_text_wrapper,
.form-section .myReplyForm .field_label_privacy_policy {
	color: #fff;
}

.myReplyForm .btn-success {

	background-color: var(--cta2);
	border-color: var(--cta2);
	transition: all .35s ease;
}

.myReplyForm .btn-success:hover {

	background-color: var(--cta2-hover);
	border-color: var(--cta2-hover);
}

/* @end */

/* !@group gallery */

.editor-content .gallery {
	margin: 0 -1rem 1.5rem;
}

.editor-content .gallery-item {

	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
	padding: 1rem;
}

.editor-content .gallery-item img {
	transition: opacity .35s ease;
}

.editor-content .gallery-item:hover img {
	opacity: .75;
}

.editor-content .gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.editor-content .gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.editor-content .gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.editor-content .gallery-caption {
	display: block;
}



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

	.editor-content .gallery-columns-3 .gallery-item,
	.editor-content .gallery-columns-4 .gallery-item {
		max-width: 50%;
	}
}

/* @end */

/* !@group table */

.table-responsive {

	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 5rem 0;
}

.table-responsive div {

	display: flex;
	flex-direction: row;
	width: 100%;
	margin: 0 1.5rem;
	justify-content: flex-start;
	font-size: 1.6rem;
	line-height: 1.3;
}

.table-responsive h3 {
	margin: 0;
}

.table-responsive>div:first-child {

	padding-bottom: 1rem;
	border-bottom: 1px solid #ccc;
	font-weight: 700;
}

.table-responsive>div:not(:first-child) {

	padding: 2rem 0;
	border-bottom: 1px solid #ccc;
}

.table-responsive>div:nth-child(even) {
	background-color: rgba(255, 255, 255, .3);
}

.table-responsive p {
	margin-bottom: 0;
}

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

	.table-responsive-wrapper {

		margin: 4rem 0;
		position: relative;
	}

	.table-responsive-wrapper::before {

		content: '';
		position: absolute;
		top: 4.5rem;
		left: -1.5rem;
		width: 1.5rem;
		height: calc(100% - 4.5rem);
		background: var(--page);
		z-index: 2;
	}

	.table-responsive-wrapper::after {

		content: '';
		position: absolute;
		top: 4.5rem;
		right: -1.5rem;
		width: 1.5rem;
		height: calc(100% - 4.5rem);
		background: var(--page)
	}

	.table-responsive-wrapper .scroll-commands {

		position: relative;
		text-align: right;
		min-height: 4.5rem;
	}

	.table-responsive-wrapper .scroll-commands div {

		display: inline-block;
		margin: 0 0.3rem;
		color: var(--cta);
		background: var(--color1);
		padding: 1.5rem 1.5rem .5rem;
		min-height: 4.5rem;
	}

	.table-responsive-wrapper .scroll-commands div.disabled {
		pointer-events: none;
	}

	.table-responsive-wrapper .scroll-commands div.disabled i {
		opacity: 0.4;
	}

	.table-responsive-container {

		overflow-x: scroll;
		padding: 0;
		background: var(--page);
	}

	.table-responsive-container.firstcolumn-container {

		overflow: initial;
		position: relative;
	}

	.table-responsive {

		font-size: 1.4rem;
		position: relative;
		left: 50%;
		margin: 3rem 0;
	}

	.table-responsive div {
		margin: 0;
	}

	.table-responsive.firstcolumn {

		left: 0;
		top: 0;
		width: 50%;
		position: absolute;
		z-index: 1;
		margin: 30px 0 50px;
		background: var(--page);
	}

	.table-responsive.firstcolumn::before {

		content: '';
		position: absolute;
		top: 0;
		left: -15px;
		width: 15px;
		height: 100%;
		background: #fbf8f2;
	}

	.table-responsive div {

		width: 100%;
		word-break: break-word;
	}

	.table-responsive>div:first-child {

		padding-bottom: 15px;
		font-size: 14px;
	}

	.table-responsive>div:not(:first-child) {
		padding: 20px 0 10px;
	}

	.table-responsive h3 {

		width: 100%;
		font-size: 13px;
	}
}

/* @end */

/* !@group acquista */

#acquista-link {

	position: fixed;
	right: 0;
	top: 25rem;
	z-index: 5;
}

a#acquista {

	width: 10.2rem;
	height: 16.4rem;
	padding: 2rem 1rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: var(--cta2);
	text-decoration: none;
	line-height: 1.2;
	border-radius: 4rem 0 4rem 4rem;
	transform-origin: right top;
	transition: all .35s ease-in;
}

a#acquista .label {

	padding-top: .5rem;
	color: var(--text-light);
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	transition: all .35s ease-in;
}

body:not(.touch) a#acquista:hover {

	background-color: var(--cta2-hover);
	transform: scale(1.02);
}

.touch a#acquista {

	top: 20rem;
	transition: initial;
	transform: scale(.8);
}

#acquista-close {

	width: 2rem;
	height: 2rem;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: opacity .35s ease-in;
}

#acquista-close span {

	display: inline-block;
	font-size: 3rem;
	line-height: .5rem;
	margin: auto;
}

#acquista-link.aq-closed a#acquista {

	border-radius: 4rem 0 0 4rem;
	width: 7.5rem;
	height: 7rem;
	padding: 1rem 0 1rem 1rem;
}

#acquista-link.aq-closed a#acquista .label {

	font-size: 0;
	padding-top: 0;
}

#acquista-link.aq-closed #acquista-close {

	opacity: 0;
	pointer-events: none;
}

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

	.touch #acquista-link {
		top: 12rem;
	}

	.touch a#acquista {
		transform: scale(.7);
	}
}

/* @end */

/* !@group woocommerce */

.wp-block-woocommerce-checkout-actions-block .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	background-color: #ffc439;
	font-weight: bold;
	font-size: 1.7rem;
}

/* @end */

/* !@group newsletter */
.section-newsletter {
	display: flex;
	justify-content: flex-start;
	background: #565d61;
	padding: 6.922257720979766vh 10.638297872340425vw;
}

.section-newsletter mark {
	font-size: 29px;
	letter-spacing: 1px;
	line-height: 1.3;
	color: #aca99a;
	font-weight: 300;
	background: none;
	flex: 0 0 22%;
}

.section-newsletter mark strong {
	font-weight: 600;
	color: #f5f3ef;
}

.section-newsletter form {
	padding: 0 5.319148936170213vw;
	font-size: 17px;
	letter-spacing: 1px;
	line-height: 1.4;
	color: #aca99a;
	font-weight: 300;
	display: flex;
	flex-direction: column;
}

.section-newsletter form>div {
	display: flex;
}

.section-newsletter form .privacy-content {
	flex-direction: column;
	margin-top: 20px;
}

.section-newsletter form .privacy-content a {
	color: #fff;
}

.section-newsletter form input[type="email"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: none;
	padding: 20px 25px;
	border: 1px solid #c6c6c5;
	border-radius: 0;
	flex: 0 0 50%;
	color: #fff;
}

.section-newsletter form input[type="email"]:hover,
.section-newsletter form input[type="email"]:active,
.section-newsletter form input[type="email"]:focus,
.section-newsletter form input:-webkit-autofill,
.section-newsletter form input:-webkit-autofill:focus {
	border-radius: 0;
	background: none !important;
	outline-style: none;
	box-shadow: none;
	border-color: transparent;
	color: #ffffff !important;
	border: 1px solid #c6c6c5;
}

.section-newsletter ::placeholder {
	font-size: 19px;
	letter-spacing: 1px;
	line-height: 28px;
	color: #ffffff;
	font-weight: 300;
	font-family: var(--font1);
}

.section-newsletter form button {
	background: #7ba6af;
	text-transform: uppercase;
	font-size: 19px;
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
	color: #ffffff;
	font-weight: 600;
	padding: 20px 25px;
	text-align: center;
	cursor: pointer;
	transition: background 0.2s;
}

.section-newsletter form button:hover,
.section-newsletter form button:active,
.section-newsletter form button:focus {
	background: #64858b;
}

@media (max-width: 1024px) {
	.section-newsletter {
		flex-direction: column;
		justify-content: center;
	}

	.section-newsletter form>div {
		justify-content: center;
	}

	.section-newsletter mark {
		text-align: center;
		flex: 0 0 100%;
	}

	.section-newsletter form {
		padding: 30px 0 0;
	}

	.section-newsletter form input[type="email"] {
		padding: 20px 10px;
		font-size: 16px;
		flex: 0 1 auto;
	}
}

/* @end */