/*
Theme Name: OpsMind Travel
Theme URI: https://opsmind.travel/
Description: Complete hotels, tours, cars, transfers, and booking experience by OpsMind Travel.
Author: OpsMind Travel
Template: opsmind-travel-core
Version: 1.0.0
Text Domain: traveler-child-mrm
*/

/* Header horizontal padding (override cores .header 40px) */
.header {
	padding-left: 12% !important;
	padding-right: 12% !important;
}

/* Kill Traveler transparent-menu content offset */
.stt-menu-transparent:not(.single-st_rental) #st-content-wrapper:not(.st-style-elementor),
body.stt-menu-transparent:not(.single-st_rental) #st-content-wrapper:not(.st-style-elementor) {
	padding-top: 0 !important;
}

/*
 * Unified hero size (hotel search = transfers = contact).
 * Kept in style.css so it always loads even if mrm-hotel.css is cached/skipped.
 */
@media screen and (min-width: 992px) {
	body.mrm-page-hero .banner.mrm-page-hero__banner,
	body.mrm-page-hero .mrm-tf > .banner.mrm-page-hero__banner,
	body.mrm-page-hero #st-content-wrapper > .banner.mrm-page-hero__banner,
	body.mrm-hotel-ui .search-result-page > .banner,
	body.mrm-hotel-ui .mrm-hotel-search .mrm-hotel-search-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 center !important;
	}

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

	body.mrm-page-hero .banner.mrm-page-hero__banner .banner-content,
	body.mrm-hotel-ui .search-result-page > .banner .banner-content {
		text-align: center !important;
		width: 100%;
	}

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

@media screen and (max-width: 991px) {
	body.mrm-page-hero .banner.mrm-page-hero__banner,
	body.mrm-hotel-ui .search-result-page > .banner,
	body.mrm-hotel-ui .mrm-hotel-search .mrm-hotel-search-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;
	}
}

/*
 * Logo breathing room inside dark header.
 * Do NOT force display on the mobile-only logo (.d-lg-none) — that caused a double logo.
 */
@media screen and (min-width: 992px) {
	header.header.header-sticky-menu,
	header.header {
		padding-top: 7px !important;
		padding-bottom: 7px !important;
		min-height: 0 !important;
		align-items: center !important;
	}

	/* Hide mobile logo on desktop (override any display:!important) */
	header.header .header__left a.logo.d-lg-none,
	header.header .header__left a.logo.d-block.d-lg-none {
		display: none !important;
	}

	/* Desktop / custom logo only */
	header.header .header__left a.custom-logo-link,
	header.header .header__left a.logo.d-lg-block,
	header.header .header__left a.logo.d-none.d-lg-block {
		display: inline-flex !important;
		align-items: center !important;
		margin: 7px !important;
		padding: 0 !important;
		line-height: 0 !important;
		max-height: none !important;
	}

	header.header .header__left a.custom-logo-link img,
	header.header .header__left a.logo.d-lg-block img,
	header.header .header__left a.logo.d-none.d-lg-block img,
	header.header .header__left .custom-logo {
		display: block !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		max-height: 85px !important;
		padding: 0 !important;
		margin: 0 !important;
		background: transparent !important;
		border-radius: 12px !important;
		object-fit: contain !important;
		box-sizing: border-box !important;
	}
}

@media screen and (max-width: 991px) {
	/* Hide desktop-only logo */
	header.header .header__left a.logo.d-none.d-lg-block {
		display: none !important;
	}

	/* When Custom Logo exists, hide the extra mobile .logo to avoid double */
	header.header .header__left:has(a.custom-logo-link) a.logo.d-lg-none {
		display: none !important;
	}

	header.header .header__left a.logo.d-lg-none,
	header.header .header__left a.custom-logo-link {
		margin: 7px !important;
		display: inline-flex !important;
		align-items: center !important;
	}

	header.header .header__left a.logo.d-lg-none img,
	header.header .header__left a.custom-logo-link img {
		max-height: 56px !important;
		width: auto !important;
		height: auto !important;
		padding: 0 !important;
	}
}

