@import url('font.css');

form.waiting button {
	cursor: progress;
	filter: grayscale(1);
}

form .error-text {
	color: #f00;
	position: Absolute;
	font-size: 12px;
	left: 0px;
	bottom: -15px;
}

html {
	color: #54585a;
	scroll-behavior: smooth;
}

body,
button,
input,
textarea {
	font-family: 'Gotham-Book', sans-serif;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: -.8px;
}

input,
textarea {
	width: 100%;
	max-width: 100%;
}

input,
select {
	border: 1px solid var(--basic);
	box-shadow: unset;
	padding-left: 7px;
}

input::placeholder,
textarea::placeholder {
	font-family: Cinzel;
}

#page-home header:not(.thiner) .phone-title,
#page-home header:not(.thiner) .phone-title a {
	color: #fff !important;
}

header a.phone {
	font-size: 14px;
	line-height: 15px;
	letter-spacing: .5px;
	text-decoration: none;
	display: flex;
	align-items: center;
	margin-left: 7px;
}


header {
	background: transparent;
	z-index: 43;
	position: fixed;
	height: 125px;
	width: 100%;
	top: 0;
	left: 0;
	padding-left: 0;
	padding-right: 0;
}


header .logo img {
	width: 150px;
	display: block;
	height: auto;
	min-height: 55px;
	min-width: 75px;
}

@media (max-width:1490px) and (min-width:1201px) {
	header .logo img {
		width: 100px !important;
	}
}

header .language-block {
	display: inline-flex;
	align-self: flex-end;
	margin-left: 0rem;

}



header .language-block a {
	position: relative;
	font: 13.5px 'Gotham-Book', sans-serif;
	padding: 1rem 0;
	text-transform: uppercase;
	letter-spacing: 1.1px;
	text-align: center;

	text-decoration: underline !important;
	color: #fff;
	/*margin-left:auto;*/
	margin: 0px 3px;
}

header .fixed {
	width: 100%;
	left: 0;
	top: 0;
	transition: 0.2s;
	position: fixed !important;
}

header.thiner {
	background-color: #fff;
	color: #000 !important;
	height: 100px;
	transition: all 0.4s ease-out;
	position: fixed !important;
	z-index: 99;
	width: 100%;
	border-bottom: thin solid #bac5b9;
	top: 0px;

}

header.thiner a,
header.thiner label.submenu,
header.thiner .language-block a {
	color: #000 !important;
}

header.thiner .container-fluid.row {
	padding: 0;
	margin: 0;
}

header.thiner .hres.small_res .phone-title,
header.thiner .hres .phone-title {
	color: #000 !important;
}

header.thiner .logo img {
	width: 68px;
}

header.thiner button.middle {
	background-color: var(--basic);
}

header.thiner button.middle:hover {
	background-color: #fff;
}

header.thiner img.logo1 {
	display: none;
}

header.thiner img.logo2 {
	display: block !important;
}

header .fixed {
	position: fixed !important;
}

#lightbox {
	_top: 1000px !important;
}

.menu.fd-row>li>a::after,
header .language-block a::after {
	content: "";
	position: absolute;
	background-color: #b46a55;
	border-radius: 50%;
	bottom: .3rem;
	left: 50%;
	width: .5rem;
	height: .5rem;
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, -1rem);
	transition: .5s;
}

.menu.fd-row>li.active>a::after {
	opacity: 1 !important;
	top: 107%;
	visibility: visible;
	content: "";
	position: absolute;
	background-color: #b46a55;
	border-radius: 50%;
	bottom: .3rem;
	left: 50%;
	width: .5rem;
	height: .5rem;
	transform: translate(-50%, -1rem);
	transition: .5s;
}

@media(max-width:1200px) {
	.menu.fd-row>li.active>a::after {
		top: 103%;
		left: 3%;
	}

	.toggle-submenu {
		width: 30px;
		height: 30px;
		cursor: pointer;
		color: #5d7975;
		display: inline-block;
		font-size: 1.3em;
		background-color: #f1f1f1;
		text-align: center;
	}
}

@media(min-width:1200px) {
	.toggle-submenu {
		display: none;
	}
}


.menu.fd-row>li:hover>a::after,
header .language-block a:hover::after {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%);
}

@media(max-width:1200px) {

	.menu.fd-row>li:hover>a::after,
	.menu.fd-row>li.active:hover>a::after,
	header .language-block:hover a::after {
		opacity: 0;
		visibility: hidden;
	}
}

.ex_res_buttons {
	text-align: start;
}

.footer_logo {
	width: 180px;
	margin-left: auto;
	margin-right: auto;
}

.scrolled .booking-buttons {
	top: auto;
	transform: none;
}

.booking-buttons .header-buttons-wrapper {
	text-align: center;
}

.scrolled .booking-buttons .booking-trigger {
	background-color: #bac5b9;
}

.booking-buttons .booking-trigger {
	margin-right: 0;
	font-size: 17px;
	line-height: 23px;
	letter-spacing: .64px;
	padding: 8px 40px;
	border-width: 1px;
}

.scrolled .booking-buttons .booking-close-button,
.scrolled .booking-buttons .booking-trigger {
	background-color: #bac5b9;
}

.hres {
	flex: 0 1 210px;
	align-content: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.hres .phone-title {
	font-size: 14px;
	font-family: cinzel;
}


@media(max-width:1200px) {
	.hres.small_res {
		margin-left: 22px;
		flex: unset;
		margin-top: 10px;
	}
}

.hres.small_res .phone-title {
	font-size: 18px;
	padding: 6px 0px;
	color: #5d7975;
}

.hres.small_res .phone-title a {
	color: #5d7975;
}


.home.blocks-lists>div:nth-child(1) h2 {
	display: none;
}

.btn-booking-count:not(:empty) {
	position: absolute;
	width: auto;
	background-color: #960000;
	color: #fff;
	right: -5px;
	top: -10px;
	padding: 5px 10px;
	border-radius: 15px;
	font-size: 14px;
	line-height: 1;
	font-family: initial;
}


/**** MEDIA BIG for MAIN MENU!!!*****/
@media(min-width:1201px) {
	#MainMenu {
		display: block;
		z-index: 20;
		opacity: 1;
		visibility: visible;
		position: relative;
	}

	#MainMenu .menu {
		white-space: nowrap;
		margin-left: -144px;
	}

	#MainMenu ul>li {
		position: relative;
		display: inline-block;
		margin-right: 22px;

	}

	#MainMenu ul>li>a {
		position: relative;
		display: block;
		font: 13.5px 'Gotham-Book', sans-serif;
		padding: 1rem 0;
		text-transform: uppercase;
		letter-spacing: 1.1px;
		text-align: center;
		text-decoration: none;
		color: #fff;
		font-weight: light;
	}

	#MainMenu ul>li ul li a {
		padding: 1rem;
	}

	#MainMenu .menu>.menuitem ul {
		display: none;
	}

	#MainMenu .menu .menuitem.has-submenu ul {
		flex-direction: column;
		position: absolute;
		left: 50%;
		top: 100%;
		transform: translateX(-50%);
		padding: 15px 0;
		background: #d5d7d8;
		box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
		z-index: -1;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		min-width: 200px;
	}

	#MainMenu .menu .menuitem ul a {
		color: #54585a;
		font-size: 12px;
	}

	#MainMenu .menu .menuitem ul li {
		margin-right: 0;
		margin-left: 0;
	}

	#MainMenu .menu .menuitem.has-submenu ul ul {
		top: 30%;
		transform: translateX(66.5%);
	}

	#MainMenu .menu .menuitem ul li.has-submenu::after {
		content: '+';
		display: inline-block;
		font-size: 20px;
		color: #5d7975;
		margin-left: auto;
		position: absolute;
		top: 12px;
		right: 20px;
		transition: content 0.75s;
	}

	#MainMenu .menu .menuitem ul li.has-submenu:hover::after {
		content: '-';
	}

	#MainMenu .menu .menuitem ul li.has-submenu a {
		justify-content: center;
	}

	#MainMenu .menu .menuitem.has-submenu:hover>ul {
		display: flex;
		align-items: stretch;
		align-content: center;
		justify-content: center;

	}

	#MainMenu .menu .menuitem ul a:hover::after {
		opacity: 1;
		visibility: visible;
		transform: translate(-50%);
	}

	#MainMenu .menu .menuitem ul a::after {
		content: "";
		position: absolute;
		background-color: #54585a;
		border-radius: 50%;
		top: 80%;
		left: 50%;
		width: .5rem;
		height: .5rem;
		opacity: 0;
		visibility: hidden;
		transform: translate(-50%, -80%);
		transition: .5s;
	}


	#MainMenu label[for="MainMenu-status"] {
		display: none;
	}

	label[for="MainMenu-openup"] {
		display: none;
	}

	#MainMenu-hamburger {
		display: none;
	}

}



