/* ========================= VARIABLES ========================= */
:root{
  --noir:#050505; --noir-2:#0d0d0d; --noir-3:#111111; --carte:#141408;
  --or:#c9a227; --or-clair:#f2d477; --or-fonce:#8a6e12;
  --or-xtra:#fff3c4; --or-mid:#e8c766;
  --texte:#f4f2ec; --doux:#a29e8a; --ligne:rgba(201,162,39,.18);
  --vert:#3ecf8e; --rouge:#e0685a;
  --ombre-or:0 20px 60px rgba(201,162,39,.32);
}

/* ========================= RESET & BASE ========================= */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  font-family:'Poppins','Montserrat','Segoe UI',system-ui,sans-serif;
  background:#050505;
  color:var(--texte);
  line-height:1.6;
  overflow-x:hidden;
  margin:0;
  padding:0;
  width:100%;
}
::selection{background:var(--or);color:#000}
::-webkit-scrollbar{width:11px}
::-webkit-scrollbar-track{background:var(--noir)}
::-webkit-scrollbar-thumb{background:#26262e;border-radius:6px}
a{text-decoration:none;color:inherit}
h1,h2,h3{letter-spacing:-.02em;font-weight:800;line-height:1.08}
.enveloppe{max-width:1180px;margin:0 auto;padding:0 26px;width:100%}
.or-txt{
  background:linear-gradient(100deg,var(--or-clair),var(--or) 55%,var(--or-fonce));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* ========================= ANIMATIONS ========================= */
@keyframes respire{
  0%{opacity:.7;transform:scale(1)}
  100%{opacity:1;transform:scale(1.07)}
}
@keyframes derive1{
  0%{transform:translate(0,0) scale(1)}
  100%{transform:translate(20vw,14vh) scale(1.3)}
}
@keyframes derive2{
  0%{transform:translate(0,0) scale(1)}
  100%{transform:translate(-16vw,-12vh) scale(1.25)}
}
@keyframes derive3{
  0%{transform:translate(0,0) scale(1)}
  100%{transform:translate(-22vw,10vh) scale(1.4)}
}
@keyframes trace{
  0%{stroke-dashoffset:1;opacity:1}
  100%{stroke-dashoffset:0;opacity:1}
}
@keyframes levLettre{
  to{opacity:1;transform:none}
}
@keyframes charge{
  to{width:100%}
}
@keyframes balaye{
  0%{transform:translateX(-30px) skewX(-18deg);opacity:0}
  40%{opacity:.75}
  60%{opacity:.75}
  100%{transform:translateX(30px) skewX(-18deg);opacity:0}
}
@keyframes pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(201,162,39,.55)}
  50%{box-shadow:0 0 0 8px rgba(201,162,39,0)}
}
@keyframes tombe{
  to{opacity:1;transform:none}
}
@keyframes monteDoux{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:none}
}
@keyframes molette{
  0%{opacity:0;transform:translateY(-4px)}
  50%{opacity:1}
  100%{opacity:0;transform:translateY(10px)}
}
@keyframes apparaitMsg{
  to{opacity:1;transform:none}
}
@keyframes rebond{
  0%,60%,100%{transform:translateY(0);opacity:.4}
  30%{transform:translateY(-6px);opacity:1}
}
@keyframes defile{
  to{transform:translateX(-50%)}
}

/* ========================= EFFETS VISUELS ========================= */
#progres{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:200;
  background:linear-gradient(90deg,var(--or-fonce),var(--or-clair));
  box-shadow:0 0 12px var(--or);
}

#lueur-curseur{
  position:fixed;width:26px;height:26px;border-radius:50%;pointer-events:none;z-index:9999;
  background:radial-gradient(circle,rgba(201,162,39,.55),transparent 70%);
  transform:translate(-50%,-50%);
  transition:width .25s,height .25s,opacity .3s;
  mix-blend-mode:screen;
  opacity:0;
}

