@charset "UTF-8";

/*
Theme Name: Jampaa
Theme URI: https://www.jampaa.it
Description: Jampaa theme
Author: Promoservice
Author URI: https://www.promoservice.com
Template: twentytwentyone
Version: 1.1
*/

/*
*   1.0 Header
*       1.1 Menu
*       1.2 Booking form
*   2.0 Content
*       2.1 Home
*           2.1.1 Lead Generation Banner
*       2.2 Single room
*       2.3 404
*       2.4 All rooms
*       2.5 404
*       2.6 Single offer
*       2.7 Contacts
*       2.8 Hotel page
*       2.9 Row faqs page
*   3.0 Footer
*   4.0 Rooms list container
*   5.0 Offers list container
*   6.0 News list container
*   7.0 Sliders
*   8.0 Booking form
*   9.0 Contacts
*   10.0 Comparatore
*   11.0 Services rating
*   12.0 Custom gallery
*   13.0 Gallery
*   14.0 Snodo list container
*   15.0 Related pages container
*   16.0 Element icons container
*   17.0 Ancore
*   18.0 Template landing
*/

:root {
    font-size: 10px;
    line-height: 10px;

    --responsive--alignwide-width: 100%;
    --global--font-primary: 'Josefin Sans', sans-serif;
    --global--font-secondary: 'Mulish', sans-serif;
    
    --global--font-size-base: 1.6rem;
    --global--font-line-height-base: 2.6rem;
    --global--font-weight-base: normal;

    --global--letter-spacing: normal;

	--global--font-size-xs: 1.2rem;
	--global--font-size-sm: 1.4rem;
	--global--font-size-md: 1.8rem;
	--global--font-size-lg: 2.8rem;
	--global--font-size-xl: 3.6rem;
	--global--font-size-xxl: 5.2rem;
    --global--font-size-xxxl: 6rem;
    --global--font-size-page-title: var(--global--font-size-xxl);
    
    --heading--font-family: var(--global--font-primary);
	--heading--font-size-h6: var(--global--font-size-xs);
	--heading--font-size-h5: var(--global--font-size-sm);
	--heading--font-size-h4: var(--global--font-size-md);
	--heading--font-size-h3: var(--global--font-size-lg);
	--heading--font-size-h2: var(--global--font-size-xl);
	--heading--font-size-h1: var(--global--font-size-page-title);

    --heading--line-height-h6: 2.2rem;
	--heading--line-height-h5: 2.8rem;
	--heading--line-height-h4: 2.8rem;
	--heading--line-height-h3: 2.8rem;
	--heading--line-height-h2: 4.6rem;
    --heading--line-height-h1: 5.2rem;

    --heading--font-weight: 400;

    --heading--letter-spacing-h6: normal;
	--heading--letter-spacing-h5: 0.2rem;
	--heading--letter-spacing-h4: 0.1rem;
	--heading--letter-spacing-h3: normal;
	--heading--letter-spacing-h2: normal;
	--heading--letter-spacing-h1: normal;

    /* Line Height */
	--global--line-height-body: var(--global--font-line-height-base);

    /* Colors */
    --link-color: #86267A;
    --link-color-hover: #66145C;
    --global--color-primary: #333333;
    --booking-color: #2B71BC;
    --booking-color-hover: #17569A;

    --htv-blue: #202446;
    --htv-blue-2: #173A68;

    /* Spacing */
	--global--spacing-unit: 0;
	--global--spacing-measure: unset;
	--global--spacing-horizontal: 0;
	--global--spacing-vertical: 0;
}

html {
    scroll-behavior: smooth;
}

:root body {
    overflow-x: hidden;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
    margin-bottom: 2rem;
}

body h1,
body h2 {
    position: relative;
}
body h1:not(.no-decoration)::after,
body h2:not(.no-decoration)::after {
    content: "";
    background-color: rgba(134, 38, 122, 0.3);
    height: 2.6rem;
    width: 10rem;
    position: absolute;
    left: -1.3rem;
    /* bottom: -0.4rem; */
    z-index: -1;
    top: 2rem;
}

body h1.has-text-align-center:not(.no-decoration),
body h2.has-text-align-center:not(.no-decoration) {
    align-self: center;
}

body h2.has-text-align-center {
    margin-left: auto;
    margin-right: auto;
}

body a,
body a:active,
body a:focus,
body a:visited,
body.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
    text-decoration: none !important;
    color: var(--link-color);
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    font-weight: 800;
    background: none;
}
body a:hover,
body .color-accent-hover:hover {
    color: var(--link-color-hover);
}

body a.link,
body a.link:active,
body a.link:focus,
body a.link:visited,
body.has-background-white .site a.link:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    margin: 1rem auto 1rem 0;
}
body a.link::after,
body a.link:active::after,
body a.link:focus::after,
body a.link:visited::after,
body.has-background-white .site a.link:focus:not(.wp-block-button__link):not(.wp-block-file__button)::after {
    content: "\f178";
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    margin-left: 1.5rem;
}

body a.btn,
body a.btn:active,
body a.btn:focus,
body a.btn:visited,
body .entry-content a.btn,
body .entry-content a.btn:active,
body .entry-content a.btn:focus,
body .entry-content a.btn:visited,
body button:not(.toggle),
body .button,
body input[type="button"]:not(.toggle),
body input[type="reset"]:not(.toggle),
body input[type="submit"]:not(.toggle),
body.has-background-white .site a.btn:focus:not(.wp-block-button__link):not(.wp-block-file__button),
body a.wp-block-button__link,
body a.wp-block-button__link:active,
body a.wp-block-button__link:focus,
body a.wp-block-button__link:visited,
body .wp-block-button:not(.is-style-outline) a.wp-block-button__link:not(:hover):not(:active):not(.has-text-color) {
    font-family: var(--global--font-secondary) !important;
    font-weight: 900 !important;
    font-size: 1.6rem !important;
    line-height: 2.6rem !important;
    text-align: center;
    background: var(--link-color);
    background-color: var(--link-color);
    color: #ffffff;
    letter-spacing: 0.2rem;
    margin: 0 auto;
    max-width: unset !important;
    width: auto !important;
    display: flex;
    align-items: center;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    text-decoration: none !important;
    border: 0.1rem solid var(--link-color);
    padding: 1rem 2rem !important;
    text-transform: uppercase;
    outline: none;
}
body a.btn:hover,
body .entry-content a.btn:hover,
body button:hover,
body .button:hover,
body input[type="button"]:hover,
body input[type="reset"]:hover,
body input[type="submit"]:hover,
body a.wp-block-button__link:hover,
body .wp-block-button:not(.is-style-outline) a.wp-block-button__link:active,
body .wp-block-button:not(.is-style-outline) a.wp-block-button__link:hover {
    background: var(--link-color-hover) !important;
    background-color: var(--link-color-hover) !important;
    border: 0.1rem solid var(--link-color-hover) !important;
    color: #ffffff !important;
}

body a.btn,
body .entry-content a.btn {
    margin: 1.5rem auto 1.5rem 0 !important;
}

body li.btn-booking a,
body li.btn-booking a:active,
body li.btn-booking a:focus,
body li.btn-booking a:visited,
body a.btn-booking,
body a.btn-booking:active,
body a.btn-booking:focus,
body a.btn-booking:visited,
body .entry-content a.btn-booking,
body .entry-content a.btn-booking:active,
body .entry-content a.btn-booking:focus,
body .entry-content a.btn-booking:visited,
body.has-background-white .site a.btn-booking:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
    font-style: normal;
    font-family: var(--global--font-secondary);
    font-weight: bold;
    font-size: 1.4rem;
    text-align: center;
    text-transform: uppercase;
    background: var(--booking-color);
    background-color: var(--booking-color);
    color: #ffffff;
    letter-spacing: 0.05rem;
    padding: 1rem 2rem !important;
    border-radius: 0.4rem;
    margin: 2rem auto 2rem 0;
    max-width: unset !important;
    width: auto !important;
    display: inline-flex;
    align-items: center;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    text-decoration: none !important;
    border: 0.1rem solid var(--booking-color);
}
body a.btn-booking:hover,
body .entry-content a.btn-booking:hover {
    background: var(--booking-color-hover);
    background-color: var(--booking-color-hover);
    border-color: var(--booking-color-hover);
}

body a.btn.btn-center,
body .entry-content a.btn.btn-center,
body a.btn-booking.btn-center,
body .entry-content a.btn-booking.btn-center {
    margin-left: auto !important;
    margin-right: auto !important;
}
body a.btn.btn-right,
body .entry-content a.btn.btn-right,
body a.btn-booking.btn-right,
body .entry-content a.btn-booking.btn-right {
    margin-left: auto !important;
    margin-right: 0 !important;
}
body a.btn.btn-left,
body .entry-content a.btn.btn-left,
body a.btn-booking.btn-left,
body .entry-content a.btn-booking.btn-left {
    margin-left: 0 !important;
    margin-right: auto !important;
}

body,
body p,
body .entry-content p {
    font-size: var(--global--font-size-base);
    line-height: var(--global--font-line-height-base);
    font-weight: var(--global--font-weight-base);
}
body p,
body .entry-content p {
    margin-bottom: 1.5rem;
}
body div#page {
    display: grid;
    grid-template-columns: repeat( 12, 1fr );
    grid-template-rows: auto;
    grid-template-areas:
        "header header header header header header header header header header header header"
        "content content content content content content content content content content content content"
        "footer footer footer footer footer footer footer footer footer footer footer footer";
}

body .site .button:focus,
body input[type=submit]:focus,
body input[type=reset]:focus,
body .wp-block-search__button:focus,
body .wp-block-button .wp-block-button__link:focus,
body.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button),
body .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) img,
body .site a:focus,
body input[type=checkbox]:focus,
body .swiper-button-next:focus,
.swiper-button-prev:focus  {
    outline: none;
}

body .post-thumbnail,
body .entry-content .wp-audio-shortcode,
body .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce),
body *[class*=inner-container] > *:not(.entry-content):not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce),
body .default-max-width {
    margin-left: unset;
    margin-right: unset;
}

hr.wp-block-separator {
    background: rgba(134, 38, 122, 0.7);
    height: 0.2rem;
    width: 100% !important;
    border: 0;
    margin: 0;
    margin-bottom: 2rem;
}
body figure.full-width {
    margin: 0;
    height: 100%;
    width: 100%;
}
body figure.full-width img {
    object-fit: cover;
    object-position: center;
    height: 100%;
    width: 100%;
    max-height: -webkit-fill-available;
}

body ul {
    padding-left: 3rem;
    margin-bottom: 1.5rem;
}

/*
*   1.0 Header
*/
header#masthead.site-header {
	position: fixed;
	top: 0;
    left: 0;
    right: 0;
	z-index: 101;
    grid-area: header;
    padding: 0;
    align-items: stretch;
    display: grid;
    grid-template-columns: repeat(12,1fr);
    grid-template-rows: auto;
    background: transparent;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
