/* Layout fixes — align inner pages with home header behavior */

header.top.headertop {
	background-image: url(/assets/grand24hotel.com/wp-content/themes/grandhotel/images/top-bg.jpg);
	background-position: top center;
	background-repeat: no-repeat;
}

/* .cont970 has padding-top:50px globally — breaks nav inside header */
header nav.maintopmenu .cont970 {
	padding-top: 0 !important;
}

/* Extra TL widget in content area (not on home hero) */
body:not(.home) #tl-search-form.tl-search-form-main {
	display: none !important;
}

/* Home hides this until scroll; do not force visible (was causing black bar) */
.header-search-form {
	display: none;
}

@media screen and (min-width: 768px) {
	.header-search-form.search-form-fixed {
		display: block;
		position: fixed;
		top: 90px;
		left: 0;
		right: 0;
		z-index: 999998;
		width: 100%;
		background: rgba(0, 0, 0, 0.8);
	}
}

#tl-search-form2 {
	position: static;
	max-width: 1200px;
	margin: 0 auto;
}

.tl-search-form-main {
	position: relative !important;
	right: auto !important;
	left: auto !important;
	top: auto !important;
	bottom: auto !important;
	width: 100%;
	max-width: 970px;
	margin: 12px auto 0;
	z-index: 120;
}

.tl-search-form-inner#tl-search-form {
	display: none !important;
}

.wu_full[style*="position: absolute"],
.wu_full[style*="position:absolute"] {
	display: none !important;
}

/* —— Footer contacts: match index.html / theme layout —— */
.footer-contacts {
	overflow: hidden;
}

.footer-contacts > .cont970 {
	position: relative;
	padding-top: 0 !important;
	min-height: 713px;
	max-width: 970px;
}

.footer-contacts .footer-contacts-info {
	position: absolute !important;
	left: 0;
	top: 0;
	width: 350px;
	max-width: 38%;
	padding: 80px 12px 0 0;
	box-sizing: border-box;
	z-index: 25 !important;
	color: #ffffff !important;
	line-height: 1.45;
}

.footer-contacts .footer-contacts-info h2.gold {
	margin: 0 0 8px;
	font-size: 28px;
	line-height: 1.2;
}

.footer-contacts .footer-contacts-info h4 {
	margin: 18px 0 6px;
	font-size: 15px;
	font-weight: 600;
	color: #ffffff !important;
}

.footer-contacts .footer-contacts-info p {
	margin: 0 0 14px;
}

.footer-contacts .footer-contacts-info a.nodecor {
	color: #e7b22c !important;
	text-decoration: underline;
}

.footer-contacts .footer-contacts-info .gold {
	color: #e7b22c !important;
}

.footer-contacts .footer-map {
	position: absolute !important;
	top: 0;
	left: 0 !important;
	right: auto !important;
	width: 960px !important;
	max-width: none !important;
	height: 711px !important;
	padding: 140px 0 0 370px !important;
	margin: 0 5px !important;
	box-sizing: border-box;
	z-index: 1;
	background: transparent !important;
}

.footer-contacts #footer-map {
	width: 560px;
	height: 480px !important;
	min-height: 480px;
	max-width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 0;
	background-color: #5c5854;
}

.footer-contacts #footer-map img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.footer-contacts #footer-map [class*="ymaps"],
.footer-contacts #footer-map ymaps {
	width: 100% !important;
	height: 100% !important;
}

.footer-contacts .footer-map-overview {
	position: absolute !important;
	top: 0;
	left: 0 !important;
	right: auto !important;
	width: 980px !important;
	max-width: none !important;
	height: 713px !important;
	margin-left: -5px !important;
	z-index: 12 !important;
	pointer-events: none;
	background-repeat: no-repeat;
	background-position: top center;
}

.footer-contacts + .order-btn {
	position: relative;
	z-index: 20;
	margin-top: -20px;
}

.order-btn > .cont970 {
	padding-top: 0 !important;
	max-width: 970px;
}

.order-btn .footer-order {
	float: right;
	width: 571px;
	margin-top: 0;
}

footer .footer-contacts,
footer .footer-order {
	display: block !important;
}

@media (min-width: 1001px) {
	.footer-contacts .footer-map-overview {
		display: block !important;
	}
}