#poussiere{
  position:fixed;inset:0;z-index:0;pointer-events:none;width:100%;height:100%;
}

/* Fond principal — miroir exact du bgGlow du logo */
.mesh{
  position:fixed;inset:0;z-index:0;pointer-events:none;width:100%;height:100%;
  background:
    radial-gradient(ellipse 80% 60% at 50% 38%, #241d07 0%, #0d0d0d 55%, #050505 100%);
  animation:respire 18s ease-in-out infinite alternate;
}

/* Aurora — lueurs dorées très subtiles sur les côtés */
.aurora{
  position:fixed;inset:-20%;z-index:0;pointer-events:none;filter:blur(80px);opacity:.35;width:100%;height:100%;
}
.aurora span{position:absolute;border-radius:50%;mix-blend-mode:screen}
.aurora .b1{
  width:50vw;height:50vw;
  background:radial-gradient(circle, rgba(201,162,39,.4) 0%, transparent 70%);
  top:-4%;left:-6%;
  animation:derive1 24s ease-in-out infinite alternate;
}
.aurora .b2{
  width:44vw;height:44vw;
  background:radial-gradient(circle, rgba(138,110,18,.35) 0%, transparent 70%);
  bottom:-8%;right:-4%;
  animation:derive2 28s ease-in-out infinite alternate;
}
.aurora .b3{
  width:36vw;height:36vw;
  background:radial-gradient(circle, rgba(36,29,7,.6) 0%, transparent 70%);
  top:40%;left:42%;
  animation:derive3 32s ease-in-out infinite alternate;
}

.paillette{
  position:fixed;width:9px;height:9px;border-radius:50%;pointer-events:none;z-index:9997;
  background:var(--or-xtra);box-shadow:0 0 8px var(--or-mid);
}

/* ========================= LOADER/INTRO ========================= */
#loader{
  position:fixed;inset:0;z-index:9998;
  background:radial-gradient(ellipse 80% 60% at 50% 38%, #241d07 0%, #0d0d0d 55%, #050505 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;
  transition:opacity .8s cubic-bezier(.76,0,.24,1), transform 1s cubic-bezier(.76,0,.24,1);
}
#loader.parti{
  opacity:0;
  transform:scale(1.06);
  pointer-events:none;
}
#loader::after{
  content:'';position:absolute;inset:0;
  background:radial-gradient(600px circle at 50% 45%,rgba(201,162,39,.10),transparent 65%);
  animation:respire 5s ease-in-out infinite alternate;
}

/* Conteneur du logo avec halo pulsé */
.ldr-logo-wrap{
  position:relative;
  display:flex;align-items:center;justify-content:center;
  z-index:2;
  opacity:0;
  transform:scale(.7) translateY(20px);
  animation:ldrLogoAppear 1s cubic-bezier(.2,.8,.2,1) .2s forwards;
}
@keyframes ldrLogoAppear{
  to{opacity:1;transform:scale(1) translateY(0)}
}

/* Anneau doré pulsé derrière le logo */
.ldr-logo-wrap::before{
  content:'';
  position:absolute;
  width:270px;height:270px;
  border-radius:50%;
  border:1.5px solid rgba(201,162,39,.3);
  animation:ringPulse 2.4s ease-in-out infinite;
}
.ldr-logo-wrap::after{
  content:'';
  position:absolute;
  width:330px;height:330px;
  border-radius:50%;
  border:1px solid rgba(201,162,39,.12);
  animation:ringPulse 2.4s ease-in-out .6s infinite;
}
@keyframes ringPulse{
  0%{transform:scale(.85);opacity:0}
  50%{opacity:1}
  100%{transform:scale(1.15);opacity:0}
}