header#masthead.site-header .site-branding {
    grid-row: 2;
    grid-column: 1;
    margin: 0;
    /* padding: 3.5rem; */
    padding: 3.1rem;
    align-items: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    background: #FFFFFF;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
header#masthead.site-header.sticky .site-branding {
    padding: 1rem 2rem;
}
header#masthead.site-header .site-branding .site-logo svg {
    max-width: 18.7rem;
    margin: auto;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
header#masthead.site-header.sticky .site-branding .site-logo svg {
    max-width: 10rem;
}
header#masthead.site-header:not(.sticky) .where-we-are {
    font-family: 'Josefin Sans', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    font-size: 1.2rem !important;
    line-height: 1.2rem !important;
    transition: all 0.5s ease-in-out;
}
header#masthead.site-header.sticky .where-we-are {
    display: none !important;
    visibility: hidden !important;
}
header#masthead.site-header .primary-navigation {
    align-items: center;
    display: flex;
    margin-left: 0;
    padding: 0;
    margin: 0;
    grid-row: 2;
    grid-column: -1;
    justify-content: flex-end;
    z-index: 9999999;
}
header#masthead.site-header .primary-navigation .menu-button-container {
    border-radius: 0 0 0 1rem;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4rem 3rem;
    align-self: start;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
body:not(.primary-navigation-open) header#masthead.site-header .primary-navigation .menu-button-container {
    background: #ffffff;
}
header#masthead.site-header.sticky .primary-navigation .menu-button-container {
    padding: 2rem 2rem;
}
.menu-button-container #primary-mobile-menu,
.menu-button-container #primary-mobile-menu .dropdown-icon.close,
.menu-button-container #primary-mobile-menu .dropdown-icon.close svg,
.menu-button-container #primary-mobile-menu .dropdown-icon.close svg path {
    color: var(--link-color) !important;
    background: transparent !important;
    border: none !important;
}

/*
*   1.1 Menu
*/
header#masthead.site-header .primary-navigation .toggle-inner .toggle-icon {
    transform: rotate(0);
    width: 3.2rem;
    height: 2.5rem;
    position: relative;
    transition: .5s ease-in-out;
    cursor: pointer;
    display: block;
    margin-bottom: 0.5rem;
}
header#masthead.site-header .primary-navigation .toggle-inner .toggle-icon span {
    background: var(--link-color);
    display: block;
    position: absolute;
    height: 0.3rem;
    width: 100%;
    border-radius: 0.9rem;
    opacity: 1;
    left: 0;
    transition: .25s ease-in-out;
}
header#masthead.site-header .primary-navigation .toggle-inner .toggle-icon span:first-child {
    transition: top .3s cubic-bezier(.47,0,.75,.72),transform .6s ease-in-out;
    top: 0;
    width: 2.4rem;
}
header#masthead.site-header .primary-navigation .toggle-inner .toggle-icon span:nth-child(2) {
    top: 1.1rem;
}
header#masthead.site-header .primary-navigation .toggle-inner .toggle-icon span:nth-child(3) {
    top: 2.2rem;
    width: 2.4rem;
}

.primary-navigation-open .primary-navigation > .primary-menu-container {
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    border: 2px solid transparent;
    padding-top: 13rem;
}
.primary-navigation > div > .menu-wrapper {
    padding-bottom: 100px;
    padding-left: 0;
}
.primary-navigation-open .primary-navigation {
    width: 100%;
    position: fixed;
}
.menu-button-container {
    display: block;
}
.primary-navigation > .primary-menu-container {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    padding-top: calc(var(--button--line-height) * var(--primary-nav--font-size-button) + 42px + 5px);
    padding-left: var(--global--spacing-unit);
    padding-right: var(--global--spacing-unit);
    padding-bottom: var(--global--spacing-horizontal);
    background-color: var(--global--color-background);
    transition: all 0.15s ease-in-out;
    transform: translateY(var(--global--spacing-vertical));
}
body:not(.primary-navigation-open) #site-navigation.primary-navigation {
    position: relative;
}
body.primary-navigation-open #site-navigation.primary-navigation {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0;
}
body.primary-navigation-open #site-navigation.primary-navigation .menu-button-container {
    top: 0;
}
body.primary-navigation-open #site-navigation.primary-navigation #primary-mobile-menu {
    margin: 0 0 0 auto;
}
body.primary-navigation-open #page {
    z-index: 9;
}
.primary-navigation > div > .menu-wrapper li,
.primary-navigation > div > .menu-wrapper li a {
    width: 100%;
}
.primary-navigation > div > .menu-wrapper li, .primary-navigation > div > .menu-wrapper li {
    /* text-align: center; */
    text-align: left;
}
.primary-navigation > div > .menu-wrapper li, .primary-navigation > div > .menu-wrapper li a {
    font-size: 2rem !important;
    padding: 0.5rem 0;
}
/* START menu fix */
.primary-navigation .primary-menu-container > ul > .menu-item {
    width: 100%;
    display: block;
    margin: 0.55rem 0;
    text-align: left;
}
.primary-navigation .primary-menu-container > ul > .menu-item > a {
    display: inline !important;
}
.primary-navigation > .primary-menu-container > .menu-wrapper > li > button.sub-menu-toggle,
.primary-navigation .primary-menu-container button.sub-menu-toggle {
    margin: 0 0 0 1rem !important;
    padding: 0 !important;
    display: inline !important;
    background: #fff;
    color: var(--global--color-primary);
    border: 0 !important;
}
header#masthead.site-header .primary-navigation a {
    justify-content: center;
}
.primary-navigation > .primary-menu-container > .menu-wrapper > li > button.sub-menu-toggle:after,
.primary-navigation .primary-menu-container button.sub-menu-toggle:after {
    display: none !important;
    visibility: hidden !important;
}
.primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
    display: none;
}
.primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=true] ~ ul {
    display: block;
}
.primary-navigation > div > .menu-wrapper > li {
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
}
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
    position: relative;
    top: 0;
    border: none;
}
header#masthead.site-header .primary-navigation li.wpml-ls-menu-item.menu-item-has-children,
body.lock-scrolling .menu-button-container .menu-mobile-widget {
    display: none !important;
    visibility: hidden !important;
}
.primary-navigation > div > .menu-wrapper > li {
    padding-left: 3rem;
}
.primary-navigation > div > .menu-wrapper ul {
    padding-top: 1rem;
    padding-left: 1.5rem;
}
/* FINISH menu fix */
.primary-navigation > div > .menu-wrapper > li > .sub-menu {
    position: relative;
    top: 0;
    border: none;
}
.primary-navigation li.current-menu-parent > ul.sub-menu {
    display: block !important;
}
.primary-navigation li.current-menu-item > a {
    color: var(--link-color) !important;
    font-weight: 800 !important;
}
body .primary-navigation > div > .menu-wrapper > li > .sub-menu:before,
body .primary-navigation > div > .menu-wrapper > li > .sub-menu:after {
    display: none !important;
    visibility: hidden !important;
}
/* START language menu selector */
.menu-mobile-widget {
	right: 8rem;
	align-items: center;
	display: flex
}

.menu-mobile-widget .wpml-ls-legacy-dropdown {
	width: auto
}

.menu-mobile-widget .wpml-ls-legacy-dropdown a {
	background-color: transparent;
	border: 0;
	color: var(--link-color) !important;
	font-weight: 700;
	font-size: 1.4rem
}

.menu-mobile-widget .wpml-ls-legacy-dropdown a:hover,
.menu-mobile-widget .wpml-ls-legacy-dropdown a:focus,
.menu-mobile-widget .wpml-ls-legacy-dropdown a:active {
	color: var(--link-color) !important
}

.menu-mobile-widget .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
	content: "\f0d7";
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	border: 0;
	top: unset;
	right: 1rem
}
header#masthead.site-header .primary-navigation .wpml-ls a {
	padding: 1rem 2.5rem;
    white-space: nowrap;
}

.menu-mobile-widget .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
	padding-top: 15px;
	padding-bottom: 5px;
	background: #ffffff !important;
}

.menu-mobile-widget .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
	border: 0;
}

.menu-mobile-widget {
	border-right: 1px solid var(--link-color);
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover>a,
.wpml-ls-legacy-dropdown a:focus,
.wpml-ls-legacy-dropdown a:hover {
    background: #ffffff !important;
}
.menu-mobile-widget .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a,
.menu-mobile-widget .wpml-ls-legacy-dropdown a {
    text-transform: uppercase;
}

/* FINISH language menu selector */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle:focus {
    outline: 0 !important;
}

/*
*   1.2 Booking form
*/
header#masthead.site-header .site-booking-form {
    grid-row: 2;
    grid-column: 2 / -2;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.9rem;
    max-width: 100rem;
}
header#masthead.site-header .site-booking-form i {
    margin-right: 0.5rem;
}
header#masthead.site-header .site-booking-form .site-booking-form-pre {
    padding: 1.4rem;
    background-color: #F5BC41;
}
header#masthead.site-header .site-booking-form .site-booking-form-post {
    background-color: #ffffff;
    padding: 1.4rem;
    display: inline-flex;
    width: 100%;
    gap: 5rem;
    border-radius: 0 0 1rem 0;
}
header#masthead.site-header .site-booking-form .site-booking-form-post a,
header#masthead.site-header .site-booking-form .site-booking-form-post a:active,
header#masthead.site-header .site-booking-form .site-booking-form-post a:focus,
header#masthead.site-header .site-booking-form .site-booking-form-post a:visited {
    color: #27AE60;
}
header#masthead.site-header .site-booking-form .site-booking-form-post a:hover {
    color: var(--link-color-hover);
}

header#masthead.site-header .site-booking-form .booking-form {
    background-color: #F5BC41;
}
header#masthead.site-header .site-booking-form .booking-form div.sb {
    box-shadow: none;
    padding: 0 1rem 1rem !important;
}
header#masthead.site-header .site-booking-form .booking-form #sb-container_sb__form-field--checkin span.sb__form-field-label,
header#masthead.site-header .site-booking-form .booking-form #sb-container_sb__form-field--checkout span.sb__form-field-label {
    display: none;
}

/*
*   2.0 Content
*/
body div#page div.site-content {
    grid-area: content;
    min-height: 80vh;
}
body.singular .entry-header,
body.error404 .page-header {
    padding: 0;
    border: 0;
    min-height: 58rem;
    display: flex;
    position: relative;
}
body.singular .entry-header figure,
body.error404 .page-header figure {
    position: absolute;
    width: 100%;
    height: 100%;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin: auto;
}
body.singular .entry-header .entry-content-title,
body.error404 .page-header .entry-content-title {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    padding: 5rem 0;
    margin: auto 0 0 0;
    width: 100%;
}
body .entry-header .entry-content-title h1,
body.error404 .page-header .entry-content-title h1 {
    grid-column: 2 / -2;
    text-transform: uppercase;
    color: #ffffff;
}
body .entry-header .entry-content-title h1::after,
body.error404 .page-header .entry-content-title h1::after {
    background-color: rgba(134, 38, 122, 0.6);
}
body .entry-header .entry-content-title h2,
body.error404 .page-header .entry-content-title h2 {
    grid-column: 2 / -5;
    color: #ffffff;
    margin-bottom: 0;
}
body .entry-header .entry-content-title h2::after,
body.error404 .page-header .entry-content-title h2::after {
    display: none !important;
}