@media (min-width: 768px) and (max-width: 1000px) {
	.footer-contacts > .cont970 {
		min-height: 640px;
	}

	.footer-contacts .footer-contacts-info {
		position: relative !important;
		float: left;
		width: 36%;
		max-width: none;
		padding-top: 48px;
		padding-left: 16px;
	}

	.footer-contacts .footer-map {
		float: left;
		position: relative !important;
		width: 64% !important;
		height: 520px !important;
		padding: 100px 10px 0 40px !important;
		margin: 0 !important;
	}

	.footer-contacts #footer-map {
		width: 100%;
		height: 380px !important;
		min-height: 380px;
	}

	.footer-contacts .footer-map-overview {
		display: none !important;
	}
}

/* —— Footer landmarks gallery (horizontal row; works with or without Slick) —— */
footer .footer-photos {
	background-color: #000000;
	overflow: hidden;
}

footer .footer-photos .footer-gallery {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 16px 0;
	padding: 0 24px;
	min-height: 184px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

footer .footer-photos .footer-gallery .footer-photo {
	flex: 0 0 auto;
	float: none !important;
	margin: 7px;
}

footer .footer-photos .footer-gallery .footer-photo a {
	display: block;
}

footer .footer-photos .footer-gallery img {
	display: block;
	height: 170px;
	width: auto;
	max-width: none;
	border: 2px solid #a78020;
}

footer .footer-photos .footer-gallery .footer-photo p {
	display: none;
}

footer .footer-photos .footer-gallery.slick-initialized {
	display: block;
	overflow: hidden;
	padding: 0 35px;
	height: 181px;
	min-height: 184px;
}

footer .footer-photos .footer-gallery.slick-initialized .slick-list,
footer .footer-photos .footer-gallery.slick-initialized .slick-track {
	background: transparent;
}

footer .footer-photos .footer-gallery .slick-list {
	height: 181px !important;
}

footer .footer-photos .footer-gallery .slick-track {
	display: flex !important;
	align-items: center;
	min-height: 181px;
}

footer .footer-photos .footer-gallery .slick-slide {
	float: none !important;
	height: auto !important;
	min-height: 170px;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

footer .footer-photos .footer-gallery.slick-loading .slick-slide {
	visibility: visible !important;
}

footer .footer-photos .footer-gallery .slick-slide .footer-photo,
footer .footer-photos .footer-gallery .slick-slide.footer-photo {
	height: auto;
	width: auto;
}

footer .footer-photos .footer-gallery .slick-slide img {
	display: block !important;
	height: 170px !important;
	width: auto !important;
	max-width: none !important;
	opacity: 1 !important;
	visibility: visible !important;
}

footer .footer-photos .footer-gallery .slick-prev {
	left: 4px;
	z-index: 3;
}

footer .footer-photos .footer-gallery .slick-next {
	right: 4px;
	z-index: 3;
}

/* Theme stacks gallery images on small screens — keep horizontal strip */
@media (max-width: 767px) {
	footer .footer-photos .footer-gallery,
	footer .footer-photos .footer-gallery.slick-initialized {
		min-height: 184px;
		height: auto !important;
	}

	footer .footer-photos .footer-gallery img,
	footer .footer-gallery img {
		width: auto !important;
		height: 170px !important;
	}

	footer .footer-photos .footer-gallery .footer-photo p {
		display: none !important;
	}
}

@media (max-width: 500px) {
	footer .footer-photos .footer-gallery img {
		width: auto !important;
		height: 170px !important;
	}

	.footer-gallery {
		height: auto !important;
	}
}

/* Promo / category list — prevent floated text overlap */
.blocks-discount > ol > li {
	clear: both;
	overflow: hidden;
	list-style: none;
}

.block-discount {
	overflow: hidden;
	zoom: 1;
}

.block-discount-info {
	overflow: hidden;
}

.block-discount-more-link {
	clear: both;
}

/* Testimonials footer — readable text + responsive box */
.footer-testimonials {
	background-color: #2a2210;
}

.testimonials-cont-into {
	width: auto !important;
	max-width: 100%;
	box-sizing: border-box;
}

.testimonials-info p,
.testimonials-info {
	color: #ffffff !important;
}

.testimonials-cont h4 {
	color: #e7b22c;
}

/* Before Slick init: avoid stacked unreadable slides */
.testimonials:not(.slick-initialized) .testimonials-cont {
	display: none;
}

.testimonials:not(.slick-initialized) .testimonials-cont:first-child {
	display: block;
}
