/* ============================================================
   V2 — Couche d'effets premium (vanilla, insp. Magic UI / Aceternity)
   Charte conservée : bleu lapis #0062B8 + orange #FFAA5A
   ============================================================ */

/* ---------- 1. Scroll reveal (blur-fade-in) ---------- */
.v2-reveal{opacity:0;transform:translateY(26px);filter:blur(7px);transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .75s cubic-bezier(.22,.61,.36,1),filter .75s ease;will-change:opacity,transform,filter;}
.v2-reveal.in{opacity:1;transform:none;filter:blur(0);}
@media (prefers-reduced-motion:reduce){.v2-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none;}}

/* ---------- 2. Texte dégradé animé (le 30 000 €) ---------- */
.cover-text h1 em{
  animation:none;
  background:linear-gradient(100deg,var(--pink) 0%,var(--gold-dk) 45%,var(--gold) 55%,var(--pink) 100%);
  background-size:220% auto;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  animation:v2TextFlow 7s linear infinite;
}
@keyframes v2TextFlow{to{background-position:-220% center;}}

/* ---------- 3. Aurora derrière la section CTA ---------- */
.cta{position:relative;overflow:hidden;}
.cta::before{
  content:"";position:absolute;inset:-45%;z-index:0;pointer-events:none;
  background:
    radial-gradient(38% 38% at 22% 28%, rgba(255,170,90,.28), transparent 62%),
    radial-gradient(42% 42% at 78% 72%, rgba(120,180,255,.32), transparent 62%),
    radial-gradient(30% 30% at 60% 20%, rgba(255,170,90,.18), transparent 60%);
  filter:blur(46px);
  animation:v2Aurora 16s ease-in-out infinite alternate;
}
.cta .container{position:relative;z-index:1;}
@keyframes v2Aurora{0%{transform:translate(0,0) scale(1) rotate(0deg);}100%{transform:translate(5%,-4%) scale(1.18) rotate(8deg);}}

/* ---------- 4. Shine sweep (reflet) sur les CTA ---------- */
.btn-primary,.header-cta,.guarantee .gbtn{position:relative;overflow:hidden;}
.btn-primary::after,.header-cta::after,.guarantee .gbtn::after{
  content:"";position:absolute;top:0;left:-160%;width:55%;height:100%;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-22deg);animation:v2Shine 5s ease-in-out infinite;pointer-events:none;
}
.header-cta::after{background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);}
@keyframes v2Shine{0%,55%{left:-160%;}100%{left:160%;}}

/* ---------- 5. Spotlight au survol (cartes leviers + gamme) ---------- */
.lcard,.gcard{position:relative;isolation:isolate;}
.lcard::after,.gcard::after{
  content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;
  background:radial-gradient(200px circle at var(--mx,50%) var(--my,50%), rgba(255,170,90,.20), transparent 60%);
  opacity:0;transition:opacity .35s ease;
}
.lcard:hover::after,.gcard:hover::after{opacity:1;}

/* ---------- 6. Polish : lift cartes + ombres plus profondes ---------- */
.lcard,.gcard,.rcard,.resit,.step,.testi{transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s ease,background .25s ease,border-color .25s ease;}
.lcard:hover,.gcard:hover,.resit:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(0,4,40,.13);}
.gcard.featured:hover{box-shadow:0 26px 60px rgba(0,98,184,.22);}
/* Cartes leviers = info : statiques, pas de reaction au clic (ni zoom ni selection bleue) */
.lcard{user-select:none;-webkit-tap-highlight-color:transparent;}
.lcard::after{display:none;}
.lcard:hover{transform:none;box-shadow:none;}
.lcard:hover::after{opacity:0;}

/* ---------- 7. Header : ombre dynamique au scroll ---------- */
.site-header{transition:box-shadow .3s ease;}
.site-header.scrolled{box-shadow:0 8px 30px rgba(0,4,40,.08);}

/* ---------- 8. Cover : léger halo derrière le texte ---------- */
.cover-text{position:relative;}
.cover-text::before{
  content:"";position:absolute;top:8%;right:-6%;width:300px;height:300px;z-index:0;pointer-events:none;
  background:radial-gradient(circle, rgba(0,98,184,.07), transparent 70%);filter:blur(20px);
}
.cover-text > *{position:relative;z-index:1;}

/* ---------- 9. Bouton CTA hero : micro-lift ---------- */
.header-cta:hover{transform:translateY(-2px) scale(1.02);}
