/* ============================================================
   Body Artist Academy — feuille de style commune
   Tokens : crème #FDF8F3 · encre #1A0F0A · terracotta #E8621A
   Titres : Cormorant Garamond · Texte : Montserrat
   ============================================================ */

:root{
  --creme:#FDF8F3;
  --encre:#1A0F0A;
  --terracotta:#E8621A;
  --terracotta-doux:#C4622D;
  --peche:#F1A576;
  --sable:#F2E8DC;
  --sable-clair:#F8F0E6;
  --taupe:#8A7460;
  --soins:#B85C4A;
  --soins-tint:#F3E2DC;
  --formation:#9C6B2E;
  --formation-tint:#EFE3CE;
}

html{scroll-behavior:smooth}
body{margin:0;background:var(--creme);color:var(--encre);-webkit-font-smoothing:antialiased;font-family:Montserrat,sans-serif}
::selection{background:var(--terracotta);color:var(--creme)}
img{max-width:100%}
a{color:inherit}

/* ---------- typo utilitaires ---------- */
.serif{font-family:'Cormorant Garamond',serif;font-weight:400}
.kicker{margin:0 0 30px;font-family:Montserrat,sans-serif;font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--taupe)}
.body-text{font-family:Montserrat,sans-serif;font-size:15px;line-height:2.05;color:rgba(26,15,10,.66)}

/* ---------- animations ---------- */
@keyframes baaDraw{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
@keyframes baaMarquee{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}
@keyframes baaFadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes baaBreath{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.06}50%{transform:translate(-50%,-50%) scale(1.045);opacity:.09}}
@keyframes baaGlow{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.18);opacity:.85}}
@keyframes baaDrift1{0%,100%{transform:translate(0,0)}33%{transform:translate(70px,-50px)}66%{transform:translate(-50px,40px)}}
@keyframes baaDrift2{0%,100%{transform:translate(0,0)}40%{transform:translate(-80px,60px)}75%{transform:translate(50px,-40px)}}
@keyframes baaRing{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes baaScrollHint{0%,100%{opacity:.35;transform:translate(-50%,0)}50%{opacity:.7;transform:translate(-50%,7px)}}

[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1.4s cubic-bezier(.45,0,.2,1),transform 1.4s cubic-bezier(.45,0,.2,1)}
[data-reveal].on{opacity:1;transform:none}
[data-strokes] path{stroke-dasharray:600;stroke-dashoffset:600}
[data-strokes].on path{animation:baaDraw 2.6s cubic-bezier(.45,0,.2,1) forwards}

@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ---------- bandeau fin ---------- */
.topbar{border-bottom:1px solid rgba(26,15,10,.08);background:var(--creme)}
.topbar p{margin:0;text-align:center;font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--taupe);padding:11px 24px}

/* ---------- header clair ---------- */
.hdr{position:sticky;top:0;z-index:80;background:rgba(253,248,243,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(26,15,10,.06)}
.hdr-in{max-width:1320px;margin:0 auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;height:92px;gap:24px}
.hdr a{white-space:nowrap}
.hdr-nav{display:flex;align-items:center;gap:clamp(13px,1.8vw,36px);flex-wrap:nowrap}
.hdr-in>a:first-child{flex:0 0 auto}
.nav-link{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(26,15,10,.75);text-decoration:none;transition:color .3s}
.nav-link:hover{color:var(--terracotta-doux)}
.nav-link.active{color:var(--terracotta-doux);border-bottom:1px solid rgba(196,98,45,.4);padding-bottom:4px}
.hdr-cta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--encre);text-decoration:none;border-bottom:1px solid var(--terracotta-doux);padding-bottom:5px;transition:color .3s}
.hdr-cta:hover{color:var(--terracotta-doux)}

