/* ------------------------- VARIABLES ------------------------- */
:root {

	--primary-font: "Playfair Display", serif;
	--secondary-font: "Mulish", sans-serif;

	--line-height: calc(1em + 8px);

	--h1-size: 4.375rem;
	--h1-line-height: 5.3125rem;
	--h1-weight: 500;
	--h1-letter-spacing: normal;

	--h2-size: 3.125rem;
	--h2-line-height: 3.75rem;
	--h2-weight: 500;
	--h2-letter-spacing: normal;

	--h3-size: 2.5rem;
	--h3-line-height: 2.8125rem;
	--h3-weight: 500;
	--h3-letter-spacing: normal;

	--h4-size: 1.5625rem;
	--h4-line-height: 2.1875rem;
	--h4-weight: 300;
	--h4-letter-spacing: normal;

	--h5-size: 1.25rem;
	--h5-line-height: 1.75rem;
	--h5-weight: 400;
	--h5-letter-spacing: normal;

	--h6-size: 1.125rem;
	--h6-line-height: 1.625rem;
	--h6-weight: 400;
	--h6-letter-spacing: normal;

	--text-size: 0.9375rem;
	--text-line-height: 1.5625rem;
	--text-weight: 300;
	--text-letter-spacing: normal;

	--text-small-size: 0.875rem;
	--text-small-line-height: 1.25rem;
	--text-small-weight: 400;
	--text-small-letter-spacing: normal;

	--text-btn-size: 0.9375rem;
	--text-btn-line-height: 1.875rem;
	--text-btn-weight: 500;
	--text-btn-letter-spacing: normal;

	--text-header-size: 0.9375rem;
	--text-header-line-height: 1.875rem;
	--text-header-weight: 400;
	--text-header-letter-spacing: normal;

	--text-footer-copyright-size: 0.8125rem;
	--text-footer-copyright-line-height: 1.25rem;
	--text-footer-copyright-weight: 400;
	--text-footer-copyright-letter-spacing: normal;

	--display1-size: 6.25rem;
	--display1-line-height: 6.875rem;
	--display1-weight: 500;
	--display1-letter-spacing: normal;

	--primario: #6c6663; /* primary ---> marrone */
	--secondario: #b09f83; /* secondary ---> beige scuro */
	--secondario-95: rgba(176, 159, 131, .95);
	--secondario-90: rgba(176, 159, 131, .9);
	--beige-chiaro: #d7cbad;
	--bianco: #ffffff;
	--bianco-scuro: #faf7f3;
	--verde-chiaro: #b6b9a3;
	--verde: #999c87;
	--verde-scuro: #6a6f67;
	--grigio-scuro: #333333;

	--border-radius: 5px;
	--header-h: 90px;
	--copyright-h: 55px;
	--section-v: 125px;
	--section-v-small: 35px;
	--section-o: 35px;
	--col-d: 5px;

}


/* ------------------------- TEXT ------------------------- */
html {
	font-size: 16px;
}

/* ----- text - line-height ----- */
html, body, footer, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, span, li, a, [class*="btn"], label, input, select, textarea {

}

/* ----- text - font-style ----- */
html, body, footer, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, span, li, a, [class*="btn"], label, input, select, textarea {
	font-style: normal;
}

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

/* ----- text - font-weight ----- */
.text-light { font-weight: 300; }
.text-regular { font-weight: 400; }
.text-medium { font-weight: 500; }
.text-semibold { font-weight: 600; }
.text-bold { font-weight: 700; }

/* ----- text - font-size ----- */
html {

}
.text-display1 {
	font-size: var(--display1-size) !important;
	line-height: var(--display1-line-height) !important;
	font-weight: var(--display1-weight);
	letter-spacing: var(--display1-letter-spacing);
}
h1, .h1 {
	font-size: var(--h1-size) !important;
	line-height: var(--h1-line-height) !important;
	font-weight: var(--h1-weight) !important;
	letter-spacing: var(--h1-letter-spacing);
}
h2, .h2 {
	font-size: var(--h2-size);
	line-height: var(--h2-line-height) !important;
	font-weight: var(--h2-weight);
	letter-spacing: var(--h2-letter-spacing);
}
h3, .h3 {
	font-size: var(--h3-size);
	line-height: var(--h3-line-height) !important;
	font-weight: var(--h3-weight);
	letter-spacing: var(--h3-letter-spacing);
}
h4, .h4 {
	font-size: var(--h4-size);
	line-height: var(--h4-line-height) !important;
	font-weight: var(--h4-weight);
	letter-spacing: var(--h4-letter-spacing);
}
h5, .h5 {
	font-size: var(--h5-size);
	line-height: var(--h5-line-height) !important;
	font-weight: var(--h5-weight);
	letter-spacing: var(--h5-letter-spacing);
}
h6, .h6 {
	font-size: var(--h6-size);
	line-height: var(--h6-line-height) !important;
	font-weight: var(--h6-weight);
	letter-spacing: var(--h6-letter-spacing);
}
p, span, li, a, label, #topbar p, #topbar a {
	font-size: var(--text-size);
	line-height: var(--text-line-height) !important;
	font-weight: var(--text-weight);
	letter-spacing: var(--text-letter-spacing);
}
[class*="btn"] {
	font-size: var(--text-btn-size);
	line-height: var(--text-btn-line-height) !important;
	font-weight: var(--text-btn-weight);
	letter-spacing: var(--text-btn-letter-spacing);
}
input, input.form-control,
select, select.form-control,
textarea, textarea.form-control,
.small, .small *:not(sup) {
	font-size: var(--text-small-size) !important;
	line-height: var(--text-small-line-height) !important;
	font-weight: var(--text-small-weight);
	letter-spacing: var(--text-small-letter-spacing);
}
#mainMenu nav > ul li > a,
nav a,
nav a > p,
nav a > span {
	font-size: var(--text-header-size) !important;
	line-height: var(--text-header-line-height) !important;
	font-weight: var(--text-header-weight) !important;
	letter-spacing: var(--text-header-letter-spacing) !important;
	text-transform: uppercase;
}
footer .copyright span,
footer .copyright span a {
	font-size: var(--text-footer-copyright-size) !important;
	line-height: var(--text-footer-copyright-line-height) !important;
	font-weight: var(--text-footer-copyright-weight) !important;
	letter-spacing: var(--text-footer-copyright-letter-spacing);
}

