/* =========================================================
   VERSION ARABE — chargée uniquement quand <html dir="rtl">
   Polices arabes, typographie, et inversion des éléments positionnés
   ========================================================= */

:root {
  --font-title: "Noto Naskh Arabic", "Amiri", "Times New Roman", serif;
  --font-body: "IBM Plex Sans Arabic", "Segoe UI", Tahoma, sans-serif;
}

/* L'espacement des lettres casse la liaison des caractères arabes ; pas d'italique ni de majuscules */
[dir="rtl"] * { letter-spacing: 0 !important; }
[dir="rtl"] body { line-height: 1.75; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { line-height: 1.35; font-weight: 700; }
[dir="rtl"] em, [dir="rtl"] i, [dir="rtl"] blockquote { font-style: normal; }
[dir="rtl"] .eyebrow, [dir="rtl"] .brand__tag, [dir="rtl"] .loader__tag { text-transform: none; letter-spacing: 0; }
[dir="rtl"] .brand__name, [dir="rtl"] .brand__tag, [dir="rtl"] .loader__name { font-family: var(--font-body); }
/* Lettres arabes à jambage (ج، ي، ر…) : hauteur de ligne suffisante, sinon coupées par overflow: hidden */
[dir="rtl"] .brand__name { line-height: 1.45; margin-block: -.15em; }
[dir="rtl"] .brand--logo .brand__name { line-height: 1.45; }
[dir="rtl"] .loader__name { line-height: 1.4; }

/* Numéros de téléphone, emails, références : toujours de gauche à droite */
[dir="rtl"] a[href^="tel:"], [dir="rtl"] a[href^="mailto:"], [dir="rtl"] input[type="tel"],
[dir="rtl"] input[type="email"], [dir="rtl"] .trip__ref, [dir="rtl"] .confirm__ref strong { direction: ltr; unicode-bidi: isolate; }
[dir="rtl"] input[type="tel"], [dir="rtl"] input[type="email"] { text-align: right; }

/* Flèches et chevrons latéraux */
[dir="rtl"] .icon--arrow, [dir="rtl"] .link-arrow .icon, [dir="rtl"] .post-card__more .icon,
[dir="rtl"] .offer-card__go .icon, [dir="rtl"] .search__submit .icon:last-child { transform: scaleX(-1); }
[dir="rtl"] .icon--flip { transform: none; }
[dir="rtl"] .link-arrow:hover .icon, [dir="rtl"] .post-card:hover .post-card__more .icon { transform: scaleX(-1) translateX(4px); }
[dir="rtl"] .offer-card:hover .offer-card__go { transform: rotate(45deg); }
[dir="rtl"] .pagination__link .icon { transform: scaleX(-1); }
[dir="rtl"] .pagination__link .icon--flip { transform: none; }

/* ---------- En-tête et navigation ---------- */
[dir="rtl"] .brand { margin-right: 0; margin-left: auto; }
@media (max-width: 1179px) {
  [dir="rtl"] .main-nav { inset: 0 auto 0 0; transform: translateX(-100%); }
  [dir="rtl"] .main-nav.is-open { transform: none; }
}
@media (min-width: 1180px) {
  [dir="rtl"] .brand { margin-left: 0; }
  [dir="rtl"] .nav-link::after { transform-origin: right; }
}
[dir="rtl"] .burger__bar::before, [dir="rtl"] .burger__bar::after { left: auto; right: 0; }
[dir="rtl"] .wa-float { right: auto; left: 1rem; }
@media (min-width: 768px) { [dir="rtl"] .wa-float { left: 1.5rem; padding: 0 1rem 0 1.25rem; } }
[dir="rtl"] .breadcrumbs li + li::before { margin-right: 0; margin-left: .4rem; content: "\\"; }
[dir="rtl"] .skip-link { left: auto; right: 1rem; }

/* Sélecteur de langue */
.lang-switch {
  display: inline-flex; align-items: center; min-height: 40px; padding: 0 .6rem;
  font-size: var(--fs-sm); font-weight: 600; text-decoration: none; color: inherit;
  border-radius: var(--radius-s); transition: background-color var(--dur) var(--ease);
}
.lang-switch:hover { background: color-mix(in srgb, currentColor 10%, transparent); }
.lang-switch[lang="ar"] { font-family: "IBM Plex Sans Arabic", "Segoe UI", Tahoma, sans-serif; }
.lang-switch[lang="fr"] { font-family: "Inter", system-ui, sans-serif; }

/* ---------- Héros et bandeaux ---------- */
[dir="rtl"] .page-hero--image::before { background: linear-gradient(270deg, rgba(8, 20, 38, .75), rgba(8, 20, 38, .25)); }
[dir="rtl"] .page-hero::after { right: auto; left: -8%; }
[dir="rtl"] .cta-band::after { right: auto; left: -10%; }
[dir="rtl"] .hero__path { transform: scaleX(-1); }
[dir="rtl"] .next-trip::before { background: linear-gradient(270deg, rgba(8, 20, 38, .85), rgba(8, 20, 38, .2)); }

/* ---------- Cartes ---------- */
[dir="rtl"] .offer-card__badges { left: auto; right: 1rem; }
[dir="rtl"] .offer-card__duration { left: auto; right: 1rem; }
@media (min-width: 900px) {
  [dir="rtl"] .trust__list li + li { border-left: 0; padding-left: 0; border-right: 1px solid var(--c-line); padding-right: var(--space-3); }
}
[dir="rtl"] .stats li:nth-child(odd) { border-right: 0; border-left: 1px solid var(--c-line); }
@media (min-width: 768px) {
  [dir="rtl"] .stats li:nth-child(odd) { border-left: 0; }
  [dir="rtl"] .stats li:not(:last-child) { border-right: 0; border-left: 1px solid var(--c-line); }
}

/* ---------- Fiche offre ---------- */
[dir="rtl"] .gallery__more { right: auto; left: 1rem; }
[dir="rtl"] .lightbox__close { right: auto; left: 1rem; }
[dir="rtl"] .lightbox__nav--prev { left: auto; right: 1rem; }
[dir="rtl"] .lightbox__nav--next { right: auto; left: 1rem; }
[dir="rtl"] .lightbox__nav .icon { transform: scaleX(-1); }
[dir="rtl"] .lightbox__nav .icon--flip { transform: none; }
[dir="rtl"] .itinerary::before { left: auto; right: 11px; border-left: 0; border-right: 1.5px dashed var(--c-accent); }
[dir="rtl"] .itinerary li { padding-left: 0; padding-right: 2.5rem; }
[dir="rtl"] .itinerary li::before { left: auto; right: 4px; }

/* ---------- Services, confirmation, compte ---------- */
[dir="rtl"] .how li { padding-left: 0; padding-right: 3.4rem; }
[dir="rtl"] .how li::before { left: auto; right: 0; }
[dir="rtl"] .how li:not(:last-child)::after { left: auto; right: 1.2rem; border-left: 0; border-right: 1.5px dashed var(--c-accent); }
@media (min-width: 768px) {
  [dir="rtl"] .how li:not(:last-child)::after { right: 3rem; left: 0; border-right: 0; }
}
[dir="rtl"] .confirm__list dd { text-align: left; }
[dir="rtl"] .confirm__steps li { padding-left: 0; padding-right: 3rem; }
[dir="rtl"] .confirm__steps li::before { left: auto; right: 0; }
[dir="rtl"] .confirm__message, [dir="rtl"] .post__body blockquote {
  border-left: 0; border-right: 3px solid var(--c-accent); border-radius: var(--radius-s) 0 0 var(--radius-s);
}
[dir="rtl"] .password input { padding-right: .9rem; padding-left: 3.2rem; }
[dir="rtl"] .password__toggle { right: auto; left: 4px; }

/* ---------- Blog ---------- */
[dir="rtl"] .post__body ul, [dir="rtl"] .post__body ol { padding-left: 0; padding-right: 1.3em; }
[dir="rtl"] .post__body > p:first-child::first-letter { float: none; font-size: inherit; margin: 0; color: inherit; font-family: inherit; line-height: inherit; }
