/* ============================================================
   Offre Une Chanson : feuille de style du site (mode sombre uniquement)
   Polices : Inter (texte), Plus Jakarta Sans (titres), Caveat (mot manuscrit)
   ============================================================ */
@font-face{font-family:"Inter";src:url(/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(/fonts/jakarta-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(/fonts/jakarta-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Caveat";src:url(/fonts/caveat-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --bg0:#0A0A1E; --bg1:#151025;
  --a1:#FF5A8E; --a2:#FF9E6B; --grad:linear-gradient(135deg,#FF5A8E 0%,#FF9E6B 100%);
  --txt:#FFFFFF; --mut:#A1A1B5; --pink:#FF7A9A; --gold:#FFD27A; --danger:#FF7A8A;
  --glass:rgba(255,255,255,.08); --glass-b:rgba(255,255,255,.15); --line:rgba(255,255,255,.10);
  --r-card:16px; --r-xl:24px; --nav-h:68px; --tap:48px;
  --f-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --f-title:"Plus Jakarta Sans","Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-script:"Caveat","Segoe Script","Bradley Hand",cursive;
  --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px);-webkit-text-size-adjust:100%;background:var(--bg0)}
body{font-family:var(--f-body);color:var(--txt);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  background:linear-gradient(180deg,var(--bg0) 0%,var(--bg1) 100%)}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(55% 42% at 50% 26%,rgba(255,90,142,.16),transparent 70%),radial-gradient(40% 34% at 88% 72%,rgba(255,158,107,.08),transparent 72%),radial-gradient(34% 30% at 6% 60%,rgba(255,90,142,.06),transparent 72%)}
h1,h2,h3,h4{font-family:var(--f-title);font-weight:800;letter-spacing:-.02em;line-height:1.12}
p{color:var(--mut)}
a{color:inherit}
img,svg{max-width:100%}
img{display:block;height:auto}
button{font-family:inherit}
.ic{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none;display:inline-block;vertical-align:middle}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mono{font-family:var(--f-body)}
:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* ---------- Boutons : tous les appels à l'action utilisent le dégradé ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tap);padding:0 26px;border:0;border-radius:999px;
  font:700 .92rem/1 var(--f-body);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;text-decoration:none;position:relative;
  transition:transform .2s var(--ease),box-shadow .25s,filter .2s,background .2s;-webkit-tap-highlight-color:transparent}