/* ----- text - color ----- */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	color: var(--primario);
}
html, body, footer, p, span, li, i, label, input, select, textarea {
	color: var(--grigio-scuro);
}
footer p,
footer .copyright span,
footer .copyright span > a { color: var(--bianco) !important; }
footer .copyright a:hover,
.text-primario { color: var(--primario) !important; }
.text-secondario { color: var(--secondario) !important; }
.text-beige-chiaro { color: var(--beige-chiaro) !important; }
.text-bianco-scuro { color: var(--bianco-scuro) !important; }
.text-grigio-scuro { color: var(--grigio-scuro) !important; }
.text-verde-chiaro { color: var(--verde-chiaro) !important; }
.text-verde { color: var(--verde) !important; }
.text-verde-scuro { color: var(--verde-scuro) !important; }

/* ----- text - decoration ----- */
.text-underline { text-decoration: underline !important; }

/* ----- text - other ----- */
a, a > * { transition: .2s color ease-in-out; }
a:not(.text-white),
*:not(.text-white) > a:not(.text-white) > * {
	color: var(--primario);
}
a:hover, a:hover > * {
	color: var(--grigio-scuro);
}
a.text-white:hover, a.text-white:hover > *,
.text-white > a:hover, .text-white > a:hover > * {
	color: var(--primario) !important;
}


/* ------------------------- BACKGROUND ------------------------- */

.bg-norepeat { background-repeat: no-repeat; }
.bg-contain { background-size: contain; }
.bg-cover { background-size: cover; }
.bg-10 { background-size: 10%; }
.bg-20 { background-size: 20%; }
.bg-30 { background-size: 30%; }
.bg-35 { background-size: 35%; }
.bg-40 { background-size: 40%; }
.bg-50 { background-size: 50%; }
.bg-60 { background-size: 60%; }
.bg-70 { background-size: 70%; }
.bg-80 { background-size: 80%; }
.bg-90 { background-size: 90%; }
.bg-center { background-position: center; }
.bg-center-top { background-position: center top; }
.bg-center-bottom { background-position: center bottom; }
.bg-left-center { background-position: left center; }
.bg-left-top { background-position: left top; }
.bg-left-bottom { background-position: left bottom; }
.bg-right-center { background-position: right center; }
.bg-right-top { background-position: right top; }
.bg-right-bottom { background-position: right bottom; }
.bg-primario { background-color: var(--primario) !important; }
.bg-secondario { background-color: var(--secondario) !important; }
.bg-secondario-95 { background-color: var(--secondario-95) !important; }
.bg-secondario-90 { background-color: var(--secondario-90) !important; }
.bg-beige-chiaro { background-color: var(--beige-chiaro) !important; }
.bg-bianco-scuro { background-color: var(--bianco-scuro) !important; }
.bg-grigio-scuro { background-color: var(--grigio-scuro) !important; }
.bg-verde-chiaro { background-color: var(--verde-chiaro) !important; }
.bg-verde { background-color: var(--verde) !important; }
.bg-verde-scuro { background-color: var(--verde-scuro) !important; }


/* ------------------------- BTN ------------------------- */

/* ----- btn - general ----- */
[class*="btn"] {
	--h-btn: 55px;
	--p-btn-v: 10px;
	--p-btn-h: 35px;
	--b-btn: 0px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: var(--h-btn);
	padding: calc(var(--p-btn-v) - var(--b-btn)) calc(var(--p-btn-h) - var(--b-btn)) !important;
	border-width: var(--b-btn) !important;
	border-style: solid !important;
	border-radius: var(--border-radius) !important;
	box-shadow: none !important;
	margin-bottom: 0 !important;
	text-transform: uppercase !important;
	transition: .3s all ease-in-out !important;
}
[class*="btn"][class*="-br"] {
	--b-btn: 1.5px;
}

/* ----- btn - generici ----- */
.btn-primario {
	color: white !important;
	background-color: var(--primario) !important;
}
.btn-primario > i, .btn-primario > span { color: white !important; }
.btn-primario:hover { background-color: var(--secondario) !important; }

.btn-slide1 {
	color: white !important;
	background-color: var(--primario) !important;
}
.btn-slide1:hover {
	color: var(--primario) !important;
	background-color: white !important;
}

.btn-slide2 {
	color: white !important;
	background-color: var(--secondario) !important;
}
.btn-slide2:hover {
	color: var(--secondario) !important;
	background-color: white !important;
}

/* ----- btn - base ----- */