/* Le logo lui-même */
.ldr-logo-clip{
  width:230px;
  height:230px;
  display:block;
  border-radius:50%;
  overflow:hidden;
  filter:
    drop-shadow(0 0 50px rgba(201,162,39,.7))
    drop-shadow(0 0 100px rgba(201,162,39,.3));
  animation:ldrFloat 3s ease-in-out 1.2s infinite alternate;
}
.ldr-logo-img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.32);
}
@keyframes ldrFloat{
  0%{transform:translateY(0) scale(1)}
  100%{transform:translateY(-8px) scale(1.02)}
}

/* Barre de chargement */
.ldr-barre{
  width:200px;height:3px;background:rgba(201,162,39,.12);
  border-radius:3px;overflow:hidden;z-index:2;
  opacity:0;animation:monteDoux .5s ease .8s forwards;
}
.ldr-barre i{
  display:block;height:100%;width:0;
  background:linear-gradient(90deg,var(--or-fonce),var(--or-xtra),var(--or-mid));
  animation:charge 2.4s cubic-bezier(.4,0,.2,1) .9s forwards;
}

/* ========================= NAVIGATION ========================= */
nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 4vw;transition:.4s;
  background:rgba(5,5,5,.3);backdrop-filter:blur(0px);width:100%;
}
nav.scrolle{
  background:rgba(5,5,5,.92);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--ligne);
  padding:13px 4vw;
}
.logo{display:flex;align-items:center;gap:13px;font-size:1.45rem;font-weight:700}
.logo img{
  width:52px;height:52px;
  border-radius:14px;
  object-fit:contain;
  filter:drop-shadow(0 0 14px rgba(201,162,39,.7)) drop-shadow(0 0 4px rgba(201,162,39,.4));
  transition:filter .3s, transform .3s;
}
.logo:hover img{
  filter:drop-shadow(0 0 22px rgba(201,162,39,.9)) drop-shadow(0 0 8px rgba(201,162,39,.5));
  transform:scale(1.06);
}
nav.scrolle .logo img{width:44px;height:44px}
.nav-liens{display:flex;gap:32px;align-items:center}
.nav-liens a{color:var(--doux);font-size:.93rem;font-weight:500;position:relative;transition:.3s}
.nav-liens a:hover{color:var(--or-xtra)}
.nav-liens a::after{
  content:'';position:absolute;left:0;bottom:-6px;height:1.5px;width:0;
  background:var(--or-mid);transition:.3s;
}
.nav-liens a:hover::after{width:100%}
.burger{display:none;font-size:1.5rem;color:var(--or-mid);cursor:pointer}

/* ========================= BOUTONS ========================= */
.btn{
  position:relative;display:inline-flex;align-items:center;gap:10px;
  font-weight:700;cursor:pointer;border:none;border-radius:44px;
  transition:transform .3s,box-shadow .3s;overflow:hidden;white-space:nowrap;
}
.btn-or{
  background:linear-gradient(135deg,var(--or-xtra),var(--or-mid) 40%,var(--or) 70%,var(--or-fonce));
  color:#000;padding:15px 32px;font-size:1rem;
  box-shadow:0 10px 30px rgba(201,162,39,.35);
}
.btn-or:hover{transform:translateY(-3px);box-shadow:var(--ombre-or)}
.btn-or::before{
  content:'';position:absolute;top:0;left:-130%;width:55%;height:100%;
  transform:skewX(-20deg);
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.6),transparent);
}
.btn-or:hover::before{left:150%;transition:left .85s}
.btn-fant{
  background:transparent;border:1.5px solid var(--ligne);
  color:var(--texte);padding:14px 28px;font-size:.98rem;
}
.btn-fant:hover{
  border-color:var(--or-mid);color:var(--or-xtra);
  background:rgba(201,162,39,.06);transform:translateY(-2px);
}
.btn-nav{
  background:linear-gradient(135deg,var(--or-xtra),var(--or-mid),var(--or-fonce));
  color:#000!important;padding:11px 22px;border-radius:30px;
  font-weight:700;font-size:.9rem;box-shadow:0 6px 20px rgba(201,162,39,.3);
}
.btn-nav:hover{transform:translateY(-2px)}

