/* Interface arabe et langues RTL (espace client, listes, pied de page) */
html[dir="rtl"] body {
	direction: rtl;
	text-align: right;
}

/* ==========================================================================
   En-tête et Menu Navigation en mode RTL (Arabe / Maroc)
   Décalage vers la droite pour que l'icône utilisateur (homme) et le menu
   soient parfaitement visibles et dégagés du bord gauche de l'écran.
   ========================================================================== */

/* Conteneur d'en-tête en RTL : marge de sécurité à gauche */
html[dir="rtl"] .header-bottom .container {
	padding-left: clamp(2rem, 5vw, 4.5rem) !important;
}

/* Bloc complet menu du haut + drapeau (aligné à gauche en RTL) : décalage vers la droite */
html[dir="rtl"] .header-right {
	margin-left: clamp(1.5rem, 3.5vw, 3.5rem) !important;
	padding-left: 0.75rem !important;
	gap: 0.75rem !important;
	justify-content: flex-end !important;
}

/* Bouton Séjours & Vacances centré verticalement en RTL */
html[dir="rtl"] .header-center {
	align-self: center !important;
	margin-top: auto !important;
	margin-bottom: auto !important;
}
html[dir="rtl"] .header-sejours-vacances {
	align-self: center !important;
	margin-top: auto !important;
	margin-bottom: auto !important;
}

/* Post-its Marketing en mode RTL */
html[dir="rtl"] .mkt-postit-pub {
	direction: rtl;
	text-align: right;
	border-radius: 3px 3px 3px 14px !important;
	padding: 4px 10px 5px 12px !important;
}
html[dir="rtl"] .mkt-postit-body {
	text-align: right !important;
}
html[dir="rtl"] .mkt-postit-title {
	text-align: right !important;
	max-width: 220px !important;
}
html[dir="rtl"] .mkt-postit-top-row {
	flex-direction: row;
	justify-content: flex-start;
}
html[dir="rtl"] .mkt-postit-pin {
	margin-left: 4px !important;
	margin-right: 0 !important;
}
html[dir="rtl"] .mkt-postit-cta {
	justify-content: flex-start !important;
	direction: rtl;
}
html[dir="rtl"] .mkt-postit-fold {
	right: auto !important;
	left: 0 !important;
	border-width: 0 10px 10px 0 !important;
	border-color: transparent transparent rgba(0, 0, 0, 0.15) transparent !important;
}
html[dir="rtl"] .mkt-popup-card {
	direction: rtl;
	text-align: right;
}
html[dir="rtl"] .mkt-popup-close-btn {
	right: auto !important;
	left: 10px !important;
}
html[dir="rtl"] .mkt-popup-multi-nav {
	direction: rtl;
	padding-right: 12px !important;
	padding-left: 50px !important;
}
html[dir="rtl"] .mkt-nav-tabs {
	padding-right: 4px !important;
	padding-left: 4px !important;
}
html[dir="rtl"] .mkt-popup-footer {
	justify-content: flex-start !important;
	flex-direction: row-reverse;
}

/* Liens et boutons du menu de navigation : espacement interne suffisant */
/* Liens et boutons du menu de navigation : espacement interne suffisant */
html[dir="rtl"] #main-menu ul {
	display: flex !important;
	align-items: center !important;
	flex-direction: row !important;
	gap: 0.5rem !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
	text-align: right;
}

/* Affichage réactif des éléments du menu principal en RTL */
@media (min-width: 992px) {
	/* Masquer STRICTEMENT tous les éléments mobiles sur desktop */
	html[dir="rtl"] #main-menu ul li.d-lg-none,
	html[dir="rtl"] #main-menu .d-lg-none,
	html[dir="rtl"] #main-menu-moncompte-mobile,
	html[dir="rtl"] li.d-lg-none.mobile-nav-item,
	html[dir="rtl"] .mobile-nav-item,
	html[dir="rtl"] .d-lg-none {
		display: none !important;
	}

	/* Masquer tout élément masqué par style display:none ou class d-none sans d-lg-block */
	html[dir="rtl"] #main-menu ul li[style*="display: none"],
	html[dir="rtl"] #main-menu ul li[style*="display:none"],
	html[dir="rtl"] #main-menu [style*="display: none"],
	html[dir="rtl"] #main-menu [style*="display:none"],
	html[dir="rtl"] #main-menu ul li.d-none:not(.d-lg-block) {
		display: none !important;
	}

	/* Bouton Publier sur desktop : toujours visible */
	html[dir="rtl"] #main-menu ul li.nav-item-publier,
	html[dir="rtl"] #main-menu ul li.d-none.d-lg-block.nav-item-publier {
		display: inline-flex !important;
		align-items: center !important;
	}

	/* Éléments desktop autorisés et non masqués */
	html[dir="rtl"] #main-menu ul li:not(.d-lg-none):not(.d-none):not([style*="display: none"]):not([style*="display:none"]),
	html[dir="rtl"] #main-menu ul li.d-lg-block:not(.d-none):not([style*="display: none"]):not([style*="display:none"]) {
		display: inline-flex !important;
		align-items: center !important;
	}
}