/* ----- btn - base - bg ----- */
[class*="btn"][class*="-bg-primario"] { background-color: var(--primario) !important; }
[class*="btn"][class*="-bg-secondario"] { background-color: var(--secondario) !important; }
[class*="btn"][class*="-bg-beige-chiaro"] { background-color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-bg-bianco-scuro"] { background-color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-bg-verde-chiaro"] { background-color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-bg-verde"] { background-color: var(--verde) !important; }
[class*="btn"][class*="-bg-verde-scuro"] { background-color: var(--verde-scuro) !important; }
[class*="btn"][class*="-bg-grigio-scuro"] { background-color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-bg-white"] { background-color: white !important; }
[class*="btn"][class*="-bg-transparent"] { background-color: transparent !important; }
[class*="btn"][class*="-bg-blur"] { background-color: rgba(255, 255, 255, .35) !important; backdrop-filter: blur(5px); }

/* ----- btn - base - color ----- */
[class*="btn"][class*="-cl-primario"],
[class*="btn"][class*="-cl-primario"] > i { color: var(--primario) !important; }
[class*="btn"][class*="-cl-secondario"],
[class*="btn"][class*="-cl-secondario"] > i { color: var(--secondario) !important; }
[class*="btn"][class*="-cl-beige-chiaro"],
[class*="btn"][class*="-cl-beige-chiaro"] > i { color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-cl-bianco-scuro"],
[class*="btn"][class*="-cl-bianco-scuro"] > i { color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-cl-verde-chiaro"],
[class*="btn"][class*="-cl-verde-chiaro"] > i { color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-cl-verde"],
[class*="btn"][class*="-cl-verde"] > i { color: var(--verde) !important; }
[class*="btn"][class*="-cl-verde-scuro"],
[class*="btn"][class*="-cl-verde-scuro"] > i { color: var(--verde-scuro) !important; }
[class*="btn"][class*="-cl-grigio-scuro"],
[class*="btn"][class*="-cl-grigio-scuro"] > i { color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-cl-white"],
[class*="btn"][class*="-cl-white"] > i { color: white !important; }
[class*="btn"][class*="-cl-transparent"],
[class*="btn"][class*="-cl-transparent"] > i { color: transparent !important; }

/* ----- btn - base - border ----- */
[class*="btn"][class*="-br-primario"] { border-color: var(--primario) !important; }
[class*="btn"][class*="-br-secondario"] { border-color: var(--secondario) !important; }
[class*="btn"][class*="-br-beige-chiaro"] { border-color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-br-bianco-scuro"] { border-color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-br-verde-chiaro"] { border-color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-br-verde"] { border-color: var(--verde) !important; }
[class*="btn"][class*="-br-verde-scuro"] { border-color: var(--verde-scuro) !important; }
[class*="btn"][class*="-br-grigio-scuro"] { border-color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-br-white"] { border-color: white !important; }
[class*="btn"][class*="-br-transparent"] { border-color: transparent !important; }

/* ----- btn - hover ----- */

/* ----- btn - hover - bg ----- */
[class*="btn"][class*="-bg-h-primario"]:hover { background-color: var(--primario) !important; }
[class*="btn"][class*="-bg-h-secondario"]:hover { background-color: var(--secondario) !important; }
[class*="btn"][class*="-bg-h-beige-chiaro"]:hover { background-color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-bg-h-bianco-scuro"]:hover { background-color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-bg-h-verde-chiaro"]:hover { background-color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-bg-h-verde"]:hover { background-color: var(--verde) !important; }
[class*="btn"][class*="-bg-h-verde-scuro"]:hover { background-color: var(--verde-scuro) !important; }
[class*="btn"][class*="-bg-h-grigio-scuro"]:hover { background-color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-bg-h-white"]:hover { background-color: white !important; }
[class*="btn"][class*="-bg-h-transparent"]:hover { background-color: transparent !important; }
[class*="btn"][class*="-bg-h-blur"]:hover { background-color: rgba(255, 255, 255, .35) !important; backdrop-filter: blur(5px); }

/* ----- btn - hover - color ----- */
[class*="btn"][class*="-cl-h-primario"]:hover,
[class*="btn"][class*="-cl-h-primario"]:hover > i { color: var(--primario) !important; }
[class*="btn"][class*="-cl-h-secondario"]:hover,
[class*="btn"][class*="-cl-h-secondario"]:hover > i { color: var(--secondario) !important; }
[class*="btn"][class*="-cl-h-beige-chiaro"]:hover,
[class*="btn"][class*="-cl-h-beige-chiaro"]:hover > i { color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-cl-h-bianco-scuro"]:hover,
[class*="btn"][class*="-cl-h-bianco-scuro"]:hover > i { color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-cl-h-verde-chiaro"]:hover,
[class*="btn"][class*="-cl-h-verde-chiaro"]:hover > i { color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-cl-h-verde"]:hover,
[class*="btn"][class*="-cl-h-verde"] > i { color: var(--verde) !important; }
[class*="btn"][class*="-cl-h-verde-scuro"]:hover,
[class*="btn"][class*="-cl-h-verde-scuro"]:hover > i { color: var(--verde-scuro) !important; }
[class*="btn"][class*="-cl-h-grigio-scuro"]:hover,
[class*="btn"][class*="-cl-h-grigio-scuro"]:hover > i { color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-cl-h-white"]:hover,
[class*="btn"][class*="-cl-h-white"]:hover > i { color: white !important; }
[class*="btn"][class*="-cl-h-transparent"]:hover,
[class*="btn"][class*="-cl-h-transparent"] > i { color: transparent !important; }

/* ----- btn - hover - border ----- */
[class*="btn"][class*="-br-h-primario"]:hover { border-color: var(--primario) !important; }
[class*="btn"][class*="-br-h-secondario"]:hover { border-color: var(--secondario) !important; }
[class*="btn"][class*="-br-h-beige-chiaro"]:hover { border-color: var(--beige-chiaro) !important; }
[class*="btn"][class*="-br-h-bianco-scuro"]:hover { border-color: var(--bianco-scuro) !important; }
[class*="btn"][class*="-br-h-verde-chiaro"]:hover { border-color: var(--verde-chiaro) !important; }
[class*="btn"][class*="-br-h-verde"]:hover { border-color: var(--verde) !important; }
[class*="btn"][class*="-br-h-verde-scuro"]:hover { border-color: var(--verde-scuro) !important; }
[class*="btn"][class*="-br-h-grigio-scuro"]:hover { border-color: var(--grigio-scuro) !important; }
[class*="btn"][class*="-br-h-white"]:hover { border-color: white !important; }
[class*="btn"][class*="-br-h-transparent"]:hover { border-color: transparent !important; }


/* ------------------------- OBJECT ------------------------- */

/* ----- general ----- */
body:not(.bg-white), body:not(.bg-white) section {
	background-color: white;
}
body:before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	height: 100vh;
	background-image: var(--bg-parallasse, url('/pages/_assets/nice/images/home/villa-ugo-bed-and-breakfast-di-lusso-a-salsomaggiore-terme-homepage-subheader.jpg'));
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 0;
}
section {
	padding-top: var(--section-v);
	padding-bottom: var(--section-v);
}
section.section-small {
	padding-top: var(--section-v-small);
	padding-bottom: var(--section-v-small);
}
main section.section-small:first-child {
	padding-top: var(--section-v);
}
main section.section-small:last-child {
	padding-bottom: var(--section-v);
}
.pt-section { padding-top: var(--section-v) !important; }
.pb-section { padding-bottom: var(--section-v) !important; }
.pt-section-small { padding-top: var(--section-v-small) !important; }
.pb-section-small { padding-bottom: var(--section-v-small) !important; }
.container, .container-fluid {
	padding-right: var(--section-o);
	padding-left: var(--section-o);
}
.row {
	margin-right: calc(-1 * var(--col-d));
	margin-left: calc(-1 * var(--col-d));
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto,
.col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto,
.col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto,
.col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto,
.col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
	padding-right: var(--col-d);
	padding-left: var(--col-d);
}
.p-relative { position: relative; }

.ombra-card {
	box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.08);
}

/* ----- scroll top ----- */
#scrollTop:after {
	background-color: var(--secondario);
}
#scrollTop:hover i {
	transform: none !important;
}

/* ----- spacing ----- */

/* ----- spacing - border radius ----- */
.border-round { border-radius: var(--border-radius); }
.border-round-2 { border-radius: calc(var(--border-radius) * 2); }

/* ----- spacing - padding ----- */
.pr-section { padding-right: var(--section-o) !important; }
.pl-section { padding-left: var(--section-o) !important; }

/* ----- spacing - gap ----- */
.g-5 { gap: 5px; }
.g-10 { gap: 10px; }
.g-15 { gap: 15px; }
.g-20 { gap: 20px; }
.g-25 { gap: 25px; }

/* ----- spacing - ul ----- */
ul {
	margin-bottom: 0 !important;
	margin-left: 40px;
}

/* ----- recaptcha ----- */
.grecaptcha-badge { visibility: hidden; }

/* ----- scroll-behavior ----- */
html {
	scroll-behavior: smooth;
}

/* ----- img cover ----- */
.img-cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ----- riga generica ----- */
.riga-generica .col-lg-5:first-child {
	padding: 0 120px 0 95px;
}
.riga-generica .col-lg-5:last-child {
	padding: 0 95px 0 120px;
}

/* ----- card generica ----- */
.card-generica {
	display: flex;
	flex-direction: column;
	height: 100%;
	border-radius: var(--border-radius);
	overflow: hidden;
}
.card-generica .card-generica-img img {
	width: 100%;
}
.card-generica .card-generica-testi {
	height: 100%;
	background-color: var(--bianco-scuro);
	padding: var(--section-o);
}

/*
----- img scacchiera -----
.colonna-img-scacchiera {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	height: var(--h-col);
	padding-right: 0 !important;
	padding-left: 0 !important;
}
.colonna-img-scacchiera img {
	transform: scale(var(--scale));
}
*/

/*
----- video sfondo -----
.video-sfondo {
	--w-vid: 1920px;
	--h-vid: 650px;
	position: absolute;
	top: calc(100% - var(--h-vid) / 2);
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: var(--h-vid);
	z-index: -1;
	overflow: hidden;
}
.video-sfondo video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
*/

/*
----- imageGroup -----
#imageGroup {
  display: grid;
  grid-gap: 25px;
  align-items: center;
  justify-items: center;
}
#imageGroup.grid-img-home {
  grid-template-areas:
		'img1 img2'
    'img1 img3';
}
#imageGroup [id^="imgGallery"] {
  display: contents;
}
#imageGroup [id^="imgGallery"] img {
	border-radius: var(--border-radius);
	width: 100%;
}
#imageGroup .grid-img-gallery-control {
	display: none;
}
*/

/* ----- divisore ----- */
.divisore {
	--w: 25px;
	--p: 25px;
	--n: 1;
	display: block;
	width: calc(var(--w) * var(--n));
	height: 1.5px;
	margin-top: var(--p);
	margin-bottom: var(--p);
}
h2 + .divisore, .h2 + .divisore {
	margin-top: calc(10px + var(--p));
	margin-bottom: calc(10px + var(--p));
}
.divisore.divisore-primario { background-color: var(--primario); }
.divisore.divisore-secondario { background-color: var(--secondario); }
.divisore.divisore-beige-chiaro { background-color: var(--beige-chiaro); }
.divisore.divisore-bianco { background-color: var(--bianco); }
.divisore.divisore-bianco-scuro { background-color: var(--bianco-scuro); }
.divisore.divisore-verde-chiaro { background-color: var(--verde-chiaro); }
.divisore.divisore-verde { background-color: var(--verde); }
.divisore.divisore-verde-scuro { background-color: var(--verde-scuro); }
.divisore.divisore-grigio-scuro { background-color: var(--grigio-scuro); }
.divisore.divisore-x1 { --n: 1; }
.divisore.divisore-x2 { --n: 2; }
.divisore.divisore-x3 { --n: 3; }
.divisore.divisore-x4 { --n: 4; }
.divisore.divisore-x5 { --n: 5; }

/* ----- checkbox-form ----- */
.checkbox-form {
	display: flex;
	position: relative;
}
.checkbox-form > input {
	position: relative;
	z-index: 10;
	opacity: 0 !important;
	margin-right: 10px;
}
.checkbox-form .privacyContatti {
	display: block;
	position: absolute;
	z-index: 5;
	top: 2px;
	width: 16px;
	height: 16px;
	background-color: transparent;
	border: 1px solid var(--grigio-scuro);
	border-radius: 5px;
}
.checkbox-form .privacyContatti:after {
	content: ' ';
	display: none;
	position: relative;
	top: 2px;
	left: 5px;
	width: 4px;
	height: 8px;
	border: solid var(--primario);
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg);
}
.checkbox-form > input:checked ~ .privacyContatti:after {
	display: block;
}
.checkbox-form label,
.checkbox-form label > a {
	font-size: 12px !important;
	line-height: var(--line-height) !important;
	letter-spacing: 0 !important;
}
.checkbox-form label {
	color: var(--grigio-scuro);
}
.checkbox-form label > a {
	color: var(--grigio-scuro) !important;
	text-decoration: underline !important;
}
.checkbox-form label > a:hover {
	color: var(--primario) !important;
}
.checkbox-form.checkbox-center {
	justify-content: center;
	align-items: center;
}
.checkbox-form.checkbox-center > input {
	position: relative;
	margin-right: 0;
	right: -14px;
}
.checkbox-form.checkbox-center .privacyContatti {
	position: relative;
	top: -1px;
	margin-right: 8px;
}

/* ----- bg-pittogramma ----- */
[class*="bg-pittogramma"]:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .03;
	z-index: -1;
}
.bg-pittogramma-white:before {
	background-image: url(/pages/_assets/nice/images/logo-pittogramma-white.svg);
}
.bg-pittogramma-mappa-white:before {
	--bg-p: 40px;
	top: var(--bg-p);
	left: var(--bg-p);
	width: calc(100% - (var(--bg-p) * 2));
	height: calc(100% - (var(--bg-p) * 2));
	background-position: center;
	background-size: contain;
	opacity: .05;
}

/* ----- el icona ----- */
div.el-icona {
	--d: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: var(--d);
	height: var(--d);
	background-color: var(--primario);
	border-radius: 50%;
	margin: auto;
}
div.el-icona.el-icona-white {
	background-color: white;
}
div.el-icona i {
	color: white;
}
div.el-icona.el-icona-white i {
	color: var(--secondario);
}

/* ----- carosello ----- */
.carosello-controlli-custom {
	--w-freccia: 55px;
	--h-freccia: 55px;
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	padding-top: 25px;
}
.carosello-controlli-custom .carosello-freccia {
	position: relative;
	color: var(--bianco);
	background-color: var(--primario);
	border-radius: 10px;
	border-width: 1.5px;
	border-color: var(--primario);
	transition: background-color .3s ease-in-out;
}
.carosello-controlli-custom .carosello-freccia:hover,
.carosello-controlli-custom .carosello-freccia:active,
.carosello-controlli-custom .carosello-freccia:focus {
	background-color: transparent;
	outline: none;
}
.carosello-controlli-custom .carosello-freccia i {
	color: var(--bianco);
	transition: color .3s ease-in-out;
}
.carosello-controlli-custom .carosello-freccia:hover i,
.carosello-controlli-custom .carosello-freccia:active i,
.carosello-controlli-custom .carosello-freccia:focus i {
	color: var(--primario);
}

/* ----- gruppo foto ----- */
.gruppo-foto-2 {
	display: flex;
	align-items: center;
	gap: calc(var(--col-d) * 2);
}
.gruppo-foto-2 img {
	max-width: calc(50% - var(--col-d));
}
.gruppo-foto-3 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, auto);
	grid-auto-flow: column;
	gap: calc(var(--col-d) * 2);
}
.gruppo-foto-3 img:last-child {
	grid-row: 1 / 3;
}
.gruppo-foto-4 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(3, auto);
	grid-auto-flow: column;
	gap: calc(var(--col-d) * 2);
}
.gruppo-foto-4 img:first-child {
	grid-row: 1 / 3;
}
.gruppo-foto-4 img:last-child {
	grid-row: 2 / 4;
}


/* ------------------------- HEADER ------------------------- */

/* ----- header ----- */
#header,
#header .header-inner,
#header .header-inner .container {
	height: var(--header-h);
}
#header .header-inner .container {
	--pt-header: 35px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	padding-top: var(--pt-header) !important;
	padding-right: var(--section-o) !important;
	padding-left: var(--section-o) !important;
}
#header .header-inner .container #logo,
#header .header-inner .container > #mainMenu,
#header .header-inner .container .header-extras {
	display: flex;
	height: calc(var(--header-h) - var(--pt-header));
}
#header .header-inner .container .header-extras {
	position: fixed;
	top: var(--pt-header) !important;
	right: var(--section-o) !important;
}
#header .header-inner .container #logo {
	float: none !important;
	max-height: calc(var(--header-h) - var(--pt-header));
	height: 100%;
}
#header .header-inner .container #logo a > img {
	display: block;
	max-height: calc(var(--header-h) - var(--pt-header));
}
#header .header-inner .container > #mainMenu,
#header .header-inner .container > #mainMenu * {
	transition: .2s all ease-in-out !important;
}
#header .header-inner .container #mainMenu nav {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 40px;
}
#header .header-inner .container #mainMenu nav > ul {
	display: flex;
	column-gap: 30px;
	height: 100%;
}
#header .header-inner .container #mainMenu nav > ul li {
	margin: 0;
}
#header .header-inner .container #mainMenu nav > ul > li,
#header .header-inner .container #mainMenu nav > ul > li > a:not(.action-button) {
	display: flex;
	align-items: center;
	height: 100%;
}
#header .header-inner .container #mainMenu nav > ul > li.dropdown > span.dropdown-arrow {
	display: none;
}
#header .header-inner .container #mainMenu nav > ul > li > a {
	color: white;
	padding: 5px 10px;
}
#header .header-inner .container #mainMenu nav > ul > li > a > i {
	color: white;
	width: 100%;
	margin-right: 0;
	margin-left: 5px;
	font-size: var(--text-header-size);
}
#header .header-inner .container #mainMenu nav > ul > li > a.action-button {
	background-color: var(--primario);
	border: 1px solid var(--primario);
	border-radius: 5px;
}
#header .header-inner .container #mainMenu nav > ul > li > a.action-button:hover {
	color: var(--primario);
	background-color: transparent;
}
#header .header-inner .container #mainMenu nav > ul li.current > a:not(.action-button),
#header .header-inner .container #mainMenu nav > ul li:hover > a:not(.action-button),
#header .header-inner .container #mainMenu nav > ul li:focus > a:not(.action-button),
#header .header-inner .container #mainMenu nav > ul li.current > a:not(.action-button) > i,
#header .header-inner .container #mainMenu nav > ul li:hover > a:not(.action-button) > i,
#header .header-inner .container #mainMenu nav > ul li:focus > a:not(.action-button) > i,
#header.sticky-active .header-inner .container #mainMenu nav > ul li.current > a:not(.action-button),
#header.sticky-active .header-inner .container #mainMenu nav > ul li:hover > a:not(.action-button),
#header.sticky-active .header-inner .container #mainMenu nav > ul li:focus > a:not(.action-button),
#header.sticky-active .header-inner .container #mainMenu nav > ul li.current > a:not(.action-button) > i,
#header.sticky-active .header-inner .container #mainMenu nav > ul li:hover > a:not(.action-button) > i,
#header.sticky-active .header-inner .container #mainMenu nav > ul li:focus > a:not(.action-button) > i {
	color: var(--primario);
}
#header .header-inner .container #mainMenu nav > ul > li ul.dropdown-menu {
	--w-dropmenu: 180px;
	top: 100%;
	flex-direction: column;
	row-gap: 20px;
	width: var(--w-dropmenu);
	min-width: unset;
	padding: 20px;
	border: none;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	border-bottom-right-radius: var(--border-radius);
	border-bottom-left-radius: var(--border-radius);
	background-color: rgba(255, 255, 255, .35);
	background-blend-mode: hard-light;
	backdrop-filter: blur(5px);
	box-shadow: 0 4px 6px 0 rgba(0, 0, 0, .1);
	margin-top: 0;
	z-index: 0;
}
#header .header-inner .container #mainMenu nav > ul > li:not(.hover-active):hover > ul {
	display: flex;
}
#header .header-inner .container #mainMenu nav > ul > li ul.dropdown-menu > li > a {
	color: white;
	padding: 0;
}

