/* Sélecteur de langue EN / FR (option C validée : globe + menu déroulant) */
.lang { position: relative; flex: none; }
.lang-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 46px; padding: 0 14px; border-radius: 999px; border: 1px solid rgba(10,27,61,.14); background: #fff; color: var(--nuit); font: 700 14px Sora, sans-serif; letter-spacing: .02em; cursor: pointer; transition: box-shadow .3s var(--ease), transform .3s var(--ease); }
.lang-btn:hover, .lang-btn:focus-visible { box-shadow: 0 14px 30px -16px rgba(11,77,255,.5); }
.lang-btn svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.6; flex: none; }
.lang-dd { position: absolute; right: 0; top: calc(100% + 12px); min-width: 200px; padding: 8px; border-radius: 26px; background: rgba(255,255,255,.94); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); border: 1px solid rgba(11,77,255,.1); box-shadow: 0 18px 50px -18px rgba(10,27,61,.4); font: 700 16px Sora, sans-serif; letter-spacing: -.01em; z-index: 70; opacity: 0; transform: translateY(-6px); pointer-events: none; transition: opacity .25s var(--ease), transform .25s var(--ease); }
.lang.open .lang-dd { opacity: 1; transform: none; pointer-events: auto; }
.lang-dd[hidden] { display: block; }
.lang-dd a { display: flex; align-items: center; gap: 12px; padding: 10px 14px 10px 10px; border-radius: 999px; color: var(--nuit); text-decoration: none; }
.lang-dd a:hover, .lang-dd a:focus-visible { background: var(--soft); outline: none; }
.lang-dd a i { width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--soft); border: 1px solid rgba(10,27,61,.1); color: #6B7794; font: 800 12px Sora, sans-serif; font-style: normal; flex: none; }
.lang-dd a.on i { background: linear-gradient(100deg, var(--saphir), var(--violet)); color: #fff; border: 0; }
.lang-dd a em { margin-left: auto; font-style: normal; color: var(--saphir); }
@media (max-width: 640px) { .lang-btn { min-height: 38px; padding: 0 10px; font-size: 13px; gap: 4px; } .lang-btn svg { width: 16px; height: 16px; } .lang-dd { min-width: 180px; font-size: 15px; } }
@media (prefers-reduced-motion: reduce) { .lang-dd { transition: none; } }
