﻿/* MRM Hotel UI ? RTL-first, accent = Traveler Main Color (orange) */

:root {
	/* Theme orange ? follows Traveler "Main Color" when available */
	--mrm-orange: var(--main-color, #ed8323);
	--mrm-orange-dark: #d87312;
	/* Keep --mrm-blue as alias so older rules pick up theme orange */
	--mrm-blue: var(--mrm-orange);
	--mrm-blue-dark: var(--mrm-orange-dark);
	--mrm-ink: #1a2233;
	--mrm-muted: #5e6d77;
	--mrm-line: #e4e9f0;
	--mrm-soft: #f3f6fb;
	--mrm-card: #ffffff;
	--mrm-radius: 12px;
	--mrm-shadow: 0 8px 28px rgba(26, 34, 51, 0.08);
	--mrm-font: "Tajawal", "Cairo", "Segoe UI", Tahoma, sans-serif;
}

body.mrm-hotel-ui,
body.mrm-hotel-ui .search-result-page,
body.mrm-hotel-ui .mrm-hotel-single {
	font-family: var(--mrm-font);
	color: var(--mrm-ink);
}

/* Force RTL presentation on hotel search + hotel single (matches Traveler right_to_left). */
body.mrm-rtl-ui,
body.mrm-rtl-ui .mrm-hotel-search,
body.mrm-rtl-ui .mrm-hotel-single {
	direction: rtl;
	text-align: right;
}

/* -------------------------------------------------------------------------
   Header = homepage style (transparent overlay on hotel search + hotel single)
   Keep topbar + main menu stacked ? do NOT pull .header to top:0 over #topbar.
   Kill Traveler .stt-menu-transparent #st-content-wrapper { padding-top: 90px }
   ------------------------------------------------------------------------- */
body.mrm-header-like-home.stt-menu-transparent #st-content-wrapper:not(.st-style-elementor),
body.mrm-header-like-home.stt-menu-transparent:not(.single-st_rental) #st-content-wrapper:not(.st-style-elementor),
body.mrm-header-like-home.mrm-hotel-ui #st-content-wrapper.search-result-page,
body.mrm-header-like-home.mrm-hotel-ui #st-content-wrapper,
body.mrm-hotel-ui.stt-menu-transparent #st-content-wrapper:not(.st-style-elementor) {
	/* padding-top: 0 !important; */
}

@media screen and (min-width: 992px) {
	/* Whole header block (topbar + nav) overlays the banner */
	body.mrm-header-like-home #header,
	body.mrm-header-like-home #header.header-style-3,
	body.mrm-header-like-home > header.header {
		position: absolute !important;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		z-index: 100;
		background: transparent !important;
	}

	/* Main nav stays IN FLOW under topbar (fixes menu overlapping topbar) */
	body.mrm-header-like-home #header .header,
	body.mrm-header-like-home #header.header-style-3 .header,
	body.mrm-header-like-home #header .header-sticky-menu {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100%;
		border-bottom: none !important;
		background: rgba(0, 0, 0, 0.55) !important;
		box-shadow: none !important;
		color: #fff;
	}

	body.mrm-header-like-home #header #topbar {
		position: relative !important;
		z-index: 2;
		background: rgba(20, 20, 20, 0.75) !important;
	}

	/* Sticky-wrapper must not collapse topbar height to 0 */
	body.mrm-header-like-home .sticky-wrapper {
		height: auto !important;
		min-height: 0 !important;
	}
	body.mrm-header-like-home .sticky-wrapper:not(.is-sticky) {
		/* Absolute parent already removes doc flow; avoid extra blank strip */
		position: static;
	}

	/* After scroll ? fix nav bar only */
	body.mrm-header-like-home .is-sticky .header,
	body.mrm-header-like-home .is-sticky .header-sticky-menu {
		position: fixed !important;
		top: 0 !important;
		left: 0;
		right: 0;
		width: 100%;
		z-index: 101;
		background: rgba(35, 35, 35, 0.95) !important;
		box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12) !important;
	}

	body.mrm-header-like-home #header .header a,
	body.mrm-header-like-home #header .main-menu > li > a,
	body.mrm-header-like-home #st-main-menu .main-menu > li > a,
	body.mrm-header-like-home #header .dropdown-toggle {
		color: #fff !important;
	}

	/* Banner under full header — shared size for hotel search + transfers + contact */
	body.mrm-header-like-home .search-result-page > .banner,
	body.mrm-header-like-home .mrm-hotel-search > .banner,
	body.mrm-header-like-home .mrm-hotel-search .mrm-hotel-search-hero > .banner,
	body.mrm-header-like-home .mrm-hotel-single > .banner.st-bg-feature,
	body.mrm-header-like-home.mrm-page-hero .mrm-tf > .banner,
	body.mrm-header-like-home.mrm-page-hero .mrm-page-hero__banner,
	body.mrm-header-like-home.mrm-page-hero #st-content-wrapper > .banner,
	body.mrm-page-hero .banner.mrm-page-hero__banner {
		margin-top: 0 !important;
		padding-top: 170px !important;
		padding-bottom: 88px !important;
		min-height: 380px !important;
		box-sizing: border-box !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background-size: cover !important;
		background-position: center !important;
		position: relative;
	}

	body.mrm-header-like-home .search-result-page > .banner > .container,
	body.mrm-header-like-home .mrm-hotel-search .mrm-hotel-search-hero > .banner > .container,
	body.mrm-page-hero .banner.mrm-page-hero__banner > .container {
		width: 100%;
		position: relative;
		z-index: 2;
	}
}

@media screen and (max-width: 991px) {
	body.mrm-header-like-home #header .header,
	body.mrm-header-like-home #header .header-sticky-menu {
		position: relative !important;
		top: auto !important;
		background: rgba(35, 35, 35, 0.95) !important;
	}

	body.mrm-header-like-home .search-result-page > .banner,
	body.mrm-header-like-home .mrm-hotel-search > .banner,
	body.mrm-header-like-home .mrm-hotel-search .mrm-hotel-search-hero > .banner,
	body.mrm-header-like-home.mrm-page-hero .mrm-tf > .banner,
	body.mrm-header-like-home.mrm-page-hero .mrm-page-hero__banner,
	body.mrm-header-like-home.mrm-page-hero #st-content-wrapper > .banner,
	body.mrm-page-hero .banner.mrm-page-hero__banner {
		padding-top: 96px !important;
		padding-bottom: 56px !important;
		min-height: 260px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		box-sizing: border-box !important;
		/* Without this, #overlay (inset:0) escapes the static banner and covers
		   the whole page on mobile, swallowing every tap. */
		position: relative !important;
	}
}

/* Hotel search banner overlay ? lighter (was 0.5) */
body.mrm-hotel-ui .banner #overlay,
body.mrm-hotel-ui .search-result-page .banner #overlay,
.mrm-hotel-search .banner #overlay,
body.mrm-page-hero .banner #overlay {
	background-color: rgba(0, 0, 0, 0.1) !important;
	/* Decorative tint only — must never block clicks/taps. */
	pointer-events: none !important;
}

/* Banner title: ??? ??????? ? centered, larger, bold */
body.mrm-hotel-ui .search-result-page .banner .banner-content,
body.mrm-hotel-ui .mrm-hotel-search .banner .banner-content,
body.mrm-page-hero .banner .banner-content {
	text-align: center !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
}