/**** MEDIA SMALL for MAINMENU!!!*****/
@media(max-width:1200px) {

	.blocks-lists>div h2 {
		font-size: 30px;
		line-height: 45px;
	}

	.footer_logo {
		width: 130px;
	}

	#MainMenu-hamburger {
		display: block;
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='00 0 100 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23fff' stroke='rgba(0,0,0,1.00)' stroke-width='2' stroke-linecap='square' stroke-miterlimit='10' d='M4 10h100M4 26h100M2 42h100'/%3E%3C/svg%3E");
		width: 60px;
		height: 22px;
		background-size: 100% 100%;
		padding-right: 11rem;
		color: #000;
	}

	#MainMenu label[for="MainMenu-status"] {
		position: absolute;
		top: 10px;
		right: 10px;
		font-size: 33px;
		width: 43px;
		text-align: center;
	}

	#MainMenu {
		position: absolute;
		top: 0px;
		left: -25px;
		height: 100vh;
		background-color: #fff;
		width: 350px;
		max-width: 0;
		overflow: hidden;
		transition: transform .4s, max-width .4s;
		z-index: 999;
		box-shadow: 1px 2px 5px var(--basic);
	}

	#MainMenu-status:checked~a #MainMenu {
		max-width: 350px !important;
		transform: translateX(50%);
	}


	#MainMenu ul {
		flex-direction: column;
		padding-top: 60px;
	}

	#MainMenu ul li {
		position: relative;
		margin-bottom: 13px;
		padding-left: 20px;
	}

	#MainMenu ul li ul {
		padding-top: 20px;
		padding-left: 20px;
	}

	#MainMenu ul li ul li {
		list-style-type: none;
		padding-left: 0;
	}

	#MainMenu ul li ul li a {
		line-height: 16px;

	}

	#MainMenu ul li a,
	#MainMenu ul li label,
	#MainMenu .language-block a {
		font-size: 20px;
		line-height: 27px;
		font-family: Cinzel, sans-serif;
		color: #5d7975;
		padding: 1px;
		text-decoration: underline 0.05em rgba(0, 0, 0, 0);
		transition: text-decoration-color 300ms;
		text-underline-offset: 0.2em;
	}

	#MainMenu .language-block {
		margin-left: 1.2rem;
		align-self: flex-start;
	}

	/* 	#MainMenu ul li label::after {
  content: '+';
  display: inline-block;
  font-size: 23px;
  color: #5d7975;
  margin-left: auto;
  position: absolute;
  top: 0px;
  right: 20px;
  transition: content 0.75s;
} */

	#MainMenu li.has-submenu>ul:not(.active) {
		display: none;
		overflow: hidden;
		max-height: 0px;
		transition: max-height 1s;
	}

	/* #MainMenu .menu li.has-submenu input:checked ~ ul{
		display:flex;
		 max-height:250px;
	} */

	/* li.has-submenu ~ ul.active{
		display:flex !important;
		max-height:250px;
	} */

	#MainMenu .menu li.has-submenu input:checked~label::after {
		content: '-';
	}

	#MainMenu ul li a:hover,
	#MainMenu li.has-submenu ul a:hover,
	#MainMenu .language-block a:hover {
		text-decoration-color: #5d7975;
		text-underline-offset: 0.3em;
	}

	#MainMenu .menu li.has-submenu ul {
		padding-top: 0.5em;
		padding-bottom: 0.5em;
	}

	#MainMenu li.has-submenu ul li {
		list-style-type: none;
		padding-left: 0;
		margin-top: 0;
		margin-bottom: 0;
	}

	#MainMenu li.has-submenu ul>li>a {
		font-family: Cinzel, sans-serif;
		letter-spacing: -0.03em;
		color: #5d7975;
		transition: text-decoration-color 300ms;
		text-underline-offset: 0.2em;
		text-align: left;
		font-size: 16px;
		padding: 0px;
		line-height: 29px;
	}

	#MainMenu .menu label[for="menuitem--1"] {
		font-size: 16px;
	}

	#MainMenu .menu .submenu-parent label[for="menuitem--1"] {
		padding-top: 1px;
		padding-bottom: 1px;
	}

	#MainMenu-status:checked+#MainMenu {
		opacity: 1;
		max-width: 300px;
		overflow: unset;
		left: 0px;
	}

	#MainMenu .aside_logo {
		display: flex;
	}


	#MainMenu .menu li.has-submenu ul:not(.active) {
		display: none;
	}


	header.thiner a,
	header.thiner label {
		color: unset !important;
	}


}


@media (min-width:1201px) and (max-width:1300px) {
	#MainMenu ul>li {
		margin-right: 13px;
	}
}

.home-slide video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home-slide .container-v {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.home-slide iframe {
	position: relative;
	min-width: 100%;
	min-height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 177.77777778vh;
	height: 56.25vw;
}

main .slideshow-wrapper {
	width: 100%;
	height: 100%;
}

main .slide {
	position: relative;
	margin: 0;
	bottom: 0;
	width: 100%;
	overflow: hidden;
	height: 100vh;
	min-height: 300px;
	background: #bac5b9;
	z-index: 40;
}



main .slide::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(circle at 100%, #000, rgba(0, 0, 0, .18) 0);
	z-index: 2;
}

main #photos {
	position: relative;
}

main #photos .object-fit {
	position: absolute;
	top: 0;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
	width: 100%;
	height: 100%;
	z-index: 0;
}

main #photos .player {
	z-index: 2;
	position: absolute;
	width: calc(100% + 6px);
	height: calc(100% + 6px);
	left: -6px;
}

.mainhead.container-fluid {
	filter: brightness(0.8);
}


main .button.big:hover {
	background-color: var(--basic);
	color: #d13121;
}


.wrapper {
	position: relative;
	z-index: 42;
}