/* ----- header - sticky ----- */
#header.sticky-active .header-inner {
	background-color: transparent;
	box-shadow: unset !important;
}
#header.sticky-active .header-inner .container:before {
	background-color: white;
}
#header.sticky-active .header-inner .container #mainMenu nav > ul > li > a:not(.action-button),
#header.sticky-active .header-inner .container #mainMenu nav > ul > li > a:not(.action-button) > i {
	color: var(--grigio-scuro);
}
#header.sticky-active .header-inner .container #mainMenu nav > ul > li ul.dropdown-menu {
	background-color: white;
}
#header.sticky-active .header-inner .container #mainMenu nav > ul > li ul.dropdown-menu > li > a {
	color: var(--grigio-scuro);
}

/* ----- header - cambio-lingue ----- */
#header .header-inner .container .header-extras .cambio-lingue {
	--d: 55px;
	float: none;
	position: relative;
	display: flex !important;
	justify-content: center;
	align-items: center;
	width: var(--d);
	height: var(--d);
	color: white;
	background-color: var(--primario);
	border-radius: var(--border-radius);
	z-index: 0;
}
#header .header-inner .container .header-extras .cambio-lingue:hover:before {
	background-color: white;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
#header .header-inner .container .header-extras .cambio-lingue i {
	color: white;
	z-index: 1;
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content {
	top: 100%;
	left: unset;
	right: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	width: 150px;
	min-width: unset;
	border: none;
	border-radius: var(--border-radius) !important;
	z-index: -1;
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content {
	top: 0;
	left: unset;
	right: 100%;
	width: auto;
	padding: 10px;
	border-radius: 5px;
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li {
	border-radius: 5px;
	transition: .2s background-color ease-in-out !important;
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li.lingua-selezionata,
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li:hover {
	background-color: var(--secondario-90);
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li a {
	transition: .2s color ease-in-out !important;
}
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li.lingua-selezionata a,
#header .header-inner .container .header-extras .cambio-lingue ul.p-dropdown-content li:hover a {
	color: white;
}
#header .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:before,
#header .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:after {
	--d: 20px;
	content: '';
	position: absolute;
	top: 1px;
	display: block;
	width: var(--d);
	height: var(--d);
	background-color: transparent;
	overflow: hidden;
	z-index: -1;
}
#header:not(.sticky-active) .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:before,
#header:not(.sticky-active) .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:after { content: none; }
#header .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:before {
	left: unset;
	right: 100%;
	border-top-right-radius: var(--border-radius);
	box-shadow: 10px -10px 0 10px white;
}
#header .header-inner .container #mainMenu nav > ul .cambio-lingue ul.p-dropdown-content:after {
	left: 100%;
	right: unset;
	border-top-left-radius: var(--border-radius);
	box-shadow: -10px -10px 0 10px white;
}
#header .header-inner .container #mainMenu nav > ul .cambio-lingue li {

}