/* ---------- header sombre (accueil) ---------- */
.hdr-dark{position:sticky;top:0;z-index:80;background:rgba(26,15,10,.75);backdrop-filter:blur(12px);border-bottom:1px solid rgba(253,248,243,.08)}
.hdr-dark .hdr-in{max-width:1400px;height:88px}
.hdr-dark .nav-link{font-size:10.5px;letter-spacing:.2em;color:rgba(253,248,243,.65)}
.hdr-dark .nav-link:hover{color:var(--peche)}
.hdr-dark .hdr-cta{color:var(--creme);border:1px solid rgba(253,248,243,.4);border-bottom:1px solid rgba(253,248,243,.4);border-radius:999px;padding:12px 26px;transition:all .4s}
.hdr-dark .hdr-cta:hover{background:var(--terracotta);border-color:var(--terracotta);color:var(--creme)}

/* ---------- burger mobile ---------- */
.burger{display:none;background:none;border:none;cursor:pointer;padding:10px;flex-direction:column;gap:5px}
.burger span{display:block;width:24px;height:1.5px;background:var(--encre);transition:all .3s}
.hdr-dark .burger span{background:var(--creme)}
.mobile-menu{display:none;flex-direction:column;gap:0;background:var(--creme);border-bottom:1px solid rgba(26,15,10,.08);padding:10px 28px 26px}
.mobile-menu.open{display:flex}
.mobile-menu a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--encre);text-decoration:none;padding:15px 4px;border-bottom:1px solid rgba(26,15,10,.06)}
.hdr-dark + .mobile-menu{background:#1A0F0A}
.hdr-dark + .mobile-menu a{color:rgba(253,248,243,.85);border-bottom-color:rgba(253,248,243,.08)}

/* ---------- boutons ---------- */
.btn{display:inline-block;font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-radius:999px;padding:17px 38px;transition:all .4s;cursor:pointer;text-align:center}
.btn-cream{color:var(--encre);background:var(--creme);border:1px solid var(--creme)}
.btn-cream:hover{background:var(--terracotta);border-color:var(--terracotta);color:var(--creme)}
.btn-outline-cream{color:var(--creme);background:transparent;border:1px solid rgba(253,248,243,.45)}
.btn-outline-cream:hover{border-color:var(--peche);color:var(--peche)}
.btn-soins{color:var(--creme);background:var(--soins);border:1px solid var(--soins)}
.btn-soins:hover{background:var(--encre);border-color:var(--encre)}
.btn-outline-soins{color:var(--soins);background:transparent;border:1px solid var(--soins)}
.btn-outline-soins:hover{background:var(--soins);color:var(--creme)}
.btn-formation{color:var(--creme);background:var(--formation);border:1px solid var(--formation)}
.btn-formation:hover{background:var(--encre);border-color:var(--encre)}
.btn-outline-formation{color:var(--formation);background:transparent;border:1px solid var(--formation)}
.btn-outline-formation:hover{background:var(--formation);color:var(--creme)}
.btn-ink{color:var(--creme);background:var(--encre);border:1px solid var(--encre)}
.btn-ink:hover{background:var(--terracotta-doux);border-color:var(--terracotta-doux)}
.link-tt{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--terracotta-doux);text-decoration:none;border-bottom:1px solid rgba(196,98,45,.4);padding-bottom:5px}

.lift{transition:transform .6s cubic-bezier(.45,0,.2,1)}
.lift:hover{transform:translateY(-6px)}

/* ---------- rangées de liste ---------- */
.list-row{border-bottom:1px solid rgba(26,15,10,.12);text-decoration:none;transition:background .5s,padding-left .5s;cursor:pointer}
.list-row:hover{background:var(--sable-clair);padding-left:30px}