main .wr apper .text {
	font-weight: lighter;
}


.tiles article {
	position: relative;
}

.tiles article div {
	position: relative;
}

.tiles article div:before {
	content: "";
	background: linear-gradient(180deg, rgba(0, 0, 0, .16) 0, rgba(0, 0, 0, .92));
	height: 100%;
	width: 100%;
	position: absolute;
	transition: all .5s ease;
	opacity: 0;
	top: 0;
	left: 0;
	z-index: 1;
}

.tiles article:hover div:before {
	opacity: 1;
}


.tiles img {
	position: relative;
	width: 100%;
	background-color: #bac5b9;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}

@media(max-width:1200px) {
	.tiles img {
		min-height: unset;
	}
}

.tiles h4.heading {
	font-weight: normal;
}

.tiles h4.heading::after {
	content: "";
	background-color: #fff;
	height: 3px;
	width: 46px;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translateX(-50%);
	transition: all .8s ease;
	opacity: 1;
}

.tiles article:hover h4 {
	transform: translateY(-100px);
	transition: all 0.35s ease-in-out;

}

.tiles article:hover h4 a {
	color: #fff;
	position: relative;
}


#footer {
	font-size: 13px;
	font-family: Gotham-Light !important;
	color: #fff;
	text-align: center;
	position: relative;
	z-index: 42;
}

#footer:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	height: 100%;
	width: 100%;
	background-image: url('/templates/default/images/footer-bg.jpg');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
	pointer-events: none;
}

#footer-contacts {
	margin: 30px auto 45px auto;
	display: flex;
	flex-wrap: wrap;
	max-width: 57%;
	justify-content: center;
}

#footer-contacts p {
	font-size: 13px;
	line-height: 15px;
	margin-bottom: 5px;
	letter-spacing: 1.19px;
	text-align: center;
	font-weight: lighter;
	width: 100%;
}

#footer-contacts .underlined {
	text-decoration: underline;
}

#footer-contacts p a {
	color: #fff;
	text-decoration: underline 0.1em rgba(0, 0, 0, 0);
	transition: text-decoration-color 300ms;
	text-underline-offset: 0.2em;

}

#footer-contacts p a:hover {
	text-decoration-color: rgba(255, 255, 255, 1);
	text-underline-offset: 0.4em;
}

#footer-menu {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#footer-menu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-right: unset;
}

#footer-menu ul li {
	display: inline-block;
	width: 25%;
	padding-right: 25px;
	padding-bottom: 16px;
	box-sizing: border-box;
	text-align: left;
}

#footer-menu ul li a {
	position: relative;
	display: inline-block;
	font-weight: bold;
	font-size: 14px;
	line-height: 16px;
	font-family: Gotham, sans-serif;
	letter-spacing: 1.19px;
	text-decoration: none;
	color: #fff;
	text-decoration: underline 0.1em rgba(0, 0, 0, 0);
	text-underline-offset: 0.2em;
	font-weight: normal;

}

#footer-menu ul li a.active::before,
#footer-menu ul li a:hover::before {
	visibility: visible;
	opacity: 1;
	left: -15px;
}

#footer-menu ul li a::before {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	position: absolute;
	background: #fff;
	height: 5px;
	width: 5px;
	border-radius: 50%;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: .35s ease-in-out;
}

#footer-logos {
	border-left: thin solid #fff;
	margin-right: 52px;
	display: table;
	position: relative;
	max-width: 10%;
}

#footer-logos li a {
	text-decoration: none;
	opacity: 1;
	transition: .35s ease-in-out;

}

#footer-logos li a:hover {
	opacity: .5;
}

#footer .footer-main {
	background-color: #54585a;
}

#footer .footer-main .bank_cards_type {
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 87%;
}

#footer .footer-main .bank_cards_type>a {
	display: inline-block;
	height: 4rem;
	padding: 1rem;
}

#footer .social_icons {
	list-style: none;
	flex-direction: row;
	display: flex;
}

#footer .social_icons li {
	padding-right: 7px;
}

#footer .social_icons li a {
	display: inline-block;
	width: 44px;
	height: 44px;
	border-radius: 5%;
	background-repeat: no-repeat;
	background-position: center;
	opacity: .85;
}

#footer .social_icons li a:hover {
	opacity: 1;
}

#footer .social_icons li a.fb {
	background-color: #004080;
	background-image: url('../images/fb-icon.svg');
	width: 39px;
	height: 39px;
}

#footer .social_icons li a.insta {
	background-color: transparent;
	background-image: url('../images/insta-icon.svg');
	background-size: cover;
}

@media(max-width:992px) {
	#footer {
		padding-bottom: 100px;
	}

	#footer .footer-main .bank_cards_type {
		top: 84%;
	}

	#footer .footer-main .bank_cards_type>a {
		height: 3rem;
		padding: 0.9rem;
	}
}


#footer .center-column::after {
	clear: both;
	content: "";
	display: table;
}

#footer-logos li img {
	max-width: 170px;
}


.blocks-lists>div img {
	min-height: 425px;
	max-height: 750px;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.blocks-lists>div .texty {
	margin-left: auto;
	margin-right: auto;
	align-self: center;
}

.blocks-lists>div:nth-child(2n-1)>div {
	flex-direction: row-reverse;
}

#booking-open-button {
	background-color: #bac5b9;
	border: 0.5px solid transparent;
}

#booking-open-button:hover {
	background-color: #fff;
	border: 0.5px solid var(--basic);
}

/*** MEDIA 992-1200***/
@media (min-width:992px) and (max-width:1200px) {
	.ex_res_buttons {
		text-align: start;
	}


	.blocks-lists>div img {
		max-height: unset !important;
		height: 100%;
	}

	footer #footer-contacts {
		max-width: 80%;
	}

	footer #footer-menu ul {
		max-width: unset;
	}

	footer #footer-logos {
		margin-left: auto;
		margin-right: auto;
		border-left: unset;
		position: unset;
	}

	footer #footer-menu ul li {
		text-align: center;
	}

	header .logo img {
		width: 110px;
	}

}

/*** MEDIA 768-992***/
@media (min-width:768px) and (max-width:991px) {
	.ex_res_buttons {
		text-align: start;
	}

	footer #footer-contacts {
		max-width: 80%;
	}

	footer #footer-menu ul {
		max-width: unset;
	}

	footer #footer-logos {
		margin-left: auto;
		margin-right: auto;
		border-left: unset;
		position: unset;
	}

	footer #footer-menu ul li {
		text-align: center;
		width: unset;
	}

	footer #footer-menu ul {
		display: flex;
		flex-direction: column;
		width: 100%;
		align-items: Center;
		justify-content: center;
	}

	footer #footer-logos li img {
		width: 170px;
	}

	header .logo img {
		width: 100px;
	}

}