.entry-content .grids-section .grids-s-w_i {
    padding-top: 2rem;
    padding-bottom: 2rem;
}


.image-boxed-blue h2,
.image-boxed-blue p {
    color: #ffffff;
}
.image-boxed-blue hr {
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
}
.entry-content .image-boxed-blue.grids-section > .grids-s-w_i {
    color: #ffffff;
    padding: 7rem 0;
}
.image-boxed-blue > .grids-s-w_i::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 50%;
    background-size: auto;
    background-attachment: scroll;
    background: rgba(23, 58, 104, 0.7);
    backdrop-filter: blur(5px);
}
.image-boxed-blue > .grids-s-w_i .grids-area {
    z-index: 1;
}
i.volume-icon {
	font-family: "Font Awesome 5 Pro" !important;
    font-weight: 900 !important;
    font-size: 30px;
    line-height: 30px;
    font-style: normal !important;
    cursor: pointer !important;
    background: #fff;
	color: #86267a !important;
    padding: 10px;
    border-radius: 100px;
}
i.volume-icon::before {
	content: "\f6a8" !important;
}

/* Start banner with blur image */
.image-boxed-blur-background h2,
.image-boxed-blur-background p {
    color: #ffffff;
}
.image-boxed-blur-background h2 {
    display: flex;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.image-boxed-blur-background > .grids-s-w_i > .grids-area {
    grid-column-start: 4;
    grid-column-end: 10;
}
/* Finish banner with blur image */

/* Start images overlay background effect */
figure.image-background-overlay-effect {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    margin-top: 2rem;
    margin-left: 2rem;
}
figure.image-background-overlay-effect:after {
    content: '';
    background-color: rgba(134, 38, 122, 0.3);
    height: 100%;
    width: 100%;
    position: absolute;
    left: -2rem;
    top: -2rem;
    z-index: -1;
}
/* Finish images overlay background effect */

/* Start grid info elements */
.grid-info {
    border-top: 1px solid #C2C8E2;
    border-bottom: 1px solid #C2C8E2;
    padding: 1rem 0;
    margin: 2rem 0;
    display: flex;
    width: fit-content;
}
.single-info {
    padding: 0 1rem;
    display: flex;
    align-items: baseline;
}
.single-info > i {
    color: #C2C8E2 !important;
    padding-right: 0.5rem;
}
.single-info:not(:first-child) {
    border-left: 1px solid #C2C8E2;
}

/* Finish grid info elements */

.entry-content .image-boxed-blur-background.grids-section > .grids-s-w_i {
    color: #ffffff;
    padding: 7rem 0;
}
.entry-content .image-boxed-blur-background.grids-section > .grids-s-w_i a,
.entry-content .image-boxed-blur-background.grids-section > .grids-s-w_i a:hover,
.entry-content .image-boxed-blur-background.grids-section > .grids-s-w_i a:focus {
    color: #fff !important;
    font-weight: bold !important;
}
.image-boxed-blur-background > .grids-s-w_i::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position-x: 50%;
    background-position-y: 50%;
    background-size: auto;
    background-attachment: scroll;
    background: rgba(23, 58, 104, 0.7);
    backdrop-filter: blur(5px);
}
.image-boxed-blur-background > .grids-s-w_i .grids-area {
    z-index: 1;
}
.image-boxed-blur-background a.btn {
    border-color: #fff !important;
    background-color: transparent !important;
}

ul.list-services {
    list-style: none;
    padding-left: 0;
}
ul.list-services.list-services-spa li {
    padding-left: 3rem;
    position: relative;
}
ul.list-services.list-services-spa li::before {
    content: "\f5bb";
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 2.6rem;
    margin-right: 0.6rem;
    position: absolute;
    left: 0;
    top: 0;
}

span.loading {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.bottom-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #464861;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    align-items: center;
    z-index: 10;
    font-size: 1.4rem;
    line-height: 2.4rem;
    font-weight: 400;
}
.bottom-bar a,
.bottom-bar a:active,
.bottom-bar a:focus,
.bottom-bar a:visited,
.bottom-bar a:hover {
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 1rem;
    gap: 0.2rem;
    text-transform: uppercase;
}
.bottom-bar a.bottom-bar-book,
.bottom-bar a.bottom-bar-book:active,
.bottom-bar a.bottom-bar-book:focus,
.bottom-bar a.bottom-bar-book:visited,
.bottom-bar a.bottom-bar-book:hover {
    color: #F5BC41 !important;
}
.bottom-bar a i {
    font-size: 2rem;
}


body .grids-area.green-loghi-column {
    flex-direction: row;
    justify-content: space-around;
}
body .grids-area.green-loghi-column figure {
    max-width: 40%;
    margin: 0 2rem auto;
}
.inline-buttons {
    display: flex;
    flex-flow: row;
    gap: 2rem;
    width: fit-content;
    margin: 1rem auto !important;
}
.toggle-text:not(.active) {
    display: none !important;
    visibility: hidden !important;
}
.read-more-text:not(.active) {
    display: none !important;
    visibility: hidden !important;
}
.inline-buttons.left-aligned {
    display: flex;
    flex-flow: row;
    gap: 2rem;
    width: fit-content;
    margin: 1rem auto 1rem 0 !important;
}
.btn.only-borders,
.btn.only-borders:active,
.btn.only-borders:visited {
    background: transparent !important;
    color: var(--link-color) !important;
    border-color: var(--link-color) !important;
}
.btn.only-borders:hover,
.btn.only-borders:focus {
    background: var(--link-color) !important;
    color: #fff !important;
    border-color: var(--link-color) !important;
}
body .gift-description {
    font-weight: normal;
    font-size: 1.6rem;
    line-height: 2.6rem;
    color: #8A93A7;
}
body .gift-description h3 {
    color: #444444;
}
body span.gift-price {
    font-size: 2.8rem;
    line-height: 130%;
    font-weight: bold;
    color: #6FCF97;
}
body a.gift-button-readmore {
    color: #444444;
    padding-left: 2rem;
}
body a.gift-button-readmore::before {
    content: '+';
    position: absolute;
    top: 0;
    left: 0;
    font-size: 2rem;
    line-height: 1;
    color: #BFBFBF;
}
body span.gift-number {
    background: var(--link-color);
    width: 8rem;
    height: 8rem;
    font-weight: bold;
    font-size: 3.4rem;
    line-height: 4.2rem;
    color: #FFFFFF;
    position: absolute;
    top: -4rem;
    left: -4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8rem;
}
.custom-gallery-label.color-green {
    background: #65BD6B !important;
}
body div.group-therapies div.single-therapy {
    padding-bottom: 5rem !important;
}
body div.group-therapies div.single-therapy a.btn {
    margin-top: auto !important;
    margin-bottom: 0 !important;
}
.green-section-with-stripe {
    padding: 3rem 0 !important;
}
.green-section-with-stripe::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 40%;
    background: rgba(101,189,107,0.1);
    top: 30%;
    bottom: 30%;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area {
    background: #FFFFFF;
    box-shadow: 0 0.2rem 2rem rgba(138, 147, 167, 0.4);
    padding: 4rem !important;
    text-align: center;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area h1,
.green-section-with-stripe > .grids-s-w_i > div.grids-area h2 {
    width:fit-content;
    z-index: 1;
    margin-left: auto !important;
    margin-right: auto !important;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area h1:not(.no-decoration)::after,
.green-section-with-stripe > .grids-s-w_i > div.grids-area h2:not(.no-decoration)::after {
    background: rgba(101, 189, 107, 0.3) !important;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area a.btn {
    background: rgba(101, 189, 107, 1) !important;
    border-color: rgba(101, 189, 107, 1) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area div.inline-logos {
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.green-section-with-stripe div.grids-area div.inline-logos > .grids-s-w_i {
    display: flex !important;
    flex-flow: row !important;
    gap: 2rem !important;
}
.green-section-with-stripe > .grids-s-w_i > div.grids-area div.inline-logos figure,
.green-section-with-stripe > .grids-s-w_i > div.grids-area div.inline-logos figure img {
    max-height: 14rem !important;
    max-width: 14rem !important;
}
.no-link {
    cursor: default !important;
}
.site-booking-form-post .no-link:hover,
.site-booking-form-post .no-link:active,
.site-booking-form-post .no-link:focus {
    color: #27AE60 !important;
}
body:not(.page-template-template-landing) div.wp-block-spacer[style] {
    height: 4rem !important;
}
div.height10.wp-block-spacer[style] {
    height: 1rem !important;
}
body.primary-navigation-open iframe[id^=QReviewWidget] {
    display: noen !important;
    visibility: hidden !important;
}
.form-convenzioni-aziendali {
    width: fit-content;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-template-rows: auto;
    gap: 2rem;
}
.form-convenzioni-aziendali > label {
    grid-column: auto;
    grid-row: auto;

    display: flex;
    flex-flow: column;
}
.form-convenzioni-aziendali > label.full-row,
.form-convenzioni-aziendali .wpcf7-spinner,
.form-convenzioni-aziendali .wpcf7-response-output {
    grid-column: 1/-1;
    grid-row: auto;
}
.form-convenzioni-aziendali input {
    outline: 0 !important;
    padding: 0.5rem 1rem;
}
.form-convenzioni-aziendali input,
.form-convenzioni-aziendali textarea {
    border: 0.1rem solid #ddd !important;
}
.form-convenzioni-aziendali input.wpcf7-submit {
    margin-left: 0 !important;
    margin-right: auto !important;
}
.form-convenzioni-aziendali input.wpcf7-submit,
.form-convenzioni-aziendali input.wpcf7-submit:active,
.form-convenzioni-aziendali input.wpcf7-submit:visited {
    background-color: var(--link-color) !important;
}
.form-convenzioni-aziendali input.wpcf7-submit:hover,
.form-convenzioni-aziendali input.wpcf7-submit:focus {
    background-color: var(--link-color-hover) !important;
}
.form-convenzioni-aziendali br {
    display: none !important;
    visibility: hidden !important;
}
sup {
    top: -0.5em !important;
}


/*
*   2.1 Home
*/
body.home #two-boxes .single-box,
.two-boxes-slide .single-box {
    background-size: cover;
    background-position: center;
    min-height: 40rem;
    transition: all 1000ms ease-in-out;
    grid-column: 1/-1;
    width: 50%;
    z-index: 1;
}
body.home #two-boxes .single-box.single-box-right,
.two-boxes-slide .single-box.single-box-right {
    margin-right: 0;
    margin-left: auto;
}
body.home #two-boxes .single-box.single-box-left,
.two-boxes-slide .single-box.single-box-left {
    margin-right: auto;
    margin-left: 0;
}
body.home #two-boxes .single-box::before,
.two-boxes-slide .single-box::before {
    content: " ";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(360deg, #464861 0%, rgba(70, 72, 97, 0.2) 100%);
}
body.home #two-boxes .single-box > .grids-section,
.two-boxes-slide .single-box > .grids-section {
    margin: auto 0 0 auto;
    max-width: 50rem;
    padding: 4rem 4rem 0;
    z-index: 1;
}
body.home #two-boxes .single-box.single-box-right > .grids-section,
.two-boxes-slide .single-box.single-box-right > .grids-section {
    margin: auto auto 0 0;
}
body.home #two-boxes .single-box > .grids-section .grids-area > *,
.two-boxes-slide .single-box > .grids-section .grids-area > * {
    color: #ffffff;
}
body.home #two-boxes .grids-s-w_i:hover .single-box,
.two-boxes-slide .grids-s-w_i:hover .single-box {
    /* grid-column: 10/13; */
    width: 30%;
}
body.home #two-boxes .grids-s-w_i .single-box:hover,
.two-boxes-slide .grids-s-w_i .single-box:hover {
    /* grid-column: 1/10; */
    width: 70%;
}

body.home #esperienza-benessere {
    padding: 5rem 0;
}
body.home #esperienza-benessere > .grids-s-w_i {
    gap: 0 5rem;
}
body.home #esperienza-benessere .services ul {
    list-style: none;
}
body.home #esperienza-benessere .services:not(.services-blue) ul {
    columns: 2;
}
body.home #esperienza-benessere .services ul li {
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
}
body.home #esperienza-benessere .services ul li i {
    margin-right: 1rem;
    font-size: 2rem;
    width: 3rem;
    text-align: center;
}
body.home #esperienza-benessere .services:not(.services-blue) ul li i {
    color: #8A93A7;
}
body.home #esperienza-benessere .services.services-blue ul li a {
    width: 100%;
    max-width: 15.5rem;
    display: flex;
    align-items: center;
}
body.home #esperienza-benessere .services.services-blue ul li a i.fa-long-arrow-right {
    margin: 0 0 0 auto;
}