/* ----- header - sidebar ----- */
.btn-apri-menu {
	width: var(--h-btn);
	padding-right: var(--p-btn-v) !important;
	padding-left: var(--p-btn-v) !important;
}
.menu-side-container.show-menu + #header .btn-apri-menu {
	background-color: var(--secondario) !important;
}
.btn-apri-menu:hover i:before,
.menu-side-container.show-menu + #header .btn-apri-menu i:before {
	content: '\f0c9';
}
.menu-side-container {
	position: absolute;
	z-index: 1000;
	transition: all 0.3s ease-in-out;
}
.menu-side-container.hide-menu {
	opacity: 0;
	visibility: hidden;
}
.menu-side-container.show-menu {
	opacity: 1;
	visibility: visible;
}
.menu-side-container .menu-side-close {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	height: 100vh;
	background-color: black;
	opacity: 0.2;
	z-index: 0;
}
.menu-side-container .menu-side-content {
	--p-sidebar-v: 50px;
	--p-sidebar-h: 75px;
	--w-sidebar: 30vw;
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	width: var(--w-sidebar);
	height: 100vh;
	text-align: left;
	background-color: var(--secondario-90);
	background-blend-mode: hard-light;
	backdrop-filter: blur(5px);
	padding: var(--p-sidebar-v) var(--p-sidebar-h);
	overflow-y: scroll;
	z-index: 100;
	transition: all 0.3s ease-in-out;
}
.menu-side-container.hide-menu .menu-side-content {
	transform: translateX(calc(-1 * var(--w-sidebar)));
	opacity: 0;
}
.menu-side-container.show-menu .menu-side-content {
	transform: translateX(0);
	opacity: 1;
}