/*** MEDIA 575-767***/
@media (min-width:575px) and (max-width:767px) {

	header .logo img {
		width: 100px;
	}

	#booking-open-button {
		background-color: #bac5b9;
		border: 0.5px solid transparent;
	}

	#booking-open-button:hover {
		background-color: #fff;
		border: 0.5px solid var(--basic);
	}

	.booking-buttons .booking-close-button,
	.booking-buttons .booking-trigger {
		margin: 0 auto;
		flex-grow: 1;
	}

	.booking-buttons {
		position: fixed;
		top: auto;
		bottom: 0;
		right: 0;
		transform: translateY(0);
		width: 100%;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 1px 15px rgba(0, 0, 0, .5);
		background-color: #fff;
		justify-content: center;
		align-items: center;
	}

	.ex_res_buttons {
		text-align: center;
	}

	.ex_res_buttons a.button.big {
		display: block;
		width: 100%;
		max-width: unset;
	}

	footer #footer-contacts {
		max-width: 80%;
		margin: 13px auto;
	}

	footer #footer-menu ul {
		max-width: unset;
	}

	footer #footer-logos {
		margin-left: auto;
		margin-right: auto;
		border-left: unset;
		position: unset;
	}

	footer #footer-menu ul li {
		text-align: center;
		width: unset;
	}

	footer #footer-menu ul {
		display: flex;
		flex-direction: column;
		width: 100%;
		align-items: Center;
		justify-content: center;
	}

	footer #footer-logos li img {
		width: 170px;
	}

}

/*** MEDIA 320-574***/
@media (min-width:320px) and (max-width:574px) {

	header .logo img {
		width: 100px;
	}

	#booking-open-button {
		background-color: #bac5b9;
		border: 0.5px solid transparent;
	}

	#booking-open-button:hover {
		background-color: #fff;
		border: 0.5px solid var(--basic);
	}

	.booking-buttons .booking-close-button,
	.booking-buttons .booking-trigger {
		margin: 0 auto;
		flex-grow: 1;
	}

	.booking-buttons {
		position: fixed;
		top: auto;
		bottom: 0;
		right: 0;
		transform: translateY(0);
		width: 100%;
		padding: 15px;
		box-sizing: border-box;
		box-shadow: 0 1px 15px rgba(0, 0, 0, .5);
		background-color: #fff;
		justify-content: center;
		align-items: center;
	}

	.ex_res_buttons {
		text-align: center;
	}

	.ex_res_buttons a.button.big {
		display: block;
		width: 100%;
		max-width: unset;
		padding: 16px 10px;
	}

	footer #footer-contacts {
		max-width: 80%;
		margin: 13px auto;
	}

	footer #footer-menu ul {
		max-width: unset;
	}

	footer #footer-logos {
		margin-left: auto;
		margin-right: auto;
		border-left: unset;
		position: unset;
	}

	footer #footer-menu ul li {
		text-align: center;
		width: unset;
	}

	footer #footer-menu ul {
		display: flex;
		flex-direction: column;
		width: 100%;
		align-items: Center;
		justify-content: center;
	}

	footer #footer-logos li img {
		width: 170px;
	}

	main h3 {
		margin-top: 15px;
	}

	main h2 {
		font-size: 27px;
		line-height: 1.1em;
	}

	main .room-prop {
		font-size: 19px;
	}

	header .logo img {
		margin-left: -2em;
	}

}

main .mainhead {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	margin-top: -125px;
	z-index: 40;
	position: relative;
}

main .scroll-to-explore {
	position: absolute;
	z-index: 41;
	bottom: 10px;
	left: 50%;
	width: 30px;
	height: 30px;
	margin-bottom: 20px;
	display: block;
	animation: float 3s infinite;
}

#page-restaurant .scroll-to-explore{
	bottom: unset;
	top:  90px;
}

main .scroll-to-explore:hover {
	animation: float 3s linear 0s infinite;
	opacity: 0.8;
}

main .scroll-to-explore span {
	border-left: 1px solid white;
	border-bottom: 1px solid white;
	transform: rotate(-45deg);
	display: block;
	width: 1.5em;
	height: 1.5em;
	cursor: pointer;
}

@keyframes float {

	0%,
	20%,
	50%,
	80%,
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	40% {
		-webkit-transform: translateY(-1.6em);
		transform: translateY(-1.6em);
	}

	60% {
		-webkit-transform: translateY(-.8em);
		transform: translateY(-.8em);
	}

	0%,
	20%,
	50%,
	80%,
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	40% {
		-webkit-transform: translateY(-1.6em);
		transform: translateY(-1.6em);
	}

	60% {
		-webkit-transform: translateY(-.8em);
		transform: translateY(-.8em);
	}

}

.social-block .social_icons {
	list-style: none;
	flex-direction: row;
	display: flex;
	justify-content: flex-end;
	padding-left: 0;
	flex-wrap: wrap;
	margin-top: unset;
}

.social-block .social_icons li {
	padding-right: 9px;
}

.social-block .social_icons li a {
	display: inline-block;
	width: 44px;
	height: 44px;
	border-radius: 5%;
	background-repeat: no-repeat;
	background-position: center;
}

.social-block .social_icons li a:hover {
	opacity: 0.8;
}

.social-block .social_icons li a.fb {
	background-color: #265c9e;
	background-image: url('../images/fb-icon.svg');
}

.social-block .social_icons li a.vk {
	background-color: #3f66da;
	background-image: url('../images/vk-icon.svg');
}

.social-block .social_icons li a.telegram {
	background-color: #28a2d7;
	background-image: url('../images/telegram-icon.svg');
}

.social-block .social_icons li a.viber {
	background-color: #7f3e98;
	background-image: url('../images/vber-icon.svg');
}

.social-block .social_icons li a.wapp {
	background-color: #24b23a;
	background-image: url('../images/whatsapp-icon.svg');
}

.social-block .social_icons li a.twitter {
	background-color: #01a8e2;
	background-image: url('../images/twitter-icon.svg');
}

.cheminey {
	background-image: url('/images/5c00d6be8ff738b601ceb7280c545366.jpg');

}

.room-overview {
	background-image: url('/images/303dcf510e23c36c15d4aeff50bd1f2c.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	margin-top: -125px;
	z-index: 40;
	position: relative;
}

.contact_us {
	background-image: url('/images/8ad1f36e3aee5e074209bff4615c4598.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	margin-top: -125px;
	z-index: 40;
	position: relative;
}

.news {
	background-image: url('/images/83ed43b20692cc7b6757c304c8a2cd23.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	margin-top: -125px;
	z-index: 40;
	position: relative;
}

.galleryItsself {
	position: relative;
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
}

.category-list li {
	font: 500 13px Gotham, sans-serif;
	line-height: normal;
	height: auto;
	text-transform: uppercase;
	position: relative;
	margin: 5px 10px;
	letter-spacing: 1.5px;
	overflow: visible;
	text-align: center;
	white-space: nowrap;
	transition: .35s ease-in-out;
}



@media(max-width:576px) {
	.menu.category-list {
		display: none;
		transition: transform .4s ease-in-out;
	}

	#cat-list-wrapper:checked~.menu.category-list {
		display: flex;
		flex-direction: column;
	}

	#cat-list-wrapper:checked~label[for="cat-list-wrapper"]:after {
		transform: rotate(180deg);
		top: -12px;
		position: absolute;
	}

	.category-selector-item.wraps {
		padding: 15px;
		text-align: center;
		font: 500 14px Gotham, sans-serif;
		line-height: normal;
		line-height: 36px;
		font-weight: bold;
	}

	.category-selector-item {
		width: 100%;
		background-color: var(--basic);
		color: #fff;
		border: .5px solid transparent;
	}

	.category-list li.category-selector-item.active {
		font-weight: bold !important;
	}


	.category-list li a {
		color: #fff !important;
		padding: 19px 10px;
		display: block;
	}

	.category-list li:hover,
	.category-list li.active {
		background-color: #fff !important;
		color: var(--basic) !important;
		border: .5px solid var(--basic) !important;
	}



	.category-list li a:hover {
		color: var(--basic) !important;
	}

	label[for="cat-list-wrapper"]:after {
		content: '';
		display: inline-block;
		width: 1px;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 8px solid white;
		margin-left: 80vw;
		margin-top: 3vw;
		position: relative !important;
	}



	.category-list li:hover:after {
		background: none !important;
		margin: unset !important;
	}
}

.category-list li:hover:after,
.category-list li.active::after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #54585a;
	position: absolute;
	left: 0;
	bottom: 0;

}