/* ---------- avis Google ---------- */
.stars{color:#F5B301;font-size:20px;letter-spacing:4px}
.g-badge{display:inline-flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.06em;color:var(--encre);text-decoration:none;border:1px solid rgba(26,15,10,.14);border-radius:999px;padding:12px 24px;transition:all .4s;background:var(--creme)}
.g-badge:hover{border-color:var(--terracotta-doux)}
.g-badge .stars{font-size:14px;letter-spacing:2px}

/* ---------- formulaires ---------- */
input,select,textarea{font-family:Montserrat,sans-serif;font-size:13.5px;color:var(--encre);background:var(--creme);border:1px solid rgba(26,15,10,.14);padding:15px 18px;outline:none;width:100%;box-sizing:border-box;border-radius:0}
input:focus,select:focus,textarea:focus{border-color:var(--formation)}
input::placeholder,textarea::placeholder{color:var(--taupe);opacity:.7}
select{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#8A7460 50%),linear-gradient(135deg,#8A7460 50%,transparent 50%);background-position:calc(100% - 24px) 50%,calc(100% - 18px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.form-label{margin:0 0 10px;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--taupe)}
.radio-row{display:flex;gap:10px;flex-wrap:wrap}
.radio-row label{flex:1;min-width:140px}
.radio-row input{display:none}
.radio-row span{display:block;text-align:center;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:14px 10px;border:1px solid rgba(26,15,10,.16);color:rgba(26,15,10,.65);cursor:pointer;transition:all .35s}
.radio-row input:checked + span{background:var(--formation);color:var(--creme);border-color:var(--formation)}

/* ---------- bouton flottant diagnostic ---------- */
.quiz-fab{position:fixed;bottom:22px;right:22px;z-index:95;display:flex;align-items:center;gap:10px;background:#1A0F0A;color:#FDF8F3;text-decoration:none;font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:15px 24px;border-radius:999px;box-shadow:0 12px 34px rgba(26,15,10,.28);transition:transform .3s,background .3s;opacity:0;transform:translateY(14px);pointer-events:none}
.quiz-fab.on{opacity:1;transform:none;pointer-events:auto}
.quiz-fab:hover{background:#C4622D}
.quiz-fab .dot{width:8px;height:8px;border-radius:50%;background:#E8621A;flex-shrink:0;animation:fabPulse 2s ease-in-out infinite}
@keyframes fabPulse{0%,100%{box-shadow:0 0 0 0 rgba(232,98,26,.5)}50%{box-shadow:0 0 0 7px rgba(232,98,26,0)}}
@media (max-width:600px){.quiz-fab{left:18px;right:18px;justify-content:center;bottom:16px}}

/* ---------- offre visio ---------- */
.visio-offer{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:#FDF3E7;border:1px solid rgba(232,98,26,.3);padding:16px 20px;text-align:left}
.visio-offer .pill{background:#E8621A;color:#FDF8F3;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:999px;white-space:nowrap;flex-shrink:0}
.visio-offer p{margin:0;min-width:0;flex:1 1 260px;font-size:12.5px;line-height:1.7;color:rgba(26,15,10,.75);overflow-wrap:anywhere}
/* mobile : la pastille passe au-dessus du texte, sinon le texte déborde de l'écran */
@media (max-width:640px){
  .visio-offer{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 16px}
  .visio-offer .pill{white-space:normal}
  .visio-offer p{flex:1 1 auto;font-size:13px}
}

/* ---------- bande de chiffres (accueil) ---------- */
.stats-row{display:grid;grid-template-columns:repeat(3,auto);justify-content:center}
/* mobile : les 3 colonnes s'empilent, sinon elles débordent de l'écran.
   Le second sélecteur vise la version encore en ligne, où la grille est
   définie en style inline — il devient inutile une fois index.html déployé. */
@media (max-width:640px){
  .stats-row,
  div[data-reveal][style*="repeat(3,auto)"]{grid-template-columns:1fr!important;justify-content:stretch!important;gap:32px}
  .stats-row > div,
  div[data-reveal][style*="repeat(3,auto)"] > div{border-right:0!important;padding:0 12px!important}
}

/* ============================================================
   BOUTIQUE
   ============================================================ */
.kit-card{background:#fff;border:1px solid rgba(26,15,10,.12);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .5s cubic-bezier(.45,0,.2,1),box-shadow .5s}
.kit-card:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(26,15,10,.1)}
.kit-card.star{border:2px solid #C4622D;box-shadow:0 22px 60px rgba(196,98,45,.15)}
.kit-card .visu{aspect-ratio:4/3;position:relative;overflow:hidden;background:var(--sable)}
.kit-card .visu img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kit-card .badge{position:absolute;top:14px;left:14px;background:#1A0F0A;color:#FDF8F3;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;padding:8px 14px;z-index:2}
.kit-card.star .badge{background:#C4622D}
.kit-card .eco{position:absolute;top:14px;right:14px;background:#FDF8F3;color:#C4622D;font-size:11px;font-weight:600;letter-spacing:.04em;padding:8px 13px;border-radius:999px;z-index:2;box-shadow:0 4px 14px rgba(26,15,10,.12)}
.kit-card .corps{padding:28px 28px 30px;display:flex;flex-direction:column;flex:1}
.kit-card ul{list-style:none;margin:0 0 22px;padding:0;flex:1}
.kit-card li{font-size:12.5px;line-height:1.65;color:rgba(26,15,10,.72);padding:7px 0 7px 22px;position:relative}
.kit-card li::before{content:"✓";position:absolute;left:0;color:#C4622D;font-weight:600}
.prix-bloc{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 6px}
.prix-bloc .now{font-family:'Cormorant Garamond',serif;font-size:40px;color:#C4622D;line-height:1}
.prix-bloc .was{font-size:15px;color:#8A7460;text-decoration:line-through}
.prix-note{margin:0 0 20px;font-size:11.5px;color:#8A7460}

.prod-card{background:#fff;border:1px solid rgba(26,15,10,.09);display:flex;flex-direction:column;position:relative;transition:border-color .3s}
.prod-card:hover{border-color:rgba(196,98,45,.5)}
.prod-card .visu{aspect-ratio:1/1;position:relative;overflow:hidden;background:var(--sable)}
.prod-card .visu img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prod-card .flag{position:absolute;top:10px;left:10px;background:#C4622D;color:#FDF8F3;font-size:9px;letter-spacing:.16em;text-transform:uppercase;padding:6px 11px;z-index:2}
.prod-card .corps{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1}
.prod-card .kit-hint{margin:0 0 14px;font-size:11px;line-height:1.6;color:#8A7460;background:#F8F0E6;padding:8px 11px}
.prod-card .kit-hint a{color:#C4622D;text-decoration:none}

.btn-add{font-family:Montserrat,sans-serif;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#FDF8F3;background:#1A0F0A;border:1px solid #1A0F0A;border-radius:999px;padding:13px 22px;cursor:pointer;transition:all .35s;width:100%}
.btn-add:hover{background:#C4622D;border-color:#C4622D}

/* réassurance */
.trust-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px;background:rgba(26,15,10,.1);border:1px solid rgba(26,15,10,.1)}
.trust-band > div{background:#FDF8F3;padding:26px 22px;text-align:center}
.trust-band p{margin:0}
.trust-band .t{font-size:12.5px;font-weight:600;color:#1A0F0A;margin-bottom:5px}
.trust-band .s{font-size:11.5px;line-height:1.6;color:#8A7460}

/* panier */
.cart-btn{position:fixed;top:auto;bottom:88px;right:22px;z-index:96;width:56px;height:56px;border-radius:50%;background:#C4622D;color:#FDF8F3;border:none;cursor:pointer;box-shadow:0 12px 30px rgba(196,98,45,.35);display:none;align-items:center;justify-content:center;font-size:21px;transition:transform .3s}
.cart-btn.on{display:flex}
.cart-btn:hover{transform:scale(1.06)}
.cart-count{position:absolute;top:-4px;right:-4px;background:#1A0F0A;color:#FDF8F3;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;min-width:22px;height:22px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 5px}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:#FDF8F3;z-index:110;transform:translateX(105%);transition:transform .45s cubic-bezier(.45,0,.2,1);display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(26,15,10,.18)}
.cart-drawer.on{transform:none}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:26px 26px 18px;border-bottom:1px solid rgba(26,15,10,.1)}
.cart-head button{background:none;border:none;font-size:19px;cursor:pointer;color:#8A7460}
.cart-ship{padding:16px 26px 0}
.cart-ship .ship-txt,.cart-ship .ship-ok{margin:0 0 9px;font-size:12px;color:rgba(26,15,10,.7)}
.cart-ship .ship-ok{color:#2E7D46;font-weight:600}
.ship-bar{height:5px;background:rgba(26,15,10,.1);overflow:hidden}
.ship-bar i{display:block;height:100%;background:#C4622D;transition:width .4s}
.cart-lines{flex:1;overflow-y:auto;padding:18px 26px}
.cart-line{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid rgba(26,15,10,.07)}
.cart-qte{display:flex;align-items:center;gap:11px}
.cart-qte button{width:26px;height:26px;border:1px solid rgba(26,15,10,.18);background:none;cursor:pointer;font-size:14px;color:#1A0F0A;line-height:1}
.cart-qte span{font-size:13px;min-width:14px;text-align:center}
.cart-upsell{margin:0 26px 14px;background:#F8F0E6;border:1px solid rgba(196,98,45,.28);padding:16px 18px;display:flex;gap:12px;align-items:center}
.cart-upsell p{margin:0;flex:1;font-size:11.5px;line-height:1.65;color:rgba(26,15,10,.75)}
.cart-upsell button{background:#C4622D;color:#FDF8F3;border:none;font-family:Montserrat,sans-serif;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:10px 15px;border-radius:999px;cursor:pointer;white-space:nowrap}
.cart-foot{padding:20px 26px 26px;border-top:1px solid rgba(26,15,10,.1);background:#FDF8F3}
.cart-total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px;font-size:13px;letter-spacing:.06em;color:#8A7460}
.cart-total strong{font-family:'Cormorant Garamond',serif;font-size:30px;color:#1A0F0A}
.cart-veil{position:fixed;inset:0;background:rgba(26,15,10,.4);z-index:105;opacity:0;pointer-events:none;transition:opacity .4s}
.cart-veil.on{opacity:1;pointer-events:auto}
@media (max-width:600px){.cart-btn{bottom:82px;right:18px}}

/* ---------- footer ---------- */
.footer{background:var(--encre);color:var(--creme)}
.footer-in{max-width:1320px;margin:0 auto;padding:90px 48px 70px;display:grid;grid-template-columns:1.6fr 1fr 1.2fr;gap:56px}
.footer .f-label{margin:0 0 24px;font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,248,243,.45)}
.footer .f-col{display:flex;flex-direction:column;gap:14px}
.footer .f-col a,.footer .f-col span{font-size:13px;color:rgba(253,248,243,.85);text-decoration:none;display:flex;align-items:center;min-height:44px}
.footer .f-col a:hover{color:var(--peche)}
.footer-legal{border-top:1px solid rgba(253,248,243,.1)}
.footer-legal-in{max-width:1320px;margin:0 auto;padding:26px 48px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:11px;color:rgba(253,248,243,.45)}
.footer-legal-in a{color:rgba(253,248,243,.45);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.footer-legal-in a:hover{color:var(--peche)}

/* ---------- grilles responsives ---------- */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;align-items:start}
.grid-split{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
.grid-detail{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}

/* ---------- responsive ---------- */
@media (max-width:1280px){.hdr-cta.hide-narrow{display:none}}
@media (max-width:1120px){.hdr-nav .nav-link{letter-spacing:.11em;font-size:10px}}
@media (max-width:900px){
  .hdr-nav,.hdr .hdr-cta,.hdr-dark .hdr-cta{display:none}
  .burger{display:flex}
  .hdr-in{padding:0 28px;height:76px}
  .grid-2,.grid-3,.grid-split,.grid-detail{grid-template-columns:1fr;gap:48px}
  .grid-3 > *{margin-top:0!important}
  .footer-in{grid-template-columns:1fr;padding:64px 28px 48px;gap:44px}
  .footer-legal-in{padding:22px 28px}
  section{padding-left:28px!important;padding-right:28px!important}
  .sticky-side{position:static!important}
}

/* ---------- accessibilité : focus clavier visible ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--terracotta);outline-offset:3px}

/* ---------- bandeau de consentement cookies (CNIL) ---------- */
.baa-consent{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:#1A0F0A;color:#FDF8F3;
  box-shadow:0 -18px 50px rgba(26,15,10,.28);transform:translateY(110%);transition:transform .45s cubic-bezier(.22,1,.36,1)}
.baa-consent.on{transform:translateY(0)}
.baa-consent-in{max-width:1180px;margin:0 auto;padding:24px 48px;display:flex;gap:40px;align-items:center;justify-content:space-between}
.baa-consent-t{margin:0 0 6px;font-family:'Cormorant Garamond',serif;font-size:20px;line-height:1.3;color:#F1A576}
.baa-consent-p{margin:0;font-size:12.5px;line-height:1.85;color:rgba(253,248,243,.72);max-width:720px}
.baa-consent-p a{color:#F1A576;text-decoration:underline;text-underline-offset:3px}
.baa-consent-btn{display:flex;gap:12px;flex-shrink:0}
.baa-consent-btn button{font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  padding:15px 30px;border:1px solid rgba(253,248,243,.35);cursor:pointer;transition:all .3s;min-height:48px;white-space:nowrap}
.baa-c-no{background:transparent;color:rgba(253,248,243,.85)}
.baa-c-no:hover{background:rgba(253,248,243,.1);color:#FDF8F3}
.baa-c-ok{background:#FDF8F3;color:#1A0F0A;border-color:#FDF8F3}
.baa-c-ok:hover{background:#F1A576;border-color:#F1A576}
@media (max-width:900px){
  .baa-consent-in{flex-direction:column;align-items:stretch;gap:20px;padding:24px 28px}
  .baa-consent-btn button{flex:1;padding:15px 18px}
}

/* ---------- pages de capture des guides gratuits ---------- */
.lp-hdr{background:#1A0F0A;padding:22px 48px;display:flex;align-items:center;justify-content:space-between}
.lp-hdr img{height:32px;width:auto;display:block}
.lp-hdr a.retour{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(253,248,243,.5);text-decoration:none}
.lp-hdr a.retour:hover{color:#F1A576}
.lp-hero{background:#1A0F0A;color:#FDF8F3;padding:70px 48px 90px;position:relative;overflow:hidden}
.lp-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;position:relative}
.lp-hero h1{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(34px,4.4vw,58px);line-height:1.08;margin:0 0 22px;color:#FDF8F3;text-wrap:balance}
.lp-hero h1 em{color:#F1A576;font-style:italic}
.lp-hero .sous{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;line-height:1.55;color:rgba(253,248,243,.8);margin:0 0 30px}
.lp-cover{position:relative}
.lp-cover img{width:100%;display:block;box-shadow:0 40px 90px rgba(0,0,0,.5);border:1px solid rgba(253,248,243,.1)}
.lp-cover .tag{position:absolute;top:-14px;left:-14px;background:#C4622D;color:#FDF8F3;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:9px 16px}
.lp-form{background:rgba(253,248,243,.05);border:1px solid rgba(253,248,243,.16);padding:30px 30px 26px}
.lp-form .lbl{font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:#F1A576;margin:0 0 8px}
.lp-form input[type=text],.lp-form input[type=email]{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(253,248,243,.3);color:#FDF8F3;font-family:Montserrat,sans-serif;font-size:14px;padding:11px 0;margin-bottom:20px;min-height:44px}
.lp-form input::placeholder{color:rgba(253,248,243,.35)}
.lp-form input:focus{outline:none;border-bottom-color:#F1A576}
.lp-form .rgpd{display:flex;gap:11px;align-items:flex-start;margin:4px 0 22px}
.lp-form .rgpd input{margin-top:3px;flex-shrink:0;width:16px;height:16px;accent-color:#C4622D}
.lp-form .rgpd span{font-size:11px;line-height:1.7;color:rgba(253,248,243,.6)}
.lp-form .rgpd a{color:#F1A576}
.lp-form button{width:100%;background:#FDF8F3;color:#1A0F0A;border:none;font-family:Montserrat,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:17px;cursor:pointer;transition:background .3s;min-height:48px}
.lp-form button:hover{background:#F1A576}
.lp-form .note{margin:14px 0 0;text-align:center;font-size:10.5px;line-height:1.6;color:rgba(253,248,243,.4)}
.lp-som{display:flex;gap:18px;align-items:flex-start;padding:17px 0;border-bottom:1px solid rgba(26,15,10,.1)}
.lp-som .n{font-family:'Cormorant Garamond',serif;font-size:22px;color:#C4622D;min-width:30px;line-height:1.2}
.lp-som p{margin:0;font-size:13.5px;line-height:1.75;color:rgba(26,15,10,.75)}
@media (max-width:900px){
  .lp-grid{grid-template-columns:1fr;gap:44px}
  .lp-cover{max-width:300px;margin:0 auto;order:-1}
  .lp-hdr{padding:18px 28px}
  .lp-hero{padding:48px 28px 64px}
}

/* ── Accordéon FAQ — partagé : formations, boutique, cercle ────────────── */
.faq-item{border-bottom:1px solid rgba(26,15,10,.12)}
.faq-item summary{cursor:pointer;padding:26px 8px;font-family:'Cormorant Garamond',serif;font-size:22px;color:#1A0F0A;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";color:#C4622D;font-size:26px;font-family:'Cormorant Garamond',serif;flex-shrink:0}
.faq-item[open] summary::after{content:"\2013"}
.faq-item p{margin:0;padding:0 8px 26px;font-size:13.5px;line-height:2;color:rgba(26,15,10,.68)}
@media (max-width:640px){
  .faq-item summary{font-size:18px;padding:20px 4px}
  .faq-item p{padding:0 4px 20px;font-size:13px}
}


/* ── Menu déroulant « Masterclass » ─────────────────────────────────────── */
.nav-drop{position:relative;display:inline-flex;align-items:center;white-space:nowrap;flex:0 0 auto;
  padding-bottom:14px;margin-bottom:-14px}
.nav-drop>.nav-link::after{content:"";display:inline-block;width:4.5px;height:4.5px;margin-left:5px;
  border-right:1.3px solid currentColor;border-bottom:1.3px solid currentColor;
  transform:translateY(-2px) rotate(45deg);opacity:.5;
  transition:transform .2s ease,opacity .2s ease}
.nav-drop:hover>.nav-link::after,.nav-drop:focus-within>.nav-link::after{
  opacity:1;transform:translateY(1px) rotate(225deg)}
.nav-sub{position:absolute;top:100%;left:50%;z-index:130;min-width:242px;
  transform:translateX(-50%) translateY(8px);
  background:#FDF8F3;border:1px solid rgba(26,15,10,.12);
  box-shadow:0 20px 48px rgba(26,15,10,.18);padding:8px;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s}
.nav-drop:hover .nav-sub,.nav-drop:focus-within .nav-sub{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-sub a{display:block;padding:11px 14px;text-decoration:none;transition:background .15s ease}
.nav-sub a:hover{background:#F2E8DC}
.nav-sub b{display:block;font-size:12.5px;font-weight:600;letter-spacing:.02em;color:#1A0F0A}
.nav-sub i{display:block;margin-top:3px;font-size:10.5px;line-height:1.55;font-style:normal;color:#8A7460}
.hdr-dark .nav-sub{background:#241610;border-color:rgba(253,248,243,.16)}
.hdr-dark .nav-sub a:hover{background:rgba(253,248,243,.08)}
.hdr-dark .nav-sub b{color:#FDF8F3}
.hdr-dark .nav-sub i{color:rgba(253,248,243,.62)}
.mobile-menu a.sub{padding-left:34px;font-size:13px;opacity:.82;position:relative}
.mobile-menu a.sub::before{content:"";position:absolute;left:16px;top:50%;width:10px;height:1px;
  background:currentColor;opacity:.45}
@media(max-width:900px){.nav-drop{padding-bottom:0;margin-bottom:0}.nav-sub{display:none}}

/* Le menu complet ne tient plus sous ~1010 px depuis l'ajout du déroulant :
   on bascule sur le burger un peu plus tôt qu'avant. */
@media (max-width:1010px){
  .hdr-nav,.hdr .hdr-cta,.hdr-dark .hdr-cta{display:none}
  .burger{display:flex}
}