body.mrm-hotel-ui .search-result-page .banner .banner-content > h1,
body.mrm-hotel-ui .mrm-hotel-search .banner .banner-content > h1,
body.mrm-page-hero .banner .banner-content > h1 {
	text-align: center !important;
	width: 100%;
	margin: 0 auto;
	font-size: clamp(2rem, 4vw, 3rem) !important;
	font-weight: 800 !important;
	line-height: 1.25;
	letter-spacing: 0;
	color: #fff !important;
	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

/* Kill Elementorv2 feature banner chrome when replaced / leftover */
body.mrm-page-hero .banner.st-bg-feature::after {
	display: none !important;
}

body.mrm-page-hero .st-banner-search-form__title {
	text-align: center !important;
	width: 100%;
	font-size: clamp(2rem, 4vw, 3rem) !important;
	font-weight: 800 !important;
	color: #fff !important;
}

body.mrm-page-hero .st-banner-search-form {
	text-align: center !important;
}

body.mrm-page-hero .st-banner-search-form .breadcrumb,
body.mrm-page-hero .st-banner-search-form .st-breadcrumb {
	display: none !important;
}

/* Transfers: no extra top gap under shared banner */
body.mrm-page-hero .mrm-tf {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

body.mrm-page-hero.stt-menu-transparent #st-content-wrapper.st-style-elementor {
	padding-top: 0 !important;
}

body.mrm-rtl-ui .mrm-hotel-single .st-service-header2,
body.mrm-rtl-ui .mrm-hotel-single .st-heading,
body.mrm-rtl-ui .mrm-hotel-single .st-heading-section,
body.mrm-rtl-ui .mrm-hotel-single .sub-heading,
body.mrm-rtl-ui .mrm-hotel-single .mrm-book-box,
body.mrm-rtl-ui .mrm-hotel-single .form-book-wrapper {
	text-align: right;
}

body.mrm-rtl-ui .mrm-hotel-single-row {
	flex-direction: row;
}

@media (min-width: 992px) {
	body.mrm-rtl-ui .mrm-hotel-book-col {
		order: 0;
	}

	body.mrm-rtl-ui .mrm-hotel-main-col {
		order: 0;
	}
}

body.mrm-hotel-ui {
	background:
		radial-gradient(1200px 400px at 100% 0%, rgba(59, 113, 254, 0.08), transparent 60%),
		linear-gradient(180deg, #f7f9fc 0%, #eef2f8 100%);
}

/* ??? Search form (legacy hero strip disabled; bar lives on banner) ??? */
.mrm-hotel-search .mrm-search-hero {
	display: none;
}

.mrm-hotel-search .search-form-wrapper {
	position: relative;
	z-index: 2;
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mrm-search-form {
	background: var(--mrm-card);
	border-radius: var(--mrm-radius);
	box-shadow: var(--mrm-shadow);
	border: 1px solid rgba(255, 255, 255, 0.4);
	overflow: hidden;
}

/* Results form skin moved to mrm-banner-search.css */

/* Sidebar search ? stacked ???? / ?????? */
.mrm-sidebar .mrm-sidebar-search .search-title {
	font-weight: 800;
	font-size: 16px;
	margin-bottom: 12px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--mrm-line);
	color: var(--mrm-ink);
}

.mrm-sidebar .mrm-sidebar-dates .mrm-banner-dates {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.mrm-sidebar .mrm-sidebar-dates .mrm-bf {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 0;
	border-bottom: 1px solid var(--mrm-line);
	min-height: 0;
	border-inline-start: 0;
}

.mrm-sidebar .mrm-sidebar-dates .mrm-bf:last-of-type {
	border-bottom: 0;
}

.mrm-sidebar .mrm-sidebar-dates .mrm-banner-dates > input {
	position: absolute !important;
	opacity: 0 !important;
	width: 1px !important;
	height: 1px !important;
	pointer-events: none !important;
}

.mrm-sidebar .mrm-sidebar-search .field-icon,
.mrm-sidebar .mrm-sidebar-search i.input-icon,
.mrm-sidebar .mrm-sidebar-search i.fa-angle-down {
	color: var(--mrm-orange) !important;
}

.mrm-search-form .mrm-search-fields .mrm-field {
	padding: 14px 16px;
	min-height: 88px;
	display: flex;
	align-items: center;
}

.mrm-search-form .border-left,
.mrm-search-form .border-right {
	border-color: var(--mrm-line) !important;
}

.mrm-search-form label {
	font-size: 12px;
	color: var(--mrm-muted);
	margin-bottom: 2px;
	font-weight: 600;
}

.mrm-search-form .render,
.mrm-search-form input[type="text"] {
	font-size: 15px;
	font-weight: 600;
	color: var(--mrm-ink);
	border: 0;
	background: transparent;
	width: 100%;
}

.mrm-field-hotel-name .mrm-field-ico {
	margin-left: 10px;
	font-size: 18px;
}

.mrm-btn-search {
	width: 100%;
	height: 52px;
	border-radius: 10px !important;
	background: var(--mrm-orange) !important;
	border-color: var(--mrm-orange) !important;
	color: #fff !important;
	font-weight: 700;
	font-size: 16px;
	transition: transform 0.2s ease, background 0.2s ease;
}

.mrm-btn-search:hover {
	background: var(--mrm-orange-dark) !important;
	border-color: var(--mrm-orange-dark) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.mrm-field-submit {
	align-items: center !important;
	justify-content: center;
}

.mrm-search-actions {
	width: 100%;
	justify-content: stretch !important;
}

/* ??? Quick chips ??? */
.mrm-quick-filters {
	padding: 18px 0 8px;
	margin-bottom: 8px;
}

.mrm-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-start;
}

.mrm-chip {
	appearance: none;
	border: 1px solid var(--mrm-line);
	background: #fff;
	color: var(--mrm-ink);
	border-radius: 999px;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
	white-space: nowrap;
}

.mrm-chip:hover {
	border-color: var(--mrm-blue);
	color: var(--mrm-blue);
	transform: translateY(-1px);
}

.mrm-chip.is-active {
	background: var(--mrm-blue);
	border-color: var(--mrm-blue);
	color: #fff;
}

/* ??? Sidebar ??? */
.mrm-sidebar {
	padding-top: 8px;
}

.mrm-sidebar .sidebar-title {
	font-size: 16px;
	font-weight: 800;
	margin-bottom: 16px;
	color: var(--mrm-ink);
}

.mrm-side-section {
	background: var(--mrm-card);
	border: 1px solid var(--mrm-line);
	border-radius: var(--mrm-radius);
	padding: 14px 16px;
	margin-bottom: 12px;
	box-shadow: none !important;
}

.mrm-side-section .item-title h4 {
	font-size: 14px;
	font-weight: 700;
	margin: 0;
}

.mrm-side-section .btn-apply-price-range {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	padding: 8px 18px !important;
	border-radius: 8px !important;
	background: var(--mrm-orange, #ed8323) !important;
	border: 0 !important;
	color: #fff !important;
	font-weight: 800 !important;
	font-size: 14px !important;
	font-family: Tajawal, sans-serif !important;
	text-decoration: none !important;
	line-height: 1.2 !important;
	box-shadow: none !important;
}
.mrm-side-section .btn-apply-price-range:hover,
.mrm-side-section .btn-apply-price-range:focus {
	color: #fff !important;
	filter: brightness(1.05);
	text-decoration: none !important;
}
.mrm-side-section .mrm-show-more,
.mrm-side-section .btn-more-item.mrm-show-more,
.mrm-side-section button.btn-link.mrm-show-more,
body.mrm-hotel-ui .sidebar-item .btn-more-item,
body.mrm-hotel-ui .mrm-side-section .btn-more-item {
	color: var(--mrm-orange) !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}
.mrm-side-section .mrm-show-more:hover,
.mrm-side-section .mrm-show-more:focus,
.mrm-side-section .btn-more-item.mrm-show-more:hover,
body.mrm-hotel-ui .sidebar-item .btn-more-item:hover {
	color: var(--mrm-orange-dark) !important;
	text-decoration: none !important;
}
.mrm-side-section .mrm-show-more i,
.mrm-side-section .mrm-show-more .fa,
.mrm-side-section .btn-more-item i,
body.mrm-hotel-ui .sidebar-item .btn-more-item i {
	color: inherit !important;
}

/* Price range labels ? larger */
.mrm-side-section.range-slider .irs-from,
.mrm-side-section.range-slider .irs-to,
.mrm-side-section.range-slider .irs-single,
.mrm-sidebar .range-slider .irs-from,
.mrm-sidebar .range-slider .irs-to,
.mrm-sidebar .range-slider .irs-single,
body.mrm-hotel-ui .range-slider .irs--flat .irs-from,
body.mrm-hotel-ui .range-slider .irs--flat .irs-to,
body.mrm-hotel-ui .range-slider .irs--flat .irs-single {
	font-size: 14px !important;
	font-weight: 800 !important;
	font-family: Tajawal, sans-serif !important;
	padding: 6px 12px !important;
	line-height: 1.25 !important;
	border-radius: 8px !important;
	min-height: 30px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
}

/* Push slider track/handles below the price badges */
body.mrm-hotel-ui .range-slider .irs,
body.mrm-hotel-ui .mrm-side-section.range-slider .irs {
	height: 78px !important;
}
body.mrm-hotel-ui .range-slider .irs-line,
body.mrm-hotel-ui .range-slider .irs--flat .irs-line,
body.mrm-hotel-ui .mrm-side-section.range-slider .irs-line {
	top: 48px !important;
}
body.mrm-hotel-ui .range-slider .irs-bar,
body.mrm-hotel-ui .range-slider .irs--flat .irs-bar,
body.mrm-hotel-ui .mrm-side-section.range-slider .irs-bar {
	top: 48px !important;
}
body.mrm-hotel-ui .range-slider .irs-handle,
body.mrm-hotel-ui .range-slider .irs--flat .irs-handle,
body.mrm-hotel-ui .mrm-side-section.range-slider .irs-handle {
	top: 42px !important;
}
body.mrm-hotel-ui .range-slider .irs-min,
body.mrm-hotel-ui .range-slider .irs-max {
	top: 62px !important;
}

.mrm-side-section li.hidden {
	display: none;
}

.mrm-side-section.is-expanded li.hidden {
	display: list-item;
}

/* ??? Hotel cards ??? */
.mrm-hotel-card {
	background: var(--mrm-card);
	border: 1px solid var(--mrm-line);
	border-radius: var(--mrm-radius);
	overflow: hidden;
	margin-bottom: 16px;
	box-shadow: var(--mrm-shadow);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.mrm-hotel-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px rgba(26, 34, 51, 0.12);
}

.mrm-card-media .featured-image {
	height: 100%;
	min-height: 220px;
	position: relative;
}

.mrm-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	min-height: 220px;
}

.mrm-card-flag {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	background: var(--mrm-blue);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 6px;
}

.mrm-card-body {
	padding: 18px 8px 18px 4px;
}

.mrm-card-title-row {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	flex-wrap: nowrap;
	gap: 6px;
	margin: 0 0 4px;
}

.mrm-card-stars {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap;
	align-items: center;
	gap: 2px;
	margin: 0;
	padding: 0;
	list-style: none;
	line-height: 1;
}

.mrm-card-stars ul,
.mrm-card-stars > li,
.mrm-card-body .mrm-card-stars li {
	display: inline-flex !important;
	flex-direction: row !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	width: auto !important;
}

.mrm-card-stars i,
.mrm-card-stars .fa,
.mrm-card-stars .stt-icon-star1 {
	color: #f5a623;
	font-size: 14px;
	line-height: 1;
}

.mrm-card-title {
	font-size: 18px;
	font-weight: 800;
	margin: 0;
}

.mrm-card-title a {
	color: var(--mrm-ink);
	text-decoration: none;
}

.mrm-card-city {
	color: var(--mrm-muted);
	font-size: 13px;
	margin-bottom: 10px;
}

.mrm-card-rating {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 12px;
	padding: 6px 12px 6px 6px;
	background: #fff;
	border: 1px solid var(--mrm-line);
	border-radius: 14px;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
}

.mrm-score {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 2px;
	min-width: 58px;
	width: auto;
	height: 40px;
	padding: 0 12px;
	margin: 0;
	background: var(--mrm-orange) !important;
	color: #fff !important;
	border-radius: 10px;
	font-family: Tajawal, sans-serif;
	font-weight: 800;
	font-size: 18px;
	line-height: 1 !important;
	letter-spacing: -0.02em;
	direction: ltr;
	unicode-bidi: isolate;
	text-align: center;
	box-sizing: border-box;
	vertical-align: middle;
	position: relative;
}

/* Beat Traveler: .rate { color: var(--main-color) } made score invisible on orange chip */
body.mrm-hotel-ui .item .section-footer .reviews .mrm-score,
body.mrm-hotel-ui .item .section-footer .reviews .rate.mrm-score,
body.mrm-hotel-ui .mrm-card-rating .mrm-score,
body.mrm-hotel-ui .mrm-score,
body.mrm-hotel-ui .mrm-score .mrm-score-den {
	color: #fff !important;
	-webkit-text-fill-color: #fff;
}

body.mrm-hotel-ui .item .section-footer .reviews .mrm-score:after,
body.mrm-hotel-ui .item .section-footer .reviews .rate.mrm-score:after,
body.mrm-hotel-ui .mrm-score:after {
	display: none !important;
	content: none !important;
}

.mrm-score .mrm-score-den {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	opacity: 0.9;
	transform: none;
	position: static;
}

.mrm-score-label {
	font-weight: 700;
	font-size: 14px;
	color: #5e6d77;
	line-height: 1.2;
}

.mrm-score-empty {
	color: var(--mrm-muted);
	font-weight: 500;
	padding: 4px 6px;
}

.mrm-review-count {
	color: var(--mrm-muted);
	font-size: 12px;
}

.mrm-hotel-single .review-score .head-rating {
	font-weight: 700;
	font-size: 15px;
	color: #5e6d77 !important;
}

.mrm-hotel-single .review-score .text-rating {
	display: block;
	margin-top: 2px;
	font-size: 12px;
}

.mrm-hotel-single .review-score .score,
.mrm-hotel-single .st-service-header .review-score .head .score,
.single-st_hotel .mrm-hotel-single .review-score .head .score,
body .mrm-hotel-single .review-score .head .score {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-content: center !important;
	float: none !important;
	min-width: 78px !important;
	width: auto !important;
	height: 54px !important;
	min-height: 54px !important;
	max-height: 54px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	direction: ltr !important;
	unicode-bidi: isolate;
	box-sizing: border-box !important;
	text-align: center !important;
	vertical-align: middle !important;
	background: var(--mrm-blue) !important;
	color: #fff !important;
	border-radius: 12px !important;
	position: relative;
	overflow: hidden;
}

.mrm-hotel-single .review-score .score span,
.mrm-hotel-single .st-service-header .review-score .head .score span {
	display: inline !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	opacity: 0.95;
	vertical-align: baseline !important;
	position: static !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
}

/* Elementor v2 hotel cards ? unify rating chip */
.services-item.item-elementor .reviews.mrm-card-rating {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	width: auto;
	margin: 8px 0 10px;
	padding: 6px 12px 6px 6px;
	background: #fff;
	border: 1px solid var(--mrm-line);
	border-radius: 14px;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
}

.services-item.item-elementor .reviews.mrm-card-rating .rate.mrm-score {
	background: var(--mrm-orange) !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff;
	border: 0;
	margin: 0;
	min-width: 58px;
	height: 40px;
	padding: 0 12px;
	border-radius: 10px;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	direction: ltr;
	unicode-bidi: isolate;
}

.services-item.item-elementor .reviews.mrm-card-rating .rate.mrm-score:after {
	display: none !important;
	content: none !important;
}

.services-item.item-elementor .reviews.mrm-card-rating .rate-text,
.services-item.item-elementor .reviews.mrm-card-rating .mrm-score-label {
	color: #5e6d77;
	font-weight: 700;
	font-size: 14px;
}

.services-item.item-elementor .reviews.mrm-card-rating .summary:not(.mrm-review-count) {
	display: none;
}

.services-item.item-elementor .reviews.mrm-card-rating .mrm-review-count {
	color: var(--mrm-muted);
	font-size: 12px;
}

.mrm-badges {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.mrm-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: var(--mrm-soft);
	border: 1px solid var(--mrm-line);
	border-radius: 8px;
	padding: 4px 8px;
	font-size: 12px;
	color: var(--mrm-ink);
	font-weight: 600;
}

.mrm-badge-ico {
	font-style: normal;
}

.mrm-card-aside {
	padding: 18px 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	gap: 12px;
	background: linear-gradient(180deg, #fafbfd, #f3f6fb);
	border-right: 1px solid var(--mrm-line);
}

.mrm-price-label {
	font-size: 12px;
	color: var(--mrm-muted);
}

.mrm-price-main {
	display: block;
	font-size: 22px;
	font-weight: 800;
	color: var(--mrm-ink);
	line-height: 1.2;
}

.mrm-price-egp,
.mrm-price-alt {
	display: block;
	font-size: 13px;
	color: var(--mrm-muted);
	margin-top: 2px;
}

.mrm-price-unit {
	font-size: 12px;
	color: var(--mrm-muted);
}

.mrm-card-cta,
body.mrm-hotel-ui .mrm-hotel-card .mrm-card-cta,
body.mrm-hotel-ui .services-item .btn-primary,
body.mrm-hotel-ui .item-service .btn-primary,
body.mrm-hotel-ui .section-footer .btn-primary {
	border-radius: 10px !important;
	font-weight: 700;
	background: var(--mrm-orange) !important;
	border-color: var(--mrm-orange) !important;
	color: #fff !important;
	text-align: center;
	padding: 10px 14px;
}

.mrm-card-cta:hover,
body.mrm-hotel-ui .mrm-hotel-card .mrm-card-cta:hover,
body.mrm-hotel-ui .services-item .btn-primary:hover,
body.mrm-hotel-ui .item-service .btn-primary:hover,
body.mrm-hotel-ui .section-footer .btn-primary:hover {
	background: var(--mrm-orange-dark) !important;
	border-color: var(--mrm-orange-dark) !important;
	color: #fff !important;
}

/* ??? Breadcrumb (hotel single) ??? */
body.mrm-hotel-ui .mrm-breadcrumb-wrap .st-breadcrumb,
body.mrm-hotel-ui .mrm-hotel-single > .st-breadcrumb,
body.mrm-hotel-ui.single-st_hotel #st-content-wrapper > .st-breadcrumb,
body.single-st_hotel .mrm-hotel-single > .st-breadcrumb {
	padding: 0 !important;
	border: 0 !important;
	background: linear-gradient(180deg, #f4f7fb 0%, #ffffff 100%);
	box-shadow: inset 0 -1px 0 var(--mrm-line, #e4e9f0);
}

body.mrm-hotel-ui .st-breadcrumb .container,
body.single-st_hotel .st-breadcrumb .container {
	padding-top: 12px;
	padding-bottom: 12px;
}

body.mrm-hotel-ui .st-breadcrumb ul,
body.single-st_hotel .st-breadcrumb ul {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: transparent !important;
	font-family: var(--mrm-font, "Tajawal", "Cairo", sans-serif);
	direction: rtl;
}

body.mrm-hotel-ui .st-breadcrumb ul li,
body.single-st_hotel .st-breadcrumb ul li {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	max-width: 100%;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 500;
	color: var(--mrm-muted, #5e6d77);
	z-index: 0;
}

body.mrm-hotel-ui .st-breadcrumb ul li:not(:last-child)::after,
body.single-st_hotel .st-breadcrumb ul li:not(:last-child)::after {
	content: "" !important;
	position: static !important;
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 10px;
	border-right: 1.5px solid #a8b3c0;
	border-bottom: 1.5px solid #a8b3c0;
	background: none !important;
	transform: rotate(135deg);
	top: auto !important;
	right: auto !important;
	left: auto !important;
	opacity: 0.85;
	flex-shrink: 0;
}

body.mrm-hotel-ui .st-breadcrumb ul li a,
body.single-st_hotel .st-breadcrumb ul li a {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	padding: 4px 2px;
	color: var(--mrm-ink, #1a2233) !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border-radius: 6px;
	transition: color 0.15s ease, background 0.15s ease;
	line-height: 1.35 !important;
}

body.mrm-hotel-ui .st-breadcrumb ul li a:hover,
body.single-st_hotel .st-breadcrumb ul li a:hover {
	color: var(--mrm-orange, #ed8323) !important;
	background: rgba(237, 131, 35, 0.08);
	padding-left: 8px;
	padding-right: 8px;
}

/* Home crumb ? icon + label */
body.mrm-hotel-ui .st-breadcrumb ul li:first-child a::before,
body.single-st_hotel .st-breadcrumb ul li:first-child a::before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	flex-shrink: 0;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a2233' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5L12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h14V9.5'/%3E%3Cpath d='M10 21v-7h4v7'/%3E%3C/svg%3E");
	opacity: 0.75;
	transition: opacity 0.15s ease;
}

body.mrm-hotel-ui .st-breadcrumb ul li:first-child a:hover::before,
body.single-st_hotel .st-breadcrumb ul li:first-child a:hover::before {
	opacity: 1;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ed8323' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5L12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h14V9.5'/%3E%3Cpath d='M10 21v-7h4v7'/%3E%3C/svg%3E");
}

body.mrm-hotel-ui .st-breadcrumb ul li.active,
body.single-st_hotel .st-breadcrumb ul li.active {
	color: var(--mrm-orange, #ed8323) !important;
	font-weight: 700 !important;
	font-size: 13px;
	max-width: min(420px, 55vw);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

@media (max-width: 575.98px) {
	body.mrm-hotel-ui .st-breadcrumb ul li,
	body.single-st_hotel .st-breadcrumb ul li {
		font-size: 12px;
	}
	body.mrm-hotel-ui .st-breadcrumb ul li.active,
	body.single-st_hotel .st-breadcrumb ul li.active {
		max-width: 42vw;
	}
	body.mrm-hotel-ui .st-breadcrumb ul li:not(:last-child)::after,
	body.single-st_hotel .st-breadcrumb ul li:not(:last-child)::after {
		margin: 0 7px;
	}
}

/* ??? Grid results (3-col compact cards) ??? */
body.mrm-hotel-ui .modern-search-result .service-list-wrapper.row > [class*="col-lg-4"],
body.mrm-hotel-ui .modern-search-result .service-list-wrapper.row > [class*="col-md-4"],
body.mrm-hotel-ui .mrm-results-grid > [class*="col-lg-4"],
body.mrm-hotel-ui .mrm-results-grid > [class*="col-md-4"] {
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
	width: 33.333333%;
	padding-left: 8px;
	padding-right: 8px;
}

@media (max-width: 991.98px) {
	body.mrm-hotel-ui .modern-search-result .service-list-wrapper.row > [class*="col-lg-4"],
	body.mrm-hotel-ui .modern-search-result .service-list-wrapper.row > [class*="col-md-4"],
	body.mrm-hotel-ui .mrm-results-grid > [class*="col-lg-4"],
	body.mrm-hotel-ui .mrm-results-grid > [class*="col-md-4"] {
		flex: 0 0 50%;
		max-width: 50%;
		width: 50%;
	}
}

@media (max-width: 575.98px) {
	body.mrm-hotel-ui .modern-search-result .service-list-wrapper.row > [class*="col-"],
	body.mrm-hotel-ui .mrm-results-grid > [class*="col-"] {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}
}

.mrm-hotel-card-grid {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin-bottom: 16px;
	text-align: right;
	direction: rtl;
}

.mrm-hotel-card-grid .mrm-grid-media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: var(--mrm-soft);
}

.mrm-hotel-card-grid .mrm-grid-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.mrm-hotel-card-grid .mrm-grid-body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 10px 12px 12px;
	text-align: right;
	gap: 2px;
}

.mrm-hotel-card-grid .mrm-card-stars {
	margin: 0 0 2px !important;
}

.mrm-hotel-card-grid .mrm-card-stars i,
.mrm-hotel-card-grid .mrm-card-stars .fa {
	font-size: 12px !important;
}

.mrm-hotel-card-grid .mrm-card-title,
.mrm-hotel-card-grid .title {
	margin: 0 0 2px;
	font-size: 15px;
	font-weight: 800;
	text-align: right;
	line-height: 1.3;
}

.mrm-hotel-card-grid .mrm-card-title a,
.mrm-hotel-card-grid .title a {
	color: var(--mrm-ink);
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.mrm-hotel-card-grid .mrm-card-city {
	margin: 0 0 6px;
	font-size: 12px;
	color: var(--mrm-muted);
}

.mrm-hotel-card-grid .mrm-card-rating {
	margin: 0 0 6px;
	align-self: flex-start;
	padding: 4px 8px 4px 4px !important;
	gap: 6px !important;
}

.mrm-hotel-card-grid .mrm-card-rating .mrm-score {
	min-width: 48px !important;
	height: 32px !important;
	padding: 0 8px !important;
	font-size: 14px !important;
	border-radius: 8px !important;
}

.mrm-hotel-card-grid .mrm-card-rating .mrm-score-den {
	font-size: 10px !important;
}

.mrm-hotel-card-grid .mrm-card-rating .mrm-score-label,
.mrm-hotel-card-grid .mrm-card-rating .mrm-review-count {
	font-size: 12px !important;
}

.mrm-hotel-card-grid .mrm-badges {
	margin: 0 0 8px;
	gap: 4px;
}

.mrm-hotel-card-grid .mrm-badge {
	font-size: 11px;
	padding: 3px 6px;
}

.mrm-hotel-card-grid .mrm-grid-footer {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
}

.mrm-hotel-card-grid .mrm-grid-price-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 6px;
	justify-content: flex-start;
}

.mrm-hotel-card-grid .mrm-price-block {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1px;
}

.mrm-hotel-card-grid .mrm-grid-price-row .mrm-price-label,
.mrm-hotel-card-grid .mrm-grid-price-row .mrm-price-unit {
	font-size: 11px;
}

.mrm-hotel-card-grid .mrm-grid-price-row .mrm-price-main {
	font-size: 16px;
	font-weight: 800;
	color: var(--mrm-ink);
	direction: ltr;
	unicode-bidi: isolate;
}

.mrm-hotel-card-grid .mrm-price-egp,
.mrm-hotel-card-grid .mrm-price-alt {
	font-size: 11px;
}

.mrm-hotel-card-grid .mrm-card-cta {
	width: 100%;
	display: block;
	padding: 8px 10px !important;
	font-size: 13px !important;
}

.mrm-hotel-card-grid .st-stars,
.mrm-hotel-card-grid .featured-image .st-stars {
	position: static !important;
	margin: 0 0 2px;
}

/* Toolbar result count ? full width, RTL */
body.mrm-hotel-ui .mrm-toolbar {
	flex-wrap: wrap;
	gap: 8px;
	align-items: center !important;
}

body.mrm-hotel-ui .mrm-toolbar .modern-result-string,
body.mrm-hotel-ui .mrm-toolbar h2.search-string {
	flex: 1 1 auto;
	margin: 0;
	text-align: right;
	font-size: 16px;
	font-weight: 700;
}

body.mrm-hotel-ui .mrm-toolbar .toolbar-action {
	flex: 0 0 auto;
}

/* Hide Traveler avatar/compare clutter on grid media */
.mrm-hotel-card-grid .avatar-service-in-list,
.mrm-hotel-card-grid .st-compare {
	display: none !important;
}

/* ??? Hotel single ??? */
body.mrm-hotel-ui.single-st_hotel,
body.mrm-hotel-ui .mrm-hotel-single {
	--mrm-media-radius: 25px;
	--mrm-card-radius: 16px;
}

body.mrm-hotel-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single,
body.mrm-hotel-ui .mrm-hotel-single {
	background:
		radial-gradient(900px 280px at 100% 0%, rgba(59, 113, 254, 0.06), transparent 55%),
		linear-gradient(180deg, #f7f9fc 0%, #eef2f8 100%);
	padding-bottom: 48px;
}

.mrm-hotel-single .mrm-gallery-wrap {
	margin-bottom: 24px;
}

/* Gallery / main photos ? soft 25px curves */
.mrm-hotel-single .st-gallery,
.mrm-hotel-single .mrm-gallery-wrap,
.mrm-hotel-single .st-gallery .fotorama__stage,
.mrm-hotel-single .st-gallery .fotorama__wrap,
.mrm-hotel-single .st-gallery .fotorama__stage__shaft,
.mrm-hotel-single .st-gallery .fotorama__stage__frame,
.mrm-hotel-single .st-gallery .fotorama__img,
.mrm-hotel-single .st-gallery img,
.mrm-hotel-single .mrm-gallery-wrap img,
.mrm-hotel-single .st-list-rooms .item .thumb img,
.mrm-hotel-single .hotel-room-item .thumb img,
.mrm-hotel-single .room-item .thumb img,
.mrm-hotel-single .item-room .thumb img {
	border-radius: var(--mrm-media-radius) !important;
	overflow: hidden;
}

.mrm-hotel-single .st-gallery .fotorama__nav-wrap,
.mrm-hotel-single .st-gallery .fotorama__nav,
.mrm-hotel-single .st-gallery .fotorama__thumb-border,
.mrm-hotel-single .st-gallery .fotorama__thumb,
.mrm-hotel-single .st-gallery .fotorama__nav__frame img {
	border-radius: 12px !important;
	overflow: hidden;
}

.mrm-hotel-single .st-gallery .fotorama__nav__frame {
	border-radius: 12px;
	overflow: hidden;
}

/* Circular action buttons on gallery */
.mrm-hotel-single .st-gallery .shares,
.mrm-hotel-single .mrm-gallery-wrap .shares,
.mrm-hotel-single .btn-share,
.mrm-hotel-single .service-wishlist,
.mrm-hotel-single .st-video-popup {
	border-radius: 999px;
}

.mrm-hotel-single .st-heading,
.mrm-hotel-single .st-heading-section {
	font-family: var(--mrm-font);
	font-weight: 800;
	color: var(--mrm-ink);
	letter-spacing: 0;
}

/* Stars above title (RTL start edge). */
.mrm-hotel-single .st-service-header2 .left,
.mrm-hotel-single .st-service-header .left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

.mrm-hotel-single .st-service-header2 .left .st-heading,
.mrm-hotel-single .st-service-header .left .st-heading {
	margin: 0;
}

.mrm-hotel-single .sub-heading a.st-link,
.mrm-hotel-single a.st-link {
	color: var(--mrm-blue) !important;
	font-weight: 600;
}

/* Review score chip */
.mrm-hotel-single .review-score {
	background: #fff;
	border: 1px solid var(--mrm-line);
	border-radius: 14px;
	box-shadow: var(--mrm-shadow);
	padding: 12px 14px;
	overflow: hidden;
}

.mrm-hotel-single .review-score .head {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 14px;
}

.mrm-hotel-single .review-score .head .left {
	padding: 0;
	margin: 0;
}

.mrm-hotel-single .review-score .score {
	background: var(--mrm-blue) !important;
	color: #fff !important;
	border-radius: 10px;
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
}

/* Hide Traveler speech-bubble caret (orange/blue triangle under score) */
.mrm-hotel-single .review-score .score::after,
.mrm-hotel-single .review-score .head .score:after,
.single-st_hotel .st-service-header .review-score .head .score:after {
	content: none !important;
	display: none !important;
	border: 0 !important;
}

.mrm-hotel-single .review-score .head-rating,
.mrm-hotel-single .review-score .text-rating {
	color: var(--mrm-muted);
}

.mrm-hotel-single #st-reviews,
.mrm-hotel-single #reviews,
.mrm-hotel-single #write-review,
.mrm-hotel-single .comment-respond,
.mrm-hotel-single #comments {
	display: none !important;
}

/* Content sections as soft cards */
.mrm-hotel-single .st-hr {
	border: 0;
	height: 0;
	margin: 12px 0;
}

.mrm-hotel-single .st-description,
.mrm-hotel-single .st-attributes,
.mrm-hotel-single .mrm-facilities-block,
.mrm-hotel-single .st-hotel-rule,
.mrm-hotel-single .st-properties,
.mrm-hotel-single .list-attributes,
.mrm-hotel-single .st-list-rooms,
.mrm-hotel-single .hotel-target-book-mobile,
.mrm-hotel-single .owner-info,
.mrm-hotel-single .widget-box,
.mrm-hotel-single .map-view-wrapper,
.mrm-hotel-single .st-logo-box,
.mrm-hotel-single .accordion-item,
.mrm-hotel-single .st-faq,
.mrm-hotel-single .mrm-location-section,
.mrm-hotel-single .mrm-faq-section {
	background: #fff;
	border: 1px solid var(--mrm-line);
	border-radius: var(--mrm-card-radius);
	box-shadow: var(--mrm-shadow);
	padding: 20px 22px;
	margin-bottom: 16px;
}

.mrm-hotel-single .st-heading-section {
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--mrm-line);
	font-size: 18px;
}

/* Amenities grid breathing room */
.mrm-hotel-single .list-attributes .item,
.mrm-hotel-single .st-attributes ul li,
.mrm-hotel-single .facilities .item {
	padding: 8px 4px;
	gap: 10px;
}

.mrm-hotel-single .list-attributes .item i,
.mrm-hotel-single .st-attributes i {
	color: var(--mrm-blue);
}

/* Room cards */
.mrm-hotel-single .st-list-rooms .item:not(.mrm-room-card),
.mrm-hotel-single .hotel-room-item,
.mrm-hotel-single .room-item,
.mrm-hotel-single .item-room {
	border: 1px solid var(--mrm-line) !important;
	border-radius: var(--mrm-card-radius) !important;
	overflow: hidden;
	background: #fff;
	box-shadow: none;
	margin-bottom: 14px;
	padding: 14px !important;
}

.mrm-hotel-single .st-list-rooms .item .thumb,
.mrm-hotel-single .hotel-room-item .thumb,
.mrm-hotel-single .room-item .thumb {
	border-radius: var(--mrm-media-radius);
	overflow: hidden;
}

.mrm-hotel-single .st-list-rooms .price,
.mrm-hotel-single .hotel-room-item .price,
.mrm-hotel-single .room-item .price {
	color: var(--mrm-ink);
	font-weight: 800;
}

.mrm-hotel-single .st-list-rooms .btn,
.mrm-hotel-single .hotel-room-item .btn,
.mrm-hotel-single .room-item .btn,
.mrm-hotel-single .btn-extra-room,
.mrm-hotel-single .btn-show-price,
.mrm-hotel-single a.btn-primary,
.mrm-hotel-single .btn.btn-primary,
.mrm-hotel-single .btn-green,
.mrm-hotel-single .btn-mpopup {
	background: var(--mrm-orange) !important;
	border-color: var(--mrm-orange) !important;
	color: #fff !important;
	border-radius: 10px !important;
	font-weight: 700;
	box-shadow: none !important;
}

.mrm-hotel-single .st-list-rooms .btn:hover,
.mrm-hotel-single .btn-green:hover,
.mrm-hotel-single .btn-mpopup:hover {
	background: var(--mrm-blue-dark) !important;
	border-color: var(--mrm-blue-dark) !important;
}

.mrm-badges-section {
	margin: 16px 0 8px;
}

.mrm-sticky-book {
	position: sticky;
	top: 96px;
	z-index: 5;
}

/* Booking box ? theme orange header */
.mrm-book-box,
.mrm-hotel-single .form-book-wrapper,
.mrm-hotel-single .st-form-book-wrapper {
	background: #fff;
	border: 1px solid var(--mrm-line) !important;
	border-radius: var(--mrm-card-radius) !important;
	box-shadow: var(--mrm-shadow);
	padding: 0;
	overflow: hidden;
}

.mrm-hotel-single .form-book-wrapper .form-head,
.mrm-hotel-single .st-form-book-wrapper .form-head,
.mrm-book-box .form-head,
.mrm-hotel-single .st-form-head-book,
.mrm-book-box .st-form-head-book {
	background: linear-gradient(90deg, #e8892a 0%, #3db8a8 48%, #2ec4f3 100%) !important;
	border: 0 !important;
	color: #fff !important;
	padding: 16px 18px !important;
	border-radius: 0 !important;
	min-height: 52px;
	align-items: center !important;
}

.mrm-hotel-single .form-book-wrapper .form-head .price,
.mrm-hotel-single .form-book-wrapper .form-head .price *,
.mrm-book-box .form-head .price,
.mrm-hotel-single .st-form-head-book,
.mrm-hotel-single .st-form-head-book .price,
.mrm-hotel-single .st-form-head-book .price *,
.mrm-hotel-single .st-form-head-book .unit,
.mrm-book-box .st-form-head-book .price,
.mrm-book-box .st-form-head-book .unit {
	color: #fff !important;
}

.mrm-hotel-single .form-book-wrapper .form-group,
.mrm-book-box .form-group {
	padding-left: 16px;
	padding-right: 16px;
}

.mrm-hotel-single .form-book-wrapper .submit-group,
.mrm-book-box .submit-group {
	padding: 8px 16px 18px;
}

.mrm-hotel-single .form-book-wrapper .btn-book,
.mrm-hotel-single .form-book-wrapper button[type="submit"],
.mrm-hotel-single .form-book-wrapper .btn-green,
.mrm-book-box .btn-book,
.mrm-book-box button[type="submit"] {
	background: var(--mrm-blue) !important;
	border-color: var(--mrm-blue) !important;
	border-radius: 10px !important;
	font-weight: 700;
	width: 100%;
}

.mrm-book-box .nav-tabs a {
	font-weight: 700;
}

.mrm-hotel-single .map-view-wrapper .map-view,
.mrm-hotel-single .map-view-wrapper img {
	border-radius: calc(var(--mrm-card-radius) - 4px);
	overflow: hidden;
}

/* Free OSM sidebar / location maps */
.mrm-hotel-single .mrm-hotel-map-card {
	padding: 0 !important;
	overflow: hidden;
	margin-top: 12px;
	border: 1px solid var(--mrm-line, #e3e8ef);
}
.mrm-hotel-single .mrm-hotel-map-card__hit {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	position: relative;
	text-align: right;
}
.mrm-hotel-single .mrm-hotel-map-card__map {
	width: 100%;
	height: 200px;
	border-radius: 0;
	background: #d9e4f0;
	z-index: 1;
	pointer-events: none;
}
.mrm-hotel-single .mrm-hotel-map-card__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	background: linear-gradient(180deg, rgba(10, 24, 48, 0.15), rgba(10, 24, 48, 0.55));
	color: #fff;
	font-family: Tajawal, sans-serif;
	pointer-events: none;
}
.mrm-hotel-single .mrm-hotel-map-card__ico {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(27, 127, 234, 0.95);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 4px;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}
.mrm-hotel-single .mrm-hotel-map-card__overlay strong {
	font-size: 15px;
	font-weight: 800;
}
.mrm-hotel-single .mrm-hotel-map-card__overlay em {
	font-style: normal;
	font-size: 12px;
	opacity: 0.9;
}
.mrm-hotel-single .mrm-hotel-map-card__hit:hover .mrm-hotel-map-card__overlay {
	background: linear-gradient(180deg, rgba(10, 24, 48, 0.25), rgba(10, 24, 48, 0.65));
}

/* Hide old Traveler "view on map" under title */
.mrm-hotel-single .st-service-header2 .map-view,
.mrm-hotel-single .sub-heading .map-view {
	display: none !important;
}

.mrm-hotel-single .mrm-location-open-map {
	width: 100%;
	border-radius: 10px;
	font-family: Tajawal, sans-serif;
	font-weight: 700;
}

/* OSM popup */
body.mrm-osm-modal-open {
	overflow: hidden;
}
.mrm-osm-modal[hidden] {
	display: none !important;
}
.mrm-osm-modal {
	position: fixed;
	inset: 0;
	z-index: 100050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.mrm-osm-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(8, 16, 32, 0.62);
	backdrop-filter: blur(2px);
}
.mrm-osm-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(1225px, 96vw); /* +25% vs 980px */
	max-width: 96vw;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
	direction: rtl;
}
.mrm-osm-modal__map {
	display: block !important;
	width: 100% !important;
	/* height = 50% of width (set also in JS for Leaflet) */
	aspect-ratio: 2 / 1 !important;
	height: auto !important;
	min-height: 360px !important;
	background: #e8eef5 !important;
	z-index: 1;
	pointer-events: auto !important;
}
.mrm-osm-modal__map.leaflet-container {
	width: 100% !important;
	aspect-ratio: 2 / 1 !important;
	min-height: 360px !important;
}
.mrm-osm-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid #e8eef5;
	font-family: Tajawal, sans-serif;
}
.mrm-osm-modal__titles {
	display: flex;
	flex-direction: column;
	gap: 2px;
	text-align: right;
}
.mrm-osm-modal__titles strong {
	font-size: 16px;
	color: #0f1c34;
}
.mrm-osm-modal__titles span {
	font-size: 12px;
	color: #6b7a90;
}
.mrm-osm-modal__close {
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: #f1f4f8;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	color: #334;
}
.mrm-osm-modal__foot {
	padding: 12px 18px;
	border-top: 1px solid #e8eef5;
	text-align: left;
}
.mrm-osm-modal__ext {
	font-family: Tajawal, sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: #1b7fea;
	text-decoration: none;
}
.mrm-osm-modal__ext:hover {
	text-decoration: underline;
}

@media (max-width: 767px) {
	.mrm-osm-modal__dialog {
		width: calc(100% - 16px);
	}
	.mrm-osm-modal__map,
	.mrm-osm-modal__map.leaflet-container {
		min-height: 280px !important;
	}
	.mrm-hotel-single .mrm-hotel-map-card__map {
		height: 180px;
	}
}

.mrm-hotel-single .owner-info .media-left img,
.mrm-hotel-single .owner-info img.avatar {
	border-radius: 50%;
}

.mrm-hotel-single .hotel-target-book-mobile {
	display: flex;
	align-items: center;
	gap: 12px;
}

.mrm-location-section,
.mrm-faq-section {
	margin-top: 8px;
}

/* City-only geo ? match Guests field (form-extra-field) look */
.mrm-geo-search.mrm-geo-city-only {
	display: block;
	width: 100%;
	padding: 0;
	gap: 0;
}

.mrm-geo-search.mrm-geo-city-only .form-extra-field {
	width: 100%;
	cursor: pointer;
}

.mrm-geo-search.mrm-geo-city-only .mrm-city-select-hidden,
.mrm-geo-search.mrm-geo-city-only select#mrm_city_id {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.mrm-geo-search.mrm-geo-city-only .mrm-city-dropdown-menu {
	min-width: 100%;
	max-height: 260px;
	overflow-y: auto;
	padding: 8px 0;
	border-radius: 8px;
	border: 1px solid var(--mrm-line, #e4e9f0);
	box-shadow: var(--mrm-shadow, 0 8px 28px rgba(26, 34, 51, 0.08));
}

.mrm-geo-search.mrm-geo-city-only .mrm-city-dropdown-menu .mrm-city-option {
	display: block;
	padding: 10px 16px;
	cursor: pointer;
	text-align: right;
	font-size: 14px;
	color: var(--mrm-ink, #1a2233);
	border: 0 !important;
}

.mrm-geo-search.mrm-geo-city-only .mrm-city-dropdown-menu .mrm-city-option:hover,
.mrm-geo-search.mrm-geo-city-only .mrm-city-dropdown-menu .mrm-city-option.active {
	background: rgba(59, 113, 254, 0.08);
	color: var(--mrm-orange, #ed8323);
}

.mrm-geo-search.mrm-geo-city-only .mrm-city-display {
	color: inherit;
}

.mrm-search-form .mrm-geo-search.mrm-geo-city-only,
.st-banner-search-form .mrm-geo-search.mrm-geo-city-only,
.sidebar-search-form .mrm-geo-search.mrm-geo-city-only {
	padding: 0;
}

/* Hide country field if old markup still present. */
.mrm-geo-search label[for="mrm_country_id"],
.mrm-geo-search select#mrm_country_id {
	display: none !important;
}

/* Legacy boxed select styles (unused when dropdown UI is active) */
.mrm-geo-field label {
	display: block;
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 6px;
	color: #1d2327;
}

.mrm-geo-select {
	width: 100%;
	min-height: 44px;
	border: 1px solid var(--mrm-line, #dcdcde);
	border-radius: 8px;
	padding: 8px 12px;
	background: #fff;
	font-family: inherit;
	font-size: 14px;
}

.mrm-faq-item {
	border: 1px solid var(--mrm-line);
	border-radius: 10px;
	padding: 12px 14px;
	margin-bottom: 8px;
	background: #fff;
}

.mrm-faq-item summary {
	cursor: pointer;
	font-weight: 700;
}

.mrm-faq-answer {
	margin-top: 8px;
	color: var(--mrm-muted);
	font-size: 14px;
}

.mrm-map-trigger .map-view {
	cursor: pointer;
}

/* ??? Responsive ??? */
@media (max-width: 991px) {
	.mrm-sticky-book {
		position: static;
	}

	.mrm-card-aside {
		border-right: 0;
		border-top: 1px solid var(--mrm-line);
	}

	.mrm-search-form .mrm-search-fields .mrm-field {
		border-left: 0 !important;
		border-bottom: 1px solid var(--mrm-line);
	}
}

@media (max-width: 575px) {
	.mrm-chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 6px;
		-webkit-overflow-scrolling: touch;
	}
}

/* Motion */
@keyframes mrm-fade-up {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.mrm-hotel-card,
.mrm-quick-filters,
.mrm-book-box {
	animation: mrm-fade-up 0.45s ease both;
}

.mrm-chip:nth-child(2) { animation-delay: 0.04s; }
.mrm-chip:nth-child(3) { animation-delay: 0.08s; }

/* Keep check-in ? check-out chronological under RTL (avoid visual date swap) */
body.mrm-hotel-ui .mrm-date-range,
body.mrm-rtl-ui .mrm-date-range {
	direction: ltr;
	unicode-bidi: isolate;
	display: inline-block;
}

body.mrm-hotel-ui .alert.alert-warning {
	direction: rtl;
	text-align: right;
	unicode-bidi: plaintext;
}

body.mrm-hotel-ui .mrm-room-children-policy {
	margin: 10px 0 0;
	padding: 8px 12px;
	background: #f3f6fb;
	border-right: 3px solid #3b71fe;
	border-left: 0;
	border-radius: 8px;
	color: #1a2233;
	font-size: 13px;
	font-weight: 500;
	direction: rtl;
	text-align: right;
}

/* -------------------------------------------------------------------------
   Hotel single ? room cards (?????) RTL ? high-specificity overrides
   ------------------------------------------------------------------------- */
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .st-list-rooms,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__form {
	direction: rtl !important;
	text-align: right !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .accordion-button {
	text-align: right !important;
	justify-content: space-between;
	flex-direction: row-reverse;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch {
	display: flex !important;
	flex-direction: column !important;
	gap: 14px;
	float: none !important;
	margin: 0 !important;
	width: 100% !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch > .item,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch > .mrm-room-card {
	float: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__form {
	border: 1px solid var(--mrm-line, #e5e7eb);
	border-radius: var(--mrm-card-radius, 16px);
	overflow: hidden;
	background: #fff;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__body,
.mrm-hotel-single #st-list-room .mrm-room-card__body {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 12px !important;
	width: 100%;
	padding: 14px 16px;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__top,
.mrm-hotel-single #st-list-room .mrm-room-card__top,
#st-list-room .mrm-room-card__top {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 10px !important;
	width: 100% !important;
	direction: rtl !important;
	text-align: right !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__media,
.mrm-hotel-single #st-list-room .mrm-room-card__media,
#st-list-room .mrm-room-card__media {
	flex: 0 0 auto !important;
	align-self: flex-start !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	border-radius: 25px !important;
	overflow: hidden !important;
	background: #f3f4f6 !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__media-link,
.mrm-hotel-single #st-list-room .mrm-room-card__media-link,
#st-list-room .mrm-room-card__media-link {
	display: block !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	aspect-ratio: auto;
	border-radius: 25px !important;
	overflow: hidden !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__thumb,
.mrm-hotel-single #st-list-room .mrm-room-card__thumb,
#st-list-room .mrm-room-card__thumb {
	display: block !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
	border-radius: 25px !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__media-placeholder,
.mrm-hotel-single #st-list-room .mrm-room-card__media-placeholder,
#st-list-room .mrm-room-card__media-placeholder {
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	aspect-ratio: 16 / 10;
	border-radius: 25px !important;
	background: #f3f4f6;
}

/* Override Traveler st-style-4 room card defaults. */
body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .item .mrm-room-card__form,
body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .mrm-room-card .mrm-room-card__form {
	display: block;
}

body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .item .mrm-room-card__media,
body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .mrm-room-card .mrm-room-card__media {
	flex: 0 0 auto !important;
	align-self: flex-start !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	border-radius: 25px !important;
}

body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .item .mrm-room-card__thumb,
body.single #st-content-wrapper.st-style-4 #st-list-room .fetch > .mrm-room-card .mrm-room-card__thumb {
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	object-fit: cover;
	border-radius: 25px !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__footer,
.mrm-hotel-single #st-list-room .mrm-room-card__footer {
	padding: 0;
	direction: rtl;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__action,
.mrm-hotel-single #st-list-room .mrm-room-card__action {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 10px;
	text-align: right !important;
	width: 100%;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card h2.heading,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .heading,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .heading a {
	text-align: right !important;
	margin: 0 !important;
	line-height: 1.35;
	font-size: 17px;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .facilities .st-list-facilities,
#st-list-room .mrm-room-card .facilities .st-list-facilities {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: flex-start !important;
	align-items: flex-start;
	gap: 10px;
	direction: rtl;
	border-bottom: 0 !important;
	padding-bottom: 0 !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .st-border-right {
	border: 0 !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single .mrm-room-list-wrap,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single .mrm-room-list-wrap .accordion-body {
	direction: rtl !important;
	text-align: right !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .facilities p.item {
	margin: 0 !important;
	padding: 0 !important;
	text-align: center;
	min-width: 64px;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .facilities p.item .item-box,
#st-list-room .mrm-room-card .facilities p.item .item-box {
	min-width: 58px !important;
	padding: 12px 18px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .facilities p.item .infor,
#st-list-room .mrm-room-card .facilities p.item .infor {
	display: block;
	min-width: 58px;
	text-align: center;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .price-wrapper {
	text-align: right !important;
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .price-wrapper .price {
	direction: ltr;
	unicode-bidi: isolate;
	display: inline-block;
	font-weight: 800;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .price-wrapper .unit {
	direction: rtl;
	unicode-bidi: plaintext;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .btn-show-price,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .btn_hotel_booking,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .show-detail {
	float: none !important;
	display: inline-block !important;
	margin: 0 !important;
	text-align: center !important;
	width: auto;
	min-width: 140px;
}

body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .mrm-room-children-policy,
body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .mrm-room-card__policy,
.mrm-hotel-single #st-list-room .mrm-room-card .mrm-room-children-policy {
	margin: 0;
	text-align: right !important;
	border-right: 3px solid #3b71fe;
	border-left: 0;
	width: 100%;
}

@media screen and (max-width: 767px) {
	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card__action,
	.mrm-hotel-single #st-list-room .mrm-room-card__action {
		align-items: stretch;
	}

	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .btn-show-price,
	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .mrm-room-card .btn_hotel_booking {
		width: 100%;
	}
}

@media screen and (min-width: 992px) {
	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 16px;
	}

	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch > .item,
	body.mrm-rtl-ui.single-st_hotel #st-content-wrapper.mrm-hotel-single #st-list-room .fetch > .mrm-room-card {
		width: 100% !important;
	}
}

.mrm-chip:nth-child(3) { animation-delay: 0.08s; }
.mrm-chip:nth-child(4) { animation-delay: 0.12s; }

/* Room card: vertical stack ? title ? icons ? image ? policy ? details. */
#st-list-room .item.mrm-room-card,
#st-list-room .mrm-room-card {
	padding: 0 !important;
	margin: 0 0 14px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

#st-list-room .mrm-room-card__form {
	display: block !important;
	border: 1px solid var(--mrm-line, #e5e7eb) !important;
	border-radius: var(--mrm-card-radius, 16px) !important;
	overflow: hidden !important;
	background: #fff !important;
}

#st-list-room .mrm-room-card__body {
	display: flex !important;
	flex-direction: column !important;
	padding: 14px 16px !important;
	gap: 12px !important;
}

#st-list-room .mrm-room-card__top {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 10px !important;
	width: 100% !important;
	direction: rtl !important;
	text-align: right !important;
}

#st-list-room .mrm-room-card__media {
	flex: 0 0 auto !important;
	align-self: flex-start !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 25px !important;
	overflow: hidden !important;
	background: #f3f4f6 !important;
}

#st-list-room .mrm-room-card__media-link {
	display: block !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	aspect-ratio: auto;
	border-radius: 25px !important;
	overflow: hidden !important;
}

#st-list-room .mrm-room-card__thumb {
	display: block !important;
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
	border-radius: 25px !important;
}

#st-list-room .mrm-room-card__media-placeholder {
	width: 300px !important;
	max-width: 300px !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	aspect-ratio: 16 / 10;
	border-radius: 25px !important;
}

#st-list-room .mrm-room-card__footer {
	padding: 0 !important;
	direction: rtl !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

#st-list-room .mrm-room-card__action {
	width: 100% !important;
	align-items: flex-start !important;
}

#st-list-room .mrm-room-card .heading,
#st-list-room .mrm-room-card .heading a {
	margin: 0 !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
}

/* Banner search styles moved to mrm-banner-search.css */

/* ?? Room / hotel mobile booking bar ??
 * Traveler room templates ship with Bootstrap `d-none`, and WP Call Button
 * (full-width, z-index 9999999999) covers the sticky book CTA. Fix both. */
@media screen and (min-width: 992px) {
	body.single-hotel_room .hotel-target-book-mobile,
	body.single-st_hotel .hotel-target-book-mobile {
		display: none !important;
	}
}

@media screen and (max-width: 991px) {
	/* Prefer booking CTA over floating Call Us on bookable pages. */
	body.single-hotel_room a.wp-call-button,
	body.single-st_hotel a.wp-call-button,
	body.single-hotel_room .wp-call-button,
	body.single-st_hotel .wp-call-button {
		display: none !important;
	}

	body.single-hotel_room .hotel-target-book-mobile,
	body.single-st_hotel .hotel-target-book-mobile,
	body.single-hotel_room .mrm-room-book-mobile,
	#st-content-wrapper .hotel-target-book-mobile.mrm-room-book-mobile {
		display: flex !important;
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		z-index: 10000000000 !important;
		background: #fff !important;
		border-top: 1px solid var(--mrm-line, #e3e8ef) !important;
		box-shadow: 0 -6px 24px rgba(15, 23, 42, 0.12) !important;
		padding: 12px 16px !important;
		margin: 0 !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 12px !important;
		border-radius: 0 !important;
	}

	body.single-hotel_room .hotel-target-book-mobile.hide,
	body.single-st_hotel .hotel-target-book-mobile.hide {
		display: none !important;
	}

	body.single-hotel_room .hotel-target-book-mobile .btn-mpopup,
	body.single-st_hotel .hotel-target-book-mobile .btn-mpopup {
		background: var(--mrm-orange, #f8890c) !important;
		border-color: var(--mrm-orange, #f8890c) !important;
		color: #fff !important;
		border-radius: 10px !important;
		font-weight: 700 !important;
		white-space: nowrap;
		padding: 12px 18px !important;
	}

	body.single-hotel_room .hotel-target-book-mobile .price-wrapper .price,
	body.single-st_hotel .hotel-target-book-mobile .price-wrapper .price {
		font-weight: 800;
		font-size: 18px;
		color: var(--mrm-ink, #0f172a);
		margin-inline: 4px;
	}

	/* Space content so sticky bar doesn?t cover the last section. */
	body.single-hotel_room #st-content-wrapper,
	body.single-st_hotel #st-content-wrapper {
		padding-bottom: 88px !important;
	}
}

/* ?? Room single: 25px curves on gallery + booking box ??
 * Room page uses elementor single-room (Fotorama + .form-book-wrapper).
 * mrm-hotel.css now loads on hotel_room singulars. */
body.single-hotel_room {
	--mrm-room-radius: 25px;
}

body.single-hotel_room #st-content-wrapper .st-gallery,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__wrap,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__stage,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__stage__shaft,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__stage__frame,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__img,
body.single-hotel_room #st-content-wrapper .st-gallery img,
body.single-hotel_room #st-content-wrapper .st-gallery.style-masonry,
body.single-hotel_room #st-content-wrapper .st-gallery .item-gallery,
body.single-hotel_room #st-content-wrapper .st-gallery .item-gallery img {
	border-radius: var(--mrm-room-radius) !important;
	overflow: hidden !important;
}

body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__nav-wrap,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__nav,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__thumb-border,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__thumb,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__nav__frame,
body.single-hotel_room #st-content-wrapper .st-gallery .fotorama__nav__frame img {
	border-radius: 12px !important;
	overflow: hidden !important;
}

body.single-hotel_room #st-content-wrapper .widgets .fixed-on-mobile > .form-book-wrapper,
body.single-hotel_room #st-content-wrapper .form-book-wrapper,
body.single-hotel_room #st-content-wrapper .form-book-wrapper.st-border-radius,
body.single-hotel_room #st-content-wrapper .st-form-book-wrapper,
body.single-hotel_room #st-content-wrapper .st-fixed-form-booking,
body.single-hotel_room #st-content-wrapper .mrm-book-box {
	border-radius: var(--mrm-room-radius) !important;
	overflow: hidden !important;
}

body.single-hotel_room #st-content-wrapper .form-book-wrapper .form-head,
body.single-hotel_room #st-content-wrapper .st-form-book-wrapper .form-head,
body.single-hotel_room #st-content-wrapper .st-form-head-book,
body.single-hotel_room #st-content-wrapper .form-booking-price {
	border-radius: var(--mrm-room-radius) var(--mrm-room-radius) 0 0 !important;
}

@media screen and (max-width: 991px) {
	body.single-hotel_room #st-content-wrapper .fixed-on-mobile.open,
	body.single-hotel_room #st-content-wrapper .fixed-on-mobile.open .form-book-wrapper,
	body.single-hotel_room #st-content-wrapper .st-fixed-form-booking.open,
	body.single-hotel_room #st-content-wrapper .st-fixed-form-booking.open .st-form-book-wrapper {
		border-radius: 0 !important;
	}
}



/* Guest names: fixed Arabic titles (?????/? / ?????). */
.guest_name_input > label {
	font-weight: 700;
	margin-bottom: 8px;
	display: block;
	text-align: right;
	font-size: 13px;
	color: #6b7785;
}

.guest_name_input .control-item {
	display: flex;
	align-items: center;
	gap: 8px;
	direction: rtl;
}

.guest_name_input select.mrm-guest-title,
.guest_name_input select[name="guest_title[]"] {
	flex: 0 0 auto;
	min-width: 4.5em;
	width: auto !important;
	max-width: 6em;
	appearance: none;
	-webkit-appearance: none;
	background-image: none !important;
	padding: 6px 8px !important;
	pointer-events: none;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #6b7785 !important;
	border: 1px solid var(--mrm-line, #e5e7eb) !important;
	border-radius: 8px !important;
	background-color: #f8fafc !important;
}

.guest_name_input input[name="guest_name[]"] {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #152033 !important;
}

.guest_name_input input[name="guest_name[]"]::placeholder {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #6b7785 !important;
	opacity: 1;
}

/* Desktop room card image: fixed 300px (not stretched by flex) */
@media screen and (min-width: 992px) {
	#st-list-room .mrm-room-card__media,
	#st-list-room .mrm-room-card__media-link,
	#st-list-room .mrm-room-card__thumb,
	#st-list-room .mrm-room-card .mrm-room-card__media img,
	#st-list-room .item.mrm-room-card img.mrm-room-card__thumb,
	body.single #st-content-wrapper #st-list-room .mrm-room-card img {
		width: 300px !important;
		max-width: 300px !important;
		height: auto !important;
		border-radius: 25px !important;
	}

	#st-list-room .mrm-room-card__media {
		align-self: flex-start !important;
	}
}

/* Live viewers social proof under booking form — same bar size + gradient as price head */
.mrm-live-viewers {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
	padding: 16px 18px;
	min-height: 52px;
	background: linear-gradient(90deg, #e8892a 0%, #3db8a8 48%, #2ec4f3 100%);
	border: 0;
	border-radius: 0 0 var(--mrm-card-radius, 20px) var(--mrm-card-radius, 20px);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	transition: opacity 0.25s ease;
	box-sizing: border-box;
}

.mrm-live-viewers.is-updating {
	opacity: 0.85;
}

.mrm-live-viewers__dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.55);
	animation: mrmLivePulse 1.6s ease-out infinite;
	flex-shrink: 0;
}

.mrm-live-viewers__text {
	color: #fff;
}

.mrm-live-viewers__count {
	font-weight: 800;
	color: #fff;
	font-variant-numeric: tabular-nums;
	min-width: 1.25em;
	display: inline-block;
	text-align: center;
}

@keyframes mrmLivePulse {
	0% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.5);
	}
	70% {
		box-shadow: 0 0 0 8px rgba(255, 255, 255, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
	}
}

/* Sit flush under book box when sticky column */
.mrm-sticky-book .mrm-live-viewers,
.st-fixed-form-booking .mrm-live-viewers {
	margin-top: 0;
}

body.mrm-rtl-ui .mrm-live-viewers {
	flex-direction: row;
}

/* ---- Extra breathing room inside single-hotel panels (rules table + room cards) ---- */
/* Rules / policies table: keep cell text off the inner panel border. */
.mrm-hotel-single .st-properties th,
.mrm-hotel-single .st-properties td {
	padding: 14px 18px !important;
	vertical-align: top;
}

.mrm-hotel-single .st-properties [data-show-all] {
	padding-bottom: 4px;
}

/* Room card: roomier inner body so title/icons/policy aren't glued to the frame. */
.mrm-hotel-single #st-list-room .mrm-room-card__body {
	padding: 20px 22px !important;
}

.mrm-hotel-single #st-list-room .mrm-room-card__footer {
	padding: 4px 2px 2px !important;
}

/* Children-stay policy note: a little more inner padding. */
body.mrm-hotel-ui .mrm-room-children-policy,
.mrm-hotel-single #st-list-room .mrm-room-card .mrm-room-children-policy,
.mrm-hotel-single #st-list-room .mrm-room-card .mrm-room-card__policy {
	padding: 12px 16px !important;
}