.category-list {
	border-bottom: 1px solid #d5d5d5;
	margin-bottom: 30px !important;
	text-align: center;
	flex-direction: row !important;
	justify-content: center;
	flex-wrap: wrap;
}

.image-gallery-list .gallbox {
	overflow: hidden !important;
	max-width: 327px;

}

@media(max-width:1385px) {
	.image-gallery-list .gallbox {
		padding-left: 1em;
		padding-right: 1em;
	}
}

@media(min-width:326px) and (max-width:576px) {
	.image-gallery-list .gallbox {
		max-width: unset;
	}
}

.image-gallery-list img {
	transition: -ms-transform .4s ease;
	transition: -webkit-transform .4s ease;
	transition: transform .4s ease;
	-webkit-transition: -webkit-transform .4s ease;
	object-fit: cover;
	width: 100%;

}

.image-gallery-list img:hover {
	-ms-transform: scale(1.05);
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
	overflow: hidden;
}

.room-prop {
	display: block;
	font-size: 21px;
	line-height: 25px;
	text-transform: uppercase;
	letter-spacing: 1.79px;
	text-align: left;
	font-weight: 300;
}

.guest-room .room-type-img,
.veranda-classic .room-type-img,
.veranda-junior .room-type-img,
.veranda-one-bedroom .room-type-img {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 584px;
}

.guest-room .room-type-img {
	background-image: url('/images/303dcf510e23c36c15d4aeff50bd1f2c.jpg');
}

.veranda-classic .room-type-img {
	background-image: url('/images/c643573b1f25762a604c63e973ada46f.jpg');
}

.veranda-junior .room-type-img {
	background-image: url('/images/f343f5ea946c7eac89295e150bfec6a4.jpg');
}

.veranda-one-bedroom .room-type-img {
	background-image: url('/images/cac36fba3a060280cea04f774187da32.jpg');
}

@media(min-width:768px) and (max-width:1200px) {

	.guest-room .room-type-img,
	.veranda-classic .room-type-img,
	.veranda-junior .room-type-img,
	.veranda-one-bedroom .room-type-img {
		height: unset !important;
	}
}

@media(max-width:767px) {

	.guest-room .room-type-img,
	.veranda-classic .room-type-img,
	.veranda-junior .room-type-img,
	.veranda-one-bedroom .room-type-img {
		height: 28.14rem;
		margin-top: 40px;
	}
}

.guest-room .text p,
.veranda-classic .text p,
.veranda-junior .text p,
.veranda-one-bedroom .text p {
	font-weight: 300;
}


@media only screen and (max-width: 1024px) {

	.guest-room .text h2,
	.veranda-classic .text h2,
	.veranda-junior .text h2,
	.veranda-one-bedroom .text h2 {
		font-size: 30px;
		line-height: 1;
		margin-top: 23px;
	}
}

.room-overview.meet {
	background-image: url('/images/3fc1e930b2948bb57ea37483a69445af.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	margin-top: -125px;
	z-index: 40;
	position: relative;
}

.big-title {
	font: 500 37px/1 Gotham, sans-serif;
	letter-spacing: -.5px;
	margin-bottom: 25px;
	text-align: center;
}

.social-ev .room-type-img {
	background-image: url('/images/c710146a0a4eb83a16f0e2106a4aa4f3.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 584px;
}

.social-ev .text,
.corp-ret .text {
	font-weight: lighter;
	margin-left: 3rem;
	margin-right: 3rem;
}

@media(max-width:1315px) {

	.social-ev .text,
	.corp-ret .text {
		margin-left: unset;
		margin-right: unset;
	}
}

@media only screen and (max-width: 1024px) {

	.social-ev .text h2,
	.corp-ret .text h2 {
		font-size: 30px;
		line-height: 1;
		margin-top: 23px;
	}
}

.corp-ret .room-type-img {
	background-image: url('/images/2d8169af4603be55e0ff34fb483d1ec8.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 584px;
}

.room-button a.button.big {
	text-transform: capitalize;
}

@media(min-width:768px) and (max-width:1200px) {
	.room-button a.button.big {
		width: unset;
	}
}

@media(max-width:767px) {
	.room-button {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.room-button a.button.big {
		width: 100%;
	}
}

@media(min-width:768px) and (max-width:1200px) {

	.social-ev .room-type-img,
	.corp-ret .room-type-img {
		height: unset !important;
	}
}



@media(max-width:767px) {

	.social-ev .room-type-img,
	.corp-ret .room-type-img {
		height: 28.14rem;
		margin-top: 40px;
	}
}

.restaurant {
	background-image: url('/images/22748228f0518896fc5647f6534242f0.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 584px;
	position: relative;
}

.title-rest h2 {
	text-align: center;
	padding-top: 20px;
}

.description-rest a {
	text-decoration: underline;
}

.description-rest a:hover {
	text-decoration: none;
}

.description-rest strong {
	text-transform: capitalise;
	font-size: 24px;
}

.description-rest .hours-oper {
	text-align: center;
	font-size: 18px;
	line-height: 1.3;
	letter-spacing: .01em;
}

#contact_us>* {
	position: relative;
}

#contact_us .title_contact {
	text-align: center;
}

#contact_us :is(input, textarea) {
	border: thin solid #bac5b9;
	display: block;
	font: 15px/50px Cinzel, sans-serif;
	letter-spacing: 2px;
	text-transform: uppercase;
	width: 100%;
	min-height: 50px;
	padding: 0 27px;
	background: #fff;
	resize: none;
}

#contact_us .btn-submit {
	position: relative;
	display: inline-block;
	min-width: 260px;
	overflow: visible;
	color: #131212;
	background: #fff;
	font-size: 17px;
	line-height: 23px;
	font-family: Cinzel, sans-serif;
	letter-spacing: .64px;
	-moz-text-align-last: auto;
	text-align-last: auto;
	text-decoration: none;
	text-align: center;
	white-space: nowrap;
	transition: .35s ease-in-out;
	cursor: pointer;
	margin-top: 25px;
	padding: 10px 25px;
	border: 1px solid rgba(0, 0, 0, .3);
}

#contact_us .btn-submit:hover {
	background-color: rgba(0, 0, 0, .1);
}

/*
#contact_us .btn-submit.waiting_mode{
	opacity:0.5;
}
*/
#contact_us .formErrorContent {
	background: #b31919;
	position: relative;
	z-index: 5001;
	color: #fff;
	width: 150px;
	font-size: 11px;
	padding: 5px 11px;
	border-radius: 5px;
	border-bottom-left-radius: 0;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .3);
}