body.home #staff {
    padding: 5rem 10rem;
}
body.home #staff .content {
    padding-bottom: 5rem;
}
body.home #staff .cristina,
body .cristina {
    z-index: 1;
}
body.home #staff .cristina figure,
body.home #staff .cristina figure img,
body .cristina figure,
body .cristina figure img  {
    border-radius: 20rem 0;
}
body.home #staff .per-te,
body .per-te {
    padding: 5rem 5rem !important;
    margin: 0;
    border-radius: 0 0 20rem 0;
}


/*
*   2.1.1 Banner lead generation
*/
body .emotional_newsletter_wrapper.hidden_newsletter {
    display: none !important;
    visibility: hidden !important;
}
body .emotional_newsletter_wrapper {
	display: grid !important;
	grid-template-rows: repeat(2,1fr);
	grid-template-columns: repeat(3,auto);
	column-gap: 10px;
	position: relative;
	align-items: center;
	max-width: 800px !important;
	border: 1px solid #BDBDBD;
	padding: 5px;
	margin: 4rem auto !important;
}
body img.emotional_newsletter_icon {
	grid-column: 1;
	grid-row: 1/3;
	max-width: 163px !important;
}
body span.emotional_newsletter_close {
	grid-column: 2;
	grid-row: 1;
	position: absolute;
	right: 20px;
	top: 10px;
	font-size: 30px;
	z-index: 10;
}
body .emotional_newsletter_wrapper h2.emotional_newsletter_title {
	grid-column: 2/4;
	grid-row: 1;
	text-align: left;
}

body .emotional_newsletter_wrapper p.emotional_newsletter_subtitle {
	grid-column: 2/4;
	grid-row: 1;
	padding-top: 80px;
	margin-bottom: 0px;
	text-align: left;
}
body .emotional_newsletter_wrapper .form-container {
	grid-column: 2/4;
	grid-row: 2;
}
body .emotional_newsletter_wrapper .form-container {
	display: grid;
	width: 100%;
	grid-template-rows: auto;
	grid-template-columns: repeat(3,1fr);
}

body .emotional_newsletter_wrapper input.wpcf7-submit {
	grid-row: 1;
	grid-column: 3;
}

body .emotional_newsletter_wrapper span[data-name="your-email"],
body .emotional_newsletter_wrapper span[data-name="your-name"] {
	height: 5.2rem !important;
	grid-row: 1;
	grid-column: 1/3;
}
body .emotional_newsletter_wrapper span[data-name="your-email"] input,
body .emotional_newsletter_wrapper span[data-name="your-name"] input {
    border: 0.1rem solid #EBEBEB;
    color: #444444;
    background-color: rgba(255, 255, 255, 1);
    height: 100%;
    width: 100%;
    padding: 1rem 1.5rem;
}
body .emotional_newsletter_wrapper input.wpcf7-submit {
	margin: 0 auto 0 0 !important;
	background-color: var(--link-color) !important;
	height: 38px !important;
	border-radius: 0 !important;
	border: 0 !important;
	font-style: normal;
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.5 !important;
	letter-spacing: 0.1rem;
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	padding: 0.5rem 1.5rem;
	max-width: unset!important;
	width: auto!important;
	display: flex;
	text-decoration: none!important;
	transition: 0.5s all ease;
    height: 100% !important;
}

body .emotional_newsletter_wrapper input.wpcf7-submit:hover,
body .emotional_newsletter_wrapper input.wpcf7-submit:focus {
	background-color: var(--link-color-hover) !important;
	border:0 !important;
}
body .emotional_newsletter_wrapper input {
    outline: none !important;
}
@media (max-width:699px){
	body .emotional_newsletter_wrapper h2.emotional_newsletter_title {
		font-size: 2.2rem !important;
		line-height: 2.5rem !important;
		letter-spacing: 0.5px !important;
	}
	.emotional_newsletter_wrapper p.emotional_newsletter_subtitle {
		font-size: 1.2rem !important;
	}
}
@media(max-width:500px){
	body .emotional_newsletter_wrapper {
		grid-template-rows: repeat(2,1fr);
		grid-template-columns: auto;
		padding: 10px;
	}
	body .emotional_newsletter_wrapper h2.emotional_newsletter_title,
	body .emotional_newsletter_wrapper p.emotional_newsletter_subtitle {
		grid-column: 1;
		grid-row: 1;
	}
	body img.emotional_newsletter_icon {
		display: none!important;
		visibility: hidden!important;
	}
	body span.emotional_newsletter_close {
		grid-column: 1;
		grid-row: 1;
	}
	body .emotional_newsletter_wrapper .form-container {
		grid-column: 1;
		grid-row: 2;
        
        width: 100%;
        display: flex;
        flex-flow: column;
        gap: 1rem;
    }
	body .emotional_newsletter_wrapper .form-container .wpcf7-email {
        width: 100%;
        border-width: 0.1rem;
        padding: 0.2rem 0.5rem;
    }
}
body .emotional_newsletter_wrapper p.emotional_newsletter_subtitle {
    padding-top: 100px !important;
}
body .emotional_newsletter_wrapper h2.emotional_newsletter_title {
    line-height: 30px !important;
}



/*
*   2.2 Single room
*/
body.single-room .entry-header .entry-content-title {
    gap: 2.5rem 0;
    padding-bottom: 10rem;
}
body.single-room .entry-content-title h1 {
    grid-column: 2 / -6;
    margin: 0;
    align-items: center;
    display: flex;
    text-transform: none !important;
}
body.single-room .entry-content-title .single-room-title-message {
    background: #F2C94C;
    color: #444444;
    font-size: 1.4rem;
    line-height: 1.4rem;
    letter-spacing: 0;
    box-shadow: 0px 0.2rem 2rem rgb(138 147 167 / 30%);
    padding: 1.5rem 2rem;
    text-transform: uppercase;
    border-radius: 3rem;
    margin-left: 5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
}
body.single-room .entry-content-title .single-room-title-message i {
    margin-right: 0.6rem;
    font-size: 1.5rem;
}
body.single-room .entry-content-title a.back-to-rooms-list,
body.single-room .entry-content-title a.back-to-rooms-list:active,
body.single-room .entry-content-title a.back-to-rooms-list:focus,
body.single-room .entry-content-title a.back-to-rooms-list:visited {
    color: #ffffff;
    background-color: transparent;
    border: 0.1rem solid #ffffff;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 2.6rem;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
    grid-column: -5 / -2;
    justify-content: center;
    text-align: center;
    margin: 0 0 auto auto;
    padding: 0.5rem 1rem;
}
body.single-room .entry-content-title a.back-to-rooms-list:hover {
    background-color: var(--link-color-hover);
    border-color: var(--link-color-hover);
}
body.single-room .entry-content-title .single-room-features {
    grid-column: 2 / -2;
    display: flex;
    padding: 0;
    margin: 0 !important;
    color: #C2C8E2;
    align-items: center;
    border-bottom: 0.1rem solid #C2C8E2;
    gap: 0;
    padding-bottom: 2.5rem;
}
body.single-room .entry-content-title .single-room-features .feature-box {
    padding: 0 1.5rem;
    border-right: 0.1rem solid #C2C8E2;
    height: 100%;
}
body.single-room .entry-content-title .single-room-features .feature-box:first-of-type {
    padding-left: 0;
}
body.single-room .entry-content-title .single-room-features .feature-box:last-of-type {
    border-right: none;
}
body.single-room .entry-content-title .single-room-features .feature-box.feature-box-occupancy {
    display: flex;
    gap: 0 0.3rem;
    justify-content: center;
    align-items: center;
}
body.single-room .entry-content-title .single-room-features-evidence {
    grid-row: 3;
    grid-column: 2 / -2;
    display: flex;
    gap: 0;
    list-style: none;
    padding: 0;
    margin: 0;
    color: #C2C8E2;
}
body.single-room .entry-content-title .single-room-features-evidence li {
    display: flex;
    align-items: center;
    border-right: 0.1rem solid #C2C8E2;
    padding: 0 2rem;
}
body.single-room .entry-content-title .single-room-features-evidence li:first-of-type {
    padding-left: 0;
}
body.single-room .entry-content-title .single-room-features-evidence li:last-of-type {
    border-right: none;
}
body.single-room .entry-content-title .single-room-features-evidence li span.material-icons {
    margin-right: 1rem;
}