.btn-primary,.btn-dark,.btn-gold,.btn-gold-outline{background:var(--grad);color:#0A0A1E;box-shadow:0 12px 30px -10px rgba(255,90,142,.6)}
.btn-primary:hover,.btn-dark:hover{transform:translateY(-2px);box-shadow:0 18px 38px -10px rgba(255,90,142,.7);filter:saturate(1.08)}
.btn:active{transform:scale(.97)}
.btn-ghost{background:var(--glass);color:#fff;border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.btn-ghost:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.btn-block{width:100%}
.btn[disabled]{opacity:.42;cursor:not-allowed;box-shadow:none;transform:none;filter:grayscale(.2)}
.btn .arrow{width:34px;height:34px;border-radius:50%;background:#fff;color:#0A0A1E;display:grid;place-items:center;transition:transform .25s var(--ease)}
.btn:hover .arrow{transform:translateX(3px)}
.btn .arrow .ic{width:18px;height:18px;stroke-width:2.6}
.btn-lg{min-height:60px;font-size:.95rem}
.btn-lg.has-arrow{justify-content:space-between;padding:0 10px 0 28px}

/* ---------- Barre d'information ---------- */
.promo-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 16px;padding:8px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--line);font-size:.78rem;color:var(--mut)}
.promo-bar span{display:inline-flex;align-items:center;gap:7px}
.promo-bar .ic{width:15px;height:15px;color:var(--pink)}
.promo-bar .sep{display:none}

/* ---------- Navigation ---------- */
nav{position:sticky;top:0;z-index:60;background:rgba(10,10,30,.62);-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%);border-bottom:1px solid var(--line)}
nav .row{height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font:800 1.06rem var(--f-title);letter-spacing:-.01em;color:#fff;text-decoration:none}
.brand-logo{width:36px;height:36px;border-radius:10px;flex:none}
nav .links{display:none}
nav .links a{padding:9px 16px;border-radius:999px;color:var(--mut);text-decoration:none;font-weight:500;font-size:.94rem;transition:color .2s,background .2s}
nav .links a:hover{color:#fff;background:var(--glass)}
nav .cta{display:none;min-height:44px;padding:0 20px;font-size:.82rem;gap:8px}
nav .cta .ic{width:18px;height:18px}
.menu-btn{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;background:var(--glass);border:1px solid var(--glass-b);border-radius:14px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.menu-btn span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .25s var(--ease),opacity .2s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;gap:2px;padding:14px 20px 20px;background:rgba(14,12,30,.96);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid var(--glass-b);box-shadow:0 24px 40px rgba(0,0,0,.45)}
.mobile-menu.open{display:flex;animation:menuIn .22s var(--ease)}
.mobile-menu a{display:flex;align-items:center;min-height:var(--tap);padding:0 8px;text-decoration:none;font-weight:600;border-bottom:1px solid var(--line)}
.mobile-menu a:last-child{border-bottom:0}
.mobile-menu a.menu-cta{justify-content:center;margin-bottom:8px;border:0;border-radius:999px;background:var(--grad);color:#0A0A1E;font-weight:800;text-transform:uppercase;font-size:.9rem;letter-spacing:.03em}
@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(min-width:900px){
  nav .row{display:grid;grid-template-columns:1fr auto 1fr}
  nav .links{display:flex;gap:4px;justify-self:center}
  nav .cta{display:inline-flex;justify-self:end}
  .menu-btn,.mobile-menu{display:none!important}
}

/* ---------- Héros ---------- */
.hero{position:relative;padding:clamp(28px,5vw,56px) 0 clamp(44px,6vw,80px);overflow:hidden}
.hero::before{content:"";position:absolute;left:50%;top:46%;width:min(1100px,120vw);height:min(760px,90vw);transform:translate(-50%,-50%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,90,142,.2),rgba(255,158,107,.07) 55%,transparent 75%)}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:center}
@media(min-width:1024px){
  .hero{display:flex;align-items:center;min-height:calc(100svh - var(--nav-h));padding-block:32px}
  .hero .wrap{width:min(1280px,100% - 64px)}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px}
}
.pill,.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 18px;border-radius:999px;border:1px solid rgba(255,122,154,.45);background:rgba(10,10,30,.55);
  color:var(--pink);font:700 .72rem/1.2 var(--f-body);letter-spacing:.12em;text-transform:uppercase}