.left_section h6 {
	color: #54585a;
	text-transform: Uppercase;
	font: 500 37px/1 Gotham, sans-serif;
	letter-spacing: .5px;
	text-align: center;
	margin-top: 37px;
	margin-bottom: 14px;
}

.left_section>* {
	font-family: 'Gotham-Book', sans-serif;
}

.left_section .email span {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23667' d='M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z'/%3E%3C/svg%3E");
}

.left_section .pho span {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23667' d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E");
}

.left_section .mon span {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23667' d='M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E");
}

.left_section .pho span,
.left_section .email span,
.left_section .mon span {
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
	display: inline-block;
	height: 13px;
	width: 13px;
	padding-right: 12px;
	margin-right: 11px;
}

address,
.pho,
.fax,
.email {
	display: flex;
	align-content: center;
	align-items: center;
	margin-bottom: 8px;
	line-height: 1.42857143;
}

.pho a {
	margin-left: 7px;
}


@media(max-width:767px) {

	.left_section h6,
	#contact_us h1 {
		font-size: 1.5em;
	}
}

.grid-container-news {
	padding-block: 2rem;
	width: min(95%, 96rem);
	margin: 0 auto;
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(3, 1fr);

}

@media (min-width:676px) and (max-width:992px) {
	.grid-container-news {
		gap: 1rem;
		grid-template-columns: repeat(2, 1fr);
	}

	.grid-container-news .grid-item .card-body {
		top: 35%;
	}

	.grid-container-news .grid-item {
		min-height: calc(280px * 1.5) !important;
	}
}

@media (max-width:675px) {
	.grid-container-news {
		grid-template-columns: 1fr;
	}

	.grid-container-news .grid-item .card-header {
		max-width: unset !important;
	}

	.grid-container-news .grid-item {
		min-height: calc(280px * 1.3) !important;
	}

	.grid-container-news .grid-item .card-body {
		padding: 1.8rem !important;
		top: 35% !important;
	}
}

@media(max-width:400px) {
	.grid-container-news .grid-item .card-body {
		padding: 1.7rem !important;
		top: 30% !important;
	}
}


.grid-container-news .grid-item .card-header {
	max-width: 31rem;
}

.grid-container-news .grid-item {
	position: relative;
	min-height: calc(280px * 1.5);
	box-shadow: 0px 2px 3px var(--basic);
}

.grid-container-news .grid-item .card-body {

	background-color: #fff;
	padding: 2rem;

}

@media(min-width:1200px) and (max-width:1450px) {
	.grid-container-news .grid-item .card-body {
		top: 23%;
	}

}

.grid-container-news .grid-item .date {
	padding-right: 20px;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	position: relative;
	font-size: 11px;
}

.grid-container-news .grid-item h3 a {
	color: #5d7975;
}

.grid-container-news .grid-item h3 {
	letter-spacing: -1.1px;
	font-size: 24px;
}

.grid-container-news .grid-item .card-text-start {
	font-size: 16px;
	line-height: 1.6em;
	color: #54585a;
	margin-bottom: 20px;
}

.grid-container-news .grid-item .read-more-link,
.read-more-link.see {
	margin-top: 20px;
	color: #5d7975;
	font-family: Cinzel;
	font-weight: 800;
	font-size: smaller;
	cursor: pointer;
	position: relative;
}

.grid-container-news .grid-item .read-more-link:hover,
.read-more-link.see:hover {
	opacity: .8;

}

.grid-container-news .grid-item .read-more-link:focus,
.read-more-link.see:focus {
	outline: none;
}

.grid-container-news .grid-item .read-more-link:hover::after,
.read-more-link.see:hover::after {
	width: 0;
	left: auto;
	right: 0;

}

.grid-container-news .grid-item .read-more-link::after,
.read-more-link.see::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: #5d7975;
	transition: all .4s ease 0ms;
}

.title_h1 {
	font: normal 28px/1em Cinzel, sans-serif;
	color: #5d7975;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-bottom: 40px;
}


.pagination {
	display: flex;
	text-align: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	font-weight: 400;
	font-size: 15px;
	list-style: none;
}

.pagination a,
.pagination span {
	display: inline-block;
	vertical-align: top;
	margin: 0 2px;
	min-width: 32px;

	height: 32px;
	background: var(--white);
	color: #181c2a;

	text-align: center;
	text-transform: uppercase;
	padding: 0px 3px;
	border-radius: 0px;
	line-height: 29px;
	text-decoration: none;
}

.pagination span {
	border: 1px solid #181c2a33;
}

.pagination a {
	border: 1px solid #181c2a;
}

.pagination a:hover {
	background: #181c2a;
	color: var(--white);
}

.uscl-list {
	display: block ! important;
	visibility: visible !important;
	opacity: 1 !important;
}

.reviews_item {
	background-color: #bac6b821;
	max-height: 400px;
	margin-top: 1.5rem;
	margin-bottom: 6rem;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
	min-width: 408px !important;
	box-shadow: 1px 2px 3px var(--basic);
}

@media(min-width:768px) and (max-width:992px) {
	.reviews_item {
		min-width: 321px !important;
		max-height: 475px !important;
	}

	.reviews_item .text {
		min-height: 247px !important;
	}

	.reviews_item .avatar {
		margin: -15px auto -60px !important;
	}
}

@media(max-width:767px) {
	.reviews_item {
		min-width: 450px !important;
		max-height: 475px !important;
	}

	.reviews_item .text {
		min-height: max-content !important;
	}

	.reviews_item .avatar {
		margin: -10px auto -60px !important;
	}
}

@media(max-width:459px) {
	.reviews_item {
		min-width: 327px !important;

	}

	.reviews_item .name {
		margin: 49px auto 0 !important;
	}
}

.reviews_item .name {
	font-size: 1.25rem;
	margin: 70px auto 0;
	text-align: center;
}

.reviews_item .text {
	margin: 17px 25px;
	text-align: justify;
	min-height: 240px;

}

.reviews_item .avatar {
	width: 106px;
	margin: -40px auto -60px;
	text-align: center;
}

.reviews_item .avatar>img {
	border-radius: 50% !important;
	width: 100%;
	height: unset !important;
}

.reviews_item .bifa {
	display: block;
	width: 50px;
	height: 50px;
	background-color: #2590f4;
	border-radius: 50%;
	text-align: center;
	margin: -1.5rem auto;
}

.reviews_item .bifa>img {
	display: inline-block;
	padding: 0.75rem;
}

.view_standard #big-image a {
	position: relative;
	padding-bottom: 66.5%;
	height: 0px;
}

.view_standard #list-small-images a.current {
	opacity: 1;
}

.payment .card-header {
	background-color: #5d7975;
	color: #fff;
	text-align: center;
}

.payment .card-header .card-title {
	margin-top: 0;
	margin-bottom: 0;
}

.item-amount,
.item-currency {
	font-size: 24px;
	font-weight: bolder;
}

.share_block h5 {
	color: #5d7975 !important;
	margin: 5px;
	font-size: 1rem !important;
	font-weight: lighter;
}

.share_block svg {
	width: 15px;
}

.description .desc {
	text-transform: uppercase;
	letter-spacing: 1.5px;
}

.payment .dateSelectorOpen {
	max-width: 215px;
}


.ex_res_buttons.reserve a {
	width: 200px;
	padding: 13px 20px;
	background-color: var(--basic);
}