/*
 * Unified black translucent header (Style 9 / transparent).
 * Matches the dark glass look over the hero.
 */
@media screen and (min-width: 992px) {
	body.stt-menu-transparent header.header,
	body.stt-menu-transparent:not(.tour_solo) header.header,
	body.st-header-9.stt-menu-transparent header.header,
	body.mrm-header-like-home > header.header,
	body.mrm-header-like-home #header .header,
	body.mrm-header-like-home #header .header-sticky-menu {
		background: rgba(0, 0, 0, 0.55) !important;
		background-color: rgba(0, 0, 0, 0.55) !important;
		backdrop-filter: blur(8px);
		-webkit-backdrop-filter: blur(8px);
		border-bottom: 1px solid rgba(0, 0, 0, 0.25) !important;
		box-shadow: none !important;
		color: #fff;
	}

	body.stt-menu-transparent header.header #main-menu > li > a,
	body.st-header-9.stt-menu-transparent header.header #main-menu > li > a {
		color: #fff !important;
	}
}

/* Sticky / scrolled: slightly denser black, still translucent */
@media screen and (min-width: 992px) {
	body.stt-menu-transparent header.header.is-sticky,
	body.stt-menu-transparent header.header.st_menu_sticky_up,
	body.st-header-9 header.header.is-sticky {
		background: rgba(0, 0, 0, 0.78) !important;
		background-color: rgba(0, 0, 0, 0.78) !important;
	}
}

/* Keep amount + currency symbol together under RTL */
.mrm-money,
bdi.mrm-money,
.dropdown-minicart .price,
.dropdown-minicart .woocommerce-Price-amount,
.woocommerce-Price-amount {
	direction: ltr !important;
	unicode-bidi: isolate;
	display: inline-block;
}

/* Mini cart — Arabic RTL + comfortable padding
 * Beat parent .header__right .items .dropdown.dropdown-minicart rules. */