.pill .ic{width:17px;height:17px}
@media(max-width:480px){.pill,.eyebrow{font-size:.64rem;letter-spacing:.08em;padding:8px 14px}}
.hero h1{font-size:clamp(2.15rem,6.2vw,3.2rem);line-height:1.05;letter-spacing:-.035em;margin:20px 0 18px;text-wrap:balance}
@media(min-width:640px){.hero h1{font-size:clamp(2.6rem,6vw,4rem)}}
@media(min-width:1024px){.hero h1{font-size:clamp(2.7rem,4.3vw,4.1rem)}}
.accent-script{display:inline-block;font-family:var(--f-script);font-weight:700;font-size:1.25em;line-height:.95;letter-spacing:0;padding:0 .08em .06em 0;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;transform:rotate(-2deg);transform-origin:left center}
.uniq{position:relative;display:inline-block;padding-right:.14em;margin-right:-.06em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.scribble{position:absolute;left:-3%;bottom:-.16em;width:106%;height:.34em;overflow:visible;-webkit-text-fill-color:initial}
.scribble path{fill:none;stroke-width:3.4;stroke-linecap:round;stroke-dasharray:240;stroke-dashoffset:240;animation:draw 1.1s .9s var(--ease) forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.lead{font-size:clamp(1.02rem,2.2vw,1.18rem);color:var(--mut);max-width:34em;line-height:1.65}
.hero-badges{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin:26px 0 28px;max-width:640px}
.hero-badges li{display:flex;flex-direction:column;align-items:flex-start;gap:11px;font-size:.84rem;line-height:1.35;color:#E9E9F2;font-weight:600}
.badge-ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:rgba(10,10,30,.75);border:1px solid rgba(255,122,154,.55);color:var(--pink);box-shadow:0 0 22px -6px rgba(255,90,142,.55)}
.badge-ic .ic{width:21px;height:21px}
@media(min-width:640px) and (max-width:1023px){.hero-badges{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1280px){.hero-badges{grid-template-columns:repeat(4,minmax(0,1fr))}}
.hero-ctas{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
@media(min-width:560px){.hero-ctas{flex-direction:row;flex-wrap:wrap}.hero-ctas .btn{flex:0 1 auto}}
.hero-ctas .btn-ghost{min-height:60px;padding:0 26px}
.social-proof{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--line)}
.avatars{display:flex}
.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:2px solid #120F22;margin-left:-12px;color:#2A1020;background:var(--grad)}
.avatar:first-child{margin-left:0}
.avatar .ic{width:19px;height:19px}
.avatar:nth-child(2){background:linear-gradient(135deg,#FF7A9A,#FFB07A)}
.avatar:nth-child(3){background:linear-gradient(135deg,#FF9E6B,#FFD27A)}
.avatar:nth-child(4){background:linear-gradient(135deg,#FF6F91,#FF9E6B)}
.avatar:nth-child(5){background:linear-gradient(135deg,#FFB07A,#FFE0B0)}
.sp-text{display:grid;gap:3px}
.stars{display:flex;align-items:center;gap:8px}
.stars-row{display:flex;color:#FFC947}
.stars-row .ic{width:17px;height:17px;fill:currentColor;stroke:currentColor;stroke-width:1.5}
.sp-title{font:800 1.02rem var(--f-title);color:#fff}
.sp-sub{display:flex;align-items:center;gap:7px;font-size:.86rem;color:var(--mut)}
.sp-sub .ic{width:15px;height:15px;color:var(--a1);fill:var(--a1)}

.hero-visual{position:relative}
.hero-frame{position:relative;border-radius:var(--r-xl);overflow:hidden;border:1px solid var(--glass-b);aspect-ratio:4/5;max-height:78svh;width:100%;
  box-shadow:0 36px 90px -24px rgba(255,90,142,.38),0 0 0 6px rgba(255,255,255,.03)}
@media(min-width:640px) and (max-width:1023px){.hero-frame{aspect-ratio:16/10;max-height:none}}
@media(min-width:1024px){.hero-frame{aspect-ratio:auto;height:min(78svh,740px);min-height:480px;max-height:none}}
.hero-frame img{width:100%;height:100%;object-fit:cover;object-position:48% 38%}
.hero-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,10,30,0) 50%,rgba(10,10,30,.5) 100%),linear-gradient(90deg,rgba(10,10,30,.28),transparent 28%)}
.hero-chip{position:absolute;left:18px;bottom:18px;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 16px 10px 12px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);font-size:.82rem;font-weight:600}
.hero-chip .badge-ic{width:34px;height:34px;box-shadow:none}
.hero-chip .badge-ic .ic{width:17px;height:17px}
.notes{position:absolute;inset:0;pointer-events:none;z-index:5}
.note{position:absolute;color:var(--c,#FFD27A);opacity:0;filter:drop-shadow(0 0 8px currentColor);animation:noteFloat var(--d,8s) var(--delay,0s) ease-in-out infinite}
.note .ic{width:var(--s,22px);height:var(--s,22px);stroke-width:2.2}
@keyframes noteFloat{0%{transform:translate3d(0,26px,0) rotate(-8deg) scale(.7);opacity:0}16%{opacity:.95}72%{opacity:.7}100%{transform:translate3d(var(--dx,16px),-96px,0) rotate(10deg) scale(1.02);opacity:0}}

.gold-line{display:none;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible}
@media(min-width:1024px){.gold-line{display:block}}
.gold-line .glow{fill:none;stroke:#FFB46B;stroke-width:9;stroke-linecap:round;opacity:.28;filter:blur(6px);vector-effect:non-scaling-stroke;stroke-dasharray:1000;stroke-dashoffset:1000;animation:drawLine 3.4s .5s ease-out forwards}
.gold-line .core{fill:none;stroke:url(#gGold);stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1000;stroke-dashoffset:1000;animation:drawLine 3.4s .5s ease-out forwards}
@keyframes drawLine{to{stroke-dashoffset:0}}
.gold-line .spark{fill:#FFE7A8;filter:drop-shadow(0 0 8px #FFC76B)}

/* ---------- Sections ---------- */
section{padding:clamp(52px,8vw,92px) 0;position:relative}
.section-head{text-align:center;max-width:720px;margin:0 auto clamp(32px,5vw,52px);display:grid;gap:14px;justify-items:center}
.section-head h2{font-size:clamp(1.85rem,4.4vw,3rem);letter-spacing:-.03em;text-wrap:balance}
.section-head p{font-size:1.04rem;max-width:38em}
.eyebrow .ic{width:15px;height:15px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in-view{opacity:1;transform:none}

/* Extraits audio */
#trackList{display:grid;gap:12px;grid-template-columns:minmax(0,1fr);max-width:1040px;margin:0 auto}
@media(min-width:900px){#trackList{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.track{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:var(--r-card);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);transition:transform .25s var(--ease),background .25s,border-color .25s}
.track:hover{background:rgba(255,255,255,.11);transform:translateY(-2px)}
.track:has(.play-btn.playing){border-color:rgba(255,122,154,.65);box-shadow:0 14px 40px -16px rgba(255,90,142,.55)}
.play-btn{flex:none;width:56px;height:56px;border-radius:50%;border:0;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%230A0A1E%22%3E%3Cpath d=%22M8 5.6v12.8a1 1 0 0 0 1.5.86l10.6-6.4a1 1 0 0 0 0-1.72L9.5 4.74A1 1 0 0 0 8 5.6z%22/%3E%3C/svg%3E") center/22px no-repeat,var(--grad);box-shadow:0 10px 26px -8px rgba(255,90,142,.65);transition:transform .2s var(--ease)}
.play-btn:hover{transform:scale(1.07)}
.play-btn:active{transform:scale(.94)}
.play-btn.playing{background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%230A0A1E%22%3E%3Crect x=%226%22 y=%224.5%22 width=%224.2%22 height=%2215%22 rx=%221.4%22/%3E%3Crect x=%2213.8%22 y=%224.5%22 width=%224.2%22 height=%2215%22 rx=%221.4%22/%3E%3C/svg%3E") center/22px no-repeat,var(--grad)}
.track-info{flex:1;min-width:0}
.track-title{font:700 1rem/1.3 var(--f-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track-tag{font-size:.7rem;letter-spacing:.1em;color:var(--pink);font-weight:600;margin-top:3px}
.track-progress{height:4px;border-radius:99px;background:rgba(255,255,255,.12);margin-top:11px;overflow:hidden}
.track-progress-bar{height:100%;width:0;background:var(--grad);border-radius:99px}

.demo-note{margin:26px auto 0;text-align:center;font-size:.88rem;color:var(--mut)}

/* Avis clients */
.wa-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 20px 20px;margin:0 -20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.wa-grid::-webkit-scrollbar{display:none}
.wa-card{flex:0 0 min(264px,74%);scroll-snap-align:center;border-radius:var(--r-card);overflow:hidden;padding:8px;background:var(--glass);border:1px solid var(--glass-b);transition:transform .3s var(--ease)}
.wa-card:hover{transform:translateY(-4px)}
.wa-card img{border-radius:11px;width:100%}
@media(min-width:1100px){.wa-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;margin:0;padding:0}.wa-card{flex:initial}}

/* Pourquoi */
.why-text{max-width:820px;margin:0 auto 30px;padding:clamp(26px,4.5vw,48px);border-radius:var(--r-xl);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);text-align:center;display:grid;gap:16px}
.why-text p{font-size:1.06rem;line-height:1.7}
.why-text p:first-child{font:700 1.2rem/1.45 var(--f-title);color:#fff}
.why-text strong{color:#fff}
#pourquoi .btn{display:flex;width:fit-content;margin:0 auto}

/* Tarifs */
.pricing{display:grid;gap:22px;grid-template-columns:minmax(0,1fr);max-width:1100px;margin:0 auto}
@media(min-width:900px){.pricing{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}}
.price-card{position:relative;display:flex;flex-direction:column;padding:30px 26px 26px;border-radius:var(--r-card);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s,opacity .7s var(--ease)}
.price-card:hover{transform:translateY(-6px);border-color:rgba(255,122,154,.55)}
.price-card.featured{background:linear-gradient(rgba(23,17,40,.94),rgba(23,17,40,.94)) padding-box,var(--grad) border-box;border:1.5px solid transparent;box-shadow:0 34px 80px -28px rgba(255,90,142,.55)}
@media(min-width:900px){.price-card.featured{scale:1.045}}
.price-badge{position:absolute;top:-15px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;background:var(--grad);color:#0A0A1E;font:800 .68rem/1 var(--f-body);letter-spacing:.09em;white-space:nowrap;box-shadow:0 10px 24px -8px rgba(255,90,142,.7)}
.price-badge .ic{width:14px;height:14px;fill:#0A0A1E;stroke:#0A0A1E}
.price-name{font:800 1.35rem var(--f-title)}
.price-sub{color:var(--mut);font-size:.9rem;margin-top:5px;min-height:2.7em;line-height:1.45}
.price-amount{font:800 2.7rem/1 var(--f-title);margin:20px 0 14px;letter-spacing:-.035em}
.price-amount span{font-size:1rem;color:var(--mut);font-weight:700;letter-spacing:0}
.price-delay{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:8px 14px;border-radius:999px;background:rgba(255,158,107,.1);border:1px solid rgba(255,158,107,.32);color:var(--a2);font:700 .68rem/1 var(--f-body);letter-spacing:.09em;margin-bottom:22px}
.price-delay::before{content:"";width:15px;height:15px;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23FF9E6B%22 stroke-width=%222.4%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22 /%3E %3Cpath d=%22M12 6v6h4%22 /%3E%3C/svg%3E") center/contain no-repeat}
.price-list{list-style:none;display:grid;gap:11px;margin-bottom:28px;flex:1}
.price-list li{position:relative;padding-left:29px;font-size:.93rem;color:#E7E7F0;line-height:1.45}
.price-list li::before{content:"";position:absolute;left:0;top:.18em;width:19px;height:19px;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23FF7A9A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22 /%3E %3Cpath d=%22m16 9-5.5 5.5L8 12%22 /%3E%3C/svg%3E") center/contain no-repeat}
.price-card .choose-formule{position:relative;overflow:hidden}
.price-card .choose-formule::after{content:"";position:absolute;top:0;left:-70%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);opacity:0;pointer-events:none}
.price-card.in-view .choose-formule::after{animation:shine 1.2s .5s 1}
@keyframes shine{0%{left:-70%;opacity:1}100%{left:140%;opacity:1}}
.price-card.featured.in-view .choose-formule{animation:breathe 3.4s 1.8s ease-in-out infinite}
@keyframes breathe{0%,100%{box-shadow:0 12px 30px -10px rgba(255,90,142,.6),0 0 0 0 rgba(255,90,142,0)}50%{box-shadow:0 12px 30px -10px rgba(255,90,142,.6),0 0 0 8px rgba(255,90,142,.2)}}

/* Étapes */
.steps{display:grid;gap:14px;max-width:980px;margin:0 auto;grid-template-columns:minmax(0,1fr)}
@media(min-width:760px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.step{display:flex;gap:16px;align-items:flex-start;padding:24px;border-radius:var(--r-card);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.step-num{flex:none;width:50px;height:50px;border-radius:15px;background:var(--grad);color:#0A0A1E;display:grid;place-items:center;font:800 1.02rem var(--f-title);box-shadow:0 10px 24px -8px rgba(255,90,142,.6)}
.step h3{font-size:1.08rem;margin-bottom:6px;letter-spacing:-.01em}
.step p{font-size:.93rem;line-height:1.55}

/* Garantie */
.guarantee{display:flex;gap:20px;align-items:flex-start;max-width:900px;margin:0 auto;padding:clamp(22px,4vw,34px);border-radius:var(--r-xl);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.guarantee-icon{flex:none;width:58px;height:58px;border-radius:17px;background:var(--grad);color:#0A0A1E;display:grid;place-items:center;box-shadow:0 12px 28px -8px rgba(255,90,142,.6)}
.guarantee-icon .ic{width:28px;height:28px}
.guarantee h4{font-size:1.2rem;margin-bottom:8px}
.guarantee p{font-size:.96rem;line-height:1.65}
.guarantee a{color:var(--pink);text-underline-offset:3px}
@media(max-width:560px){.guarantee{flex-direction:column}}

/* FAQ */
.faq-list{max-width:820px;margin:0 auto;display:grid;gap:12px}
.faq-item{border-radius:var(--r-card);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);overflow:hidden;transition:border-color .25s,background .25s}
.faq-item:hover{background:rgba(255,255,255,.1)}
.faq-item.open{border-color:rgba(255,122,154,.55)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:var(--tap);padding:18px 20px;background:none;border:0;color:#fff;font:700 1rem/1.35 var(--f-title);text-align:left;cursor:pointer}
.faq-q .icon{flex:none;width:32px;height:32px;border-radius:50%;font-size:0;color:transparent;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23FFFFFF%22 stroke-width=%222.6%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 12h14%22 /%3E %3Cpath d=%22M12 5v14%22 /%3E%3C/svg%3E") center/16px no-repeat,rgba(255,255,255,.1);transition:transform .3s var(--ease),background-color .3s}
.faq-item.open .faq-q .icon{transform:rotate(45deg);background-color:rgba(255,90,142,.22)}
.faq-a{max-height:0;overflow:hidden;padding:0 20px;transition:max-height .4s var(--ease)}
.faq-item.open .faq-a{max-height:640px}
.faq-a p{padding-bottom:20px;line-height:1.7}
.style-tags{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px}
.style-tag{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--glass-b);font-size:.84rem;font-weight:600;color:#fff}

/* Pied de page */
.site-footer{border-top:1px solid var(--line);padding:44px 0 calc(44px + env(safe-area-inset-bottom));background:rgba(5,5,18,.4)}
.footer-top{display:flex;flex-wrap:wrap;gap:18px 28px;justify-content:space-between;align-items:center}
.footer-tag{font-size:.74rem;letter-spacing:.12em;color:var(--mut);text-transform:uppercase;font-weight:600}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line);font-size:.86rem}
.footer-links a{color:var(--mut);text-decoration:none;transition:color .2s}
.footer-links a:hover{color:#fff}
.footer-copy{margin-top:16px;font-size:.8rem;color:#74748A}
@media(max-width:899px){.site-footer{margin-bottom:84px}}

/* Bouton fixe du bas (téléphone) */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:70;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(10,10,30,.78);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-top:1px solid var(--glass-b);
  transform:translateY(110%);transition:transform .3s var(--ease);pointer-events:none}
.sticky-cta.show{transform:none;pointer-events:auto}
@media(min-width:900px){.sticky-cta{display:none}}
body.order-open .sticky-cta{display:none}

/* ---------- Formulaire de commande (page à part, même onglet) ---------- */
.order-bar{display:none}
body.order-open .promo-bar,body.order-open nav,body.order-open header.hero,body.order-open section:not(#commander),body.order-open .site-footer{display:none}
body.order-open #commander{padding-top:0}
body.order-open .order-bar{display:block;position:sticky;top:0;z-index:60;background:rgba(10,10,30,.72);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);margin-bottom:clamp(24px,5vw,44px)}
.order-bar-row{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h)}
.order-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-b);color:#fff;font:600 .88rem var(--f-body);cursor:pointer;transition:background .2s}
.order-back:hover{background:rgba(255,255,255,.14)}
.order-back .ic{width:17px;height:17px}
.order-shell{max-width:660px;margin:0 auto;padding:clamp(20px,4.5vw,36px);border-radius:var(--r-xl);background:var(--glass);border:1px solid var(--glass-b);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);box-shadow:0 40px 90px -40px rgba(0,0,0,.7)}
.progress{display:flex;gap:10px;margin-bottom:28px}
.progress-step{flex:1}
.progress-bar{height:5px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.progress-bar i{display:block;height:100%;width:0;background:var(--grad);border-radius:99px;transition:width .5s var(--ease)}
.progress-label{margin-top:9px;font:600 .7rem var(--f-body);letter-spacing:.08em;text-transform:uppercase;color:#6F6F86}
.progress-step.active .progress-label{color:#fff}
.wizard-panel{display:none}
.wizard-panel.active{display:block;animation:panelIn .38s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.qgroup{margin-bottom:24px}
.qlabel{display:block;margin-bottom:12px;font:800 1.02rem/1.35 var(--f-title);letter-spacing:-.01em;color:#fff}
.field{margin-bottom:20px;position:relative}
.field>label{display:block;margin-bottom:9px;font:600 .72rem var(--f-body);letter-spacing:.09em;text-transform:uppercase;color:var(--mut)}
input,select,textarea{width:100%;min-height:54px;padding:0 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:14px;color:#fff;font:500 1rem var(--f-body);outline:0;transition:border-color .2s,box-shadow .2s,background .2s}
textarea{padding:14px 16px;min-height:128px;resize:vertical;line-height:1.55}
select{appearance:none;-webkit-appearance:none;padding-right:46px;background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A1A1B5%22 stroke-width=%222.4%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22 /%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:18px;cursor:pointer}
select option{background:#151025;color:#fff}
input::placeholder,textarea::placeholder{color:#7C7C93}
input:hover,select:hover,textarea:hover{background-color:rgba(255,255,255,.09)}
input:focus,select:focus,textarea:focus{border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,90,142,.2);background-color:rgba(255,255,255,.09)}
input:-webkit-autofill{-webkit-text-fill-color:#fff;box-shadow:0 0 0 100px #1B1630 inset;caret-color:#fff}
.error-msg{display:none;margin-top:8px;color:var(--danger);font-size:.82rem;font-weight:500}
.invalid .error-msg,.error-msg.show{display:block}
.invalid input,.invalid select,.invalid textarea,.invalid .country-btn{border-color:var(--danger)}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:560px){.choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.toggle-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.choice{display:flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);color:#fff;font:600 .88rem/1.2 var(--f-body);text-align:center;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .2s,border-color .2s,transform .15s,box-shadow .2s}
.choice .ic{color:var(--pink);width:19px;height:19px}
.choice:hover{background:rgba(255,255,255,.11)}
.choice:active{transform:scale(.97)}
.choice.selected{border:1.5px solid transparent;background:linear-gradient(rgba(36,22,48,.96),rgba(36,22,48,.96)) padding-box,var(--grad) border-box;box-shadow:0 12px 28px -12px rgba(255,90,142,.7)}
.invalid.choice-grid .choice,.invalid.toggle-row .choice,.qgroup.invalid .choice{border-color:rgba(255,122,138,.55)}
.wizard-nav{display:flex;gap:12px;margin-top:26px}
.wizard-nav .btn{flex:1 1 0;min-width:0;padding:0 18px}
@media(max-width:520px){.wizard-nav{flex-direction:column-reverse}.wizard-nav .btn{flex:none;width:100%}}
.country-select{position:relative}
.country-btn{width:100%;min-height:54px;padding:0 46px 0 16px;text-align:left;background:rgba(255,255,255,.06) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A1A1B5%22 stroke-width=%222.4%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22 /%3E%3C/svg%3E") no-repeat right 16px center/18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;color:#fff;font:500 1rem var(--f-body);cursor:pointer}
.country-btn:focus-visible{border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,90,142,.2)}
.country-panel{display:none;position:absolute;z-index:40;left:0;right:0;top:calc(100% + 8px);background:#161228;border:1px solid var(--glass-b);border-radius:14px;box-shadow:0 28px 60px rgba(0,0,0,.65);max-height:300px;overflow:auto}
.country-panel.open,.country-select.open .country-panel{display:block}
.country-search{position:sticky;top:0;padding:10px;background:#161228;border-bottom:1px solid var(--line)}
.country-search input{min-height:46px}
.country-opt{display:flex;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;font-size:.95rem;transition:background .15s}
.country-opt:hover,.country-opt:focus{background:rgba(255,255,255,.08)}
.photo-upload{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:96px;padding:16px;text-align:center;border:1.5px dashed rgba(255,122,154,.55);border-radius:14px;background:rgba(255,255,255,.04);color:var(--mut);cursor:pointer;transition:background .2s,border-color .2s}
.photo-upload:hover{background:rgba(255,255,255,.08);border-color:var(--pink)}
.photo-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;min-height:0}
.photo-preview{margin-top:14px}
.photo-preview img{max-height:230px;border-radius:14px;border:1px solid var(--glass-b);margin:0 auto}
.recap-list{border-radius:14px;border:1px solid var(--glass-b);background:rgba(255,255,255,.04);overflow:hidden}
.recap-row{display:flex;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--line);font-size:.93rem}
.recap-row:last-child{border-bottom:0}
.recap-row .k{color:var(--mut)}
.recap-row .v{font-weight:700;text-align:right;overflow-wrap:anywhere}
.recap-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0 22px;padding:18px 20px;border-radius:14px;background:linear-gradient(135deg,rgba(255,90,142,.16),rgba(255,158,107,.09));border:1px solid rgba(255,122,154,.32);font-weight:600}
.recap-total .amount{font:800 1.9rem var(--f-title);letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.payment-note{margin-top:14px;font-size:.78rem;color:var(--mut);text-align:center;line-height:1.55}
.payment-note a{color:var(--pink);text-underline-offset:3px}
.turnstile-box{display:flex;justify-content:center;margin:0 0 16px}
.turnstile-box:empty{display:none}
.hp-field{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

/* ---------- Accessibilité : réduire les animations si demandé ---------- */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .note,.gold-line .spark{display:none}
  .reveal{opacity:1;transform:none}
  .scribble path,.gold-line .glow,.gold-line .core{stroke-dashoffset:0}
}
