@import url('https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,300..700;1,300..700&display=swap');

:root {
	--highlight-font: "Cormorant", serif !important;
}

/*video block*/
.home #single-video-1 #video_page_container .video_icon,
.home #single-video-1 #video_page_container .info{
	display:none;
}

/*icon section*/

.section_icons .services_list .service_wrap .service{
	background: var(--bg);
}

@media (min-width: 1200px) {
  body.single-room .section_icons .container,
  body.meeting .section_icons .container {
    width: calc(100% - 160px);
    max-width: 1000px;
  }
}

.section_icons .services_list .service_wrap .icon {
  font-size: 2.5em;
}

.section_icons .services_list .service_wrap .label {
	font-weight: 400;
}
.section_icons .services_list .service_wrap .label strong {
	font-weight: 600;
}

/*footer*/

#footer .gds a {
	color: var(--highlighted);
}

#footer .gds strong, #footer .gds b {
	font-weight: 600;
}

#footer_bottom .contacts .element.element_phone a,
#footer_bottom .contacts .element.element_mail a{
	color: var(--highlighted);
}

/*address*/

#map_wrapper #contact_box .wrap .element::before {
	font-size: 22px;
}

/*header*/

@media (min-width: 992px) {
	.custom #header #header_contacts .element.email a {
		color: var(--hover-l-20);
	}
}

#header_contacts .element.email a{
	color: var(--highlighted-d-20);
}

#sidebar_menu ul.menu > li.current-menu-item > .menu_label > a,
#sidebar_menu ul.menu > li.current-menu-parent > .menu_label > a {
	text-transform: capitalize !important;
}

.slideshow_container .caption {
    background-color: #00000040;
}

.slideshow_container .caption .title,
.slideshow_container .caption .subtitle {
    /*text-shadow: 1px 1px 3px #000;*/
}

.slideshow_container .caption .title {
    font-size: 3.125rem;
    letter-spacing: unset;
}

.page_on_front .slideshow_container .caption .subtitle {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-bottom: 30px;
}

.slideshow_container .caption .subtitle span {
    font-size: 6em;
    opacity: 0.59;
    font-family: var(--highlight-font);
}

.section.section_bg_dark .view_all .info a {
	color: var(--hover-l-20);
}

.the_content strong, .the_content b, .description strong, .description b {
    font-weight: 500;
}

.container.container_large .content_container,
.container.container_large .content_container,
.aside_content.aside_content .content_main_wrap, .aside_content.single_image .content_main_wrap {
	background: transparent;
}

.the_content, .description {
	font-size: 18px;
}

#rooms_amenities_wrap .wrap {
	background: var(--bg);
	color: var(--main-d-10);
	border: 1px solid var(--main-d-10);
}

#rooms_amenities .room_features_list .box_title,
#rooms_amenities .room_details .elem .label{
	color: var(--main-d-10);
	font-weight:600;
}

#rooms_amenities_wrap .section_title {
	color: var(--main-d-10);
}


/* Customization Header & Slideshow */
@media (min-width: 767px) {
	#header {
		box-shadow: unset;
		height: 80px;
	}

	#header .wrap {
		height: 100%;
	}

	#header_wrapper {
		height: 80px;
	}

	#header_wrapper.custom #header {
		background-color: #fff;
	}

	#header_wrapper.custom #logo img.custom {
		display: none !important;
	}

	#header_wrapper.custom #logo img.original {
		display: inline !important;
	}

	#header_contacts {
		position: fixed;
		inset: auto 0 0 0;
		display: flex;
		justify-content: space-between;
		padding-block: 24px;
		padding-inline: 30px;
		margin: unset;
		background-color: #fff;
		z-index: 900;
	}

	#header_contacts::before {
		content: '';
		position: fixed;
		inset: 0 auto auto 0;
		width: 30px;
		height: 100vh;
		background-color: #fff;
		transform: translateY(0) !important;
		z-index: 900;
	}

	#header_contacts::after {
		content: '';
		position: fixed;
		inset: 0 0 auto auto;
		width: 30px;
		height: 100vh;
		background-color: #fff;
		transform: translateY(0%) !important;
		z-index: 900;
	}

	.slideshow_container {
		padding: 0 30px;
		background-color: #fff;
	}

	.slideshow_container.size_l {
		height: calc(100vh - 81px);
	}

	#main_book_wrapper {
		top: 15px;
		right: 30px;
		height: 45px;
		width: 150px;
	}

	#header_wrapper.show_cta #main_book_wrapper {
		width: 150px;
	}

	#main_book_wrapper .main_book {
		width: 100%;
		height: 100%;
	}

	#header_wrapper.show_cta #header .wrap .right_col {
		margin-left: auto;
	}

	#header_contacts .element {
		width: auto;
	}

	#logo {
		margin-inline: auto;
		height: 65px;
		line-height: 65px;
		transform: translateX(-50%);
		position: absolute;
		left: 50%;
		width: 300px;
	}

	.open_menu .icon {
		border: unset;
		height: 2px;
		background: var(--header-color-associated);
	}

	#header_wrapper.custom .open_menu .icon:before {
		background: var(--header-color-associated);
	}

	.open_menu .icon:before {
		margin-top: -10px;
		clip-path: inset(0 25% 0 0);
		transition: clip-path 0.2s ease-in-out;
	}

	.open_menu .icon:after {
		position: absolute;
		left: 0;
		width: 100%;
		content: "";
		display: block;
		height: 2px;
		clip-path: inset(0 0 0 25%);
		background: var(--header-color-associated);
		top: 50%;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-ms-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
		margin-top: 8px;
		transition: clip-path 0.2s ease-in-out;
	}

	.open_menu:hover .icon, .open_menu:hover .icon::after {
		background-color: var(--third);
	}

	.open_menu:hover .icon::before,
	.open_menu:hover .icon::after {
		clip-path: inset(0 0 0 0);
	}

	.slideshow_container .arrow.prev {
		right: 60px;
		bottom: 180px;
	}

	.slideshow_container .arrow.next {
		right: 60px;
		bottom: 120px;
	}

	/* Header Scroll Effect */
	#header_contacts {
		transition: padding-block 0.3s ease;
	}

	#header_contacts.scrolled {
		padding-block: 0;
	}

	#header_contacts .address.element,
	#header_contacts .contact.element {
		transition: opacity 0.3s ease, width 0.3s ease, margin 0.3s ease;
		opacity: 1;
		overflow: hidden;
		white-space: nowrap;
	}

	#header_contacts.scrolled .address.element,
	#header_contacts.scrolled .contact.element {
		opacity: 0;
		width: 0;
		margin: 0;
		padding: 0;
	}

	.de_block, #footer {
		padding-inline: 30px;
	}

	#footer {
		padding-bottom: 30px;
	}

	.offer_wrap .offer .content {
		inset: 0;
	}
}

