/* ═══════════════════════════════════════════════════════════════
   I18N SWITCHER — Ciro AM
   Sélecteur de langue en haut à droite, cohérent avec le thème
   ═══════════════════════════════════════════════════════════════ */

.lang-switcher{
  position:relative;
  display:inline-flex;
  align-items:center;
  margin-right:.85rem;
  font-family:'Lato',sans-serif;
  z-index:601;
}

#lang-current{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.45rem .75rem;
  background:rgba(255,255,255,.6);
  border:1px solid rgba(184,146,62,.3);
  color:#2a2118;
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:700;
  cursor:pointer;
  border-radius:30px;
  transition:all .25s;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-family:inherit;
}
#lang-current:hover{
  background:rgba(255,255,255,.85);
  border-color:#b8923e;
  color:#8b6e2e;
  transform:translateY(-1px);
}
#lang-current .lang-flag{
  font-size:.95rem;
  line-height:1;
}
#lang-current .lang-code{
  font-size:.62rem;
}

.lang-menu{
  position:absolute;
  top:calc(100% + .5rem);
  right:0;
  min-width:170px;
  background:rgba(255,253,247,.98);
  backdrop-filter:blur(20px) saturate(160%);
  -webkit-backdrop-filter:blur(20px) saturate(160%);
  border:1px solid rgba(184,146,62,.25);
  border-radius:10px;
  box-shadow:0 12px 40px rgba(92,64,51,.18),0 0 0 1px rgba(184,146,62,.05);
  padding:.4rem;
  display:flex;
  flex-direction:column;
  gap:.15rem;
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px) scale(.97);
  transform-origin:top right;
  transition:opacity .25s ease,visibility .25s,transform .25s cubic-bezier(.34,1.2,.64,1);
  pointer-events:none;
}
.lang-switcher.open .lang-menu{
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto;
}

.lang-option{
  display:flex;
  align-items:center;
  gap:.6rem;
  padding:.55rem .9rem;
  background:transparent;
  border:none;
  color:#2a2118;
  font-family:'Lato',sans-serif;
  font-size:.85rem;
  font-weight:600;
  text-align:left;
  border-radius:6px;
  cursor:pointer;
  transition:background .2s,color .2s;
  width:100%;
}
.lang-option:hover{
  background:rgba(184,146,62,.12);
  color:#8b6e2e;
}
.lang-option.active{
  background:linear-gradient(135deg,rgba(212,169,63,.18),rgba(184,146,62,.12));
  color:#8b6e2e;
  font-weight:700;
}
.lang-option.active::after{
  content:'✓';
  margin-left:auto;
  color:#b8923e;
  font-weight:900;
}
.lang-option .lang-flag{
  font-size:1.05rem;
  line-height:1;
  flex-shrink:0;
}

/* ─── Adaptation au scroll (nav.scrolled) ─── */
nav.scrolled #lang-current{
  background:rgba(255,253,247,.7);
}

/* ─── Adaptation RTL pour l'arabe ─── */
html[dir="rtl"] .lang-switcher{
  margin-right:0;
  margin-left:.85rem;
}
html[dir="rtl"] .lang-menu{
  right:auto;
  left:0;
  transform-origin:top left;
}
html[dir="rtl"] .lang-option{
  text-align:right;
}
html[dir="rtl"] .lang-option.active::after{
  margin-left:0;
  margin-right:auto;
}

/* ─── RESPONSIVE MOBILE ─── */
@media(max-width:900px){
  .lang-switcher{
    margin-right:.5rem;
  }
  #lang-current{
    padding:.4rem .6rem;
    font-size:.56rem;
  }
  #lang-current .lang-code{
    font-size:.56rem;
  }
}

/* ─── Style cohérent en mode page sans thème global (avis.html etc.) ─── */
body:not(.has-luxe) #lang-current{
  background:rgba(255,253,247,.85);
  color:#2a2118;
}

/* ═══ RTL — Adaptations globales pour l'arabe ═══ */
html[dir="rtl"] body{
  text-align:right;
}
html[dir="rtl"] .nav-links{
  flex-direction:row-reverse;
}
html[dir="rtl"] .hero-trust,
html[dir="rtl"] .hero-ctas,
html[dir="rtl"] .cta-btns,
html[dir="rtl"] .footer-nav{
  flex-direction:row-reverse;
}
html[dir="rtl"] em{
  font-style:italic;
}
/* Restaure les emojis (qui ne doivent pas être inversés) */
html[dir="rtl"] .sc-icon,
html[dir="rtl"] .hiw-icon,
html[dir="rtl"] .eng-icon,
html[dir="rtl"] .t-avatar,
html[dir="rtl"] .lang-flag{
  direction:ltr;
  unicode-bidi:embed;
}