body.single-room .entry-content {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat( 12, 1fr );
    gap: 2.5rem 1rem;
    margin-top: -5rem;
}
body.single-room .entry-content hr {
    margin-bottom: 4rem;
    border-color: #AEAEAE;
}
body.single-room .entry-content .single-room-gallery {
    grid-row: 1;
    grid-column: 2 / -2;
    display: grid;
    grid-template-rows: repeat( 2, 1fr );
    grid-template-columns: repeat( 4, 1fr );
    grid-gap: 1.5rem;
    padding-bottom: 2rem;
    z-index: 5;
}
body.single-room .entry-content .single-room-gallery .single-room-gallery-single {
    cursor: pointer;
    max-height: 25rem;
}
/*
body.single-room .entry-content .single-room-gallery.single-room-gallery-3 .single-room-gallery-single {
    grid-column: 3 / -1;
}*/
body.single-room .entry-content .single-room-gallery .single-room-gallery-single.single-room-gallery-single-0 {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
    max-height: unset;
}
body.single-room .entry-content .single-room-description {
    grid-row: 2;
    grid-column-start: 2;
    grid-column-end: 7;
    margin: 0;
}
body.single-room .entry-content .single-room-services {
    grid-row: 3;
    grid-column-start: 2;
    grid-column-end: 7;
}
body.single-room .entry-content .single-room-services ul {
    margin: 1em 0 0;
    list-style: none;
    column-count: 2;
    padding: 0;
}
body.single-room .entry-content .single-room-services ul li {
    margin: 0;
    display: flex;
    align-items: center;
    margin-bottom: 0.5em;
    justify-content: start;
    break-inside: avoid-column;
}
body.single-room .entry-content .single-room-services li span.material-icons {
    margin-right: 1rem;
    width: 3rem;
    text-align: center;
    color: #8A93A7;
}
body.single-room .entry-content .single-room-booking {
    grid-row-start: 2;
    grid-row-end: 4;
    grid-column-start: 7;
    grid-column-end: 12;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box {
    box-shadow: 0 0.2rem 2rem rgba(138, 147, 167, 0.3);
    border-radius: 1rem;
    background-color: #F5BC41;
    max-width: 46rem;
    margin: 0 auto;
    padding: 2rem;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-open {
    display: none;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-open i {
    margin-left: 1.5rem;
    font-size: 2.2rem;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content h4 {
    margin: 0 0 1.5rem;
    text-align: center;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .single-room-booking-box-content-checkin-checkout {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 1.5rem;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .single-room-booking-box-content-checkin span.time,
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .single-room-booking-box-content-checkout span.time {
    font-weight: bold;
    margin-left: 1.5rem;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .single-room-booking-box-content-checkout span.our-site {
    display: block;
    font-size: 1rem;
    line-height: 2rem;
    letter-spacing: 0.1rem;
    color: #2B71BC;
    font-weight: bold;
    text-transform: uppercase;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content hr {
    border-color: #ffffff;
    width: 100%;
    margin: 0 0 1.5rem;
}
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .btn-booking,
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .btn-booking:active,
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .btn-booking:focus,
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .btn-booking:visited,
body.single-room .entry-content .single-room-booking .single-room-booking-box .single-room-booking-box-content .btn-booking:hover {
    margin: 0;
    width: 100% !important;
    justify-content: center;
}

/*
*   2.3 404
*/
body.error404 .site-content .entry-content {
    text-align: center;
    margin-bottom: 10rem;
}

/*
*   2.4 All rooms
*/
body .extra-services {
    background-color: #464861;
    border-radius: 1rem;
    color: #ffffff;
    padding: 3rem !important;
}
body .extra-services a,
body .extra-services a:visited,
body .extra-services a:active {
    color: #C2C8E2;
}
body .extra-services h2 {
    color: #ffffff;
}
body .extra-services ul {
    list-style: none;
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
    padding: 0;

    list-style-position: inside;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}
body .extra-services ul li {
    list-style-position: inside;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 2rem;
}
body .extra-services ul li i {
    margin-right: 1rem;
    display: inline-block;
    height: 100%;
}
body .extra-services ul li span.little {
    display: block;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: #8A93A7;
}
body .extra-services ul li span.little a,
body .extra-services ul li span.little a:active,
body .extra-services ul li span.little a:focus,
body .extra-services ul li span.little a:visited,
body .extra-services ul li span.little a:hover {
    letter-spacing: normal !important;
}

/*
*   2.5 404
*/
body.error404 .error-404 {
    background-position: top right;
    background-size: auto 100%;
    background-repeat: no-repeat;

    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
}
body.error404 .error-404 .error-404-content {
    grid-column: 2 / 8;
    grid-row: 1;
    padding-top: 30rem;
}
body.error404 .error-404 .error-404-icon {
    grid-column: 8 / -2;
    grid-row: 1;
    padding-top: 20rem;
}
body.error404 .error-404 .error-404-related-pages {
    grid-column: 2 / -2;
    grid-row: 2;
}
body.error404 .error-404 .error-404-content h1 {
    margin-bottom: 5rem;
}
body.error404 .error-404 .error-404-content h1::after {
    content: "";
    display: none;
}
body.error404 .error-404 .error-404-content h1 span {
    z-index: -1;
    position: absolute;
    color: var(--link-color);
    opacity: 0.2;
    font-size: 15rem;
    left: -1.3rem;
    font-weight: bold;
}
body.error404 .error-404 .error-404-content p {
    font-size: 2.8rem;
    line-height: 3.5rem;
    color: #8A93A7;
    margin-bottom: 10rem;
}
/*
*   2.6 Single offer
*/
body.single-offer ul.single-offer-sidebar-services {
    list-style: none;
    color: rgba(134, 38, 122, 0.70);
    margin: 2rem 0;
    padding: 0;
}
body.single-offer ul.single-offer-sidebar-services li {
    display: flex;
    justify-content: start;
    align-items: center;
    margin-bottom: 1.5rem;
}
body.single-offer ul.single-offer-sidebar-services li span {
    margin-right: 1rem;
}
body.single-offer .single-offer-sidebar-featured {
    background: none;
    color: rgba(134, 38, 122, 0.7);
    text-align: center;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    flex-direction: column;
    max-width: 29rem;
    margin: 0 0 2rem 0;
}
body.single-offer .single-offer-sidebar-featured span {
    font-size: 4rem;
    font-weight: bold;
    display: block;
}
body.single-offer .single-offer-sidebar {
    display: flex;
    flex-flow: column-reverse;
}

/*
*   2.7 Contacts
*/
.contacts .social-column i {
    font-size: 2.8rem;
    margin-bottom: 2rem;
}

/*
*   2.8 Hotel page
*/
.grids-section.hotel-services-list > .grids-s-w_i > .grids-area > .grids-section {
    width: 100%;
}
.hotel-services-list div.grids-area {
    text-align: center;
}
.hotel-services-list div.grids-area > h3 {
    text-align: center !important;
}
.hotel-services-list div.grids-area > i {
    color: var(--link-color);
    font-size: 50px;
    margin-bottom: 15px;
}
.hotel-services-list div.grids-area > ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/*
*   2.9 Row faqs page
*/
.row-faqs-page {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    margin-top: 4rem;
}
.row-faqs-page .row-faqs-page-container {
    grid-column: 2 / -2;
    background-color: rgba(134, 38, 122, 0.3);
    color: #333333;
    display: flex;
    flex-direction: column;
    -ms-flex-direction: column;
    gap: 1rem;
    border-radius: 1rem;
    padding: 3rem;
}
.row-faqs-page .row-faqs-page-container > h2 {
    margin-bottom: 1rem;
}
.row-faqs-page .row-faqs-page-container > h2::after {
    display: none;
}
.row-faqs-page .row-faqs-page-container .single-faq-page h3 {
    margin-bottom: 0.5rem;
    cursor: pointer;
}
.row-faqs-page .row-faqs-page-container > .single-faq-page:not(:first-of-type) .answer {
    display: none;
}

/*
*   3.0 Footer
*/
[id^="QReviewWidget"] {
    z-index: 999 !important;
}
.kommunicate-custom-iframe {
    bottom: 10rem !important;
    right: 2rem !important;
}
footer.site-footer {
    grid-area: footer;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    background: #DDE6EE;
    color: #C2C8E2;
    width: 100%;
    font-size: 1.3rem;
    line-height: 2.4rem;
    margin-top: 6rem !important;
}
footer.site-footer::before {
    display: none;
}
body:not(.home) footer.site-footer {
    margin-top: 3rem;
}

footer.site-footer .row-reviews {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    background-color: #F6F7F8;
    color: #444444;
    padding: 4rem 0 13rem;
    gap: 1rem 3rem;
    font-size: 1.6rem;
    line-height: 2.6rem;
}
footer.site-footer .row-reviews h2 {
    grid-column: 2 / -2;
    text-align: center;
    background-color: #F6F7F8;
}
footer.site-footer .row-reviews .row-reviews-widget {
    display: none !important;
    visibility: hidden !important;
}
footer.site-footer .row-reviews .row-reviews-review {
    grid-column: 2 / 5;
    display: flex;
    flex-direction: column;
}
footer.site-footer .row-reviews .row-reviews-stats {
    grid-column: 5 / 12;
}

footer.site-footer .row-site {
    grid-column: 2 / -2;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: auto;
    gap: 4rem;
    justify-content: center;
    align-items: start;
    padding: 4rem;
    background: #464861;
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.25);
    margin-top: -8rem;
}
footer.site-footer .row-site h3,
footer.site-footer .row-site h4 {
    color: #ffffff;
}
footer.site-footer .row-site-newsletter {
    display: flex;
    flex-flow: column;
}
footer.site-footer .row-site-newsletter span.subscription.succed {
    font-size: 1.6rem;
    margin-bottom: 2rem;
    color: #fff;
    padding: 1rem 1.5rem;
    background-color: #28a745;
    display: block;
}
footer.site-footer .row-site .row-site-info span.contact {
    display: block;
    margin: 0.6rem 0;
}
footer.site-footer .row-site .row-site-info span.contact:last-of-type {
    margin-bottom: 0;
}
footer.site-footer .row-site .row-site-info a,
footer.site-footer .row-site .row-site-info a:active,
footer.site-footer .row-site .row-site-info a:focus,
footer.site-footer .row-site .row-site-info a:visited {
    color: #C2C8E2;
}
footer.site-footer .row-site .row-site-info a:hover {
    color: var(--link-color-hover);
}

footer.site-footer .row-site .row-site-socials a,
footer.site-footer .row-site .row-site-socials a:active,
footer.site-footer .row-site .row-site-socials a:focus,
footer.site-footer .row-site .row-site-socials a:visited {
    margin-right: 2rem;
    background: var(--link-color);
    border-radius: 3.8rem;
    width: 3.8rem;
    height: 3.8rem;
    text-align: center;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
footer.site-footer .row-site .row-site-socials a:hover {
    background: var(--link-color-hover);
}
footer.site-footer .row-site .row-site-socials a i {
    font-size: 2rem;
    color: #ffffff
}

footer.site-footer .row-credits {
    grid-column: 3 / -3;
    margin: 0 0;
    padding: 4rem 0;
    display: inline-table;
    text-align: center;
    width: 100%;
    color: #8A93A7;
}
footer.site-footer .row-credits,
footer.site-footer .row-credits p {
    font-size: 1.4rem;
    line-height: 1.8rem;
}
footer.site-footer .row-credits a,
footer.site-footer .row-credits a:active,
footer.site-footer .row-credits a:focus,
footer.site-footer .row-credits a:visited {
    color: inherit;
    font-weight: normal;
    text-decoration: underline !important;
}
form#newsletter-form {
    display: grid;
    grid-template-columns: 59% 39%;
    grid-template-rows: auto;
    gap: 1rem 2%;
}
form#newsletter-form #language {
    display: none !important;
    visibility: hidden !important;
}
form#newsletter-form > input {
    height: 5.2rem;
    width: 100%;
}
form#newsletter-form #email {
    grid-column: 1/-1;
}
form#newsletter-form input {
    border: 0.1rem solid #8A93A7;
    margin: 0 !important;
    padding: 1rem;
    outline: none !important;
}
form#newsletter-form input::placeholder {
    color: #4D4D4E;
}
form#newsletter-form input[type=submit],
form#newsletter-form input[type=submit]:active,
form#newsletter-form input[type=submit]:visited {
    justify-content: center;
    background: var(--link-color);
    border-color: var(--link-color);
}
form#newsletter-form input[type=submit]:hover,
form#newsletter-form input[type=submit]:focus {
    background: var(--link-color-hover);
    border-color: var(--link-color-hover);
}
footer.site-footer .row-site-newsletter > a {
    width: fit-content;
}