@media (max-width: 991.98px) {
	html[dir="rtl"] #main-menu ul li.d-none.d-lg-block,
	html[dir="rtl"] #main-menu .d-none.d-lg-block,
	html[dir="rtl"] #main-menu-moncompte.d-none.d-lg-block,
	html[dir="rtl"] #main-menu-moncompte {
		display: none !important;
	}
}

html[dir="rtl"] #main-menu ul li a,
html[dir="rtl"] body.site-accueil #main-menu ul a {
	padding: 0.45rem 0.85rem !important;
	margin: 0 0.35rem !important;
	white-space: nowrap !important;
}

/* Bouton Publier une annonce : style moderne */
html[dir="rtl"] #main-menu ul li a.pubAnnonce {
	border-radius: 20px !important;
	font-weight: 600 !important;
	padding: 0.45rem 1rem !important;
	box-shadow: 0 2px 6px rgba(24, 186, 96, 0.3) !important;
}

/* Icône profil utilisateur : design épuré, rond et moderne */
html[dir="rtl"] #main-menu-moncompte,
html[dir="rtl"] #main-menu-nonconnecte {
	position: relative !important;
}

html[dir="rtl"] #main-menu .profile-avatar-btn,
html[dir="rtl"] #main-menu-moncompte .dropdown-toggle,
html[dir="rtl"] #main-menu-nonconnecte .dropdown-toggle {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	padding: 0 !important;
	margin: 0 4px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.25) !important;
	cursor: pointer !important;
	transition: all 0.2s ease-in-out !important;
	text-decoration: none !important;
}

html[dir="rtl"] #main-menu .profile-avatar-btn:hover,
html[dir="rtl"] #main-menu-moncompte .dropdown-toggle:hover,
html[dir="rtl"] #main-menu-nonconnecte .dropdown-toggle:hover,
html[dir="rtl"] #main-menu .profile-avatar-btn[aria-expanded="true"],
html[dir="rtl"] #main-menu-moncompte .dropdown-toggle[aria-expanded="true"],
html[dir="rtl"] #main-menu-nonconnecte .dropdown-toggle[aria-expanded="true"] {
	background: #18ba60 !important;
	border-color: #18ba60 !important;
	color: #ffffff !important;
	box-shadow: 0 2px 8px rgba(24, 186, 96, 0.4) !important;
}

html[dir="rtl"] #main-menu .profile-avatar-btn::after,
html[dir="rtl"] #main-menu-moncompte .dropdown-toggle::after,
html[dir="rtl"] #main-menu-nonconnecte .dropdown-toggle::after {
	display: none !important;
}

html[dir="rtl"] #main-menu .profile-avatar-btn i,
html[dir="rtl"] #main-menu-moncompte .dropdown-toggle i,
html[dir="rtl"] #main-menu-nonconnecte .dropdown-toggle i {
	font-size: 16px !important;
	margin: 0 !important;
	color: inherit !important;
}

/* Menu déroulant profil : alignement propre et soigné sous l'avatar en RTL */
html[dir="rtl"] #main-menu .dropdown-menu,
html[dir="rtl"] #home.dropdown-menu,
html[dir="rtl"] #home-visitor.dropdown-menu,
html[dir="rtl"] .header-right .dropdown-menu {
	text-align: right !important;
	min-width: 250px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
	padding: 6px 0 !important;
	background: #ffffff !important;
	direction: rtl !important;
	left: 0 !important;
	right: auto !important;
	top: 100% !important;
	margin-top: 8px !important;
}

html[dir="rtl"] #home .card-block,
html[dir="rtl"] #home-visitor .card-block {
	padding: 0 !important;
}