/* ----- header - sidebar - header ----- */
.menu-side-container .menu-side-content .menu-side-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
}
.menu-side-container .menu-side-content .menu-side-header a i {
	transform: rotate(0deg);
	transition: all 0.25s ease-in-out;
}
.menu-side-container .menu-side-content .menu-side-header a:hover i {
	transform: rotate(90deg);
}

/* ----- header - sidebar - body ----- */
.menu-side-container .menu-side-content .menu-side-body {
	height: 100%;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul#menuPrincipale {
	list-style: none;
	margin-left: 0;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li {
	--h-li: 50px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	min-height: var(--h-li);
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li:not(:last-child) {
	margin-bottom: 10px;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a {
	display: flex;
	align-items: center;
	width: 100%;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a span,
.menu-side-container .menu-side-content .menu-side-body nav > ul li a i {
	color: var(--bianco);
	transition: color .3s ease-in-out;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li.attivo > a span,
.menu-side-container .menu-side-content .menu-side-body nav > ul li.attivo > a i,
.menu-side-container .menu-side-content .menu-side-body nav > ul li a:hover span,
.menu-side-container .menu-side-content .menu-side-body nav > ul li a:hover i {
	color: var(--grigio-scuro);
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a span {
	--p: 10px;
	white-space: nowrap;
	position: relative;
	padding-top: var(--p);
	padding-bottom: var(--p);
	padding-right: var(--p);
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a span:before {
	--h: 1.5px;
	content: '';
	position: absolute;
	bottom: calc(-1 * var(--h) + var(--p));
	left: 0;
	display: block;
	width: 0;
	height: var(--h);
	background-color: var(--grigio-scuro);
	transition: width .3s ease-in-out;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li.attivo > a span:before,
.menu-side-container .menu-side-content .menu-side-body nav > ul li a:hover span:before {
	width: calc(100% - var(--p));
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a i {
	display: flex;
	align-items: center;
	width: 100%;
	height: var(--h-li);
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li a i:before {
	transition: transform .2s ease-in-out;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li.mostra-sottomenu a i:before,
.menu-side-container .menu-side-content .menu-side-body nav > ul li a i:hover:before {
	transform: rotate(90deg);
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li ul.sottomenu {
	list-style: none;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height .35s ease-in-out, opacity .3s ease-in-out;
}
.menu-side-container .menu-side-content .menu-side-body nav > ul li.mostra-sottomenu ul.sottomenu {
	max-height: 500px;
	opacity: 1;
}

/* ----- header - sidebar - footer ----- */
.menu-side-container .menu-side-content .menu-side-footer {

}
.menu-side-container .menu-side-content .menu-side-footer .gruppo-icone-social {
	display: flex;
	align-items: center;
	gap: 25px;
}
.menu-side-container .menu-side-content .menu-side-footer .gruppo-icone-social a i {
	color: var(--bianco);
}
.menu-side-container .menu-side-content .menu-side-footer .gruppo-icone-social a:hover i {
	color: var(--grigio-scuro);
}


/* ------------------------- SUBHEADER ------------------------- */
#subheader {
	--subheader-h: 700px;
	position: relative;
	height: min(var(--subheader-h), 100vh);
	background-color: transparent;
	padding-top: var(--header-h);
	padding-bottom: 70px;
	margin-top: calc(-1 * var(--header-h));
}
#subheader:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.5));
}
#subheader .container {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#subheader .subheader-titolo {
	margin-bottom: 15px;
}
#subheader .subheader-titolo > .subheader-titolo-blog {
	font-size: var(--h3-size) !important;
}
#subheader .subheader-sottotitolo {
	margin-bottom: 50px;
}
#subheader .breadcrumb {
	padding: 5px 0;
	margin-bottom: 0;
}
#subheader .breadcrumb ul {
	display: flex;
	justify-content: center;
	align-items: center;
}
#subheader .breadcrumb ul li,
#subheader .breadcrumb ul li a,
#subheader .breadcrumb ul li a span {
	color: white !important;
}
/*
#subheader .breadcrumb ul li {
	opacity: 1;
}
*/
#subheader .breadcrumb ul li:not(:last-child) a span,
#subheader .breadcrumb ul li:before {
	opacity: 0.8;
}
#subheader .breadcrumb ul li a span {
	text-transform: lowercase;
	font-style: italic;
}
#subheader .breadcrumb ul li:last-child a span {
	color: white !important;
}
#subheader .breadcrumb ul li + li:before {
	content: '\2f';
	font-family: "Font Awesome 7 Pro" !important;
}