/* ========================= HEADER/HERO ========================= */
header{
  position:relative;z-index:2;min-height:100vh;
  display:flex;flex-direction:column;justify-content:center;
  padding:150px 4vw 90px;text-align:center;width:100%;overflow-x:hidden;
  perspective:1300px;
}
.hero-3d{transform-style:preserve-3d;transition:transform .25s ease-out;will-change:transform}
.hero-fond-mot{
  position:absolute;top:50%;left:50%;z-index:0;pointer-events:none;
  font-size:min(34vw,460px);font-weight:800;color:rgba(201,162,39,.03);
  letter-spacing:-.04em;white-space:nowrap;-webkit-text-stroke:1px rgba(201,162,39,.05);
  transform:translate(-50%,-50%) translateZ(-260px);
}
.cv3d-wrap{width:100%;height:min(42vh,380px);margin:0 auto 4px;opacity:0;animation:monteDoux 1.2s .3s forwards}
#cv3d{width:100%;height:100%;display:block;cursor:grab}
.tag{
  display:inline-flex;align-items:center;gap:9px;border:1px solid var(--ligne);
  background:rgba(201,162,39,.06);color:var(--or-clair);padding:9px 20px;
  border-radius:30px;font-size:.82rem;font-weight:600;margin:0 auto 30px;
}
.tag .pt{width:8px;height:8px;border-radius:50%;background:var(--or);animation:pulse 2s infinite}
header h1{font-size:clamp(2.7rem,7vw,5.6rem);margin-bottom:26px}
.mot{display:inline-block;opacity:0;transform:translateY(28px) rotateX(-40deg);animation:tombe .8s forwards}
.sous-hero{
  font-size:clamp(1.05rem,2.2vw,1.35rem);color:var(--doux);max-width:660px;
  margin:0 auto 40px;opacity:0;animation:monteDoux 1s .9s forwards;
}
.hero-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;opacity:0;animation:monteDoux 1s 1.1s forwards}
.hero-preuves{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;margin-top:56px;opacity:0;animation:monteDoux 1s 1.3s forwards}
.preuve{text-align:center}
.preuve .n{font-size:2rem;font-weight:800}
.preuve .l{font-size:.82rem;color:var(--doux);margin-top:2px}
.souris{
  position:absolute;bottom:26px;left:50%;transform:translateX(-50%);
  width:26px;height:42px;border:2px solid var(--ligne);border-radius:16px;
  display:flex;justify-content:center;padding-top:8px;
}
.souris i{width:4px;height:8px;background:var(--or);border-radius:4px;animation:molette 1.8s infinite}

/* ========================= SECTIONS ========================= */
section{position:relative;z-index:2;padding:100px 0;width:100%;overflow-x:hidden}
.chapeau{text-align:center;max-width:640px;margin:0 auto 60px}
.chapeau .kicker{
  color:var(--or);font-weight:700;font-size:.85rem;letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:14px;display:block;
}
.chapeau h2{font-size:clamp(2rem,4.4vw,3.1rem);margin-bottom:16px;transition:transform .1s linear}
.chapeau p{color:var(--doux);font-size:1.08rem}
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.vu{opacity:1;transform:none}
.rv-g{opacity:0;transform:translateX(-80px) translateZ(-260px) rotateY(35deg);transition:opacity 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1)}
.rv-d{opacity:0;transform:translateX(80px) translateZ(-260px) rotateY(-35deg);transition:opacity 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1)}
.rv-zoom{opacity:0;transform:translateZ(-420px) rotateX(28deg);transition:opacity 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1)}
.rv-g.vu,.rv-d.vu,.rv-zoom.vu{opacity:1;transform:none}
.feat-grille,.etapes-grille,.prix-grille,.stats-grille,.demo-wrap{perspective:1500px;perspective-origin:50% 40%}
.feat,.etape-c,.prix-c{transform-style:preserve-3d}