html[dir="rtl"] #home .dropdown-item,
html[dir="rtl"] #home-visitor .dropdown-item,
html[dir="rtl"] #main-menu .dropdown-menu .dropdown-item,
html[dir="rtl"] .header-right .dropdown-menu .dropdown-item {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-direction: row !important;
	gap: 12px !important;
	padding: 10px 18px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #2c3e50 !important;
	text-align: right !important;
	direction: rtl !important;
	border: none !important;
	background: transparent !important;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease, padding 0.15s ease !important;
}

html[dir="rtl"] #home .dropdown-item:hover,
html[dir="rtl"] #home-visitor .dropdown-item:hover,
html[dir="rtl"] #main-menu .dropdown-menu .dropdown-item:hover,
html[dir="rtl"] .header-right .dropdown-menu .dropdown-item:hover {
	background-color: #f0fdf4 !important;
	color: #18ba60 !important;
	padding-right: 22px !important;
}

html[dir="rtl"] #home .dropdown-item.text-danger,
html[dir="rtl"] #home-visitor .dropdown-item.text-danger {
	color: #ef4444 !important;
}

html[dir="rtl"] #home .dropdown-item.text-danger:hover,
html[dir="rtl"] #home-visitor .dropdown-item.text-danger:hover {
	background-color: #fef2f2 !important;
	color: #dc2626 !important;
}

html[dir="rtl"] #home .dropdown-item i,
html[dir="rtl"] #home-visitor .dropdown-item i,
html[dir="rtl"] #main-menu .dropdown-menu .dropdown-item i,
html[dir="rtl"] .header-right .dropdown-menu .dropdown-item i {
	width: 20px !important;
	text-align: center !important;
	font-size: 15px !important;
	color: #18ba60 !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

html[dir="rtl"] #home .dropdown-item.text-danger i,
html[dir="rtl"] #home-visitor .dropdown-item.text-danger i {
	color: #dc2626 !important;
}

html[dir="rtl"] #home .dropdown-divider,
html[dir="rtl"] #home-visitor .dropdown-divider {
	margin: 6px 12px !important;
	border-top: 1px solid #eef2f6 !important;
	opacity: 1 !important;
}

html[dir="rtl"] #home .menu-pays-trigger,
html[dir="rtl"] #home-visitor .menu-pays-trigger {
	justify-content: space-between !important;
}

html[dir="rtl"] #home .menu-pays-current,
html[dir="rtl"] #home-visitor .menu-pays-current {
	font-size: 12px !important;
	padding: 3px 8px !important;
	background: #f1f5f9 !important;
	color: #475569 !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 12px !important;
	display: inline-flex !important;
	align-items: center !important;
	margin-right: auto !important;
	margin-left: 0 !important;
}

html[dir="rtl"] #home .menu-pays-current img,
html[dir="rtl"] #home-visitor .menu-pays-current img {
	margin-left: 6px !important;
	margin-right: 0 !important;
}

/* Sélecteur de langue et drapeau : espacement soigné avec le reste du menu */
html[dir="rtl"] .header-locale {
	margin-left: 0.75rem !important;
	margin-right: 0 !important;
}

html[dir="rtl"] .header-locale .header-lang-toggle {
	padding: 0.25rem 0.5rem !important;
}

html[dir="rtl"] #languecourantesiteflag {
	border-radius: 2px !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25) !important;
	vertical-align: middle !important;
}

html[dir="rtl"] #languecourantesite .dropdown-menu .dropdown-item img,
html[dir="rtl"] .header-locale .dropdown-menu .dropdown-item img {
	width: 18px !important;
	height: 12px !important;
	max-width: 18px !important;
	max-height: 12px !important;
	vertical-align: middle !important;
	object-fit: cover !important;
	display: inline-block !important;
}

html[dir="rtl"] .header .form-select,
html[dir="rtl"] .header .dropdown-menu {
	text-align: right;
}

html[dir="rtl"] .search-box .search-btn {
	left: 0;
	right: auto;
}

html[dir="rtl"] .owl-carousel .owl-nav .owl-prev {
	left: auto;
	right: 0;
}

html[dir="rtl"] .owl-carousel .owl-nav .owl-next {
	right: auto;
	left: 0;
}

/* Titres des sections espace client */
html[dir="rtl"] .myModalLabel,
html[dir="rtl"] .modal-title,
html[dir="rtl"] .user-page .heading h4 {
	text-align: right;
}

html[dir="rtl"] .myModalLabel::after {
	margin-right: 0;
	margin-left: auto;
}