@media (max-width: 991px) {
	#logo img.original {
		display: inline !important;
	}

	#logo img.custom {
		display: none !important;
	}
}

@media (min-width: 767px) and (max-width: 991px) {
	#header_contacts.scrolled {
		height: 30px;
	}
}

@media (max-width: 767px) {
	#header_contacts {
		position: fixed;
		inset: auto 10px 70px auto;
		z-index: 901;
		display: flex;
		flex-direction: column;
		gap: 5px;
	}

	#header_contacts .element {
		display: flex;
		flex-direction: column;
		gap: 5px;
	}
}

@media (min-width: 767px) {
	#menu_sidebar_wrap .menu_sidebar #sidebar_logo img{
		max-width: 300px;
	}
}

.de_block_post_preview.carousel_simple .item_wrap .item .content_wrap,
.de_block_post_preview.grid_margin .item_wrap .item .content_wrap,
.de_block_post_preview.grid .item_wrap .item .content_wrap {
	inset: 0;
	outline: 1px solid white;
	outline-offset: -30px;
}

.de_block_post_preview.carousel_simple .item_wrap .item .content_wrap .description,
.de_block_post_preview.carousel_simple .item_wrap .item .content_wrap .more,
.de_block_post_preview.grid_margin .item_wrap .item .content_wrap .description,
.de_block_post_preview.grid .item_wrap .item .content_wrap .more,
.de_block_post_preview.grid .item_wrap .item .content_wrap .description,
.de_block_post_preview.grid .item_wrap .item .content_wrap .more {
	font-size: 1.125rem;
}

.de_block_post_preview.grid .item_wrap .item .content_wrap .more {
	transition: all 0.25s ease-in-out;
}

.de_block_post_preview.grid .item_wrap.big:nth-child(odd) {
	width: calc(50% - 15px);
	margin-right: 15px;
}

.de_block_post_preview.grid .item_wrap.big {
	margin-bottom: 15px;
}

.de_block_post_preview.grid .item_wrap .item .content_wrap .more:hover {
	background-color: var(--hover);
	border-color: var(--hover);
}


/* Sidebar Opening & Closing Transition (Natural Feel) */
#menu_sidebar_wrap {
	display: block !important; /* Override parent's display: none */
	visibility: hidden;
	background: transparent !important;
	pointer-events: none;
	transition: visibility 0s linear 0.4s; /* Wait for close anim to finish */
}

#menu_sidebar_wrap.open {
	visibility: visible;
	pointer-events: auto;
	transition-delay: 0s; /* Show immediately */
}

#menu_sidebar_wrap .menu_sidebar {
	background: var(--header);
	transform: translateX(-100%);
	width: 100%;
	/* Natural easing: Quick start, soft landing */
	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
	left: auto !important;
	box-shadow: 5px 0 15px rgba(0, 0, 0, 0.1);
}

#menu_sidebar_wrap.open .menu_sidebar {
	transform: translateX(0);
}

#menu_sidebar_wrap .close_sidebar {
	opacity: 0;
	transition: opacity 0.3s ease;
}

#menu_sidebar_wrap.open .close_sidebar {
	opacity: 1;
	transition-delay: 0.2s;
}

/* Sidebar Overlay Fix */
#sidebar_overlay {
	display: block !important;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.4s ease, visibility 0s linear 0.4s;
	pointer-events: none;
}

#sidebar_overlay.visible {
	visibility: visible;
	opacity: 1;
	transition-delay: 0s;
	pointer-events: auto;
}

#header_contacts .element.phone,
#footer_bottom .gds .title {
	display: none;
}

#anchors_wrap.fixed #anchors {
	top: 80px;
}

#map_wrapper #contact_box .wrap .element .element_pref,
#footer_bottom .contacts .element .element_pref,
#itinerary .itinerary_title .title,
.section_icons .services_list .service_wrap .label strong {
	font-weight: 600;
}

#header_wrapper.custom .languages > .desktop > ul > li .lang_sel_sel {
	color: var(--header-color-associated);
}