body .header__right .items .dropdown.dropdown-minicart .dropdown-menu,
body .dropdown-minicart .dropdown-menu.mrm-minicart-menu,
body header .dropdown-minicart .dropdown-menu,
body .header .dropdown-minicart ul.dropdown-menu {
	direction: rtl !important;
	text-align: right !important;
	width: 320px !important;
	min-width: 320px !important;
	max-width: min(320px, calc(100vw - 24px)) !important;
	padding: 18px 20px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

body .header__right .items .dropdown.dropdown-minicart .dropdown-menu > li,
body .dropdown-minicart .dropdown-menu > li {
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

body .header__right .items .dropdown.dropdown-minicart .dropdown-menu .heading,
body .dropdown-minicart .dropdown-menu .heading {
	padding: 4px 0 12px !important;
	margin: 0 0 10px !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}

body .header__right .items .dropdown.dropdown-minicart .dropdown-menu .heading .st-heading-section,
body .dropdown-minicart .dropdown-menu .heading .st-heading-section {
	padding: 0 0 4px !important;
	margin: 0 !important;
	border-bottom: 0 !important;
	display: block !important;
	line-height: 1.5 !important;
	font-size: 18px !important;
}

body .dropdown-minicart .dropdown-menu .heading .st-heading-section,
body .dropdown-minicart .dropdown-menu .cart-total .sub-total,
body .dropdown-minicart .dropdown-menu .cart-item .media-heading,
body .dropdown-minicart .dropdown-menu .cart-item .media-heading a,
body .dropdown-minicart .dropdown-menu .cart-item .price-wrapper {
	text-align: right !important;
	direction: rtl !important;
}

body .dropdown-minicart .dropdown-menu .cart-item {
	position: relative !important;
	display: block !important;
	padding: 12px 0 12px 28px !important;
}

body .dropdown-minicart .dropdown-menu .cart-item .media {
	display: flex !important;
	flex-direction: row !important;
	direction: rtl !important;
	align-items: flex-start !important;
	gap: 12px !important;
	width: 100% !important;
}

body .dropdown-minicart .dropdown-menu .cart-item .media-left {
	flex: 0 0 64px !important;
	width: 64px !important;
	order: 1 !important;
}

body .dropdown-minicart .dropdown-menu .cart-item .media-left img {
	width: 64px !important;
	height: 64px !important;
	object-fit: cover !important;
	border-radius: 8px !important;
}

body .dropdown-minicart .dropdown-menu .cart-item .media-body {
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: none !important;
	order: 2 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: right !important;
}

body .dropdown-minicart .dropdown-menu .cart-item .cart-delete-item {
	position: absolute !important;
	left: 0 !important;
	right: auto !important;
	top: 12px !important;
	bottom: auto !important;
	width: 24px !important;
	height: 24px !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 2 !important;
}

body .dropdown-minicart .dropdown-menu .cart-total {
	text-align: right !important;
	padding: 12px 0 0 !important;
	margin-top: 4px !important;
}

body .dropdown-minicart .dropdown-menu .cart-total .btn {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
}

body .header__right .items .dropdown.dropdown-minicart .dropdown-menu .cart-text-empty,
body .header__right .items .dropdown.dropdown-minicart .dropdown-menu li .cart-text-empty,
body .header__right .items .dropdown.dropdown-minicart .dropdown-menu .col-lg-12.cart-text-empty,
body .dropdown-minicart .dropdown-menu .cart-text-empty,
body .dropdown-minicart .dropdown-menu li .cart-text-empty,
body .dropdown-minicart .dropdown-menu .col-lg-12.cart-text-empty {
	text-align: right !important;
	padding: 10px 0 6px !important;
	margin: 0 !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	line-height: 1.6 !important;
	font-size: 15px !important;
	box-sizing: border-box !important;
}

/*
 * Datepicker: Traveler RTL floats td-date to the right while day headers
 * (Su–Sa) stay float:left — dates appear mirrored under the wrong weekday.
 * Keep the calendar grid LTR so numbers match the headers.
 */
.daterangepicker .calendar-table,
.daterangepicker .table-sub-header,
.daterangepicker .table-condensed {
	direction: ltr !important;
}

.rtl .daterangepicker .table-condensed .td-date,
.rtl #st-content-wrapper .st-availability .st-calendar .daterangepicker .calendar .table-condensed .td-date,
html[dir="rtl"] .daterangepicker .table-condensed .td-date,
body.rtl .daterangepicker .calendar .table-condensed .td-date {
	float: left !important;
}

.rtl .daterangepicker .table-sub-header .day-off-week,
html[dir="rtl"] .daterangepicker .table-sub-header .day-off-week,
body.rtl .daterangepicker .table-sub-header .day-off-week {
	float: left !important;
}

/* Month label can stay Arabic without flipping the grid */
.daterangepicker .table-header .month {
	unicode-bidi: plaintext;
}

/* —— Login / Register / Forgot password modal: Arabic RTL —— */
html[dir="rtl"] #st-login-form .modal-dialog,
html[dir="rtl"] #st-forgot-form .modal-dialog,
body.rtl #st-login-form .modal-dialog,
body.rtl #st-forgot-form .modal-dialog {
	direction: rtl;
	text-align: right;
}

html[dir="rtl"] #st-login-form .modal-header,
html[dir="rtl"] #st-forgot-form .modal-header,
body.rtl #st-login-form .modal-header,
body.rtl #st-forgot-form .modal-header {
	direction: rtl;
}

html[dir="rtl"] #st-login-form .modal-header .close,
html[dir="rtl"] #st-forgot-form .modal-header .close,
body.rtl #st-login-form .modal-header .close,
body.rtl #st-forgot-form .modal-header .close {
	left: 16px;
	right: auto;
	position: absolute;
}

html[dir="rtl"] #st-login-form .modal-header .account-tabs,
body.rtl #st-login-form .modal-header .account-tabs {
	direction: rtl;
	flex-direction: row;
}

html[dir="rtl"] #st-login-form .login-form-wrapper .heading,
html[dir="rtl"] #st-forgot-form .modal-title,
html[dir="rtl"] #st-forgot-form .modal-body,
body.rtl #st-login-form .login-form-wrapper .heading,
body.rtl #st-forgot-form .modal-title,
body.rtl #st-forgot-form .modal-body {
	text-align: right;
	direction: rtl;
}