/* Tableau de bord : menu latéral puis contenu */
html[dir="rtl"] .user-page .row {
	flex-direction: row-reverse;
}

html[dir="rtl"] .user-profile-box .detail ul li a i {
	margin-left: 0.5rem;
	margin-right: 0;
}

html[dir="rtl"] .user-profile-box .header,
html[dir="rtl"] .user-profile-box .detail {
	text-align: right;
}

/* Listes DataTables */
html[dir="rtl"] .dataTables_wrapper .dataTables_filter {
	text-align: left;
	float: left;
}

html[dir="rtl"] .dataTables_wrapper .dataTables_length {
	float: right;
	text-align: right;
}

html[dir="rtl"] .dataTables_wrapper .dataTables_info {
	float: right;
	text-align: right;
}

html[dir="rtl"] .dataTables_wrapper .dataTables_paginate {
	float: left;
	text-align: left;
}

html[dir="rtl"] .dt-buttons {
	float: right;
	text-align: right;
}

html[dir="rtl"] table.dataTable thead th,
html[dir="rtl"] table.dataTable tbody td {
	text-align: right;
}

html[dir="rtl"] .SectionBien .btn-group,
html[dir="rtl"] .SectionAnnoncep-0 .btn-group {
	flex-direction: row-reverse;
}

html[dir="rtl"] .SectionBien .col-form-label {
	text-align: right;
}

/* Pied de page */
html[dir="rtl"] .first-footer .top-footer .row {
	flex-direction: row-reverse;
}

html[dir="rtl"] .first-footer .netabout,
html[dir="rtl"] .first-footer .newsletters,
html[dir="rtl"] .first-footer .widget {
	text-align: right;
}

html[dir="rtl"] .widget.quick-link ul li a {
	padding-right: 0;
	padding-left: 1.25rem;
	text-align: right;
}

html[dir="rtl"] .widget.quick-link ul li a:before {
	content: "\f100";
	padding-right: 0;
	padding-left: 1rem;
}

html[dir="rtl"] .first-footer .contactus ul li .info {
	text-align: right;
}

html[dir="rtl"] .first-footer .contactus ul li .fa {
	margin-left: 0.5rem;
	margin-right: 0;
}

html[dir="rtl"] .second-footer .container {
	flex-direction: row-reverse;
}

html[dir="rtl"] .netsocials {
	margin-left: 0 !important;
	margin-right: auto !important;
}

/* Formulaires */
html[dir="rtl"] .form-control,
html[dir="rtl"] .form-select {
	text-align: right;
}

html[dir="rtl"] .input-group > :not(:first-child) {
	margin-right: -1px;
	margin-left: 0;
}

html[dir="rtl"] .dropdown-menu-end {
	right: auto;
	left: 0;
}

html[dir="rtl"] .dynamic-tabs .tabs-list {
	flex-direction: row-reverse;
	flex-wrap: wrap;
	justify-content: flex-end;
}

html[dir="rtl"] .dynamic-tabs .tabs-list li {
	text-align: right;
}

html[dir="rtl"] .details-bien {
	flex-direction: row-reverse;
}

html[dir="rtl"] .add-property-button .row[style*="float: right"] {
	float: left !important;
}

/* Page d'accueil : titres et sous-titres en arabe (évite ponctuation LTR inversée) */
html[dir="rtl"] body.site-accueil .sec-title h2,
html[dir="rtl"] body.site-accueil .sec-title p {
	direction: rtl;
	unicode-bidi: isolate;
	text-align: center;
}

html[dir="rtl"] body.site-accueil .pricing-table .sec-title h2 .btn-group {
	direction: ltr;
	unicode-bidi: isolate;
}

/* Boutons outline avec icône flèche (Accueil / Populaires / Villes les plus visitées) :
   Garder l'icône complètement à droite du bouton traduit sans inversion anarchique ni chevauchement du texte */
html[dir="rtl"] .btn.btn-outline-light,
html[dir="rtl"] body.site-accueil .popular.portfolio .btn-outline-light {
	direction: ltr !important;
	unicode-bidi: isolate !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
}

html[dir="rtl"] .btn.btn-outline-light::after,
html[dir="rtl"] body.site-accueil .popular.portfolio .btn-outline-light::after {
	position: static !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	order: 2 !important;
	margin: 0 !important;
}

html[dir="rtl"] .btn.btn-outline-light:hover::after,
html[dir="rtl"] body.site-accueil .popular.portfolio .btn-outline-light:hover::after {
	left: auto !important;
	right: auto !important;
	transform: rotateZ(-360deg) !important;
}