.ex_res_buttons.reserve a:hover {
	background-color: #fff;
}

#bookNow>* {
	display: flex;
	justify-content: center;
	align-items: center;
}

select[name="p"],
select[name="c"] {
	background-color: #fff !important;
	font-family: Cinzel;

	color: #747474;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: -.8px;
	padding: 3px 4px;

}



#list-small-images {
	overflow: hidden;
}

#list-small-images a {
	opacity: 0.5;
	padding: 5px;

}

#list-small-images a.current img {
	border-color: var(--basic);
}

@media(max-width:767px) {
	#list-small-images .small-image>img {
		max-width: unset;
	}
}

/*div>p strong span{font-size:0;}*/

#dateSelector {
	display: none;
	position: fixed;
	top: 0px;
	right: 0px;
	left: 0px;
	bottom: 0px;
	z-index: 99999;
	font-size: 14px;
}

#dateSelector .overlay {
	z-index: 1;
	position: absolute;
	top: 0px;
	right: 0px;
	left: 0px;
	bottom: 0px;
	background-color: #00000088;

}

#dateSelector .content {
	z-index: 2;
	position: absolute;
	top: 50%;
	left: 50%;
	background-color: #FFFFFF;
	max-width: 98%;
	max-height: 98%;
	width: 600px;
	transform: translate(-50%, -50%);
	padding-top: 15px;
	overflow: auto;
}

#dateSelector .numbers-selector {
	padding: 0px 10px;
	display: flex;
	gap: 10px;
	align-items: center;
}

#dateSelector .numbers-selector>label {
	font-weight: bolder;
}

#dateSelector .numbers-selector>div {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

#dateSelector .numbers-selector>div input+label {
	display: block;
	padding: 0px 10px;
	line-height: 30px;
	border: 1px solid #C0C0C0;
}

#dateSelector .numbers-selector>div input:checked+label {
	background-color: #bac5b9;
	border-color: #bac5b9;
}

#dateSelector .content .blocks {
	display: flex;
}

@media(max-width:550px) {
	#dateSelector .content .blocks {
		flex-direction: column !important;
		top: 8% !important;
	}

	#dateSelector .content .arrivalInfo,
	#dateSelector .content .departureInfo {
		width: 100% !important;
	}

	#dateSelector .content .blocks>div {
		padding: 7px !important;
	}
}

@media(max-width:550px) and (min-width:456px) {
	#dateSelector .calendar .days li a:not(.free)::before {
		left: 10px !important;
	}
}

@media(max-width:455px) and (min-width:327px) {
	#dateSelector .calendar .days li a:not(.free)::before {
		left: 2px !important;
	}
}

#dateSelector.loading .content:after {
	content: '';
	position: absolute;
	left: 0px;
	bottom: 0px;
	right: 0px;
	top: 0px;
	z-index: 4;
	background-color: #00000044;
	background-image: url('../images/loader.svg');
	background-repeat: no-repeat;
	background-position: center center;
}


#dateSelector .content .blocks>div {
	padding: 10px 10px;
}

#dateSelector .content .action.close {
	position: absolute;
	top: 0px;
	right: 5px;
	font-size: 21px;
}

#dateSelector .content .arrivalInfo {
	width: 45%;
}

#dateSelector .calendar,
#dateSelector .menu.ranges {
	border: 1px solid #bac5b975;
	border-radius: 5px;
	padding: 5px;
}

#dateSelector .calendar .head {
	display: flex;
	justify-content: space-between;
	padding: 6px 0;
	border-bottom: 1px solid #bac5b975;
}

#dateSelector .calendar .days {
	display: grid;
	grid-template-columns: repeat(7, 14%);

}

#dateSelector .calendar .days li {
	font-size: 12px;
	text-align: center;
	padding: 0px 0 8px;
	font-weight: normal;
	font-size: 1rem;
	color: #646262;
	margin-right: 1px;
}

#dateSelector .calendar .days li.active a {
	background-color: #bac5b9;
	border-color: #bac5b9;
	color: #fff;
}

#dateSelector .calendar .days li a {
	display: block;
	border: 1px solid #d3d3d3;
	font-weight: normal;
	color: #555555;
	padding: 3px 4px;
	border-radius: 5px;
}

#dateSelector .calendar .days li a:hover {
	border: 1px solid #bac5b9;
	border-radius: 5px;
	font-weight: bold;
}

#dateSelector .calendar .head a {
	font-size: 1.25em;
	font-weight: bold;
}



#dateSelector .calendar .head .month-info {
	display: flex;
	justify-content: space-between;
	font-size: 1.15em;
	gap: 7px;
}

#dateSelector .calendar .head .month {
	font-weight: bold;
}

#dateSelector .calendar .days li a:not(.free) {
	background-color: #f54444;
	opacity: 0.75;
	position: relative;
}

#dateSelector .calendar .days li a:not(.free)::before {
	position: absolute;
	top: -2px;
	left: -5px;
	content: '';
	width: 1px;
	height: 100%;
	color: #808080;
	margin-left: 10px;
	rotate: 45deg;
	z-index: 999 !important;
	border-top: solid 24px #808080;
}

.departureInfo {
	flex-grow: 1;
}

.departureInfo p .booknow.button.active {
	border: 1px solid #bac5b9;
}

#dateSelector .ranges {
	width: 100%;
	height: 259px;
	overflow: auto;
}

#dateSelector .ranges .startingfrom {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	border-bottom: 1px solid #bac5b975;
}

#dateSelector .ranges .startingfrom span:nth-child(2) {
	padding-left: 83px;
}

#dateSelector .ranges li {
	display: flex;
	justify-content: space-between;
}

#dateSelector .ranges li.active {
	background-color: #EfEFEF;
	border-bottom: 1px solid #D0D0D0;
}

#dateSelector .booknow:not(.active) {
	cursor: no-drop;
	filter: grayscale(1);
	opacity: 0.1;
}

#dateSelector .fluxtitle {
	color: #2b3836;
	display: flex;
	justify-content: center;
	font-size: 1.2em;
	margin-bottom: 5px;
}

#dateSelector .menu.ranges .range-end {
	color: #788a76;
	cursor: pointer;
	text-decoration: underline;
	min-width: 82px;
}

#dateSelector .menu.ranges .nights {
	display: flex;
	justify-content: space-between;
	font-weight: bold;
	min-width: 36px;
	align-items: center;
}

#dateSelector .menu.ranges .nights:before {
	background-image: url('../images/moon.png');
	opacity: 0.5;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 18px;
	content: '';
	display: inline-flex;
	width: 18px;
	margin-right: 6px;
}

#dateSelector .menu.ranges .total:after {
	content: '€';
	content: ' lei';
	display: inline-block;
	margin-left: 4px;
}

#dateSelector .menu.ranges li>* {
	font-size: 16px;
	padding: 6px 0;
}

#booking-page .left_section>div>* {
	line-height: 2rem;
}

#booking-page .left_section .description>* {
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 1rem !important;
	letter-spacing: unset !important;
}

#booking-page .left_section a {
	color: #28625A;
	font-weight: bold;
	font-size: 0.95rem;
}

#booking-page .moreAbout {
	color: #28625A;
	margin-top: 0.75rem;
	font-weight: bold;
	font-size: 0.95rem;
	display: flex;
	justify-content: center;
}

