:root {
  --night: #0A0F1D;
  --night-2: #071321;
  --panel: #0E1A2A;
  --panel-2: #10243A;
  --blue: #0066FF;
  --blue-2: #43B9FF;
  --ice: #F2F6FF;
  --silver: #E6EBF3;
  --red: #FF3B3B;
  --muted: #A8B8CB;
  --line: rgba(230,235,243,.14);
  --glow: 0 0 40px rgba(0,102,255,.18);
  --max: 1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
body{
  margin:0;
  color:var(--ice);
  background:
    radial-gradient(circle at 50% -10%, rgba(0,102,255,.18), transparent 35%),
    radial-gradient(circle at 85% 25%, rgba(255,59,59,.06), transparent 22%),
    linear-gradient(180deg,var(--night),var(--night-2) 55%,#07101B);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  line-height:1.65;
}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 36px));margin-inline:auto}

header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(16px);
  background:rgba(7,15,29,.88);
  border-bottom:1px solid var(--line);
}
.nav{
  min-height:76px;
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:220px}
.brand img{height:54px;width:auto}
nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center}
nav a{color:var(--muted);text-decoration:none;font-size:.94rem;white-space:nowrap}
nav a:hover{color:#fff}

.lang-switch{display:flex;gap:7px;align-items:center}
.lang-switch button{
  border:1px solid var(--line);
  background:rgba(255,255,255,.035);
  color:var(--ice);
  min-width:38px;height:34px;padding:0 10px;border-radius:999px;
  cursor:pointer;font-weight:700;
}
.lang-switch button.active,
.lang-switch button:hover{
  border-color:rgba(67,185,255,.8);
  background:rgba(0,102,255,.18);
}

.hero{padding:72px 0 70px}
.hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:52px;
  align-items:center;
}
.eyebrow{
  color:var(--blue-2);
  font-size:.82rem;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;
}
h1{
  margin:.2em 0 .28em;
  font-size:clamp(3rem,8vw,6.5rem);
  line-height:.96;
  letter-spacing:-.045em;
}
.hero h1 .vision{
  background:linear-gradient(180deg,#8edbff 0%,#278cff 70%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.lead{
  max-width:770px;
  font-size:clamp(1.12rem,2.2vw,1.35rem);
  color:var(--muted);
}
.hero-logo-wrap{
  position:relative;
  display:grid;place-items:center;
}
.hero-logo-wrap::before{
  content:"";
  position:absolute;
  inset:10% 10%;
  background:radial-gradient(circle,rgba(0,102,255,.25),transparent 65%);
  filter:blur(22px);
}
.hero-logo{position:relative;width:min(520px,90vw);filter:drop-shadow(0 20px 35px rgba(0,0,0,.35))}
.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:8px;padding:13px 18px;border-radius:13px;
  border:1px solid var(--line);text-decoration:none;font-weight:800;
  background:rgba(255,255,255,.04);
}
.btn.primary{
  border-color:transparent;
  background:linear-gradient(135deg,var(--blue),var(--blue-2));
  color:#fff;
  box-shadow:0 14px 30px rgba(0,102,255,.2);
}
.btn:hover{transform:translateY(-1px)}
.section{padding:64px 0}
.section-title{max-width:760px;margin-bottom:30px}
.section-title h2,.prose h2{
  font-size:clamp(1.8rem,4vw,2.75rem);
  line-height:1.15;margin:0 0 12px;
}
.section-title p{color:var(--muted);margin:0}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.card{
  background:linear-gradient(180deg,rgba(16,36,58,.93),rgba(10,25,42,.94));
  border:1px solid var(--line);
  border-radius:19px;padding:24px;
  box-shadow:0 14px 40px rgba(0,0,0,.12);
}
.card h3{margin:0 0 8px;font-size:1.2rem}
.card p{margin:0;color:var(--muted)}
.icon-dot{
  width:38px;height:38px;border-radius:12px;margin-bottom:18px;
  display:grid;place-items:center;
  border:1px solid rgba(67,185,255,.35);
  background:rgba(0,102,255,.12);
  color:var(--blue-2);font-weight:900;
}
.phoenix-band{
  border-block:1px solid var(--line);
  background:
    linear-gradient(90deg,rgba(0,102,255,.08),transparent 30%,transparent 70%,rgba(255,59,59,.06)),
    rgba(255,255,255,.015);
}
.phoenix-inner{
  display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:42px;padding:34px 0;
}
.phoenix-inner img{width:min(360px,90vw);margin:auto}
.notice{
  padding:17px 19px;
  border-left:4px solid var(--blue-2);
  border-radius:0 12px 12px 0;
  background:rgba(67,185,255,.07);
}
.notice.red{border-left-color:var(--red);background:rgba(255,59,59,.06)}
.badge{
  display:inline-flex;align-items:center;
  border:1px solid rgba(67,185,255,.35);
  background:rgba(0,102,255,.08);
  border-radius:999px;padding:5px 10px;
  color:#83d4ff;font-size:.82rem;font-weight:700;
}
.prose{max-width:900px;padding:56px 0 82px}
.prose h1{font-size:clamp(2.45rem,6vw,4.5rem)}
.prose h2{margin-top:42px;font-size:1.62rem}
.prose h3{margin-top:28px}
.prose p,.prose li{color:#C2CFDC}
.prose strong{color:#fff}
.prose li{margin:8px 0}
.prose a{color:#72caff}
.small{font-size:.9rem;color:var(--muted)}
footer{
  border-top:1px solid var(--line);
  padding:34px 0 42px;color:var(--muted);
}
.footer-grid{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
.footer-links a{color:var(--muted)}
.footer-brand{display:flex;gap:10px;align-items:center}
.footer-brand img{height:38px;width:auto}
.platforms{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.platform{
  border:1px solid var(--line);border-radius:999px;
  padding:7px 11px;color:var(--silver);font-size:.88rem
}
hr{border:0;border-top:1px solid var(--line);margin:36px 0}

[dir="rtl"] body{
  font-family:Tahoma,"Segoe UI",Arial,sans-serif;
}
[dir="rtl"] .nav,
[dir="rtl"] .footer-grid,
[dir="rtl"] .actions,
[dir="rtl"] .platforms{
  direction:rtl;
}
[dir="rtl"] .notice{
  border-left:0;border-right:4px solid var(--blue-2);
  border-radius:12px 0 0 12px;
}
[dir="rtl"] .notice.red{
  border-right-color:var(--red);
}
[dir="rtl"] .hero-grid,
[dir="rtl"] .phoenix-inner{
  direction:rtl;
}

@media(max-width:900px){
  .nav{padding:14px 0;align-items:flex-start;flex-wrap:wrap}
  .brand{min-width:auto}
  nav{order:3;width:100%;justify-content:flex-start;overflow:auto;flex-wrap:nowrap;padding-bottom:4px}
  .hero-grid,.phoenix-inner{grid-template-columns:1fr}
  .hero{text-align:center}
  .lead{margin-inline:auto}
  .actions{justify-content:center}
  .grid-3,.grid-2{grid-template-columns:1fr}
}

/* LMN Player Pro — galerie de captures réelles */
.product-platforms{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 8px}
.app-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.app-shot{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(16,36,58,.92),rgba(8,19,32,.95));box-shadow:0 18px 46px rgba(0,0,0,.18)}
.app-shot a{display:block;overflow:hidden;background:#050A10}
.app-shot img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .22s ease}
.app-shot a:hover img{transform:scale(1.012)}
.app-shot figcaption{padding:13px 15px 15px;color:var(--silver);font-weight:700;line-height:1.35}
.gallery-legal{margin-top:22px}
[dir="rtl"] .product-platforms{direction:rtl}
@media(max-width:760px){.app-gallery{grid-template-columns:1fr}}

/* LMN Player Pro — fiche technique */
.tech-sheet{margin:56px 0 22px}
.tech-sheet-head{max-width:860px;margin-bottom:22px}
.tech-sheet .eyebrow{margin:0 0 8px;color:var(--accent);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}
.tech-sheet .tech-intro{color:var(--silver);max-width:820px}
.tech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tech-card{border:1px solid var(--line);border-radius:18px;padding:20px;background:linear-gradient(180deg,rgba(15,33,54,.92),rgba(7,17,29,.96));box-shadow:0 14px 38px rgba(0,0,0,.16)}
.tech-card h3{margin:0 0 12px;font-size:1.05rem;color:var(--ice)}
.tech-card ul{margin:0;padding-inline-start:20px}
.tech-card li{margin:.46rem 0;color:var(--silver);line-height:1.45}
.tech-note{margin-top:18px;padding:14px 16px;border-left:3px solid var(--accent);background:rgba(0,102,255,.08);border-radius:10px;color:var(--silver)}
[dir="rtl"] .tech-note{border-left:0;border-right:3px solid var(--accent)}
@media(max-width:980px){.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.tech-grid{grid-template-columns:1fr}.tech-card{padding:17px}}

/* V2.7 — language selector FR / EN / ES / DE / AR */
.lang-switch{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:620px){
  .lang-switch{gap:5px}
  .lang-switch button{padding:7px 8px;font-size:.78rem}
}

/* V2.8 — navigation centrée, prête pour de futurs sous-menus */
.primary-nav{flex:1;display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}
.primary-nav .nav-item{position:relative;display:flex;align-items:center;justify-content:center}
.primary-nav .nav-item>a{display:flex;align-items:center;justify-content:center;text-align:center;padding:8px 2px}
/* Structure réservée aux futurs sous-menus, sans en afficher tant qu'ils ne sont pas ajoutés. */
.primary-nav .submenu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:220px}

/* Sélecteur de langue unique, plus propre que dix boutons séparés */
.lang-menu{display:flex;align-items:center;justify-content:flex-end;min-width:180px}
.lang-menu select{
  width:100%;max-width:190px;height:40px;padding:0 36px 0 13px;
  border-radius:12px;border:1px solid var(--line);
  background-color:rgba(255,255,255,.04);color:var(--ice);
  font:inherit;font-weight:750;cursor:pointer;outline:none;
}
.lang-menu select:hover,.lang-menu select:focus{border-color:rgba(67,185,255,.8);background-color:rgba(0,102,255,.13)}
.lang-menu option{background:#0E1A2A;color:#F2F6FF}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Accueil : titres centraux et structure visuelle plus aérée pour accueillir de futures sous-sections. */
body[data-page="home"] .section-title{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}
body[data-page="home"] .section-title p{max-width:760px;margin-left:auto;margin-right:auto}
body[data-page="home"] .section-title .badge{margin-bottom:10px}

@media(max-width:900px){
  .primary-nav{order:3;width:100%;justify-content:center;overflow:auto;flex-wrap:nowrap;padding-bottom:4px}
  .lang-menu{margin-left:auto;min-width:160px}
}
@media(max-width:620px){
  .lang-menu{min-width:150px}
  .lang-menu select{max-width:165px;font-size:.82rem}
}


/* V2.8.1 — header corrigé selon validation visuelle
   - aucun mini-logo dans la barre supérieure
   - navigation réellement centrée dans la largeur
   - langue alignée à droite
   - structure .nav-item/.submenu conservée pour futurs sous-menus */
.nav{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  min-height:76px;
  gap:20px;
}
.nav > .primary-nav{
  grid-column:2;
  justify-self:center;
  width:max-content;
  max-width:100%;
  flex:none;
}
.nav > .lang-menu{
  grid-column:3;
  justify-self:end;
  min-width:180px;
}
/* Le logo de marque du footer reste inchangé. */
header .brand{display:none!important}

@media(max-width:900px){
  .nav{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px 16px;
    padding:10px 0 12px;
  }
  .nav > .lang-menu{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    margin-left:0;
  }
  .nav > .primary-nav{
    grid-column:1 / -1;
    grid-row:2;
    justify-self:center;
    order:initial;
    width:100%;
    overflow-x:auto;
    justify-content:center;
    flex-wrap:nowrap;
    padding-bottom:2px;
  }
}
@media(max-width:620px){
  .nav{grid-template-columns:1fr;}
  .nav > .lang-menu{
    grid-column:1;
    grid-row:1;
    justify-self:center;
  }
  .nav > .primary-nav{
    grid-column:1;
    grid-row:2;
    justify-content:flex-start;
    justify-self:stretch;
  }
}

/* V2.9 — navigation with customer area */
.primary-nav{gap:18px}
@media(max-width:980px){.primary-nav{gap:12px}.primary-nav a{font-size:.88rem}.lang-menu select{min-width:170px}}

/* V2.9.12 — Responsive mobile header
   - mobile navigation behind a compact menu button
   - language selector and menu button share one row
   - desktop/tablet layout unchanged */
.mobile-nav-toggle{display:none}
@media(max-width:700px){
  header .nav{
    grid-template-columns:minmax(0,1fr) auto;
    gap:9px 10px;
    min-height:auto;
    padding:9px 0;
  }
  header .nav > .lang-menu{
    grid-column:1;
    grid-row:1;
    justify-self:start;
    min-width:0;
    width:min(100%,190px);
  }
  header .nav > .lang-menu select{
    width:100%;
    min-width:0;
    max-width:none;
    height:42px;
    font-size:.84rem;
  }
  .mobile-nav-toggle{
    grid-column:2;
    grid-row:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:42px;
    border:1px solid var(--line);
    border-radius:12px;
    background:rgba(255,255,255,.04);
    color:var(--ice);
    cursor:pointer;
    font:inherit;
  }
  .mobile-nav-toggle:hover,.mobile-nav-toggle:focus-visible{
    border-color:rgba(67,185,255,.8);
    background:rgba(0,102,255,.13);
    outline:none;
  }
  .mobile-nav-toggle-bars,
  .mobile-nav-toggle-bars::before,
  .mobile-nav-toggle-bars::after{
    display:block;
    width:20px;
    height:2px;
    border-radius:99px;
    background:currentColor;
    transition:transform .18s ease,opacity .18s ease;
  }
  .mobile-nav-toggle-bars{position:relative}
  .mobile-nav-toggle-bars::before,.mobile-nav-toggle-bars::after{content:"";position:absolute;left:0}
  .mobile-nav-toggle-bars::before{top:-6px}
  .mobile-nav-toggle-bars::after{top:6px}
  .nav.mobile-nav-open .mobile-nav-toggle-bars{background:transparent}
  .nav.mobile-nav-open .mobile-nav-toggle-bars::before{transform:translateY(6px) rotate(45deg)}
  .nav.mobile-nav-open .mobile-nav-toggle-bars::after{transform:translateY(-6px) rotate(-45deg)}
  header .nav > .primary-nav{
    grid-column:1 / -1;
    grid-row:2;
    display:none;
    width:100%;
    justify-self:stretch;
    overflow:visible;
    padding:7px;
    margin:0;
    gap:5px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    background:rgba(10,25,42,.98);
    border:1px solid var(--line);
    border-radius:14px;
    box-shadow:0 16px 36px rgba(0,0,0,.28);
  }
  header .nav.mobile-nav-open > .primary-nav{display:grid}
  header .primary-nav .nav-item{width:100%;min-width:0}
  header .primary-nav .nav-item>a{
    width:100%;
    min-height:42px;
    padding:8px 10px;
    justify-content:flex-start;
    text-align:start;
    white-space:normal;
    border-radius:9px;
    color:var(--silver);
  }
  header .primary-nav .nav-item>a:hover,
  header .primary-nav .nav-item>a[aria-current="page"]{
    background:rgba(0,102,255,.12);
    color:#fff;
  }
}
@media(max-width:390px){
  header .nav > .primary-nav{grid-template-columns:1fr}
  header .nav > .lang-menu{width:min(100%,175px)}
}