/* Vitrine accueil : conserver la disposition gauche / centre / droite (Owl Carousel) */
html[dir="rtl"] .vitrine-accueil-root,
html[dir="rtl"] .vitrine-accueil-root .slider-body.vitrine-accueil,
html[dir="rtl"] .vitrine-accueil-root .vitrine-accueil__rail,
html[dir="rtl"] .vitrine-accueil-root .vitrine-accueil__owl {
	direction: ltr;
}

html[dir="rtl"] .vitrine-accueil-root .slider-info,
html[dir="rtl"] .vitrine-accueil-root .slider-info h5,
html[dir="rtl"] .vitrine-accueil-root .slider-info h4,
html[dir="rtl"] .vitrine-accueil-root .slider-link-body {
	direction: rtl;
	text-align: center;
}

html[dir="rtl"] .vitrine-accueil-root .vitrine-accueil__card-meta {
	left: auto;
	right: 8px;
}

html[dir="rtl"] .vitrine-accueil-root .vitrine-accueil__center-badge,
html[dir="rtl"] .vitrine-accueil-root .vitrine-accueil__rail-label {
	direction: rtl;
}

/* Détail annonce (page + modale) */
html[dir="rtl"] .homes-content.details .myModalLabel,
html[dir="rtl"] .blog-info.details h5,
html[dir="rtl"] .homes-content.details h5.m-0 {
	direction: rtl;
	unicode-bidi: isolate;
	text-align: right;
}

html[dir="rtl"] .listing-address h3,
html[dir="rtl"] .homes-content.details .service-text-p p,
html[dir="rtl"] #description .collapse {
	direction: rtl;
	text-align: right;
}

html[dir="rtl"] .agencetel text,
html[dir="rtl"] #telephoneagence {
	direction: rtl;
	unicode-bidi: isolate;
}

/* Modale filtre recherche */
html[dir="rtl"] #filtre-annonce .modal-body,
html[dir="rtl"] #filtre-annonce .form-check-label,
html[dir="rtl"] #filtre-annonce .filtre-type-segment-label {
	direction: rtl;
	text-align: right;
}

html[dir="rtl"] #filtre-annonce .buttons input[type="radio"] {
	direction: ltr;
}

html[dir="rtl"] #filtre-annonce .filtrerech-footer {
	flex-direction: row-reverse;
}

/* ==========================================================================
   Catégories vedettes - Étiquette (badge) calée à droite en RTL
   ========================================================================== */
html[dir="rtl"] .feature-categories .listing-badges {
	direction: rtl;
	left: 0;
	right: 0;
}

html[dir="rtl"] .feature-categories .listing-badges .featured {
	float: right !important;
	right: 17px !important;
	left: auto !important;
	top: 17px !important;
	position: relative !important;
	margin: 0 !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 6px 14px !important;
	border-radius: 20px !important;
	text-align: center !important;
}

/* Pied de page - Adresse et contacts bidi en RTL */
html[dir="rtl"] .footer-contact-list li span {
	unicode-bidi: isolate;
}

/* Bascule profil particulier / professionnel (modales connexion et inscription) en RTL */
html[dir="rtl"] .profil-l {
	border-radius: 0px 50px 50px 0px !important;
}
html[dir="rtl"] .profil-r {
	border-radius: 50px 0px 0px 50px !important;
}

/* Onglets de critères et de localités en RTL */
html[dir="rtl"] #tabs-villeslesplusvisitees > ul,
html[dir="rtl"] #tabs-villeslesplusvisitees.ui-tabs .ui-tabs-nav,
html[dir="rtl"] #tabs-criteres > ul,
html[dir="rtl"] #tabs-criteres.ui-tabs .ui-tabs-nav {
	display: flex !important;
	flex-direction: row !important;
	justify-content: flex-start !important;
	direction: rtl !important;
	padding-right: 0 !important;
	margin-right: 0 !important;
}

html[dir="rtl"] #tabs-villeslesplusvisitees > ul > li,
html[dir="rtl"] #tabs-villeslesplusvisitees.ui-tabs .ui-tabs-nav li,
html[dir="rtl"] #tabs-criteres > ul > li,
html[dir="rtl"] #tabs-criteres.ui-tabs .ui-tabs-nav li {
	float: right !important;
	margin: 0 0 0 5px !important;
}