/* ----- subheader - blog ----- */
#subheader.subheader-blog .breadcrumb {
	display: flex;
	justify-content: center;
}
#subheader.subheader-blog .breadcrumb ul {
	align-items: start;
}
#subheader.subheader-blog .breadcrumb ul li {
	display: flex;
	flex: 1 0 auto;
}
#subheader.subheader-blog .breadcrumb ul li:last-child {
	flex: 1 1 100%;
	align-items: start;
	justify-content: flex-start;
	text-align: left;
}


/* ------------------------- FOOTER ------------------------- */

/* ----- footer - content ----- */
#footer {
	position: relative;
	background-color: transparent;
}
#footer .cta-content {
	position: relative;
	padding: var(--section-v) var(--section-o);
	background-color: transparent;
}
#footer .cta-content:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 0;
}
#footer .footer-content {
	background-color: var(--secondario-95);
	padding: 90px 0 45px;
}
#footer .footer-content .grid-link-footer {
	display: flex;
	justify-content: flex-end;
	gap: 100px;
}
#footer .footer-content .grid-link-footer > div {
	width: max-content;
}
#footer .footer-content .grid-link-footer a:hover > p {
	color: var(--primario) !important;
}
#footer .footer-content .gruppo-link-utili {
	display: grid;
	grid-template-columns: var(--h4-line-height) auto;
	grid-column-gap: 15px;
}
#footer .footer-content .gruppo-link-utili .titolo-link-utili {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
#footer .footer-content .gruppo-link-utili .titolo-link-utili h4 {
	position: absolute;
	transform: rotate(-90deg);
	white-space: nowrap;
}
#footer .footer-content .gruppo-link-utili .link-utili {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
#footer .footer-content .gruppo-link-utili .link-utili a > i,
#footer .footer-content .gruppo-link-utili .link-utili a > span {
	color: white;
}
#footer .footer-content .gruppo-link-utili .link-utili a:hover > i,
#footer .footer-content .gruppo-link-utili .link-utili a:hover > span {
	color: var(--primario);
}

