@media (min-width: 1600px) { :root {
	--column-width: 1240px;
	--offset: calc(50% - (var(--column-width) / 2));
}

body, input, textarea, select {
	font-family: 'Montserrat';
	font-size: 16px;
	-webkit-text-size-adjust: none;
}

img, svg {
	max-width: 100%;
	display: block;
}

* {
	box-sizing: border-box;
	outline: none !important;
	-webkit-tap-highlight-color: transparent;
	-webkit-appearance:none;
}

body, dl, dt, dd, ul, ol, li, form, table, tr, td, h1, h2, h3, h4, h5, h6, pre, p, span, b, i, input, textarea, fieldset {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat';
}

.none {
	display: none;
}

.fade-out {
	opacity: 1;
	transition: 0.3s;
	pointer-events: auto;
}

.fade-out.active {
	opacity: 0;
	pointer-events: none;
}

.fade-in {
	opacity: 0;
	transition: 0.3s;
	pointer-events: none;
}

.fade-in.active {
	opacity: 1;
	pointer-events: auto;
}
/*
.container {
	padding-left: var(--offset);
	padding-right: var(--offset);
}
*/
.container-offset {
	width: var(--column-width);
	margin-left: auto;
	margin-right: auto;
}

a {
	color: (--color-link, #0034C3);
}

.btn-primary {
	display: flex;
	padding: 15px 48px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	background: var(--blue, #29365A);
	border: 1.5px solid var(--blue, #29365A);
	color: var(--white, #FFF);
	text-align: center;
	font-family: Montserrat;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: 25px; 
	text-transform: uppercase;
	cursor: pointer;
}

.btn-primary:hover {
	color: var(--blue, #29365A);
	background: var(--white, #FFF);
}

.btn-secondary {
	display: flex;
	padding: 15px 48px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border: 1.5px solid var(--blue, #29365A);
	color: var(--blue, #29365A);
	text-align: center;
	font-family: Montserrat;
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: 25px; 
	text-transform: uppercase;
	background: var(--white, #FFF);
	cursor: pointer;
}

.btn-secondary:hover {
	color: var(--white, #FFF);
	background: var(--blue, #29365A);
}

.mobile {
	display: none;
}

.desktop {
	display: block;
} 

    .breadcrumbs {
        margin-bottom: 25px;
        padding-top: 25px;
    }

    .breadcrumb-separator {
        width: 12px; 
        height: 12px; 
        margin: 0 4px; 
        vertical-align: middle; 
    }

    .breadcrumbs-inner {
        display: flex;
        align-items: center;
        list-style: none;
    }

    .breadcrumbs-item {
        display: flex;
        align-items: center;
    }

    .breadcrumbs-link {
        color: var(--black, #000);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: 13px;
        font-style: normal;
        font-weight: 500;
        line-height: 20px;
        text-decoration: none;
        display: inline-flex;
    }

    .breadcrumbs-last{
        color: var(--grey-text, #717171);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: 13px;
        font-style: normal;
        font-weight: 500;
        line-height: 20px;
    }


 
    .swiper-container {
        height: 550px;
        width: 100%;
        margin: 30px 0;
    }

    .swiper-container.fullscreen {
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        margin-top: 0px;
    }

    .swiper-slide {
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
    }

    .swiper-slide img {
        position: absolute;
        max-width: 800px;
        z-index: 2;
        cursor: pointer;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .fullscreen .swiper-slide img {
        pointer-events: none;
        max-width: 800px;
        width: initial;
        height: initial;
        object-fit: contain;
    }

    .fullscreen .swiper-slide .backdrop {
        background: #000;
        opacity: .7;
        width: 100vw;
        height: 100vh;
        position: absolute;
        top: 0;
        z-index: 1;
        cursor: pointer;
    }

    .fullscreen .swiper-slide .close-button {
        background: #000;
        color: #fff;
        font-size: 16px;
        font-family: sans-serif;
        padding: 10px 18px;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 4;
        cursor: pointer;
    }

    .swiper-pagination-bullet {
        background: white;
        opacity: 0.7;
        margin: 0 9px !important;
    }

    .swiper-pagination-bullet-active {
        opacity: 1;
    }

    .swiper-button-prev {
        background-size: 20px 44px;
        left: 150px;
    }

    .swiper-button-next {
        background-size: 20px 44px;
        right: 150px;
    }


	
        .swiper-button-prev {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }

        .swiper-button-next {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }
    

 
    header {
        height: 150px;
    }

    .hamburger {
        display: block;
        cursor: pointer;
        width: 40px;
        height: 24px;
        z-index: 2;
        padding: 5px;
        position: relative;
    }

    .hamburger span {
        position: absolute;
        width: 35px;
        height: 1px;
        background: black;
        border-radius: 50px;
        transition: 400ms cubic-bezier(0.77, 0, 0.175, 1);
    }

    .hamburger .top {
        top: 22%;
    }
    .hamburger .middle {
        top: 50%;
    }
    .hamburger .bottom {
        top: 78%;
    }

    /* --- transition effect from hamburger to X --- */
    .hamburger.active .middle {
        background: transparent;
    }
    .hamburger.active .top,
    .hamburger.active .bottom {
        background: black;
        top: 50%;
    }
    .hamburger.active .top {
        transform: rotate(225deg);
    }
    .hamburger.active .bottom {
        transform: rotate(-225deg);
    }

    .header-button {
        width: fit-content;
        margin-left: 50px;
        color: #000;
        text-decoration: none;
    }

    .header-contact-list {
        display: flex;
        list-style: none;
        gap: 25px;
        margin-left: 40px;
    }

    .header-lang-container {
        position: relative;
    }

    .header-current-lang {
        display: flex;
        align-items: center;
        gap: 8px;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        text-transform: uppercase;
        position: relative;
        cursor: pointer;
    }

    .header-current-lang::after {
        content: "";
        position: absolute;
        height: 20px;
        width: 60px;
        top: 15px;
    }

    .langs {
        display: none;
        flex-direction: column;
        gap: 4px;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.08);
        width: 59px;
        padding: 8px 0px;
        margin-top: 12px;
        position: absolute;
    }

    .lang-option {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        display: flex;
        width: 44px;
        padding: 6px 16px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        text-transform: uppercase;
        text-decoration: none;
        border-left: 2px solid #FFF;
    }

    .lang-option:hover {
        text-decoration: underline;
        color: var(--gold, #B49D58);
        border-left: 2px solid;
    }
    
    .lang-option.active {
        color: var(--gold, #B49D58);
        border-left: 2px solid;
        pointer-events: none;
    }

    .header-current-lang:hover + .langs,
    .langs:hover {
        display: flex;
    }

    .header-lang-arrow {
        transform: rotate(180deg);
        transition: transform 0.3s ease;
        width: 12px;
        height: 12px;
    }

    .header-current-lang:hover .header-lang-arrow {
        transform: rotate(0deg); 
    }

    .header-current-lang:hover.langs {
        display: flex;
    }

    .header-current-lang::after:hover.langs {
        display: flex;
    }

    .header-container {
        position: relative;
        display: flex;
        justify-content: space-between; 
        align-items: center; 
        width: 100%;
        height: 100%;
    }

    .header-logo-container {
        position: absolute;
        left: 50%;
        transform: translateX(-50%); 
        height: 100%;
    }

    .header-logo {
        width: 100%;
        height: 100%;
        object-fit: contain;
        max-width: 250px;
    }

    .header-right {
        display: flex;
        align-items: center;
    }

    .header-nav-list {
        position: absolute;
        list-style: none;
        display: none;
        padding: 24px 12px 24px 24px;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.08);
        margin-top: 20px;
        min-width: 220px;
        z-index: 9999;
    }

    .header-nav-list.active {
        display: inline-flex;
    }

    .header-navigation {
        display: flex;
        align-items: center;
        gap: 20px;
    }

    .header-nav-item {
        display: flex;
        justify-content: space-between;
        width: 100%;
        position: relative;
        cursor: pointer;
    }

    .header-nav-item a {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 500;
        line-height: 23px; 
        text-decoration: none;
    }

    .header-nav-item a:hover {
        text-decoration: underline;
    }

    .header-nav-submenu {
        position: absolute;
        list-style: none;
        display: none;
        padding: 24px 12px 24px 24px;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.08);
        min-width: 220px;
        left: calc(100% + 15px);
        top: -10px;
    }

    .header-nav-item::after {
        content: "";
        position: absolute;
        height: 20px;
        width: 35px;
        left: 100%;
    }

    .header-nav-item:hover > .header-nav-submenu {
        display: inline-flex;
    }

    
    

 
	.footer-top {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}

	.footer-menu-block {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.footer-menu-list {
		display: flex;
		flex-direction: column;
		gap: 15px;
		list-style: none;
	}

	.footer-contacts {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.footer-contact-blocks {
		display: flex;
		gap: 120px;
	}

	.footer-contact-block {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.footer-contact-block-list {
		display: flex;
		flex-direction: column;
		gap: 8px;
		list-style: none;
	}

	.footer-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 16px;
		font-style: normal;
		font-weight: 600;
		line-height: 24px;
	}

	.footer-contact-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 15px;
		font-style: normal;
		font-weight: 600;
		line-height: 23px;
	}

	.footer-menu-item a {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 16px;
		font-style: normal;
		font-weight: 400;
		line-height: normal;
		text-decoration: none;
	}

	.footer-menu-item a:hover {
		text-decoration: underline;
	}

	.footer-bottom {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 50px;
		padding-bottom: 37px;
	}

	.socials-footer-ul {
		display: flex;
		flex-direction: row;
		list-style: none;
		gap: 10px;
	}

	.copyright {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 13px;
		font-style: normal;
		font-weight: 400;
		line-height: 18px;
	}

	.socials-footer-item {
		width: 30px;
		height: 30px;
	}

 
   /* The Modal (background) */
    .modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
    }

    .day.disabled {
        color: #ccc; /* Light gray color to indicate disabled state */
        cursor: not-allowed; /* Change cursor to not-allowed to indicate non-interactive state */
    }

    .reservation-modal-button {
        max-width: 300px;
        margin: 0 auto;
    }

    /* Modal Content */
    .modal-content {
    background-color: white;
    margin: 5% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 800px;
    }

    /* The Close Button */
    .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    }

    .close:hover,
    .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
    }

    /* Month Navigation */
    .monthNavigation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    }

    #prevMonth, #nextMonth {
    background-color: var(--blue, #29365A);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    }

    #prevMonth > img, #nextMonth > img {
        width: 24px;
        height: 24px;
    }

    #prevMonth:hover, #nextMonth:hover {
    background-color: var(--blue-hover, #29365A);
    }

    /* Calendar Container */
    #calendarContainer {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 30px 0;
    }

    .calendar {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
    }

    .calendar-header {
    grid-column: span 7;
    text-align: center;
    font-weight: bold;
    }

    .day {
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    cursor: pointer;
    border-radius: 50%;
    }

    .day:hover {
    background-color: #f0f0f0;
    }

    .day.selected {
    background-color: #007bff;
    color: white;
    }


 
    .spa-container {
        padding-bottom: 120px;
    }

    .spa-title {
        text-align: center;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 26px;
        font-style: normal;
        font-weight: 500;
        line-height: 34px;
    }

    .spa-intro {
        text-align: center;
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 30px;
    }

    .amenity-block-title {
        text-align: center;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 22px;
        font-style: normal;
        font-weight: 500;
        line-height: 32px;
        margin-top: 90px;
    }

    .amenity-description {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 30px;
    }

    .amenities-row-list {
        display: flex;
        justify-content: center;
        gap: 200px;
    }

    .amenity-row-img {
        margin-top: 30px;
        width: 320px;
        height: 230px;
    }

    .amenities-highlights {
        margin-top: 90px;
    }

    .amenities-highlights-title {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 22px;
        font-style: normal;
        font-weight: 500;
        line-height: 32px;
    }

    .amenities-subtitle {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 30px; 
        margin-top: 12px;
    }

    .amenities-columns {
        margin-top: 30px;
        display: flex;
        gap: 90px;
        justify-content: center;
    }

    .amenity-column {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .amenity-item {
        display: flex;
        gap: 20px;
        align-items: center;
        cursor: pointer;
    }

    .amenity-item-text {
        max-width: 200px;
        color: #000;
        font-family: Montserrat;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 20px;
    }

    .amenity-item-icon {
        width: 38px;
        height: 38px;
    }


 }@media (max-width: 1600px) and (min-width: 1000px) { :root {
	--column-width: 86.1111vw;
	--offset: calc(50% - (var(--column-width) / 2));
}

body, input, textarea, select {
	font-family: 'Montserrat';
	font-size: 1.1111vw;
	-webkit-text-size-adjust: none;
}

img, svg {
	max-width: 100%;
	display: block;
}

* {
	box-sizing: border-box;
	outline: none !important;
	-webkit-tap-highlight-color: transparent;
	-webkit-appearance:none;
}

body, dl, dt, dd, ul, ol, li, form, table, tr, td, h1, h2, h3, h4, h5, h6, pre, p, span, b, i, input, textarea, fieldset {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat';
}

.none {
	display: none;
}

.fade-out {
	opacity: 1;
	transition: 0.3s;
	pointer-events: auto;
}

.fade-out.active {
	opacity: 0;
	pointer-events: none;
}

.fade-in {
	opacity: 0;
	transition: 0.3s;
	pointer-events: none;
}

.fade-in.active {
	opacity: 1;
	pointer-events: auto;
}
/*
.container {
	padding-left: var(--offset);
	padding-right: var(--offset);
}
*/
.container-offset {
	width: var(--column-width);
	margin-left: auto;
	margin-right: auto;
}

a {
	color: (--color-link, #0034C3);
}

.btn-primary {
	display: flex;
	padding: 1.0417vw 3.3333vw;
	justify-content: center;
	align-items: center;
	gap: 0.5556vw;
	background: var(--blue, #29365A);
	border: 0.1042vw solid var(--blue, #29365A);
	color: var(--white, #FFF);
	text-align: center;
	font-family: Montserrat;
	font-size: 1.0417vw;
	font-style: normal;
	font-weight: 600;
	line-height: 1.7361vw; 
	text-transform: uppercase;
	cursor: pointer;
}

.btn-primary:hover {
	color: var(--blue, #29365A);
	background: var(--white, #FFF);
}

.btn-secondary {
	display: flex;
	padding: 1.0417vw 3.3333vw;
	justify-content: center;
	align-items: center;
	gap: 0.5556vw;
	border: 0.1042vw solid var(--blue, #29365A);
	color: var(--blue, #29365A);
	text-align: center;
	font-family: Montserrat;
	font-size: 1.0417vw;
	font-style: normal;
	font-weight: 600;
	line-height: 1.7361vw; 
	text-transform: uppercase;
	background: var(--white, #FFF);
	cursor: pointer;
}

.btn-secondary:hover {
	color: var(--white, #FFF);
	background: var(--blue, #29365A);
}

.mobile {
	display: none;
}

.desktop {
	display: block;
} 

    .breadcrumbs {
        margin-bottom: 1.7361vw;
        padding-top: 1.7361vw;
    }

    .breadcrumb-separator {
        width: 0.8333vw; 
        height: 0.8333vw; 
        margin: 0 0.2778vw; 
        vertical-align: middle; 
    }

    .breadcrumbs-inner {
        display: flex;
        align-items: center;
        list-style: none;
    }

    .breadcrumbs-item {
        display: flex;
        align-items: center;
    }

    .breadcrumbs-link {
        color: var(--black, #000);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: 0.9028vw;
        font-style: normal;
        font-weight: 500;
        line-height: 1.3889vw;
        text-decoration: none;
        display: inline-flex;
    }

    .breadcrumbs-last{
        color: var(--grey-text, #717171);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: 0.9028vw;
        font-style: normal;
        font-weight: 500;
        line-height: 1.3889vw;
    }


 
    .swiper-container {
        height: 38.1944vw;
        width: 100%;
        margin: 2.0833vw 0;
    }

    .swiper-container.fullscreen {
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        margin-top: 0vw;
    }

    .swiper-slide {
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
    }

    .swiper-slide img {
        position: absolute;
        max-width: 55.5556vw;
        z-index: 2;
        cursor: pointer;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .fullscreen .swiper-slide img {
        pointer-events: none;
        max-width: 55.5556vw;
        width: initial;
        height: initial;
        object-fit: contain;
    }

    .fullscreen .swiper-slide .backdrop {
        background: #000;
        opacity: .7;
        width: 100vw;
        height: 100vh;
        position: absolute;
        top: 0;
        z-index: 1;
        cursor: pointer;
    }

    .fullscreen .swiper-slide .close-button {
        background: #000;
        color: #fff;
        font-size: 1.1111vw;
        font-family: sans-serif;
        padding: 0.6944vw 1.25vw;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 4;
        cursor: pointer;
    }

    .swiper-pagination-bullet {
        background: white;
        opacity: 0.7;
        margin: 0 0.625vw !important;
    }

    .swiper-pagination-bullet-active {
        opacity: 1;
    }

    .swiper-button-prev {
        background-size: 1.3889vw 3.0556vw;
        left: 10.4167vw;
    }

    .swiper-button-next {
        background-size: 1.3889vw 3.0556vw;
        right: 10.4167vw;
    }


	
        .swiper-button-prev {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }

        .swiper-button-next {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }
    

 
    header {
        height: 10.4167vw;
    }

    .hamburger {
        display: block;
        cursor: pointer;
        width: 2.7778vw;
        height: 1.6667vw;
        z-index: 2;
        padding: 0.3472vw;
        position: relative;
    }

    .hamburger span {
        position: absolute;
        width: 2.4306vw;
        height: 1px;
        background: black;
        border-radius: 3.4722vw;
        transition: 400ms cubic-bezier(0.77, 0, 0.175, 1);
    }

    .hamburger .top {
        top: 22%;
    }
    .hamburger .middle {
        top: 50%;
    }
    .hamburger .bottom {
        top: 78%;
    }

    /* --- transition effect from hamburger to X --- */
    .hamburger.active .middle {
        background: transparent;
    }
    .hamburger.active .top,
    .hamburger.active .bottom {
        background: black;
        top: 50%;
    }
    .hamburger.active .top {
        transform: rotate(225deg);
    }
    .hamburger.active .bottom {
        transform: rotate(-225deg);
    }

    .header-button {
        width: fit-content;
        margin-left: 3.4722vw;
        color: #000;
        text-decoration: none;
    }

    .header-contact-list {
        display: flex;
        list-style: none;
        gap: 1.7361vw;
        margin-left: 2.7778vw;
    }

    .header-lang-container {
        position: relative;
    }

    .header-current-lang {
        display: flex;
        align-items: center;
        gap: 0.5556vw;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        text-transform: uppercase;
        position: relative;
        cursor: pointer;
    }

    .header-current-lang::after {
        content: "";
        position: absolute;
        height: 1.3889vw;
        width: 4.1667vw;
        top: 1.0417vw;
    }

    .langs {
        display: none;
        flex-direction: column;
        gap: 0.2778vw;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0vw 0.2778vw 0.8333vw 0vw rgba(0, 0, 0, 0.08);
        width: 4.0972vw;
        padding: 0.5556vw 0vw;
        margin-top: 0.8333vw;
        position: absolute;
    }

    .lang-option {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        display: flex;
        width: 3.0556vw;
        padding: 0.4167vw 1.1111vw;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5556vw;
        text-transform: uppercase;
        text-decoration: none;
        border-left: 2px solid #FFF;
    }

    .lang-option:hover {
        text-decoration: underline;
        color: var(--gold, #B49D58);
        border-left: 2px solid;
    }
    
    .lang-option.active {
        color: var(--gold, #B49D58);
        border-left: 2px solid;
        pointer-events: none;
    }

    .header-current-lang:hover + .langs,
    .langs:hover {
        display: flex;
    }

    .header-lang-arrow {
        transform: rotate(180deg);
        transition: transform 0.3s ease;
        width: 0.8333vw;
        height: 0.8333vw;
    }

    .header-current-lang:hover .header-lang-arrow {
        transform: rotate(0deg); 
    }

    .header-current-lang:hover.langs {
        display: flex;
    }

    .header-current-lang::after:hover.langs {
        display: flex;
    }

    .header-container {
        position: relative;
        display: flex;
        justify-content: space-between; 
        align-items: center; 
        width: 100%;
        height: 100%;
    }

    .header-logo-container {
        position: absolute;
        left: 50%;
        transform: translateX(-50%); 
        height: 100%;
    }

    .header-logo {
        width: 100%;
        height: 100%;
        object-fit: contain;
        max-width: 17.3611vw;
    }

    .header-right {
        display: flex;
        align-items: center;
    }

    .header-nav-list {
        position: absolute;
        list-style: none;
        display: none;
        padding: 1.6667vw 0.8333vw 1.6667vw 1.6667vw;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8333vw;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0vw 0.2778vw 0.8333vw 0vw rgba(0, 0, 0, 0.08);
        margin-top: 1.3889vw;
        min-width: 15.2778vw;
        z-index: 9999;
    }

    .header-nav-list.active {
        display: inline-flex;
    }

    .header-navigation {
        display: flex;
        align-items: center;
        gap: 1.3889vw;
    }

    .header-nav-item {
        display: flex;
        justify-content: space-between;
        width: 100%;
        position: relative;
        cursor: pointer;
    }

    .header-nav-item a {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 500;
        line-height: 1.5972vw; 
        text-decoration: none;
    }

    .header-nav-item a:hover {
        text-decoration: underline;
    }

    .header-nav-submenu {
        position: absolute;
        list-style: none;
        display: none;
        padding: 1.6667vw 0.8333vw 1.6667vw 1.6667vw;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8333vw;
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: 0vw 0.2778vw 0.8333vw 0vw rgba(0, 0, 0, 0.08);
        min-width: 15.2778vw;
        left: calc(100% + 1.0417vw);
        top: -0.6944vw;
    }

    .header-nav-item::after {
        content: "";
        position: absolute;
        height: 1.3889vw;
        width: 2.4306vw;
        left: 100%;
    }

    .header-nav-item:hover > .header-nav-submenu {
        display: inline-flex;
    }

    
    

 
	.footer-top {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}

	.footer-menu-block {
		display: flex;
		flex-direction: column;
		gap: 1.3889vw;
	}

	.footer-menu-list {
		display: flex;
		flex-direction: column;
		gap: 1.0417vw;
		list-style: none;
	}

	.footer-contacts {
		display: flex;
		flex-direction: column;
		gap: 1.3889vw;
	}

	.footer-contact-blocks {
		display: flex;
		gap: 8.3333vw;
	}

	.footer-contact-block {
		display: flex;
		flex-direction: column;
		gap: 0.8333vw;
	}

	.footer-contact-block-list {
		display: flex;
		flex-direction: column;
		gap: 0.5556vw;
		list-style: none;
	}

	.footer-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 1.1111vw;
		font-style: normal;
		font-weight: 600;
		line-height: 1.6667vw;
	}

	.footer-contact-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 1.0417vw;
		font-style: normal;
		font-weight: 600;
		line-height: 1.5972vw;
	}

	.footer-menu-item a {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 1.1111vw;
		font-style: normal;
		font-weight: 400;
		line-height: normal;
		text-decoration: none;
	}

	.footer-menu-item a:hover {
		text-decoration: underline;
	}

	.footer-bottom {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 3.4722vw;
		padding-bottom: 2.5694vw;
	}

	.socials-footer-ul {
		display: flex;
		flex-direction: row;
		list-style: none;
		gap: 0.6944vw;
	}

	.copyright {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: 0.9028vw;
		font-style: normal;
		font-weight: 400;
		line-height: 1.25vw;
	}

	.socials-footer-item {
		width: 2.0833vw;
		height: 2.0833vw;
	}

 
   /* The Modal (background) */
    .modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
    }

    .day.disabled {
        color: #ccc; /* Light gray color to indicate disabled state */
        cursor: not-allowed; /* Change cursor to not-allowed to indicate non-interactive state */
    }

    .reservation-modal-button {
        max-width: 20.8333vw;
        margin: 0 auto;
    }

    /* Modal Content */
    .modal-content {
    background-color: white;
    margin: 5% auto;
    padding: 1.3889vw;
    border: 1px solid #888;
    width: 80%;
    max-width: 55.5556vw;
    }

    /* The Close Button */
    .close {
    color: #aaa;
    float: right;
    font-size: 1.9444vw;
    font-weight: bold;
    }

    .close:hover,
    .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
    }

    /* Month Navigation */
    .monthNavigation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.7778vw;
    }

    #prevMonth, #nextMonth {
    background-color: var(--blue, #29365A);
    color: white;
    border: none;
    padding: 0.6944vw;
    cursor: pointer;
    width: 2.7778vw;
    height: 2.7778vw;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    }

    #prevMonth > img, #nextMonth > img {
        width: 1.6667vw;
        height: 1.6667vw;
    }

    #prevMonth:hover, #nextMonth:hover {
    background-color: var(--blue-hover, #29365A);
    }

    /* Calendar Container */
    #calendarContainer {
    display: flex;
    justify-content: center;
    gap: 2.7778vw;
    margin: 2.0833vw 0;
    }

    .calendar {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.3472vw;
    }

    .calendar-header {
    grid-column: span 7;
    text-align: center;
    font-weight: bold;
    }

    .day {
    width: 2.0833vw;
    height: 2.0833vw;
    text-align: center;
    line-height: 2.0833vw;
    cursor: pointer;
    border-radius: 50%;
    }

    .day:hover {
    background-color: #f0f0f0;
    }

    .day.selected {
    background-color: #007bff;
    color: white;
    }


 
    .spa-container {
        padding-bottom: 8.3333vw;
    }

    .spa-title {
        text-align: center;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 1.8056vw;
        font-style: normal;
        font-weight: 500;
        line-height: 2.3611vw;
    }

    .spa-intro {
        text-align: center;
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 400;
        line-height: 2.0833vw;
    }

    .amenity-block-title {
        text-align: center;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: 1.5278vw;
        font-style: normal;
        font-weight: 500;
        line-height: 2.2222vw;
        margin-top: 6.25vw;
    }

    .amenity-description {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 400;
        line-height: 2.0833vw;
    }

    .amenities-row-list {
        display: flex;
        justify-content: center;
        gap: 13.8889vw;
    }

    .amenity-row-img {
        margin-top: 2.0833vw;
        width: 22.2222vw;
        height: 15.9722vw;
    }

    .amenities-highlights {
        margin-top: 6.25vw;
    }

    .amenities-highlights-title {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 1.5278vw;
        font-style: normal;
        font-weight: 500;
        line-height: 2.2222vw;
    }

    .amenities-subtitle {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 400;
        line-height: 2.0833vw; 
        margin-top: 0.8333vw;
    }

    .amenities-columns {
        margin-top: 2.0833vw;
        display: flex;
        gap: 6.25vw;
        justify-content: center;
    }

    .amenity-column {
        display: flex;
        flex-direction: column;
        gap: 1.1111vw;
    }

    .amenity-item {
        display: flex;
        gap: 1.3889vw;
        align-items: center;
        cursor: pointer;
    }

    .amenity-item-text {
        max-width: 13.8889vw;
        color: #000;
        font-family: Montserrat;
        font-size: 1.0417vw;
        font-style: normal;
        font-weight: 400;
        line-height: 1.3889vw;
    }

    .amenity-item-icon {
        width: 2.6389vw;
        height: 2.6389vw;
    }


 }@media (min-width: calc(494px)) and (max-width: calc(1000px)) {
            body {
                --coef-w: calc(var(--width) / -910 + 1.3771);
                --offset: calc(4.6875vw * ((320 - 320 * var(--coef-w) + 30 * var(--coef-w)) / 30));
                --column-width: calc( (1px * var(--width)) - (2 * var(--offset)) );
            }
        }

        @media (max-width: calc(494px)) {
            body {
                --coef-w: 1;
                --column-width: 90.625vw;
                --offset: calc(50% - (var(--column-width) / 2));
            }
        }
        @media (max-width: 1000px) { :root {
	--column-width: calc(90.625vw * var(--coef-w));
	--offset: calc(4.6875vw * var(--coef-w));
	--white: #FFF;
	--black: #000;
	--blue: #29365A;
	--grey-text: #717171;
	--color-link: #0034C3;
	--gold: #B49D58;
}

body, input, textarea, select {
	font-family: 'Montserrat';
	font-size: calc(5vw * var(--coef-w));
	-webkit-text-size-adjust: none;
}

img, svg {
	max-width: 100%;
	display: block;
}

* {
	box-sizing: border-box;
	outline: none !important;
	-webkit-tap-highlight-color: transparent;
	-webkit-appearance:none;
	font-family: 'Montserrat';
}

body, dl, dt, dd, ul, ol, li, form, table, tr, td, h1, h2, h3, h4, h5, h6, pre, p, span, b, i, input, textarea, fieldset {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat';
}

.none {
	display: none;
}

.fade-out {
	opacity: 1;
	transition: 0.3s;
	pointer-events: auto;
}

.fade-out.active {
	opacity: 0;
	pointer-events: none;
}

.fade-in {
	opacity: 0;
	transition: 0.3s;
	pointer-events: none;
}

.fade-in.active {
	opacity: 1;
	pointer-events: auto;
}

.container {
	padding-left: var(--offset);
	padding-right: var(--offset);
}

.container-offset {
	width: var(--column-width);
	margin-left: auto;
	margin-right: auto;
}

a {
	color: (--color-link, #0034C3);
}

.btn-primary {
	display: flex;
	padding: calc(3.75vw * var(--coef-w)) calc(8.75vw * var(--coef-w));
	justify-content: center;
	align-items: center;
	gap: calc(2.5vw * var(--coef-w));
	background: var(--blue, #29365A);
	border: calc(0.4688vw * var(--coef-w)) solid var(--blue, #29365A);
	color: var(--white, #FFF);
	text-align: center;
	font-family: Montserrat;
	font-size: calc(4.375vw * var(--coef-w));
	font-style: normal;
	font-weight: 600;
	line-height: calc(6.875vw * var(--coef-w)); 
	text-transform: uppercase;
}

.btn-primary:hover {
	color: var(--blue, #29365A);
	background: var(--white, #FFF);
}

.btn-secondary {
	display: flex;
	padding: calc(3.75vw * var(--coef-w)) calc(8.75vw * var(--coef-w));
	justify-content: center;
	align-items: center;
	gap: calc(2.5vw * var(--coef-w));
	border: calc(0.4688vw * var(--coef-w)) solid var(--blue, #29365A);
	color: var(--blue, #29365A);
	text-align: center;
	font-family: Montserrat;
	font-size: calc(4.375vw * var(--coef-w));
	font-style: normal;
	font-weight: 600;
	line-height: calc(6.875vw * var(--coef-w)); 
	text-transform: uppercase;
	background: var(--white, #FFF);
}

.btn-secondary:hover {
	color: var(--white, #FFF);
	background: var(--blue, #29365A);
}

.desktop {
	display: none;
}

.mobile {
	display: block;
} 

    .breadcrumbs {
        margin-bottom: calc(7.8125vw * var(--coef-w));
        padding-top: calc(7.8125vw * var(--coef-w));
    }

    .breadcrumbs-inner {
        display: flex;
        align-items: center;
        list-style: none;
        gap: calc(1.5625vw * var(--coef-w));
    }

    .breadcrumbs-item {
        display: flex;
        align-items: center;
        gap: calc(1.5625vw * var(--coef-w));
    }

    .breadcrumb-separator {
        width: calc(3.75vw * var(--coef-w)); 
        height: calc(3.75vw * var(--coef-w)); 
        margin: 0 calc(1.25vw * var(--coef-w)); 
        vertical-align: middle; 
    }

    .breadcrumbs-link {
        color: var(--black, #000);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: calc(4.0625vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(6.25vw * var(--coef-w));
        text-decoration: none;
        display: inline-flex;
    }

    .breadcrumbs-last{
        color: var(--grey-text, #717171);
        font-variant-numeric: lining-nums proportional-nums;
        font-family: Montserrat;
        font-size: calc(4.0625vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(6.25vw * var(--coef-w));
    }


 	
        .swiper-button-prev {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }

        .swiper-button-next {
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23B49D58'%2F%3E%3C%2Fsvg%3E") !important;
        }
    

    .swiper-container {
        height: calc(93.75vw * var(--coef-w));
        width: 100%;
    }

    .swiper-container.fullscreen {
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
    }

    .swiper-slide {
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
    }

    .swiper-slide img {
        position: absolute;
        max-width: 100%;
        z-index: 2;
        cursor: pointer;
        object-fit: contain;
    }
    
    .swiper-slide figcaption {
        position: absolute;
        bottom: 15%;
        z-index: 3;
    }

    .swiper-slide a {
        background: #000;
        color: #fff;
    }

    .fullscreen .swiper-slide img {
        pointer-events: none;
        object-fit: contain;
    }

    .fullscreen .swiper-slide .backdrop {
        background: #000;
        opacity: .7;
        width: 100vw;
        height: 100vh;
        position: absolute;
        top: 0;
        z-index: 1;
        cursor: pointer;
    }

    .fullscreen .swiper-slide .close-button {
        background: #000;
        color: #fff;
        font-size: calc(5vw * var(--coef-w));
        font-family: sans-serif;
        padding: calc(3.125vw * var(--coef-w)) calc(5.625vw * var(--coef-w));
        position: absolute;
        top: 0;
        right: 0;
        z-index: 4;
        cursor: pointer;
    }

    .swiper-pagination-bullet {
        background: white;
        opacity: 0.7;
        margin: 0 calc(2.8125vw * var(--coef-w)) !important;
    }

    .swiper-pagination-bullet-active {
        opacity: 1;
    }

    .swiper-button-prev {
        background-size: calc(6.25vw * var(--coef-w)) calc(13.75vw * var(--coef-w));
        left: calc(4.6875vw * var(--coef-w));
    }

    .swiper-button-next {
        background-size: calc(6.25vw * var(--coef-w)) calc(13.75vw * var(--coef-w));
        right: calc(4.6875vw * var(--coef-w));
    }

 
    header {
        height: calc(17.1875vw * var(--coef-w));
    }

    .hamburger {
        display: block;
        cursor: pointer;
        width: calc(7.8125vw * var(--coef-w));
        height: calc(7.5vw * var(--coef-w));
        z-index: 2;
        padding: calc(1.5625vw * var(--coef-w));
        position: relative;
    }

    .hamburger span {
        position: absolute;
        width: calc(7.5vw * var(--coef-w));
        height: 1px;
        background: black;
        border-radius: calc(15.625vw * var(--coef-w));
        transition: 400ms cubic-bezier(0.77, 0, 0.175, 1);
    }

    .hamburger .top {
        top: 22%;
    }
    .hamburger .middle {
        top: 50%;
    }
    .hamburger .bottom {
        top: 78%;
    }

    /* --- transition effect from hamburger to X --- */
    .hamburger.active .middle {
        background: transparent;
    }
    .hamburger.active .top,
    .hamburger.active .bottom {
        background: black;
        top: 50%;
    }
    .hamburger.active .top {
        transform: rotate(225deg);
    }
    .hamburger.active .bottom {
        transform: rotate(-225deg);
    }

    .header-button {
        width: fit-content;
        margin-left: calc(18.75vw * var(--coef-w));
        color: #000;
        padding: calc(3.125vw * var(--coef-w)) calc(7.5vw * var(--coef-w));
        text-decoration: none;
    }

    .header-contact-list {
        display: flex;
        list-style: none;
        gap: calc(7.8125vw * var(--coef-w));
    }

    .header-lang-container {
        position: relative;
    }

    .header-current-lang {
        display: flex;
        align-items: center;
        gap: calc(2.5vw * var(--coef-w));
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: calc(4.6875vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        text-transform: uppercase;
        position: relative;
        cursor: pointer;
    }

    .header-current-lang::after {
        content: "";
        position: absolute;
        height: calc(6.25vw * var(--coef-w));
        width: calc(18.75vw * var(--coef-w));
        top: calc(4.6875vw * var(--coef-w));
    }

    .langs {
        display: none;
        flex-direction: column;
        gap: calc(1.25vw * var(--coef-w));
        border-radius: 2px;
        background: var(--white, #FFF);
        box-shadow: calc(0vw * var(--coef-w)) calc(1.25vw * var(--coef-w)) calc(3.75vw * var(--coef-w)) calc(0vw * var(--coef-w)) rgba(0, 0, 0, 0.08);
        width: calc(18.4375vw * var(--coef-w));
        padding: calc(2.5vw * var(--coef-w)) calc(0vw * var(--coef-w));
        margin-top: calc(3.75vw * var(--coef-w));
        position: absolute;
        right: 0;
    }

    .lang-option {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: calc(4.6875vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        display: flex;
        width: calc(13.75vw * var(--coef-w));
        padding: calc(1.875vw * var(--coef-w)) calc(5vw * var(--coef-w));
        flex-direction: column;
        align-items: flex-start;
        gap: calc(2.5vw * var(--coef-w));
        text-transform: uppercase;
        text-decoration: none;
        border-left: 2px solid #FFF;
    }

    .lang-option:hover {
        text-decoration: underline;
        color: var(--gold, #B49D58);
        border-left: 2px solid;
    }
    
    .lang-option.active {
        color: var(--gold, #B49D58);
        border-left: 2px solid;
        pointer-events: none;
    }

    .header-current-lang:hover + .langs,
    .langs:hover {
        display: flex;
    }

    .header-lang-arrow {
        transform: rotate(180deg);
        transition: transform 0.3s ease;
        width: calc(3.75vw * var(--coef-w));
        height: calc(3.75vw * var(--coef-w));
    }

    .header-current-lang:hover .header-lang-arrow {
        transform: rotate(0deg); 
    }

    .header-current-lang:hover.langs {
        display: flex;
    }

    .header-current-lang::after:hover.langs {
        display: flex;
    }

    .header-container {
        position: relative;
        display: flex;
        justify-content: space-between; 
        align-items: center; 
        width: 100%;
        height: 100%;
    }

    .header-logo-container {
        position: absolute;
        left: 50%;
        transform: translateX(-50%); 
        width: calc(25vw * var(--coef-w));
    }

    .header-logo {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .header-right {
        display: flex;
        align-items: center;
        margin-top: calc(9.375vw * var(--coef-w));
    }

    .header-nav-list {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: calc(3.75vw * var(--coef-w));
    }

    .header-mobile-menu {
        display: none;
    }

    .header-mobile-menu.active {
        display: block;
        z-index: 9;
    }

    .header-navigation {
        display: flex;
        align-items: center;
        gap: calc(6.25vw * var(--coef-w));
    }

    .header-nav-item {
        display: flex;
        flex-direction: column;
        gap: calc(2.5vw * var(--coef-w));
        width: 100%;
        position: relative;
        cursor: pointer;
    }

    .header-nav-item a {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: calc(4.6875vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(7.1875vw * var(--coef-w)); 
        text-decoration: none;
    }

    .header-nav-item-container {
        display: flex;
        align-items: center;
        gap: calc(3.125vw * var(--coef-w));
    }

    .header-nav-item a:hover {
        text-decoration: underline;
    }

    .header-nav-submenu {
        list-style: none;
        display: none;
        flex-direction: column;
        align-items: flex-start;
        gap: calc(3.75vw * var(--coef-w));
        padding-left: calc(12.5vw * var(--coef-w));
    }

    .header-nav-item::after {
        content: "";
        position: absolute;
        height: calc(6.25vw * var(--coef-w));
        width: calc(10.9375vw * var(--coef-w));
        left: 100%;
    }

    .header-nav-item:hover > .header-nav-submenu {
        display: inline-flex;
    }

    .header-mobile-menu {
        position: absolute;
        border-top: 1px solid var(--blue, #29365A);
        width: 100%;
        top: calc(17.1875vw * var(--coef-w));
        left: 0;
        padding: calc(9.375vw * var(--coef-w)) calc(4.6875vw * var(--coef-w));
        background: var(--white, #FFF);
    }

 
	.footer-top {
		display: flex;
		flex-direction: column;
		gap: calc(9.375vw * var(--coef-w));
	}

	.footer-menu-block {
		display: flex;
		flex-direction: column;
		gap: calc(4.6875vw * var(--coef-w));
	}

	.footer-menu-list {
		display: flex;
		flex-direction: column;
		gap: calc(2.5vw * var(--coef-w));
		list-style: none;
	}

	.footer-contacts {
		display: flex;
		flex-direction: column;
		gap: calc(4.6875vw * var(--coef-w));
	}

	.footer-contact-blocks {
		display: flex;
		gap: calc(6.25vw * var(--coef-w));
		flex-direction: column;
	}

	.footer-contact-block {
		display: flex;
		flex-direction: column;
		gap: calc(3.75vw * var(--coef-w));
	}

	.footer-contact-block-list {
		display: flex;
		flex-direction: column;
		gap: calc(2.5vw * var(--coef-w));
		list-style: none;
	}

	.footer-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: calc(4.375vw * var(--coef-w));
		font-style: normal;
		font-weight: 600;
		line-height: calc(6.25vw * var(--coef-w));
	}

	.footer-contact-block-title {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: calc(4.0625vw * var(--coef-w));
		font-style: normal;
		font-weight: 600;
		line-height: calc(6.25vw * var(--coef-w));
	}

	.footer-menu-item a {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: calc(4.375vw * var(--coef-w));
		font-style: normal;
		font-weight: 400;
		line-height: normal;
		text-decoration: none;
	}

	.footer-menu-item a:hover {
		text-decoration: underline;
	}

    .footer-bottom {
		display: flex;
		gap: calc(4.6875vw * var(--coef-w));
		flex-direction: column;
		margin-top: calc(15.625vw * var(--coef-w));
		padding-bottom: calc(11.5625vw * var(--coef-w));
	}

	.copyright {
		color: var(--black, #000);
		font-family: Montserrat;
		font-size: calc(3.75vw * var(--coef-w));
		font-style: normal;
		font-weight: 400;
		line-height: calc(5.625vw * var(--coef-w));
	}

	.socials-footer-item {
		width: calc(7.8125vw * var(--coef-w));
		height: calc(7.8125vw * var(--coef-w));
	}

	.socials-footer-ul {
		display: flex;
		flex-direction: row;
		list-style: none;
		gap: calc(1.875vw * var(--coef-w));
	}

 
    /* The Modal (background) */
     .modal {
     display: none;
     position: fixed;
     z-index: 1;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     overflow: auto;
     background-color: rgba(0, 0, 0, 0.5);
     }

     .day.disabled {
        color: #ccc; /* Light gray color to indicate disabled state */
        cursor: not-allowed; /* Change cursor to not-allowed to indicate non-interactive state */
    }
 
     .reservation-modal-button {
         max-width: calc(93.75vw * var(--coef-w));
         margin: 0 auto;
     }
 
     /* Modal Content */
     .modal-content {
     background-color: white;
     margin: 5% auto;
     padding: calc(6.25vw * var(--coef-w));
     border: 1px solid #888;
     width: 80%;
     max-width: 100%;
     }
 
     /* The Close Button */
     .close {
     color: #aaa;
     float: right;
     font-size: calc(8.75vw * var(--coef-w));
     font-weight: bold;
     }
 
     .close:hover,
     .close:focus {
     color: black;
     text-decoration: none;
     cursor: pointer;
     }
 
     /* Month Navigation */
     .monthNavigation {
     display: flex;
     align-items: center;
     justify-content: center;
     gap: calc(4.6875vw * var(--coef-w));
     margin-top: calc(12.5vw * var(--coef-w));
     position: relative;
     }
 
     #prevMonth, #nextMonth {
     background-color: #007bff;
     color: white;
     border: none;
     padding: calc(3.125vw * var(--coef-w));
     cursor: pointer;
     width: calc(9.375vw * var(--coef-w));
     height: calc(9.375vw * var(--coef-w));
     border-radius: 50%;
     display: flex;
     justify-content: center;
     align-items: center;
     }

     #prevMonth {
        position: absolute;
        top: calc(-4.6875vw * var(--coef-w));
        left: calc(18.75vw * var(--coef-w));
     }

     #nextMonth {
        position: absolute;
        top: calc(-4.6875vw * var(--coef-w));
        right: calc(18.75vw * var(--coef-w));
     }
 
     #prevMonth > img, #nextMonth > img {
         width: calc(6.25vw * var(--coef-w));
         height: calc(6.25vw * var(--coef-w));
     }
 
     #prevMonth:hover, #nextMonth:hover {
     background-color: #0056b3;
     }
 
     /* Calendar Container */
     #calendarContainer {
     display: flex;
     justify-content: center;
     gap: calc(12.5vw * var(--coef-w));
     margin: calc(9.375vw * var(--coef-w)) 0;
     }
 
     .calendar {
     display: grid;
     grid-template-columns: repeat(7, 1fr);
     gap: calc(1.5625vw * var(--coef-w));
     }
 
     .calendar-header {
     grid-column: span 7;
     text-align: center;
     font-weight: bold;
     }
 
     .day {
     width: calc(9.375vw * var(--coef-w));
     height: calc(9.375vw * var(--coef-w));
     text-align: center;
     line-height: calc(9.375vw * var(--coef-w));
     cursor: pointer;
     border-radius: 50%;
     }
 
     .day:hover {
     background-color: #f0f0f0;
     }
 
     .day.selected {
     background-color: #007bff;
     color: white;
     }
 
 
 
    .spa-container {
        padding-bottom: calc(18.75vw * var(--coef-w));
    }

    .spa-title {
        text-align: center;
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: calc(6.25vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(8.75vw * var(--coef-w));
    }

    .spa-intro p {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: calc(4.375vw * var(--coef-w));
        font-style: normal;
        font-weight: 400;
        line-height: calc(7.5vw * var(--coef-w));
    }

    .amenity-block-title {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: calc(5.625vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(8.125vw * var(--coef-w)); 
        margin-top: calc(12.5vw * var(--coef-w));
    }

    .amenity-description p {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: calc(4.0625vw * var(--coef-w));
        font-style: normal;
        font-weight: 400;
        line-height: calc(7.1875vw * var(--coef-w));
    }

    .amenities-row-list {
        display: flex;
        justify-content: center;
        flex-direction: column;
    }

    .amenity-row-img {
        margin-top: calc(6.25vw * var(--coef-w));
        width: calc(90.625vw * var(--coef-w));
        height: calc(62.5vw * var(--coef-w));
    }

    .amenities-highlights {
        margin-top: calc(15.625vw * var(--coef-w));
    }

    .amenities-highlights-title {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: calc(5.625vw * var(--coef-w));
        font-style: normal;
        font-weight: 500;
        line-height: calc(8.125vw * var(--coef-w));
    }

    .amenities-subtitle {
        color: var(--black, #000);
        text-align: center;
        font-family: Montserrat;
        font-size: calc(4.6875vw * var(--coef-w));
        font-style: normal;
        font-weight: 400;
        line-height: calc(7.5vw * var(--coef-w)); 
        margin-top: calc(2.5vw * var(--coef-w));
    }

    .amenities-columns {
        margin-top: calc(9.375vw * var(--coef-w));
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .amenity-column {
        display: flex;
        flex-direction: column;
        gap: calc(4.375vw * var(--coef-w));
        margin-top: calc(4.375vw * var(--coef-w));
    }

    .amenity-item {
        display: flex;
        gap: calc(5vw * var(--coef-w));
        align-items: center;
        cursor: pointer;
    }

    .amenity-item-text {
        color: var(--black, #000);
        font-family: Montserrat;
        font-size: calc(4.375vw * var(--coef-w));
        font-style: normal;
        font-weight: 400;
        line-height: calc(7.5vw * var(--coef-w));
    }

    .amenity-item-icon {
        width: calc(10vw * var(--coef-w));
        height: calc(10vw * var(--coef-w));
    }

 }