/*
*   4.0 Rooms list container
*/
.rooms-category-list-container {
    padding: 2rem 0;
}
.rooms-category-list-container h2 {
    margin-bottom: 1.5rem;
}
.rooms-list-container {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.rooms-list-container.swiper-container-horizontal {
    overflow: hidden;
    padding: 2rem 3rem 11rem;
}
.rooms-list-container:not(.swiper-container-horizontal) {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat( var(--rooms-list-container-columns), 1fr );
    gap: 2rem;
}
.rooms-list-container .rooms-list-navigation {
    margin: 0 -3rem 2rem auto;
    display: flex;
}
.rooms-list-container .rooms-list-container-single {
    grid-column: auto;
    grid-row: auto;
    background-color: #ffffff;
    display: grid;
    grid-template-rows: auto;
    -webkit-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    transition: 0.5s all ease;
    position: relative;
    padding: 0 2rem 2rem;
    color: #8A93A7;
    gap: 1.5rem 0rem;
}
.rooms-list-container .rooms-list-container-single:hover {
    -webkit-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
}
.rooms-list-container.swiper-container-horizontal .rooms-list-container-single {
    max-width: 30rem;
    margin: 0 3rem 0 0;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-message {
    position: absolute;
    background: #F2C94C;
    -webkit-box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
    box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25);
    color: #444444;
    padding: 0.5rem 2rem;
    left: -1rem;
    top: 2rem;
    font-size: 1.4rem;
    line-height: 2rem;
    font-weight: bold;
    text-transform: uppercase;
    z-index: 2;
    border-radius: 3rem;
    display: flex;
    align-items: center;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-message i {
    margin-right: 0.6rem;
    font-size: 1.5rem;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-img {
    margin: 0 -2rem;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-img figure {
    height: 28rem;
    width: 100%;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-title {
    position: relative;
    display: flex;
    gap: 0 0.5rem;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-title h3 {
    margin: 0;
    color: var(--global--color-primary);
    position: relative;
    padding: 0;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-title .rooms-list-container-single-price {
    margin: -3rem 0 0 auto;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 1rem rgb(138 147 167 / 30%);
    border-radius: 1rem;
    padding: 1.5rem;
    color: var(--htv-blue);
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-title .rooms-list-container-single-price span.price {
    font-size: 2.4rem;
    display: block;
    color: #27AE60;
    margin-top: 1rem;
    font-family: var(--heading--font-family);
    font-weight: normal;
    white-space: nowrap;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-title .rooms-list-container-single-price span.price i.fa-spinner {
    font-size: 1.6rem;
    color: #8A93A7;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-short-description,
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-short-description p {
    margin: 0;
}
.rooms-list-container .rooms-list-container-single hr {
    background: #8A93A7 !important;
    border: 0;
    width: 100%;
    margin: 0 auto;
    height: 0.1rem;
    opacity: 0.3;
}
.rooms-list-container .rooms-list-container-single hr::before,
.rooms-list-container .rooms-list-container-single hr::after {
    display: none !important;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features {
    margin: 0;    
    display: flex;
    padding: 0;
    color: #8A93A7;
    align-items: center;
    gap: 0;

}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .feature-box {
    padding: 0 1.5rem;
    border-right: 0.1rem solid #DCDFE5;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .feature-box.feature-box.feature-box-occupancy {
    gap: 0 0.3rem;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .feature-box:first-of-type {
    padding-left: 0;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .feature-box:last-of-type {
    border-right: none;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .rooms-list-container-single-features-evidence {
    list-style: none;
    display: flex;
    gap: 0 1rem;
    align-items: center;
    margin: 0 0 0 auto;
    padding: 0;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .rooms-list-container-single-features-evidence li {
    display: flex;
    justify-content: center;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-features .rooms-list-container-single-features-evidence li span.material-icons,
span.material-icons {
    width: 2.4rem;
}
.rooms-list-container .rooms-list-container-single .rooms-list-container-single-button {
    margin: auto 0 0 !important;
    justify-content: center;
}

/*
*   5.0 Offers list container
*/
.offers-list-container {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.offers-list-container.swiper-container-horizontal {
    overflow: hidden;
    padding: 2rem 3rem 5rem;
}
.offers-list-container:not(.swiper-container-horizontal) {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat( var(--offers-list-container-columns), 1fr );
    gap: 2rem;
}
.offers-list-container .offers-list-container-single {
    grid-column: auto;
    grid-row: auto;
    background-color: #ffffff;
    display: grid;
    grid-template-rows: auto;
    -webkit-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    transition: 0.5s all ease;
    position: relative;
    padding: 0 2rem 2rem;
    color: #8A93A7;
    gap: 1.5rem 0rem;
}
.offers-list-container .offers-list-container-single:hover {
    -webkit-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
}
.offers-list-container.swiper-container-horizontal .offers-list-container-single {
    max-width: 28rem;
    margin: 0 3rem 0 0;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-img {
    margin: 0 -2rem;
    position: relative;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-img.has-feature-text {
    margin-bottom: 2rem;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-img figure {
    height: 28rem;
    width: 100%;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-feature-text {
    position: absolute;
    left: 3rem;
    bottom: -1.5rem;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 1rem rgba(138, 147, 167, 0.3);
    backdrop-filter: blur(0.4rem);
    padding: 1rem 1.5rem;
    font-size: 1.4rem;
    line-height: 2rem;
    color: #444444;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-feature-text span {
    font-family: var(--global--font-primary);
    font-weight: normal;
    font-size: 2.8rem;
    line-height: 3.6rem;
    color: #27AE60;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-title {
    position: relative;
    display: flex;
    gap: 0 0.5rem;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-title h3 {
    margin: 0;
    color: var(--global--color-primary);
    position: relative;
    padding: 0;
    text-transform: uppercase;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-title .offers-list-container-single-title-percentage {
    background: #F5BC41;
    box-shadow: 0 0.2rem 2rem rgb(138 147 167 / 30%);
    border-radius: 3rem;
    color: #333333;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 2.6;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    padding: 0rem 1rem;
    align-self: start;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-short-description,
.offers-list-container .offers-list-container-single .offers-list-container-single-short-description p {
    margin: 0;
}
.offers-list-container .offers-list-container-single hr {
    background: #8A93A7 !important;
    border: 0;
    width: 100%;
    margin: 0 auto;
    height: 0.1rem;
    opacity: 0.3;
}
.offers-list-container .offers-list-container-single hr::before,
.offers-list-container .offers-list-container-single hr::after {
    display: none !important;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-button {
    margin: auto -2rem -2rem !important;
    justify-content: center;
}
.offers-list-container .offers-list-container-single .offers-list-container-single-button::after {
    margin: 0 0 0 auto !important;
}

/*
*   6.0 News list container
*/
.the12columns-grid {
    display: grid;
    grid-template-columns: repeat(12,1fr);
    grid-template-rows: auto;
}
.the12columns-grid > .news-list-container {
    grid-column: 2/-2;
}
.news-list-container {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.news-list-container.swiper-container-horizontal {
    overflow: hidden;
    padding: 2rem 3rem 5rem;
}
.news-list-container:not(.swiper-container-horizontal) {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat( var(--news-list-container-columns), 1fr );
    gap: 2rem;
}
.news-list-container .news-list-container-single {
    grid-column: auto;
    grid-row: auto;
    background-color: #ffffff;
    display: grid;
    grid-template-rows: auto;
    -webkit-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    transition: 0.5s all ease;
    position: relative;
    padding: 0 2rem 2rem;
    color: #8A93A7;
    gap: 1.5rem 0rem;
}
.news-list-container .news-list-container-single:hover {
    -webkit-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
}
.news-list-container.swiper-container-horizontal .news-list-container-single {
    max-width: 28rem;
    margin: 0 3rem 0 0;
}
.news-list-container .news-list-container-single .news-list-container-single-img {
    margin: 0 -2rem;
    position: relative;
}
.news-list-container .news-list-container-single .news-list-container-single-img figure {
    height: 28rem;
    width: 100%;
}
.news-list-container .news-list-container-single .news-list-container-single-title {
    position: relative;
    display: flex;
    gap: 0 0.5rem;
}
.news-list-container .news-list-container-single .news-list-container-single-title h3 {
    margin: 0;
    color: var(--global--color-primary);
    position: relative;
    padding: 0;
    /* text-transform: uppercase; */
}
.news-list-container .news-list-container-single .news-list-container-single-short-description,
.news-list-container .news-list-container-single .news-list-container-single-short-description p {
    margin: 0;
}
.news-list-container .news-list-container-single .news-list-container-single-button {
    margin: auto -2rem -2rem !important;
    justify-content: center;
}
.news-list-container .news-list-container-single .news-list-container-single-button::after {
    margin: 0 0 0 auto !important;
}


/*
*   7.0 Sliders
*/
body .slider-list-navigation {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row-reverse;
}
body .swiper-button-next,
body .swiper-button-prev {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    margin: 0 0 0 1rem;
    width: 3.4rem;
    height: 3.4rem;
    padding: 1rem;
    border-radius: 100%;
    border: 0.1rem solid #DFDFDF;
}
body .swiper-button-next::after,
body .swiper-button-prev::after {
    font-size: 2.5rem;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 300;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    color: var(--global--color-primary);
}
body .swiper-button-next::after {
    content: "\f105";
}
body .swiper-button-prev::after {
    content: "\f104";
}

/*
*   8.0 Booking form
*/
body a.booking-form-mobile {
    display: none;
}
#booking-form div.sb {
    box-shadow: 0 0.8rem 4rem rgba(0, 0, 0, 0.08);
    border-radius: 0.4rem;
    padding: 1rem !important;
}
#booking-form div.sb__form {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: auto;
    gap: 0 1rem;
}
#booking-form div.sb__form div.sb__dates {
    grid-row: 1;
    grid-column: 1 / 5;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 1;
    gap: 0 1rem;
}
#booking-form div.sb__form div.sb__dates div.sb__form-field--checkin,
#booking-form div.sb__form div.sb__dates div.sb__form-field--checkout {
    width: 100%;
    display: flex;
    align-items: center;
}
#booking-form div.sb__form div.sb__guests-rooms {
    grid-row: 1;
    grid-column: 5;
    width: 100%;
    padding: 0;
}
#booking-form div.sb__form div.sb__guests-rooms span.sb__form-field-label {
    display: none;
}
#booking-form div.sb__form input.sb__btn--verify,
#booking-form div.sb__form input.sb__btn--verify:focus,
#booking-form div.sb__form input.sb__btn--verify:visited,
#booking-form div.sb__form input.sb__btn--verify:active {
    grid-row: 1 / 3;
    grid-column: 6 / -1;
    width: 100% !important;
    border-color: var(--booking-color);
    margin: 0;
    height: 100%;
    justify-content: center;
    font-weight: 600;
}
#booking-form div.sb__form input.sb__btn--verify:hover {
    background-color: var(--booking-color-hover) !important;
    border-color: var(--booking-color-hover);
}
#booking-form div.sb__form div.sb__footer {
    grid-row: 2;
    grid-column: 1 / -3;
    width: 100%;
    display: flex;
    align-items: center;
    padding-top: 1rem;
}
#booking-form div.sb__form div.sb__footer div.sb__footer-actions {
    float: unset;
    display: flex;
    align-items: center;
}
#booking-form div.sb__form div.sb__footer div.sb__footer-actions div.sb__footer-promo-wrapper {
    float: unset;
    margin-right: 7rem !important;
}
.sb__panel-actions button {
    margin: 0.5rem 0 !important;
}
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a,
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a:active,
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a:focus,
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a:visited {
    float: unset;
    margin: 0;
    padding: 0;
    color: var(--booking-color) !important;
    font-weight: normal;
    font-size: 1.2rem;
    text-transform: uppercase;
}
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a:hover {
    color: var(--booking-color-hover) !important;
}
#booking-form div.sb__form div.sb__footer div.sb__footer-actions a svg {
    display: none;
}
#booking-form div.sb__form .sb__calendar-btn-icon {
    line-height: 0 !important;
}
#booking-form div.sb__form button.sb__guests-add-room.sb-custom-icon-color.sb-custom-add-room-box-shadow-color {
    font-size: 1.2rem !important;
}
#booking-form div.sb__form button.sb__calendar-btn.sb__calendar-btn--next,
#booking-form div.sb__form button.sb__calendar-btn.sb__calendar-btn--prev {
    padding: 0.4rem 0.8rem !important;
    background: none;
}
#booking-form div.sb__form button.sb__guests-add-room.sb-custom-icon-color.sb-custom-add-room-box-shadow-color {
    background: none;
}
#booking-form div.sb__form .sb__guests {
    width: auto !important;
}

ul.contacts-row {
    list-style-type: none;
    padding-inline-start: 0;
}

ul.contacts-row li.single-contact {
    padding-bottom: 1rem;
}

ul.contacts-row li.single-contact i {
    font-size: 2rem;
    padding-right: 0.5rem;
}


/*
*   9.0 Contacts
*//*
.form-contacts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    gap: 1rem;
}
.form-contacts .content-column {
    grid-column: 1 / -1;
    grid-row: auto;
    display: inline-flex;
    align-items: center;
}
.form-contacts .content-column.one_half {
    grid-column: span 1;
}*/
.form-contacts .content-column.one_half input {
    max-width: 25rem;
}
.form-contacts .content-column input,
.form-contacts .content-column select,
.form-contacts textarea,.form-contacts div.privacy span.wpcf7-list-item input {
    border: 0.1rem solid #000000;
    padding: 0 0.7rem;
    margin-left: 1rem;
}
.form-contacts .content-column select {
    padding-right: 2rem;
    background-position: right 0.5rem top 60%;
}
.form-contacts .content-column input:focus,
.form-contacts .content-column select:focus,
.form-contacts .content-column textarea:focus {
    outline: 0 !important;
}
.form-contacts .content-column .your-message,
.form-contacts .content-column .your-message textarea {
    width: 100%;
    margin: 0;
}
.form-contacts div.privacy span.wpcf7-list-item,
.form-contacts div.privacy span.wpcf7-list-item input {
    margin-left: 0;
}
.form-contacts div.privacy span.wpcf7-list-item input {
    margin-right: 1rem;
}

/*
*   10.0 Comparatore
*/
body .pricecomparison-section-bkg > div.site-content.container {
    min-height: unset !important;
}
#pc_maincontainer h2.pc_title {
    margin: 2rem auto;
    display: table;
}
#pc_maincontainer h2.pc_title::after {
    display: none;
}

/*
*   11.0 Services rating
*/
.services-rating {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}
.services-rating .single-service-rating {
    align-self: end;
}
.services-rating .single-service-rating .single-service-rating-description {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
}
.services-rating .single-service-rating .single-service-rating-description .single-service-rating-description-name {
    font-size: 1.8rem;
}
.services-rating .single-service-rating .single-service-rating-description .single-service-rating-description-value {
    color: #8A93A7;
    margin: 0 0 0 auto;
}
.services-rating .single-service-rating .single-service-rating-description i {
    margin-left: 1rem;
    color: #65BD6B;
}
.services-rating .single-service-rating .single-service-rating-chart {
    height: 1.4rem;
    background: rgba(194, 200, 226, 0.6);
    display: flex;
    flex-flow: column;
}
.services-rating .single-service-rating .single-service-rating-chart .single-service-rating-chart-loading {
    height: 100% !important;
    background: #C2C8E2;
}

.services-rating .single-service-rating.evidence .single-service-rating-chart {
    background: rgba(101, 189, 107, 0.6);
}
.services-rating .single-service-rating.evidence .single-service-rating-chart .single-service-rating-chart-loading {
    background: #65BD6B;
}

/*
*   12.0 Custom gallery
*/
.custom-gallery-wrapper {
    padding: 2rem;
    display: grid;
    grid-template-columns: 3fr 2fr;
    grid-template-rows: repeat(2, 1fr);
    gap: 2rem;
    position: relative;
}
.custom-gallery-wrapper .custom-gallery-label,
body .custom-gallery-label {
    position: absolute;
    left: 4rem;
    top: 4rem;
    background: #F5BC41;
    box-shadow: 0px 2px 20px rgba(138, 147, 167, 0.3);
    border-radius: 3rem;
    font-weight: bold;
    font-size: 1.4rem;
    padding: 0 1.5rem;
    line-height: 3.5rem;
}
.custom-gallery-wrapper .enable-fullscreen {
    position: absolute;
    width: 4rem;
    height: 4rem;
    right: 4rem;
    bottom: 4rem;
    cursor: pointer;
    background-color: #ffffff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 0;
    filter: drop-shadow(0px 2px 20px rgba(138, 147, 167, 0.4));
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.custom-gallery-wrapper .enable-fullscreen i {
    color: var(--link-color);
    font-size: 2rem;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    line-height: 0;
}
.custom-gallery-wrapper .enable-fullscreen:hover {
    background-color: var(--link-color-hover);
}
.custom-gallery-wrapper .enable-fullscreen:hover i {
    color: #ffffff;
}
.custom-gallery-wrapper figure.gallery-wrapper-image {
    cursor: pointer;
}
.custom-gallery-wrapper figure.gallery-wrapper-image:first-of-type {
    grid-column: 1;
    grid-row: 1 / 3;
}
.custom-gallery-wrapper figure.gallery-wrapper-image img {
    border-radius: 1rem;
}
.custom-gallery-wrapper figure.gallery-wrapper-image-0 {
    max-height: 42rem;
}
.custom-gallery-wrapper figure:not(.gallery-wrapper-image-0) {
    max-height: 20rem;
}

/*
*   13.0 Gallery
*/
.gallery-container-wrapper {
    /* display: grid; */
    /* grid-template-columns: auto; */
    /* grid-template-rows: auto; */
    display: flex;
    flex-flow: column;
    gap: 5rem;
    margin: 5rem 0;
}
.gallery-container-wrapper .gallery-filters {
    display: flex !important;
    flex-flow: row;
    flex-wrap: wrap;
    gap: 1rem;
}
.gallery-container-wrapper .gallery-filters button,
.gallery-container-wrapper .gallery-filters button:active,
.gallery-container-wrapper .gallery-filters button:focus,
.gallery-container-wrapper .gallery-filters button:visited {
    background-color: transparent !important;
    border-radius: 0.8rem;
    color: #333333 !important;
    border: 0 !important;
    /* margin: 0 2rem 0 0; */
    margin: 0;
    padding: 0.4rem 2rem !important;
    line-height: normal !important;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.gallery-container-wrapper .gallery-filters button.active,
.gallery-container-wrapper .gallery-filters button:hover {
    background-color: rgba(138, 147, 167, 0.2) !important;
    font-weight: 700 ;
}
.gallery-container-wrapper .gallery-container-wrapper-category {
    overflow: hidden;
    position: relative;
}
.gallery-container-wrapper .gallery-container-wrapper-category:not(:last-of-type) {
    padding-bottom: 5rem;
    border-bottom: 0.1rem solid rgba(138, 147, 167, 0.3);
}
.gallery-container-wrapper .gallery-container-wrapper-category img {
    /* border-radius: 1rem; */
    cursor: pointer;
}
.gallery-container-wrapper .gallery-container-wrapper-category.swiper-container-horizontal .swiper-slide {
    max-width: 48rem;
    margin: 0 3rem 0 0;
}
.gallery-container-wrapper .gallery-container-wrapper-category.swiper-container-horizontal .swiper-slide iframe {
    height: 30rem !important;
    margin-bottom: 1rem;
}
.gallery-container-wrapper.gallery-container-image .gallery-container-wrapper-category.swiper-container-horizontal .swiper-slide {
    max-height: 38rem;
}
.gallery-container-wrapper .gallery-container-wrapper-category .swiper-slide h3 {
    margin: 1rem 0;
}
.gallery-container-wrapper hr {
    background: #8A93A7;
    opacity: 0.3;
    width: 100%;
}
.gallery-container-wrapper-category.image {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: auto;
    gap: 1.5rem;
}
.gallery-container-wrapper-category.image h2 {
    grid-column: 1/-1;
}
.gallery-container-wrapper-category.image figure.cta {
    position: relative;
}
.gallery-container-wrapper-category.image figure.cta img {
    filter: blur(4px);
    -webkit-filter: blur(4px);
    z-index: 2;
}
.overlay-cta {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    z-index: 3;
}
.gallery-container-wrapper-category.image figure.cta .overlay-cta a.btn {
    margin: auto !important;
    width: fit-content !important;
}
.lead-generation-slide {
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    padding: 0 4rem;

    background-image: url('/wp-content/uploads/2021/10/bar-wellness-bar-hotel-savoia-terme-abano.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.lead-generation-content-description {
    background-color: rgba(255,255,255,0.8);
    padding: 10rem 5rem;
}
.lead-generation-content-description .lead-generation-icon {
    font-size: 8rem;
    margin-bottom: 4rem;
    text-align: center;
}
.gallery-container-wrapper-category.image figure.cta .overlay-cta a.btn::after {
    /* margin-left: 0.5rem; */
    display: none !important;
    visibility: hidden !important;
}
.gallery-container-wrapper-category.enable-slide .swiper-button-prev,
.gallery-container-wrapper-category.enable-slide .swiper-button-next {
    position: absolute;
    top: 50%;
    background: #fff;
    z-index: 1;
    margin: 0!important;
}
.gallery-container-wrapper-category.enable-slide .swiper-button-next {
    right: 0;
}
.gallery-container-wrapper-category.enable-slide .swiper-button-prev {
    left: 0;
}
.swiper-slide .video-rate i {
    color: #F2C94C!important;
    font-size: 2rem!important;
}
.swiper-slide>.video-title {
    font-weight: bold!important;
    font-size: 2.4rem!important;
    line-height: 3.112rem!important;
    color: #484B5C!important;
}


/*
*   14.0 Snodo list container
*/

.snodo-list-container {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.snodo-list-container.swiper-container-horizontal {
    overflow: hidden;
    padding: 2rem 3rem 5rem;
}
.snodo-list-container:not(.swiper-container-horizontal) {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat( 3, 1fr );
    gap: 2rem;
}
.snodo-list-container .snodo-list-container-single {
    grid-column: auto;
    grid-row: auto;
    background-color: #ffffff;
    display: flex;
    flex-flow: column;
    /* -webkit-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.25); */
    transition: 0.5s all ease;
    position: relative;
    padding: 0 2rem 2rem;
    color: #8A93A7;
    gap: 1.5rem 0rem;
}
/* .snodo-list-container .snodo-list-container-single:hover {
    -webkit-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 4px 30px 0px rgba(0,0,0,0.25);
} */
.snodo-list-container.swiper-container-horizontal .snodo-list-container-single {
    max-width: 28rem;
    margin: 0 3rem 0 0;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-img {
    margin: 0;
    margin-left: 2rem;
    margin-top: 2rem;
    position: relative;
    z-index: 1;
    height: fit-content !important;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-img:after {
    content: "";
    background-color: rgba(134, 38, 122, 0.3);
    height: 100%;
    width: 100%;
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    z-index: -1;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-img figure {
    height: 28rem;
    width: 100%;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-title {
    position: relative;
    display: flex;
    gap: 0 0.5rem;
    justify-content: center;
    height: fit-content !important;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-title h3 {
    margin: 0;
    color: var(--global--color-primary);
    position: relative;
    padding: 0;
    text-transform: uppercase;
    z-index: 1;
    hyphens: auto
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-title h3:after {
    content: "";
    background-color: rgba(134, 38, 122, 0.3);
    height: 2.6rem;
    width: 10rem;
    position: absolute;
    left: -1.3rem;
    bottom: -0.4rem;
    z-index: -1;
}
.snodo-list-container-single-subtitle {
    text-align: center !important;
    color: #444 !important;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-title .snodo-list-container-single-title-percentage {
    background: #F5BC41;
    box-shadow: 0 0.2rem 2rem rgb(138 147 167 / 30%);
    border-radius: 3rem;
    color: #333333;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 2.6;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    padding: 0rem 1rem;
    align-self: start;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-short-description,
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-short-description p {
    margin: 0;
    color: #444444;
}
.snodo-list-container .snodo-list-container-single hr {
    background: #8A93A7 !important;
    border: 0;
    width: 100%;
    margin: 0 auto;
    height: 0.1rem;
    opacity: 0.3;
}
.snodo-list-container .snodo-list-container-single hr::before,
.snodo-list-container .snodo-list-container-single hr::after {
    display: none !important;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-button {
    margin: auto !important;
    padding: 1rem 3rem !important;
    justify-content: center;
    margin-bottom: 0 !important;
}
.snodo-list-container .snodo-list-container-single .snodo-list-container-single-button::after {
    margin: 0 0 0 auto !important;
}

/*
*   15.0 Related pages container
*/
.related-pages-container {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: auto;
}
.single-related-page-container {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 35rem;
    position: relative;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    color: #FFFFFF;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.single-related-page-container > * {
    z-index: 1;
}
.single-related-page-container::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, #464861 0%, rgba(70, 72, 97, 0) 48.85%, rgba(70, 72, 97, 0.7) 100%);
    z-index: 0;
}
.single-related-page-container a h2.related-page-title {
    margin-top: auto;
    margin-bottom: 5rem;
    margin-left: 5rem;
    color: #fff;
}
.single-related-page-container a {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
}

/*
*   15.1 Homepage Related pages container
*/
.homepage-related-pages-container {
    display: flex;
    flex-flow: row;
}
.homepage-single-related-page-container {
    width: 33.33%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 35rem;
    position: relative;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    color: #FFFFFF;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.homepage-single-related-page-container > * {
    z-index: 1;
}
.homepage-single-related-page-container::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    /* background: linear-gradient(360deg, #464861 0%, rgba(70, 72, 97, 0) 48.85%, rgba(70, 72, 97, 0.7) 100%); */
    background: linear-gradient(360deg, #464861 0%, rgba(70, 72, 97, 0.4) 48.85%, rgba(70, 72, 97, 0.7) 100%);
    z-index: 0;
}
.homepage-single-related-page-container a h2.homepage-related-page-title {
    margin-top: auto;
    margin-bottom: 0;
    color: #fff;
}
.homepage-single-related-page-container a {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
}

/*
*   16.0 Element icons container
*/
.four-icons-container > .grids-s-w_i > div {
    padding: 1rem;
    text-align: center;
}
.four-icons-container > .grids-s-w_i > div i {
    font-size: 50px !important;
    margin: 1rem auto;
}

/*
*   17.0 Ancore
*/
#anchor-set {
    padding: 5rem 10rem;
}
#anchor-set > .grids-s-w_i {
    gap: 2rem 2rem;
}
#anchor-set .single-anchor-column div.title {
    position: relative;
}
#anchor-set .single-anchor-column div.title figure {
    max-height: 40rem;
}
#anchor-set .single-anchor-column div.title figure img {
    border-radius: 1rem;
}
#anchor-set .single-anchor-column div.title h3 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(0deg, rgba(32, 36, 70, 0.6) 0%, rgba(32, 36, 70, 0) 100%);
    margin: 0;
    padding: 3rem;
    color: #ffffff;
    border-radius: 0 0 1rem 1rem;
}
#anchor-set .single-anchor-column div.title h3 a,
#anchor-set .single-anchor-column div.title h3 a:active,
#anchor-set .single-anchor-column div.title h3 a:focus,
#anchor-set .single-anchor-column div.title h3 a:visited {
    color: #ffffff;
    font-weight: 400;
}
#anchor-set .single-anchor-column div.title h3 a:hover {
    color: var(--link-color-hover);
}
#anchor-set .single-anchor-column div.content {
    margin-top: 4rem;
}

/*
*   18.0 Template landing
*/
body.page-template-template-landing > div#page > div.site-content {
    padding-top: 0;
}
body.singular.page-template-template-landing .entry-header .entry-content-title {
    text-align: center;
}
body.singular.page-template-template-landing .entry-header .entry-content-title h1 {
    display: inline-flex;
    margin-left: auto;
    margin-right: auto;
}
body.singular.page-template-template-landing .entry-header .entry-content-title h2 {
    grid-column: 2 / -2;
}
body.page-template-template-landing footer.site-footer .row-reviews {
    padding: 4rem 0;
}
body.page-template-template-landing footer.site-footer .row-credits {
    padding: 2rem 0;
    grid-column: 2 / -2;
}
body.page-template-template-landing #ottieni-sconto > div.grids-s-w_i::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(216, 209, 215, 0.5);
}
body.page-template-template-landing #ottieni-sconto > div.grids-s-w_i > * {
    z-index: 1;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing {
    margin: 10rem auto !important;
    background: #ffffff;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
    border: none;
    display: block !important;
    padding: 5rem;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing span.label {
    position: absolute;
    top: 0px;
    right: -3rem;
    bottom: auto;
    left: auto;
    transform: rotate(15deg);
    background: #F7B806;
    color: #ffffff;
    font-style: normal;
    font-weight: 800;
    font-size: 1.6rem;
    line-height: 2.2rem;
    padding: 1rem 1.5rem;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing h2.emotional_newsletter_title {
    text-align: center !important;
    line-height: 4.5rem !important;
    font-weight: bold;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing h2.emotional_newsletter_title span {
    display: block;
    font-size: 3rem;
    font-weight: normal;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing p.emotional_newsletter_subtitle {
    padding-top: 0 !important;
    margin-bottom: 3rem !important;
    text-align: center !important;
    font-size: 1.6rem !important;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing .form-container {
    grid-template-columns: 1fr 1fr;
    gap: 2rem 1rem;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing span[data-name="your-email"],
body.page-template-template-landing .emotional_newsletter_wrapper_landing span[data-name="your-name"] {
    grid-column: auto;
    grid-row: auto;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing span[data-name="consenso"],
body.page-template-template-landing .emotional_newsletter_wrapper_landing input.wpcf7-submit,
body.page-template-template-landing .emotional_newsletter_wrapper_landing div.wpcf7-response-output {
    grid-column: 1 / -1;
    grid-row: auto;
    text-align: center;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing div.wpcf7-response-output {
    margin: 0 auto !important;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing span.wpcf7-spinner {
    position: absolute;
    bottom: 1.5rem;
    left: 0;
    right: 0;
    margin: 0 auto;
    grid-column: 1 / -1;
    display: inline-flex;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing input[type="checkbox"] {
    border: 0.1rem solid #EBEBEB;
    color: #444444;
    background-color: rgba(255, 255, 255, 1);
    width: 2rem;
    height: 2rem;
}
body.page-template-template-landing .emotional_newsletter_wrapper_landing input.wpcf7-submit {
    margin: 0 auto !important;
}

body.page-template-template-landing div.grids-section.four-boxes p.has-text-align-center {
    text-align: center !important;
    margin-bottom: 4rem !important;
}
body.page-template-template-landing div.wpgmp_iw_content div.fc-item-title {
    text-align: center;
}
body.page-template-template-landing div.wpgmp_iw_content figure {
    max-width: 30rem;
    max-height: 20rem;
}
body.page-template-template-landing div.wpgmp_iw_content p {
    margin-bottom: 0;
}
body.page-template-template-landing div.wpgmp_iw_content span.title {
    text-align: center;
    display: block;
    margin-top: 0.6rem;
    font-size: 1.3rem;
}
body.page-template-template-landing #kommunicate-widget-iframe {
    display: none !important;
}