/* ----- footer - copyright ----- */
footer .copyright {
	display: flex;
	align-items: center;
	min-height: var(--copyright-h);
	background-color: var(--secondario);
	padding-right: 0;
	padding-left: 0;
}


/* ------------------------- INCLUDE ------------------------- */

/* ----- include - camere ----- */
.singola-camera-contenitore {
	display: flex;
	flex-direction: column;
	gap: 50px;
}
.singola-camera-contenitore .singola-camera-img img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
.singola-camera-contenitore .singola-camera-testi .singola-camera-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 50px;
}
.singola-camera-contenitore .singola-camera-testi .singola-camera-footer .singola-camera-dati {
	display: flex;
	align-items: center;
	gap: 50px;
}
.singola-camera-contenitore .singola-camera-testi .singola-camera-footer .singola-camera-dati .singolo-dato {

}


/* ------------------------- SLIDER ------------------------- */
#slider {
	min-height: 850px;
	top: calc(-1 * var(--header-h)) !important;
	margin-bottom: calc(-1 * var(--header-h)) !important;
}
#slider .slide.overlay-sfondo:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.2);
}
#slider .container {
	align-self: flex-end !important;
	max-width: 1200px;
	padding: 90px 0 70px 0;
}
#slider .container-immagine-aggiuntiva {
	--gap: 25px;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: var(--gap);
}
#slider .container-immagine-aggiuntiva > div {
	width: calc(50% - var(--gap) / 2);
}
/*
#slider .container .slide-captions h1 {
	opacity: 1 !important;
	animation: none !important;
}
*/


/* ------------------------- HOME ------------------------- */

/* ----- home - sez separatore ----- */
.sez-separatore {
	padding-top: 225px;
	padding-bottom: 175px;
}
.sez-separatore:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
}


/* ------------------------- CAMERE - DETTAGLIO ------------------------- */
.griglia-optional-camera {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(var(--n-row-grliglia, 3), 1fr);
	grid-auto-flow: column;
	grid-column-gap: 25px;
	grid-row-gap: 25px;
	margin-bottom: 70px;
}
.contenitore-prenotazione {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--col-d) * 2);
}
.contenitore-prenotazione .prenotazione-prezzi {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 35px;
	min-height: 55px;
	background-color: var(--bianco-scuro);
	padding: 5px 25px;
	border-radius: var(--border-radius);
}
.camere-correlate {
	position: relative;
	border-radius: var(--border-radius);
	overflow: hidden;
}
.camere-correlate:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5));
	z-index: 1;
}
.camere-correlate img {
	position: relative;
	z-index: 0;
}
.camere-correlate .camere-correlate-testi {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 35px;
	z-index: 2;
}


/* ------------------------- BLOG ------------------------- */
.elenco-filtri-blog {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: calc(var(--col-d) * 2);
	list-style: none;
	margin-left: 0;
	margin-bottom: 70px!important
}

.grid-card-blog {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: calc(var(--col-d) * 2);
}
.grid-card-blog .card-blog {
	border-radius: var(--border-radius);
	overflow: hidden;
}
.grid-card-blog .card-blog .card-blog-img {
	position: relative;
}
.grid-card-blog .card-blog .card-blog-img .card-blog-cat {
	position: absolute;
	top: var(--section-o);
	left: var(--section-o);
	color: white;
	background-color: var(--primario);
	padding: 5px 15px;
	border-radius: var(--border-radius);
}
.grid-card-blog .card-blog .card-blog-text {
	background-color: var(--bianco-scuro);
	padding: var(--section-o);
}

.grid-blog {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.grid-blog .card-blog {
	display: flex;
	background-color: var(--secondario);
	padding: 20px 40px;
	border-radius: var(--border-radius);
}
.grid-blog .card-blog .card-blog-testi {
	display: grid;
	grid-template-columns: auto 30px;
	grid-gap: 40px;
	align-items: center;
	width: 100%;
}
.grid-blog .card-blog .card-blog-testi i {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}


/* ------------------------- BLOG - DETTAGLIO ------------------------- */
.row-blog {
	background-color: white;
	padding-bottom: 10px;
	border-radius: var(--border-radius);
	overflow: hidden;
}
.grid-allegati-blog {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}


/* ------------------------- CONTATTI ------------------------- */
.mappa-contatti {
	border-radius: var(--border-radius);
	overflow: hidden;
}

/* ------------------------- PRIVACY E COOKIE POLICY ------------------------- */
section[id^="policy"] .btn {
	border: none !important;
	background-color: var(--primario) !important;
}
section[id^="policy"] .btn:hover {
	color: var(--primario) !important;
	background-color: white !important;
}
section[id^="policy"] a:not(.btn) {
	color: inherit !important;
	text-decoration: underline !important;
	transition: .2s all ease-in-out !important;
}
section[id^="policy"] a:not(.btn):hover {
	color: var(--primario) !important;
}