/* ========================= STATS/DOULEUR ========================= */
.douleur{background:linear-gradient(180deg,transparent,rgba(201,162,39,.04),transparent);width:100%}
.stats-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.stat-c{
  background:linear-gradient(135deg,#141408,#0d0d0d);
  border:1px solid var(--ligne);border-radius:20px;
  padding:34px 26px;text-align:center;position:relative;overflow:hidden;
}
.stat-c::before{
  content:'';position:absolute;top:0;left:0;width:100%;height:2px;
  background:linear-gradient(90deg,transparent,var(--or-mid),transparent);opacity:.6;
}
.stat-c .gros{font-size:3.2rem;font-weight:800}
.stat-c .txt{color:var(--doux);margin-top:8px;font-size:.96rem}

/* ========================= DÉMO TÉLÉPHONE ========================= */
.demo-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;max-width:100%}
.demo-txt h2{font-size:clamp(1.9rem,4vw,2.8rem);margin-bottom:18px}
.demo-txt p{color:var(--doux);margin-bottom:24px;font-size:1.06rem}
.demo-etapes{list-style:none;display:flex;flex-direction:column;gap:16px}
.demo-etapes li{display:flex;gap:14px;align-items:flex-start;transition:.4s;opacity:.4}
.demo-etapes li.on{opacity:1}
.demo-etapes li .no{
  flex-shrink:0;width:34px;height:34px;border-radius:10px;border:1px solid var(--ligne);
  display:flex;align-items:center;justify-content:center;font-weight:800;
  color:var(--or-clair);background:var(--noir-2);transition:.4s;
}
.demo-etapes li.on .no{
  background:linear-gradient(135deg,var(--or-clair),var(--or));
  color:#000;border-color:transparent;box-shadow:0 0 20px rgba(201,162,39,.4);
}
.demo-etapes li b{display:block;margin-bottom:2px}
.demo-etapes li span{color:var(--doux);font-size:.9rem}
.tel{
  width:300px;height:600px;margin:0 auto;
  background:linear-gradient(160deg,#1a1a22,#0c0c11);
  border-radius:44px;border:1px solid var(--ligne);padding:14px;
  box-shadow:0 40px 90px rgba(0,0,0,.6),inset 0 0 0 2px rgba(255,255,255,.03);position:relative;
}
.tel-encoche{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:130px;height:26px;background:#0c0c11;border-radius:0 0 18px 18px;z-index:5}
.tel-ecran{width:100%;height:100%;background:var(--noir-2);border-radius:32px;overflow:hidden;position:relative;display:flex;flex-direction:column}
.tel-tete{padding:40px 18px 14px;text-align:center;border-bottom:1px solid var(--ligne);background:var(--noir-3)}
.tel-tete .av{
  width:52px;height:52px;border-radius:50%;
  background:linear-gradient(135deg,var(--or-fonce),var(--or));
  margin:0 auto 8px;display:flex;align-items:center;justify-content:center;
  font-weight:800;color:#000;font-size:1.2rem;
}
.tel-tete .nm{font-weight:700}
.tel-tete .st{font-size:.74rem;color:var(--vert)}
.tel-msgs{flex:1;padding:16px 14px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.msg{max-width:82%;padding:10px 14px;border-radius:16px;font-size:.86rem;opacity:0;transform:translateY(12px);animation:apparaitMsg .5s forwards}
.msg.recu{align-self:flex-start;background:#20202a;border-bottom-left-radius:5px}
.msg.envoye{align-self:flex-end;background:linear-gradient(135deg,var(--or),var(--or-fonce));color:#000;border-bottom-right-radius:5px;font-weight:500}
.msg .h{font-size:.64rem;opacity:.6;margin-top:3px}
.appel-manque{align-self:center;background:rgba(224,104,90,.15);color:var(--rouge);padding:7px 14px;border-radius:20px;font-size:.76rem;font-weight:600;display:flex;gap:6px;align-items:center}
.tape{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:#20202a;border-radius:16px}
.tape i{width:7px;height:7px;border-radius:50%;background:var(--doux);animation:rebond 1.2s infinite}
.tape i:nth-child(2){animation-delay:.2s}
.tape i:nth-child(3){animation-delay:.4s}
.badge-rdv{align-self:center;background:rgba(62,207,142,.15);color:var(--vert);padding:9px 16px;border-radius:20px;font-size:.82rem;font-weight:700;display:flex;gap:7px;align-items:center;margin-top:4px}

/* ========================= ÉTAPES ========================= */
.etapes-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.etape-c{
  background:linear-gradient(160deg,#1a1a0e,#0d0d0d);
  border:1px solid var(--ligne);border-radius:20px;padding:34px 28px;position:relative;transition:.4s;
}
.etape-c:hover{transform:translateY(-8px);border-color:var(--or-mid);box-shadow:0 24px 50px rgba(0,0,0,.5)}
.etape-c .num{font-size:3rem;font-weight:800;line-height:1;-webkit-text-stroke:1.5px var(--or-mid);color:transparent;margin-bottom:14px}
.etape-c h3{font-size:1.25rem;margin-bottom:10px}
.etape-c p{color:var(--doux);font-size:.96rem}

/* ========================= FONCTIONNALITÉS ========================= */
.feat-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.feat{
  background:linear-gradient(160deg,#161608,#0a0a0a);
  border:1px solid var(--ligne);border-radius:20px;padding:30px;
  position:relative;overflow:hidden;transition:transform .3s,border-color .3s;
}
.feat::after{
  content:'';position:absolute;inset:0;border-radius:20px;opacity:0;transition:.4s;pointer-events:none;
  background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(201,162,39,.12),transparent 60%);
}
.feat:hover::after{opacity:1}
.feat:hover{border-color:var(--or-mid)}
.feat .ico{
  width:56px;height:56px;border-radius:15px;
  background:rgba(201,162,39,.1);border:1px solid rgba(201,162,39,.2);
  display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin-bottom:18px;
}
.feat h3{font-size:1.18rem;margin-bottom:9px}
.feat p{color:var(--doux);font-size:.94rem}

/* ========================= TICKER ========================= */
.ticker{
  overflow:hidden;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);
  padding:20px 0;background:var(--noir-2);white-space:nowrap;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  width:100%;
}
.ticker-piste{display:inline-flex;gap:44px;animation:defile 28s linear infinite}
.ticker-piste span{color:var(--doux);font-weight:600;display:inline-flex;align-items:center;gap:10px}
.ticker-piste b{color:var(--or-clair)}

/* ========================= TARIFS ========================= */
.prix-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.prix-c{
  background:linear-gradient(160deg,#141408,#0a0a0a);
  border:1px solid var(--ligne);border-radius:24px;
  padding:38px 30px;display:flex;flex-direction:column;position:relative;transition:.4s;
}
.prix-c:hover{transform:translateY(-8px);box-shadow:0 26px 60px rgba(0,0,0,.55)}
.prix-c.pop{
  border-color:var(--or-mid);
  background:linear-gradient(180deg,rgba(36,29,7,.9),#0a0a0a);
  box-shadow:var(--ombre-or);transform:scale(1.04);
}
.prix-c.pop:hover{transform:scale(1.04) translateY(-8px)}
.ruban{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:linear-gradient(135deg,var(--or-xtra),var(--or-mid),var(--or-fonce));
  color:#000;font-weight:800;font-size:.76rem;padding:6px 18px;border-radius:20px;letter-spacing:.05em;
}
.prix-c h3{font-size:1.4rem;margin-bottom:6px}
.prix-c .desc{color:var(--doux);font-size:.9rem;margin-bottom:22px;min-height:40px}
.prix-c .montant{font-size:3rem;font-weight:800;line-height:1}
.prix-c .montant small{font-size:1rem;color:var(--doux);font-weight:500}
.prix-c .install{font-size:.84rem;color:var(--doux);margin:8px 0 22px}
.prix-c ul{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:28px;flex:1}
.prix-c li{display:flex;gap:10px;font-size:.92rem;color:var(--texte)}
.prix-c li::before{content:'✓';color:var(--or);font-weight:800;flex-shrink:0}
.prix-c li.non{color:#5c5a54}
.prix-c li.non::before{content:'—';color:#5c5a54}

/* ========================= GARANTIE ========================= */
.garantie{
  max-width:820px;margin:0 auto;text-align:center;
  background:linear-gradient(180deg,rgba(36,29,7,.6),rgba(13,13,13,.4));
  border:1px solid var(--ligne);border-radius:28px;padding:56px 40px;
  position:relative;overflow:hidden;width:100%;
}
.garantie .sceau{width:88px;height:88px;margin:0 auto 24px;filter:drop-shadow(0 0 24px rgba(201,162,39,.6))}
.garantie h2{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:14px}
.garantie p{color:var(--doux);font-size:1.1rem;max-width:560px;margin:0 auto}

/* ========================= FAQ ========================= */
.faq-liste{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px;width:100%}
.faq-i{background:var(--carte);border:1px solid var(--ligne);border-radius:16px;overflow:hidden;transition:.3s}
.faq-i.ouvert{border-color:var(--or)}
.faq-q{padding:22px 26px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq-q .plus{color:var(--or);font-size:1.4rem;transition:.3s;flex-shrink:0}
.faq-i.ouvert .plus{transform:rotate(45deg)}
.faq-r{max-height:0;overflow:hidden;transition:max-height .4s ease;color:var(--doux)}
.faq-r p{padding:0 26px 22px}

/* ========================= CTA FINAL ========================= */
.cta{text-align:center;background:radial-gradient(700px circle at 50% 0%,rgba(36,29,7,.9),transparent 65%);width:100%}
.cta h2{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:20px;max-width:760px;margin-left:auto;margin-right:auto}
.cta p{color:var(--doux);font-size:1.15rem;margin-bottom:36px}

/* ========================= FOOTER ========================= */
footer{
  position:relative;z-index:2;
  border-top:1px solid var(--ligne);
  padding:50px 4vw 34px;text-align:center;color:var(--doux);width:100%;
  background:radial-gradient(ellipse 60% 40% at 50% 100%,#241d07,transparent 70%);
}
footer .logo{justify-content:center;margin-bottom:16px}
footer .liens{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;margin:16px 0;font-size:.9rem}
footer .liens a:hover{color:var(--or-xtra)}
footer .fin{font-size:.82rem;color:#6b6344;margin-top:18px}

/* ========================= RESPONSIVE ========================= */
@media(max-width:900px){
  .nav-liens{display:none}
  .burger{display:block}
  .demo-wrap,.etapes-grille,.feat-grille,.prix-grille{grid-template-columns:1fr}
  .prix-c.pop{transform:none}
  .prix-c.pop:hover{transform:translateY(-8px)}
  .tel{width:270px;height:540px}
  section{padding:70px 0}
  .hero-fond-mot{font-size:18vw;left:50%;transform:translate(-50%,-50%)}
  .enveloppe{padding:0 20px}
  .nav-liens.mobile-ouvert{
    display:flex!important;
    flex-direction:column;
    position:fixed;
    top:70px;
    left:0;
    right:0;
    background:rgba(8,8,11,.97);
    backdrop-filter:blur(16px);
    padding:24px;
    gap:20px;
    border-bottom:1px solid rgba(201,162,39,.2);
    z-index:99;
  }
}

@media(max-width:600px){
  .hero-preuves{flex-direction:column;gap:20px}
  .stats-grille{grid-template-columns:1fr}
  .demo-wrap{grid-template-columns:1fr;gap:30px}
  .demo-phone{order:1}
  .demo-txt{order:2}
}

