/* Variante C — Noir laqué, blanc, or satiné (surcharge de style.css) */
:root{
  --g0:#030304;--g1:#060608;--g2:#0D0D10;--g3:#1B1B20;--g4:#2A2A30;
  --ivory:#FAF8F4;--ivory-2:#F2EDE4;--card:#FFFFFF;
  --muted-d:#C9C5BD;--muted-d2:#9A968E;
  --champ:#E7CD90;--champ-2:#C9A961;--copper:#C9A961;--copper-d:#86642B;
  --gold:linear-gradient(100deg,#B08A45 0%,#F3DFA6 38%,#D2B06A 55%,#A07A38 100%);
  --line-d:rgba(255,255,255,.1);
}
.gold,.hero em,.diff em,.why .h2 em,.join em,.marquee em,.topbar__tag em,.rivals__b,.diff__punch{
  background:var(--gold);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;animation:goldShift 9s ease-in-out infinite alternate}
@keyframes goldShift{from{background-position:0 0}to{background-position:100% 0}}
.hero em{padding-right:.06em}

/* ---------- Lacquered black surfaces ---------- */
.diff,.why,.join{background-color:var(--g1);background-image:
  radial-gradient(ellipse 90% 40% at 50% -6%,rgba(255,255,255,.09),rgba(255,255,255,.02) 45%,transparent 70%),
  linear-gradient(100deg,transparent 0 62%,rgba(255,255,255,.035) 68%,transparent 74%),
  radial-gradient(ellipse 60% 30% at 20% 105%,rgba(201,169,97,.09),transparent 70%),
  linear-gradient(180deg,#0A0A0D,#030304 70%)}
.marquee{background:#030304;border-color:rgba(201,169,97,.22)}

/* ---------- Hero: piano-black lacquer ---------- */
.hero{background-color:#050507;border-bottom:1px solid rgba(201,169,97,.35);background-image:
  radial-gradient(ellipse 95% 42% at 50% -10%,rgba(255,255,255,.2),rgba(255,255,255,.05) 42%,transparent 68%),
  linear-gradient(102deg,transparent 0 12%,rgba(255,255,255,.075) 20%,rgba(255,255,255,.018) 25%,transparent 32%),
  linear-gradient(102deg,transparent 0 60%,rgba(255,255,255,.04) 65%,transparent 71%),
  radial-gradient(ellipse 75% 32% at 68% 106%,rgba(201,169,97,.2),transparent 70%),
  linear-gradient(180deg,#0E0E11 0%,#030304 52%,#09090B 100%)}
.hero::before{inset:0;background:linear-gradient(102deg,transparent 40%,rgba(255,255,255,.11) 47.5%,rgba(255,236,196,.07) 50%,transparent 57%);background-size:320% 100%;mix-blend-mode:screen;animation:sheen 11s ease-in-out infinite alternate}
.hero::after{width:auto;height:auto;inset:0;right:0;top:0;border-radius:0;transform:none;background:radial-gradient(520px circle at var(--mx,72%) var(--my,30%),rgba(255,255,255,.075),transparent 62%);transition:background .2s}
.hero__inner::after{content:"";position:absolute;left:var(--pad);right:var(--pad);bottom:-2.2rem;height:1px;background:linear-gradient(90deg,transparent,rgba(231,205,144,.5),transparent);opacity:.6}
.hero__title{color:#fff;text-shadow:0 1px 0 rgba(255,255,255,.06),0 18px 40px rgba(0,0,0,.6)}
.ln--sub{color:#D9D5CD}
.hero .eyebrow,.eyebrow--light,.why .eyebrow{color:var(--champ)}
.topbar__tag{color:#C9C5BD}

/* Glossy spheres */
.constellation .links line{stroke:rgba(255,255,255,.17)}
.joinline{stroke:var(--champ-2)}
.n1,.n6{fill:url(#lqBlack);stroke:rgba(255,255,255,.28);stroke-width:1}
.n2,.n5,.n8{fill:url(#lqGold);stroke:none}
.n3,.n7{fill:url(#lqPearl);stroke:none}
.n4{fill:url(#lqBlack);stroke:var(--champ-2);stroke-width:1.4}
.lone circle{fill:url(#lqGold)}
.lone .halo{fill:none;stroke:var(--champ-2)}
.constellation{filter:drop-shadow(0 22px 30px rgba(0,0,0,.6))}

/* ---------- Buttons ---------- */
.btn{background:linear-gradient(180deg,#1E1E23 0%,#050506 55%,#0C0C0F 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.6),0 16px 32px -16px rgba(0,0,0,.75)}
.btn__ico{background:var(--gold);color:#0A0A0C}
.btn::before{background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%)}
.join .btn{background:linear-gradient(100deg,#C29E58 0%,#F1DDA4 40%,#D7B672 60%,#B48E4A 100%);color:#0A0A0C;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 18px 40px -16px rgba(201,169,97,.55)}
.join .btn:hover{background:linear-gradient(100deg,#CCA963 0%,#F6E5B3 40%,#DDBE7C 60%,#BD9853 100%)}
.join .btn .btn__ico{background:#07070A;color:var(--champ)}

/* ---------- Light sections stay warm and human ---------- */
.story,.discover,.perks,.faq{background:var(--ivory)}
.idea{background:linear-gradient(160deg,#FBF4E3 0%,#EFDDB4 100%)}
.idea__marks span:nth-child(2){background:var(--champ-2);border-color:var(--champ-2)}
.card--ink,.card--sage{background-color:#070709;background-image:radial-gradient(ellipse 120% 50% at 30% -10%,rgba(255,255,255,.12),transparent 60%),linear-gradient(170deg,#18181C,#050506 70%);border-color:#111}
.card--ink h3,.card--sage h3{color:#fff}
.card--ink p,.card--sage p{color:var(--muted-d)}
.card--ochre{background:linear-gradient(155deg,#FBF1DA 0%,#EAD3A0 100%);border-color:#E6CF9C}
.card--ochre p{color:#3D331F}
.video__frame{background-color:#050506;background-image:radial-gradient(ellipse 100% 50% at 50% -10%,rgba(255,255,255,.14),transparent 60%),linear-gradient(170deg,#16161A,#030304 70%);border-color:rgba(201,169,97,.25)}
.video__play{background:var(--gold);box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.footer{background:#030304;border-top-color:rgba(201,169,97,.22)}
.footer__links .footer__join{color:var(--champ)}

@media (max-width:480px){
  .hero{background-image:
    radial-gradient(ellipse 140% 30% at 50% -6%,rgba(255,255,255,.2),rgba(255,255,255,.05) 45%,transparent 70%),
    linear-gradient(110deg,transparent 0 8%,rgba(255,255,255,.1) 18%,rgba(255,255,255,.02) 24%,transparent 32%),
    linear-gradient(110deg,transparent 0 66%,rgba(255,255,255,.05) 74%,transparent 82%),
    radial-gradient(ellipse 120% 30% at 60% 104%,rgba(201,169,97,.2),transparent 70%),
    linear-gradient(180deg,#0E0E11 0%,#030304 50%,#09090B 100%)}
}
@media (prefers-reduced-motion:reduce){.gold,.hero em{animation:none}}

/* ---------- Finition : lisibilité, ergonomie mobile, liens en attente ---------- */
.eyebrow{font-size:.78rem}
.hero__scroll{font-size:.75rem}
.reassure{font-size:.875rem;color:#4A453E}
.reassure--light{color:var(--muted-d)}
.video__note{color:#BDB8AF}
.footer{color:#BDB8AF}
.footer__links a{display:inline-flex;align-items:center;min-height:44px}
.footer__links a.is-pending{cursor:default;opacity:.75}
.footer__links a.is-pending:hover{border-color:transparent;color:inherit}
.slot--filled{border:0!important;background:none!important}
.slot--video.slot--filled{padding:0}
.btn__txt{text-wrap:balance}
.topbar .slot--filled img{object-position:left center}
.footer .slot--filled img{object-position:left center}
@media (max-width:480px){
  .topbar__tag{font-size:.75rem}
  .video__badge{font-size:.75rem}
  .slot--logo{font-size:.72rem}
  .btn{font-size:1rem}
  .footer__links{gap:0}
  .footer__wrap{gap:.5rem 2rem}
}

/* ---------- Signature typographique LEBONCOACH ---------- */
.wordmark{margin:0;font-weight:600;font-size:.95rem;letter-spacing:.28em;color:#fff;line-height:1}
.wordmark span{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.wordmark--small{font-size:.82rem}

/* ---------- Séquence 4 : vidéo + Dominique ---------- */
.why{padding:clamp(5rem,10vw,8.5rem) 0}
.why__head{display:grid;gap:1.2rem;margin-bottom:clamp(2.75rem,6vw,4.5rem)}
.why__head .h2{margin-bottom:0}
.why__intro .lead{color:#fff;margin-bottom:.8em}
.why__intro p:not(.lead){color:var(--muted-d);font-size:1.08rem;margin:0}
.meet{display:grid;gap:3rem}
.video{display:block;text-decoration:none;color:inherit}
.why .video__frame{position:relative;display:block;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#050506;border:1px solid rgba(231,205,144,.28);box-shadow:0 40px 80px -40px rgba(0,0,0,.9),0 0 0 6px rgba(255,255,255,.02);transform:none}
.why .video__frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,0) 28%),linear-gradient(0deg,rgba(0,0,0,.28),rgba(0,0,0,0) 40%)}
.video__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s var(--ease)}
.video:hover .video__img{transform:scale(1.035)}
.why .video:hover .video__frame{transform:none}
.why .video__play{z-index:1;left:46%;top:34%;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 10px 30px rgba(0,0,0,.45)}
.video__cta{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.1rem;min-height:44px;font-size:.95rem;font-weight:500;color:var(--muted-d);border-bottom:1px solid rgba(231,205,144,.4);transition:color .3s,border-color .3s}
.video__cta svg{width:16px;height:16px;fill:none;stroke:var(--champ);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--ease)}
.video:hover .video__cta{color:#fff;border-color:var(--champ)}
.video:hover .video__cta svg{transform:translate(2px,-2px)}
.video:focus-visible{outline-offset:6px;border-radius:24px}
.h2--sm{font-size:clamp(1.9rem,4vw,3rem);margin-bottom:1.5rem}
.meet__text p{color:var(--muted-d);font-size:1.06rem}
.meet__text .lead{color:#fff;font-size:clamp(1.2rem,2vw,1.4rem)}
.meet__text strong{color:#fff}
.credential{display:flex;align-items:center;gap:1.1rem;margin:1.6rem 0;padding:.9rem 1.2rem .9rem .9rem;border:1px solid var(--line-d);border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01))}
.credential__logo{flex:none;display:grid;place-items:center;width:104px;height:80px;padding:.45rem;border-radius:12px;background:#FAF8F4}
.credential__logo img{width:100%;height:auto}
.meet__text .credential p{margin:0;font-size:.98rem}
.why .conviction{margin:1.8rem 0;padding:1.2rem 0 1.2rem 1.4rem;border-left-color:var(--champ-2)}
.why .conviction__lbl{color:var(--champ)}
.why .conviction__q{color:#fff;font-size:clamp(1.4rem,2.6vw,1.9rem)}
.why .conviction__q em{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.meet__text .meet__last{color:#fff;font-weight:600;margin-bottom:0}
.creator{padding:clamp(4rem,8vw,6.5rem) 0}
.creator .free{margin-top:0}
@media (max-width:480px){
  .credential{gap:.9rem;padding:.8rem}
  .credential__logo{width:84px;height:66px}
  .meet__text .credential p{font-size:.94rem}
  .why .video__frame{border-radius:16px}
}
@media (min-width:960px){
  .why__head{grid-template-columns:1fr 1fr;gap:4rem;align-items:end}
  .meet{grid-template-columns:1.25fr 1fr;gap:4.5rem;align-items:start}
  .meet__media{position:sticky;top:2.5rem}
}

/* ---------- FAQ : cartes claires, question ouverte en noir laqué ---------- */
.faq{background:var(--ivory);padding:clamp(4.5rem,9vw,7.5rem) 0}
.faq__head .h2{max-width:none}

/* ---------- Accroche du premier écran ---------- */
.topbar{min-height:64px}
.hero .eyebrow--hero{display:flex;align-items:center;gap:.85rem;max-width:34rem;margin-bottom:1.8rem;font-size:clamp(.84rem,1.05vw,.98rem);line-height:1.45;letter-spacing:.16em;font-weight:600;color:#F2E3BD;text-wrap:balance;text-shadow:0 1px 12px rgba(0,0,0,.6)}
.hero .eyebrow--hero::before{flex:none;width:34px;height:1.5px;background:linear-gradient(90deg,#F3DFA6,#B08A45)}
@media (max-width:480px){
  .hero .eyebrow--hero{font-size:.8rem;letter-spacing:.13em;gap:.7rem;margin-bottom:1.4rem;max-width:20rem}
  .hero .eyebrow--hero::before{width:24px}
}

/* ---------- Pages légales ---------- */
.legal-page{background:var(--ivory);min-height:100vh;display:flex;flex-direction:column}
.legal-page .legal{flex:1}
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.3rem var(--pad);background-color:#050507;background-image:radial-gradient(ellipse 90% 120% at 50% -40%,rgba(255,255,255,.16),transparent 65%),linear-gradient(180deg,#0E0E11,#030304);border-bottom:1px solid rgba(201,169,97,.35)}
.legal-top .wordmark{text-decoration:none}
.legal-back{color:#D9D5CD;text-decoration:none;font-size:.9rem;font-weight:500;min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}
.legal-back:hover{color:#fff;border-color:var(--champ)}
.legal{padding:clamp(3.5rem,8vw,6rem) 0 clamp(4rem,9vw,7rem)}
.legal__wrap{max-width:820px}
.legal__title{font-weight:600;font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05;letter-spacing:-.04em;margin:0 0 2rem}
.legal__body{color:var(--muted);font-size:1.05rem;line-height:1.75}
.legal__body h2{font-size:1.35rem;font-weight:600;letter-spacing:-.02em;color:var(--text);margin:2.2rem 0 .8rem}
.legal__body a{color:var(--copper-d)}
.legal__pending{padding:1.4rem 1.5rem;border:1px solid var(--line);border-left:3px solid var(--champ-2);border-radius:14px;background:#fff;color:var(--text)}
.footer__links a[aria-current="page"]{color:#fff}
@media (min-width:960px){
  .faq__head{position:sticky;top:3rem;align-self:start}
  .faq__head .h2{font-size:clamp(2.4rem,3.5vw,3.3rem)}
}
.faq__head .h2 em{display:block}
.faq__list{display:grid;gap:.75rem}
.faq__item,.faq__item:last-child{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;transition:background-color .5s var(--ease),border-color .5s var(--ease),box-shadow .5s var(--ease)}
.faq__item:hover{border-color:rgba(134,100,43,.4)}
.faq__item summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.25rem 1.25rem 1.25rem 1.4rem;min-height:64px;font-size:clamp(1.05rem,1.8vw,1.22rem);font-weight:600;color:var(--text)}
.faq__item summary b{font-weight:600;font-size:.78rem;letter-spacing:.12em;color:var(--copper-d);font-variant-numeric:tabular-nums}
.faq__item summary i{width:36px;height:36px;border-color:var(--line)}
.faq__item summary:focus-visible{outline-offset:-3px;border-radius:18px}
.faq__item[open]{background-color:#060608;background-image:radial-gradient(ellipse 110% 60% at 20% -20%,rgba(255,255,255,.12),transparent 60%),linear-gradient(170deg,#17171B,#050506 70%);border-color:rgba(231,205,144,.35);box-shadow:0 26px 50px -30px rgba(0,0,0,.6)}
.faq__item[open] summary{color:#fff}
.faq__item[open] summary b{color:var(--champ)}
.faq__item[open] summary i{background:var(--gold);border-color:transparent}
.faq__item[open] summary i::before,.faq__item[open] summary i::after{background:#0A0A0C}
.faq__a{padding:0 1.4rem 1.5rem calc(1.4rem + 2.2rem);color:#D6D2CA;font-size:1.02rem;line-height:1.7}
.faq__a p{margin:0 0 .9em;max-width:62ch}
.faq__a p:last-child{margin-bottom:0}
@media (max-width:480px){
  .faq__item summary{gap:.75rem;padding:1.1rem 1rem 1.1rem 1.1rem}
  .faq__a{padding:0 1.1rem 1.3rem 1.1rem;font-size:1rem}
}