#booknow .checkbox-wrapper .flex {
	display: flex;
	flex-direction: row;
	margin-bottom: 10px;
}

#booknow .checkbox-wrapper .flex input {
	flex: 0 0 13px;
}

#booknow .checkbox-wrapper .flex .required {
	align-items: center;
	display: flex;
}

#booknow .checkbox-wrapper .flex .required>span,
#booknow .checkbox-wrapper .flex .required>a {
	font-size: 14px;
	margin-right: 5px;
}

#booknow .col-form-label {
	font-family: 'Gotham-Book', sans-serif;
	font-size: 18px;
}

#booknow #booknow-bday {
	height: 38px;
}

/* booking modal */

.booking-modal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.5);
}

.booking-modal-content {
	background: #fff;
	margin: 10% auto;
	padding: 20px;
	width: 400px;
	border-radius: 8px;
	position: relative;
	text-align: center;
}

.booking-modal-close {
	position: absolute;
	right: 10px;
	top: 10px;
	cursor: pointer;
	font-size: 20px;
}

/* FOODMENU */

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#dish-menu {
	margin: 40px auto;
	font-family: "Open Sans", sans-serif;
	color: #2c2c2c;
	scroll-margin-top: 150px;
	scroll-behavior: smooth;
}

.dish-menu-finger-animation{
	content: '';
	display: block;
	position: absolute;
	top: -40px;
	right: 0;
	width: 40px;
	height: 40px;
	background-image: url('../images/finger-slider.svg');
}

.dish-menu-tabs-wrapper {
	position: sticky;
	top: 100px;
	z-index: 1;
	background-color: #fff;
	padding: .5em;
}

.dish-menu-tabs-wrapper::after {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 3em;
	height: calc(45px + .5em);
	background-image: linear-gradient(to left, #fff, transparent);
	pointer-events: none;
}

.dish-menu-tabs {
	position: relative;
	display: flex;
	gap: 10px;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-right: 5em;
	cursor: grab;
	user-select: none;
	scroll-behavior: smooth;
}

.dish-menu-tabs.dragging {
	cursor: grabbing;
	scroll-behavior: auto; /* важно: отключаем smooth во время drag */
}

.dish-menu-tabs::-webkit-scrollbar {
	display: none;
}

.dish-menu-tabs a,
.dish-menu-tabs * {
	-webkit-user-drag: none;
}

.dish-menu-tab .btn {
	display: block;
	padding: 10px 18px;
	border-radius: 8px;
	text-decoration: none;
	background: #e8e1d3;
	color: #3a3a3a;
	font-weight: 600;
	transition: 0.2s;
	text-wrap: nowrap;
}

.dish-menu-tab.active .btn {
	background: #6b8e23;
	color: #fff;
}

.dish-menu-tab .btn:hover {
	background: #7fa32c;
	color: #fff;
}

.dish-menu-category-title{
	display: block;
	text-align: center;
	margin: .5em;
}

.dish-menu-category>ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	padding: 0;
	scroll-margin-top: 110px;
}

.dish-menu-item {
	list-style: none;
	background: #fffdf7;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
	transition: 0.25s;
	display: flex;
	flex-direction: column;
	cursor: pointer;
	gap: 0.8em;
	padding: .8em;
	max-width: 335px;
}

.dish-menu-item-text{
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	padding: .8em;
}

.lazy, .wait{
	display: flex;
	position: relative;
	opacity: 0.5 !important;
	width: 100%;
}

.lazy::after, .wait::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 30px;
	height: 30px;
	margin: -15px 0 0 -15px;
	border: 2px solid #000;
	border-right-color: transparent;
	border-radius: 50%;
	animation: spin 0.8s linear infinite;
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.dish-menu-item:hover {
	transform: translateY(-5px);
}

.dish-menu-item-image img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.dish-menu-item h4 {
	font-size: 15px;
	padding: 12px 12px 5px;
	margin: 0;
	color: #2e4d34;
	line-height: normal;
}

.dish-menu-item-weight,
.dish-menu-item-alergens,
.dish-menu-item-volume {
	font-size: 14px;
	color: #777;
}

.mt-auto{
	margin-top: auto;
}

.dish-menu-item-price {
	padding: 12px 0;
	font-weight: bold;
	color: #3e5f3e;
	display: flex;
	gap: 0.2em;
	align-items: center;
	font-size: 16px;
	border-top: 1px solid #eee;
}

.dish-menu-category {
	display: none;
}

.dish-menu-category.active {
	display: block;
}

.dish-menu-item-announce,
.dish-menu-item-announce>* {
	font-size: 1rem;
	line-height: normal;
	letter-spacing: unset;
}

.dish-menu-item-stickers {
	position: absolute;
	top: 1.2em;
	left: 1.2em;
}

.dish-menu-item-sticker {
	padding: .1em;
	background-color: #fffdf7d4;
	border-radius: .5em;
	width: 50px;
	height: 50px;
}

.dish-menu-item-sticker img {
	width: inherit;
	height: inherit;
}

@media (max-width: 1100px) {
	.dish-menu-category>ul {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.dish-menu-category>ul {
		grid-template-columns: 1fr;
		justify-items: center;
	}
}

.dish-menu-category {
	transform: translateY(10px);
	transition: none;
	width: 100%;
	left: 0;
	top: 0;
}

.dish-menu-categories {
	min-height: 600px;
}

.dish-menu-category.active {
	position: relative;
}

.fade-in {
	animation: fadeInUp 0.35s ease forwards;
}

.fade-out {
	animation: fadeOutDown 0.25s ease forwards;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(15px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeOutDown {
	from {
		opacity: 1;
		transform: translateY(0);
	}

	to {
		opacity: 0;
		transform: translateY(10px);
	}
}

.dish-menu-item {
	opacity: 0;
	transform: translateY(15px);
	animation: itemFade 0.4s ease forwards;
	animation-delay: var(--animation-delay);
}

@keyframes itemFade {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* MODAL */

.modal {
	position: fixed;
	inset: 0;
	display: none;
	z-index: 1050;
	pointer-events: none;
}

.modal h5 {
	font-family: 'Cinzel', sans-serif;
	font-weight: lighter;
	text-transform: uppercase;
	margin: 0;
}

.modal.show {
	display: block;
}

.modal-dialog {
	position: relative;
	margin: 1.75rem auto;
	width: calc(100% - 2rem);
	max-width: 500px;
	pointer-events: none;
	pointer-events: auto;
}

.modal-dialog-centered {
	display: flex;
	align-items: center;
	min-height: calc(100vh - 1.75rem * 2);
}

.modal-sm{
	max-width: 300px;
}

.modal-lg{
	max-width: 800px;
}

.modal-xl{
	max-width: 1140px;
}

.modal-content {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	pointer-events: auto;
	transform: translateY(-20px);
	transition: transform .3s ease, opacity .3s ease;
	opacity: 0;
}

.modal.show .modal-content {
	transform: translateY(0);
	opacity: 1;
}

.modal-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	opacity: 0;
	transition: opacity .3s ease;
	z-index: 1040;
}

.modal-header{
	margin-bottom: 1em;
}

.modal-backdrop.show {
	opacity: 1;
}

.text-success{
	color: #008800;
}

.modal-info {
	font-size: 1rem;
	line-height: initial;
	letter-spacing: normal;
	padding: 10px;
	margin-bottom: 14px;
}