html[dir="rtl"] #st-login-form .form-control,
html[dir="rtl"] #st-forgot-form .form-control,
body.rtl #st-login-form .form-control,
body.rtl #st-forgot-form .form-control {
	text-align: right;
	direction: rtl;
}

html[dir="rtl"] #st-login-form .field-password .stt-icon,
body.rtl #st-login-form .field-password .stt-icon {
	left: 16px;
	right: auto;
}

html[dir="rtl"] #st-login-form .field-password input.form-control,
body.rtl #st-login-form .field-password input.form-control {
	padding-left: 44px;
	padding-right: 16px;
}

html[dir="rtl"] #st-login-form .st-flex.space-between,
html[dir="rtl"] #st-login-form .st-icheck.st-flex,
body.rtl #st-login-form .st-flex.space-between,
body.rtl #st-login-form .st-icheck.st-flex {
	direction: rtl;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

html[dir="rtl"] #st-login-form .st-icheck-item,
body.rtl #st-login-form .st-icheck-item {
	padding-left: 0;
	padding-right: 32px;
}

html[dir="rtl"] #st-login-form .st-icheck-item label .checkmark,
body.rtl #st-login-form .st-icheck-item label .checkmark {
	right: 0;
	left: auto;
	margin-right: 0;
	margin-left: 12px;
}

html[dir="rtl"] #st-login-form .st-icheck-item label .checkmark:after,
body.rtl #st-login-form .st-icheck-item label .checkmark:after {
	left: auto;
	right: 6px;
}

html[dir="rtl"] #st-login-form .open-loss-password,
body.rtl #st-login-form .open-loss-password {
	unicode-bidi: isolate;
}

/* Temporary: hide Partner (شريك) registration option */
#st-login-form .user-type label[for="partner-user"],
#st-login-form .user-type #partner-user,
.login-form-wrapper .user-type label[for="partner-user"],
.login-form-wrapper .user-type #partner-user {
	display: none !important;
}

/* TikTok icon — the Traveler icon font has no tiktok glyph, so draw one
   via an SVG mask that inherits the surrounding icon color. */
.stt-icon-tiktok:before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: -0.125em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* User account dropdown — Arabic RTL */
body .dropdown-user-dashboard .dropdown-menu,
body .header__right .items .dropdown.dropdown-user-dashboard .dropdown-menu,
body #topbar.style-elementor .topbar-items li.dropdown-user-dashboard .dropdown-menu {
	direction: rtl !important;
	text-align: right !important;
	padding: 16px 18px !important;
	min-width: 220px !important;
	box-sizing: border-box !important;
}

body .dropdown-user-dashboard .dropdown-menu .user-name,
body .header__right .items .dropdown.dropdown-user-dashboard .dropdown-menu .user-name,
body #topbar.style-elementor .topbar-items li.dropdown-user-dashboard .dropdown-menu .user-name {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	text-align: right !important;
	direction: rtl !important;
	font-weight: 700 !important;
	padding-bottom: 10px !important;
	margin-bottom: 6px !important;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}

/* Avatar visually on the left; greeting on the right */
body .dropdown-user-dashboard .dropdown-menu .user-name .avatar,
body .header__right .items .dropdown.dropdown-user-dashboard .dropdown-menu .user-name .avatar,
body #topbar.style-elementor .topbar-items li.dropdown-user-dashboard .dropdown-menu .user-name .avatar {
	order: 2 !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
}

body .dropdown-user-dashboard .dropdown-menu li:not(.user-name) a,
body .header__right .items .dropdown.dropdown-user-dashboard .dropdown-menu li:not(.user-name) a,
body #topbar.style-elementor .topbar-items li.dropdown-user-dashboard .dropdown-menu li:not(.user-name) a {
	display: block !important;
	text-align: right !important;
	direction: rtl !important;
	padding: 8px 0 !important;
}

body .dropdown-user-dashboard .dropdown-menu .dropdown-divider,
body .header__right .items .dropdown.dropdown-user-dashboard .dropdown-menu .dropdown-divider {
	margin: 8px 0 !important;
}

