/* ============================================================
   BODYTIME — thème global (header, footer, skin des pages PS)
   Sombre par défaut ; clair via html[data-theme="light"]
   ============================================================ */
:root{
  --bt-gold:#E3C045;--bt-gold-hi:#F2D873;--bt-pink:#D4537E;
  --bt-disp:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --bt-body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --bt-page:#1d232d;--bt-panel:#2b3340;--bt-ink:#F6F4EE;--bt-head:#ffffff;
  --bt-soft:#c7cad1;--bt-muted:#9CA1AB;--bt-line:rgba(255,255,255,.10);
  --bt-footer:#070809;--bt-headerbg:rgba(7,8,12,.98);
  --bt-input:rgba(255,255,255,.05);
}
html[data-theme="light"]{
  --bt-page:#F4F5F8;--bt-panel:#ffffff;--bt-ink:#20242c;--bt-head:#12151b;
  --bt-soft:#3d434c;--bt-muted:#5b616b;--bt-line:rgba(0,0,0,.10);
  --bt-footer:#eceef2;--bt-headerbg:rgba(255,255,255,.98);
  --bt-input:rgba(0,0,0,.04);
}

/* ---------- page de base : toutes les pages front ---------- */
body.bt-core,body#index{background:var(--bt-page) !important;color:var(--bt-ink);transition:background .25s,color .25s}
body.bt-core #wrapper,body.bt-core #content-wrapper,body.bt-core #main{background:transparent !important}
body.bt-core #wrapper{padding-top:0}
/* accueil : wrappers du thème transparents -> les gouttières prennent la couleur du thème
   (le contenu, lui, reste encadré/centré) */
body#index #wrapper,body#index #content-wrapper,body#index #main,body#index #content{background:transparent !important}
body#index #wrapper{padding-top:0}
/* le tunnel de commande garde son rendu d'origine (zone de paiement sensible) */
body#checkout,body#order-confirmation{background:#fff !important;color:#212529}

/* ---------- gouttières : conteneurs CE en pleine largeur (pas de hack vw) ---------- */
#bt-header,#bt-footer,#bt-root{width:100%}
#bt-root{background:var(--bt-page)}
[data-elementor-type="header"] .elementor-container,
[data-elementor-type="footer"] .elementor-container{max-width:100% !important;width:100%}
/* trustboxes du module PS injectées hors de notre footer (ancres de l'ancienne home
   disparues -> elles atterrissaient en haut de page) : masquées, sauf la nôtre et
   le badge flottant (position:fixed, géré en JS) */
.trustpilot-widget{display:none}
#bt-footer .trustpilot-widget{display:block}
/* neutralise paddings/fonds des conteneurs CE autour de nos widgets */
[data-elementor-type="header"] .elementor-section,[data-elementor-type="footer"] .elementor-section,
[data-elementor-type="page-index"] .elementor-section{padding:0 !important;background:transparent !important}
[data-elementor-type="header"] .elementor-widget-container,[data-elementor-type="footer"] .elementor-widget-container,
[data-elementor-type="page-index"] .elementor-widget-container{margin:0 !important;padding:0 !important}
[data-elementor-type="header"] .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated,
[data-elementor-type="footer"] .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated,
[data-elementor-type="page-index"] .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:0 !important}
[data-elementor-type="page-index"]{background:var(--bt-page)}

/* ============================================================
   HEADER
   ============================================================ */
#bt-header{position:relative;z-index:1000;background:var(--bt-headerbg);
  border-bottom:1px solid var(--bt-line);font-family:var(--bt-body)}
#bt-header *{box-sizing:border-box}
#bt-header .bthd-in{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,40px);
  display:flex;align-items:center;justify-content:space-between;gap:18px;height:62px}
#bt-header .bthd-logo{display:flex;align-items:center;flex:0 0 auto}
#bt-header .bthd-logo img{height:26px;width:auto;display:block;filter:invert(1)}
html[data-theme="light"] #bt-header .bthd-logo img{filter:none}
#bt-header nav.bthd-nav{display:flex;gap:24px;font-size:14px;color:var(--bt-soft)}
#bt-header nav.bthd-nav a{color:var(--bt-soft);text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent;transition:.2s}
#bt-header nav.bthd-nav a:hover{color:var(--bt-head);border-color:var(--bt-gold)}
#bt-header .bthd-r{display:flex;align-items:center;gap:14px}
#bt-header .bthd-sec{font-size:13px;color:var(--bt-muted);text-decoration:none;white-space:nowrap;transition:.2s}
#bt-header .bthd-sec:hover{color:var(--bt-gold)}
#bt-header .bthd-theme{display:inline-flex;align-items:center;gap:7px;background:none;border:1px solid var(--bt-line);
  color:var(--bt-ink);border-radius:999px;padding:8px 13px;font-size:13px;font-weight:600;font-family:var(--bt-body);cursor:pointer;transition:.2s;white-space:nowrap}
#bt-header .bthd-theme:hover{border-color:var(--bt-gold);color:var(--bt-gold)}
#bt-header .bthd-cart{display:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;
  border:1px solid var(--bt-line);color:var(--bt-ink);transition:.2s;flex:0 0 auto;text-decoration:none}
#bt-header .bthd-cart svg{width:19px;height:19px}
#bt-header .bthd-cart:hover{border-color:var(--bt-gold);color:var(--bt-gold)}
#bt-header .bthd-cta{font-weight:600;font-size:13.5px;color:#0b0d11;background:var(--bt-gold);
  padding:10px 18px;border-radius:999px;white-space:nowrap;transition:.2s;text-decoration:none}
#bt-header .bthd-cta:hover{background:var(--bt-gold-hi)}
#bt-header .bthd-burger{display:none;font-size:24px;background:none;border:0;color:var(--bt-ink);cursor:pointer;padding:6px}
/* menu mobile */
#bt-header .bthd-m{display:none;flex-direction:column;border-top:1px solid var(--bt-line);
  background:var(--bt-headerbg);padding:10px clamp(16px,4vw,40px) 18px}
#bt-header .bthd-m.open{display:flex}
#bt-header .bthd-m a{color:var(--bt-ink);text-decoration:none;padding:12px 2px;font-size:15px;border-bottom:1px solid var(--bt-line)}
#bt-header .bthd-m a:last-child{border-bottom:0}
#bt-header .bthd-m a:hover{color:var(--bt-gold)}
/* nouveau header partout ; burger sur mobile */
@media(max-width:920px){
  #bt-header nav.bthd-nav,#bt-header .bthd-sec,#bt-header .bthd-cta{display:none}
  #bt-header .bthd-burger{display:block}
}
@media(min-width:921px){#bt-header .bthd-m{display:none !important}}
/* fallback classes de visibilité Elementor (au cas où le CSS CE ne les définit pas) */
@media(min-width:1025px){.elementor-hidden-desktop{display:none !important}}
@media(min-width:768px) and (max-width:1024px){.elementor-hidden-tablet{display:none !important}}
@media(max-width:767px){.elementor-hidden-phone{display:none !important}}

/* ============================================================
   FOOTER
   ============================================================ */
#bt-footer{background:var(--bt-footer);border-top:1px solid var(--bt-line);
  padding:54px 0 30px;margin-top:40px;font-family:var(--bt-body);color:var(--bt-ink)}
#bt-footer *{box-sizing:border-box}
#bt-footer .btft-in{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
#bt-footer .btft-grid{display:grid;grid-template-columns:1.2fr .85fr 1.5fr 1.1fr;gap:30px}
#bt-footer .btft-logo{width:112px;height:auto;margin-bottom:14px}
html[data-theme="light"] #bt-footer .btft-logo{filter:invert(1)}
#bt-footer h5{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bt-muted);margin:0 0 16px;font-weight:700}
#bt-footer h5 a{color:inherit;text-decoration:none}#bt-footer h5 a:hover{color:var(--bt-gold)}
#bt-footer .btft-blog{margin:16px 0 0}
#bt-footer p{color:var(--bt-muted);font-size:13.5px;max-width:34ch;margin:0}
#bt-footer .btft-col a{display:block;color:var(--bt-soft);font-size:14px;padding:6px 0;text-decoration:none;transition:.15s}
#bt-footer .btft-col a:hover{color:var(--bt-gold)}
#bt-footer .btft-sub{display:block;font-size:12.5px;font-weight:700;color:var(--bt-head);margin:0 0 8px}
#bt-footer .btft-cols2{display:flex;gap:30px;flex-wrap:wrap}
#bt-footer .btft-soc{display:flex;gap:12px;margin-top:16px}
#bt-footer .btft-soc a{width:38px;height:38px;border-radius:50%;border:1px solid var(--bt-line);display:flex;align-items:center;justify-content:center;color:var(--bt-soft);transition:.2s;padding:0}
#bt-footer .btft-soc a:hover{border-color:var(--bt-gold);color:var(--bt-gold)}
#bt-footer .btft-soc svg{width:18px;height:18px;fill:currentColor}
#bt-footer .btft-tp{margin-top:36px;padding-top:26px;border-top:1px solid var(--bt-line);display:flex;justify-content:center}
#bt-footer .btft-tp .trustpilot-widget{width:100%;max-width:520px}
#bt-footer .btft-legal{border-top:1px solid var(--bt-line);margin-top:36px;padding-top:20px;text-align:center;color:var(--bt-muted);font-size:12.5px;line-height:2}
#bt-footer .btft-legal a{color:var(--bt-muted);text-decoration:none}
#bt-footer .btft-legal a:hover{color:var(--bt-gold)}
@media(max-width:960px){#bt-footer .btft-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){#bt-footer .btft-grid{grid-template-columns:1fr}}

/* ============================================================
body.bt-core SKIN DES PAGES PRESTASHOP (compte, body.bt-core connexion, body.bt-core panier, body.bt-core CMS…)
   ============================================================ */
#main h1, body.bt-core #main h2, body.bt-core #main h3, body.bt-core .page-header h1{color:var(--bt-head)}
body.bt-core #main .page-header{border:0;background:transparent}
body.bt-core .breadcrumb{background:transparent;color:var(--bt-muted)}
body.bt-core .breadcrumb a, body.bt-core .breadcrumb span{color:var(--bt-muted)}
body.bt-core /* cartes / blocs */
#main .card, body.bt-core #main .block-categories, body.bt-core #main .page-content.page-cms, body.bt-core #main section.page-content, body.bt-core #main .cart-grid-body .card, body.bt-core #main .cart-grid-right .card, body.bt-core #main .cart-summary, body.bt-core #main .address, body.bt-core #main .page-content--password{
  background:var(--bt-panel) !important;border:1px solid var(--bt-line) !important;color:var(--bt-ink);box-shadow:none}
body.bt-core #main .card-block, body.bt-core #main .card-body{background:transparent}
body.bt-core /* mon compte : tuiles */
.page-my-account #content .links a span.link-item{background:var(--bt-panel);color:var(--bt-ink);box-shadow:none;border:1px solid var(--bt-line);border-radius:12px}
body.bt-core .page-my-account #content .links a i{color:var(--bt-gold)}
body.bt-core .page-my-account #content .links a:hover span.link-item{border-color:var(--bt-gold)}
body.bt-core /* formulaires */
#main .form-control, body.bt-core #main input[type="text"], body.bt-core #main input[type="email"], body.bt-core #main input[type="password"], body.bt-core #main input[type="tel"], body.bt-core #main select, body.bt-core #main textarea{
  background:var(--bt-input);color:var(--bt-ink);border:1px solid var(--bt-line);border-radius:8px}
body.bt-core #main .form-control:focus{border-color:var(--bt-gold);box-shadow:none;background:var(--bt-input);color:var(--bt-ink)}
body.bt-core #main .form-control-label, body.bt-core #main label, body.bt-core #main .custom-checkbox, body.bt-core #main .form-group small, body.bt-core #main .forgot-password a, body.bt-core #main .no-account a{color:var(--bt-soft)}
body.bt-core #main .input-group .input-group-btn>.btn{background:var(--bt-panel);border:1px solid var(--bt-line);color:var(--bt-soft)}
body.bt-core /* boutons */
#main .btn-primary, body.bt-core #main .btn-primary:focus{background:var(--bt-gold);border-color:var(--bt-gold);color:#0b0d11;font-weight:700;border-radius:999px}
body.bt-core #main .btn-primary:hover{background:var(--bt-gold-hi);border-color:var(--bt-gold-hi);color:#0b0d11}
body.bt-core #main .btn-secondary, body.bt-core #main .btn-default{background:var(--bt-panel);border:1px solid var(--bt-line);color:var(--bt-ink);border-radius:999px}
body.bt-core /* tableaux / séparateurs / textes */
#main table, body.bt-core #main th, body.bt-core #main td{color:var(--bt-ink);border-color:var(--bt-line)}
body.bt-core #main hr, body.bt-core #main .separator{border-color:var(--bt-line)}
body.bt-core #main a:not(.btn){color:var(--bt-gold)}
body.bt-core #main a:not(.btn):hover{color:var(--bt-gold-hi)}
body.bt-core #main .text-muted, body.bt-core #main .cart-item .product-line-info{color:var(--bt-muted)}
body.bt-core /* panier */
.cart-grid .product-line-grid{border-color:var(--bt-line)}
body.bt-core .cart-summary-line .label, body.bt-core .cart-summary-line .value, body.bt-core .cart-total .label, body.bt-core .cart-total .value{color:var(--bt-ink)}
body.bt-core .product-line-info a.label{color:var(--bt-ink)}
body.bt-core /* produits (textile) */
#main .product-miniature .thumbnail-container{background:var(--bt-panel);border:1px solid var(--bt-line);box-shadow:none}
body.bt-core #main .product-miniature .product-title a{color:var(--bt-ink)}
body.bt-core #main .product-miniature .price{color:var(--bt-gold)}
body.bt-core /* alertes lisibles */
#main .alert-danger{background:rgba(226,75,74,.12);color:#f0a5a5;border-color:rgba(226,75,74,.4)}
body.bt-core #main .alert-success{background:rgba(0,182,122,.12);color:#7fd8b8;border-color:rgba(0,182,122,.4)}

body.bt-core /* ============================================================
   ZONES DE CONTENU (descriptions produit, body.bt-core CMS…) :
   neutralise les couleurs/fonds inline posés dans l'éditeur
   pour rester lisible en sombre COMME en clair
   ============================================================ */
#main .product-description, body.bt-core #main .product-information, body.bt-core #main #description, body.bt-core #main .page-cms, body.bt-core #main .cms-content, body.bt-core #main .category-description, body.bt-core #main .rte, body.bt-core #main .product-description *, body.bt-core #main .product-information *, body.bt-core #main #description *, body.bt-core #main .page-cms *, body.bt-core #main .cms-content *, body.bt-core #main .category-description *, body.bt-core #main .rte *{
  color:var(--bt-ink) !important;background:transparent !important}
body.bt-core #main .product-description a, body.bt-core #main .page-cms a, body.bt-core #main #description a{color:var(--bt-gold) !important}
body.bt-core /* fiche produit */
#main h1[itemprop="name"], body.bt-core #main .h1{color:var(--bt-head)}
body.bt-core #main .current-price, body.bt-core #main .product-price, body.bt-core #main .current-price span{color:var(--bt-gold) !important}
body.bt-core #main .product-discount .regular-price{color:var(--bt-muted)}
body.bt-core #main .images-container, body.bt-core #main .product-images>li.thumb-container>.thumb, body.bt-core #main .js-qv-mask{background:transparent}
body.bt-core #main .product-images .thumb{border:1px solid var(--bt-line);background:var(--bt-panel)}
body.bt-core #main .product-images .thumb.selected, body.bt-core #main .product-images .thumb:hover{border-color:var(--bt-gold)}
body.bt-core #main .product-quantity #quantity_wanted{background:var(--bt-input);color:var(--bt-ink);border:1px solid var(--bt-line)}
body.bt-core #main .bootstrap-touchspin{box-shadow:none;border:1px solid var(--bt-line);background:var(--bt-panel)}
body.bt-core #main .bootstrap-touchspin .btn-touchspin{background:var(--bt-panel);color:var(--bt-ink);border-color:var(--bt-line)}
body.bt-core #main .product-variants .input-container .radio-label, body.bt-core #main .control-label{color:var(--bt-soft)}
body.bt-core #main .product-additional-info, body.bt-core #main .product-features, body.bt-core #main .tabs{background:transparent;color:var(--bt-ink)}
body.bt-core #main .tabs .nav-tabs .nav-link{color:var(--bt-soft);background:transparent}
body.bt-core #main .tabs .nav-tabs .nav-link.active{color:var(--bt-head);border-color:var(--bt-gold)}
body.bt-core #main .tabs .tab-content{background:var(--bt-panel);border:1px solid var(--bt-line)}


/* ---- page « Mes programmes » (combined.tpl) : bande noire neutralisée, thèmable ---- */
body.bt-progs .container,body.bt-progs #wrapper{background:transparent !important}
body.bt-progs{background:var(--bt-page) !important;color:var(--bt-ink)}
body.bt-progs #main h1{color:var(--bt-head) !important}
body.bt-progs .article{background:transparent !important;border:0 !important;padding:0 !important}
body.bt-progs .page-footer{background:transparent !important}


/* ---- typo : remplace les vieux titres serif des pages coeur/programmes ---- */
body.bt-core #main h1,body.bt-core .page-header h1,body.bt-core #main .h1,
body.bt-progs #main h1{
  font-family:var(--bt-disp) !important;font-weight:800;letter-spacing:.01em;text-transform:uppercase}
/* ---- header : sticky via le wrapper du thème #header (le conteneur CE fait pile la
   hauteur du header -> sticky sans débattement ; on colle donc le wrapper).
   Statique quand connecté, SAUF sur l'accueil. ---- */
#header{position:sticky;top:var(--bt-bh,0px);z-index:1000}
body.bt-logged #header{position:static}
body#index #header{position:sticky !important;top:var(--bt-bh,0px)}

/* ---- page Informations & formulaires : labels/radios lisibles dans les 2 thèmes ---- */
body.bt-core #main label,body.bt-core #main .radio-inline,body.bt-core #main .radio-inline span,
body.bt-core #main .custom-radio,body.bt-core #main .custom-checkbox,
body.bt-core #main .form-control-comment,body.bt-core #main .form-group small{color:var(--bt-soft) !important}
body.bt-core #main .custom-radio input+span{border-color:var(--bt-line)}

/* ---- footer mobile : compact et propre ---- */
@media(max-width:560px){
  #bt-footer{padding:36px 0 22px;margin-top:26px}
  #bt-footer .btft-logo{width:58px;margin-bottom:10px}
  #bt-footer .btft-grid{gap:22px}
  #bt-footer h5{margin:0 0 8px}
  #bt-footer .btft-col a{padding:4px 0;font-size:13.5px}
  #bt-footer p{font-size:13px}
  #bt-footer .btft-blog{margin-top:12px}
  #bt-footer .btft-soc{margin-top:12px}
  #bt-footer .btft-tp{margin-top:24px;padding-top:18px}
  #bt-footer .btft-legal{margin-top:22px;padding-top:14px;font-size:11.5px}
}
/* ---- badge Trustpilot flottant : sa carte est blanche, son texte reste donc toujours foncé
   (sinon il hérite du blanc du thème sombre et devient invisible) ---- */
.trustpilot-widget,.trustpilot-widget *{color:#191919}
#bt-footer .trustpilot-widget,#bt-footer .trustpilot-widget *{color:inherit}

/* ---- pages CE : les animations d'entrée ne rejouent pas au retour arrière
   -> contenu qui restait invisible (Textile). On force la visibilité. ---- */
.elementor-invisible{visibility:visible !important;opacity:1 !important;animation:none !important}
/* ---- menu tel : accès rapides ---- */
#bt-header .bthd-m-top{display:flex;gap:10px;padding:14px 0 10px;border-bottom:1px solid var(--bt-line);margin-bottom:4px}
#bt-header .bthd-m-top a{flex:1;text-align:center;background:var(--bt-gold);color:#0b0d11 !important;font-weight:800;
  padding:14px 6px;border-radius:12px;font-size:13.5px;letter-spacing:.02em;text-transform:uppercase;border-bottom:0 !important}
#bt-header .bthd-m-top a:active{background:var(--bt-gold-hi)}
/* ---- panier : typo propre + panier vide sans total/bouton ---- */
body.bt-core #main,body.bt-core #main .btn,body.bt-core #main .card{font-family:var(--bt-body)}
body.bt-core #main .btn-primary{font-weight:700;letter-spacing:.01em}
body#cart #main:has(.no-items) .cart-grid-right{display:none !important}
body#cart #main:has(.no-items) .checkout{display:none !important}

/* ---- badge Trustpilot MAISON (le widget flottant du module reste masqué) ---- */
#btTpBadge{position:fixed;left:14px;bottom:14px;z-index:9999;display:flex;align-items:center;gap:9px;
  background:#fff;color:#191919 !important;border-radius:10px;padding:9px 13px;text-decoration:none;
  font-family:var(--bt-body);font-size:12.5px;line-height:1.35;box-shadow:0 4px 18px rgba(0,0,0,.25);border:1px solid rgba(0,0,0,.08)}
#btTpBadge .tps{color:#00b67a;font-size:20px;line-height:1}
#btTpBadge .tpt strong{font-weight:800}
#btTpBadge .tpn{color:#00b67a;font-weight:700;font-size:11.5px}
#btTpBadge:hover{box-shadow:0 6px 22px rgba(0,0,0,.35)}
@media(max-width:560px){#btTpBadge{left:10px;bottom:10px;padding:8px 11px}}

/* ---- FIX espace géant en haut des suivis programme (mobile) ----
   Le CSS des programmes fait .container{height:100dvh} en <=768px ;
   l'aside #notifications (vide) contient une div .container -> il gonflait
   à tout l'écran et poussait le dashboard d'une hauteur d'écran. ---- */
aside#notifications,#notifications .notifications-container{height:auto !important;min-height:0 !important}

/* ============================================================
   POLICES DE MARQUE — redéclarées en dur (la régénération du kit
   Creative Elements avait perdu les @font-face -> fallback serif partout)
   ============================================================ */
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Campton';src:url('/modules/creativeelements/views/fonts/Campton%20ExtraBold.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Book.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Heavy.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Heavy.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Black.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir';src:url('/modules/creativeelements/views/fonts/Avenir%20Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}

/* ---- pages programme : pas de choix clair/sombre (couleurs du programme imposées) ---- */
body[id*="module-wsbodytime" i]:not(.bt-progs) .bthd-theme{display:none !important}

/* ---- pages programme : supprime la petite marge sous le menu
   (marge par défaut du h1 vide de .page-header qui s'effondre vers le haut) ---- */
body[id*="module-wsbodytime" i] .page-header,
body[id*="module-wsbodytime" i] .page-header h1{margin:0 !important;padding:0 !important}

/* ---- NoTime : le logo BODYTIME interne de la page (doublon sous notre header) ---- */
body[id*="programnotime" i] #main img[src*="logoBTFull"],
body[id*="notimerecettes" i] #main img[src*="logoBTFull"]{display:none !important}
/* ---- footer : de l'air en bas pour que le badge Trustpilot ne couvre pas les liens ---- */
#bt-footer{padding-bottom:92px}
@media(max-width:560px){#bt-footer{padding-bottom:96px}}

/* ============================================================
   PAGES PROGRAMME : chrome TOUJOURS sombre (peu importe le thème)
   -> header lisible, fonds latéraux sombres, textes blancs
   ============================================================ */
body[id*="module-wsbodytime" i]:not(.bt-progs){
  --bt-page:#1d232d;--bt-panel:#2b3340;--bt-ink:#F6F4EE;--bt-head:#ffffff;
  --bt-soft:#c7cad1;--bt-muted:#9CA1AB;--bt-line:rgba(255,255,255,.10);
  --bt-footer:#1b212b;--bt-headerbg:rgba(29,35,45,.98);--bt-input:rgba(255,255,255,.05);
  background:var(--bt-prog-bg,#1d232d) !important;color:#fff;
}
body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-logo img{filter:invert(1) !important}
body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-footer .btft-logo{filter:none !important}
/* Salut / titres des dashboards : toujours blancs */
body[id*="module-wsbodytime" i] .headerNew h1,
body[id*="module-wsbodytime" i] .headerNew h2,
body[id*="module-wsbodytime" i] .mainInformation h1,
body[id*="module-wsbodytime" i] .mainInformation h2{color:#fff !important}
/* Mes programmes : un seul cadre par vignette */
body.bt-progs .program-thumbnail{box-shadow:none !important}
/* ---- badge Trustpilot flottant : uniquement sur la vitrine ---- */
#btTpBadge{display:none}
body#index #btTpBadge,body#cms #btTpBadge,body#category #btTpBadge,
body#product #btTpBadge,body#contact #btTpBadge,body[id*="prestablog" i] #btTpBadge{display:flex}

/* ---- mode SOMBRE sur les pages CMS designées CE (Textile) :
   fond adouci + titres produits en clair (les prix gardent leur orange) ---- */
html[data-theme="dark"] body#cms.elementor-page{background:#1d232d !important;color:#e8e8ec}
html[data-theme="dark"] body#cms.elementor-page #wrapper,
html[data-theme="dark"] body#cms.elementor-page #content-wrapper,
html[data-theme="dark"] body#cms.elementor-page #main{background:transparent !important}
html[data-theme="dark"] body#cms.elementor-page h1,
html[data-theme="dark"] body#cms.elementor-page h2,
html[data-theme="dark"] body#cms.elementor-page h3,
html[data-theme="dark"] body#cms.elementor-page [class*="title"],
html[data-theme="dark"] body#cms.elementor-page [class*="title"] a{color:#f2f2f4 !important}
html[data-theme="dark"] body#cms.elementor-page [class*="price"]{color:#f2a54a !important}

/* ---- Mon compte : plus de carte blanche autour des vignettes ---- */
body#my-account #content,body#my-account #content.card,.page-my-account #content{
  background:transparent !important;border:0 !important;box-shadow:none !important}

/* ---- fil d'Ariane (Accueil / …) : supprimé partout ---- */
nav.breadcrumb,.breadcrumb{display:none !important}
/* ---- suivis programme (desktop) : header minimal = logo + MON COMPTE ---- */
@media(min-width:921px){
  body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-nav,
  body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-cta,
  body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-cart,
  body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-sec[href*="new-collection"]{display:none !important}
}
body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header .bthd-sec{color:#fff !important;font-weight:600}
/* ---- Textile en sombre : les sections CE ont un fond blanc en dur -> transparent en sombre ---- */
html[data-theme="dark"] body#cms.elementor-page .elementor-section,
html[data-theme="dark"] body#cms.elementor-page .elementor-column-wrap,
html[data-theme="dark"] body#cms.elementor-page .elementor-widget-wrap,
html[data-theme="dark"] body#cms.elementor-page .elementor-element-populated{background:transparent !important;background-color:transparent !important}
html[data-theme="dark"] body#cms.elementor-page #content,
html[data-theme="dark"] body#cms.elementor-page .page-content{background:transparent !important;border:0}
html[data-theme="dark"] body#cms.elementor-page .elementor-product-miniature{background:#2b3340 !important;border-color:rgba(255,255,255,.08)}

/* ---- suivis programme : bande de menu NOIRE uniforme bord à bord
   (toutes les couches du header peintes pareil, plus aucun raccord) ---- */
body[id*="module-wsbodytime" i]:not(.bt-progs) #header,
body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"],
body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-section-wrap,
body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-section,
body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-container,
body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-widget-container,
body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header{
  background:#1d232d !important;width:100% !important;max-width:none !important}

/* les CSS programmes contiennent `header#header div{background:<couleur prog>!important}`
   (héritage de l'ancien header) — on surclasse en spécificité pour garder la bande noire */
body[id*="module-wsbodytime" i]:not(.bt-progs) header#header div,
body[id*="module-wsbodytime" i]:not(.bt-progs) header#header #bt-header{background:#1d232d !important}

/* ---- menu en SOMBRE : liens bien blancs ---- */
html[data-theme="dark"] #bt-header nav.bthd-nav a{color:#ffffff}
html[data-theme="dark"] #bt-header .bthd-sec{color:#eef0f4}
html[data-theme="dark"] #bt-header nav.bthd-nav a:hover,
html[data-theme="dark"] #bt-header .bthd-sec:hover{color:var(--bt-gold)}

/* Mes programmes : aucun cadre autour de la grille de vignettes */
body.bt-progs #content,body.bt-progs #content.card,body.bt-progs .page-content{
  background:transparent !important;border:0 !important;box-shadow:none !important}

/* bouton thème : fond gris foncé en sombre pour bien le voir */
html[data-theme="dark"] #bt-header .bthd-theme{background:#2b3340;border-color:rgba(255,255,255,.16);color:#fff}
html[data-theme="dark"] #bt-header .bthd-theme:hover{background:#343d4b;border-color:var(--bt-gold);color:var(--bt-gold)}

/* ---- photos produit en SOMBRE : plus de bandes blanches (fond des img -> panneau) ---- */
html[data-theme="dark"] body.bt-core #main .product-cover img,
html[data-theme="dark"] body.bt-core #main img.js-qv-product-cover,
html[data-theme="dark"] body.bt-core #main .product-images img,
html[data-theme="dark"] body.bt-core #main .images-container img{background:var(--bt-panel) !important}

/* Mes programmes : de l'air au-dessus et sous le titre */
body.bt-progs #main h1{margin:28px 0 34px !important}

/* ===== retours 07/07 soir ===== */
/* 1) de l'air entre le menu et le titre de page (connexion, compte, panier, …) */
body.bt-core #wrapper{padding-top:26px}

/* 2) mobile : vignettes Mes programmes 2 par 2 (wrappers aplatis, grille flex) */
@media(max-width:920px){
  body.bt-progs #main .article,
  body.bt-progs #main .row.programs-container{display:contents !important}
  body.bt-progs #main section.page-content{display:flex !important;flex-wrap:wrap;gap:12px}
  body.bt-progs #main section.page-content > aside,
  body.bt-progs #main aside#notifications{flex:0 0 100%;width:100%}
  body.bt-progs #main section.page-content table{flex:0 0 100%}
  body.bt-progs #main .page-footer{width:100%}
  body.bt-progs #main a.program-thumbnail{width:calc(50% - 6px) !important;flex:0 0 calc(50% - 6px);
    height:auto !important;aspect-ratio:1/1;margin:0 !important}
}

/* 3) mobile : bande de menu aux couleurs du programme (le desktop reste sombre) */
@media(max-width:920px){
  body[id*="module-wsbodytime" i]:not(.bt-progs) #header,
  body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"],
  body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-section-wrap,
  body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-section,
  body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-container,
  body[id*="module-wsbodytime" i]:not(.bt-progs) [data-elementor-type="header"] .elementor-widget-container,
  body[id*="module-wsbodytime" i]:not(.bt-progs) header#header div,
  body[id*="module-wsbodytime" i]:not(.bt-progs) header#header #bt-header,
  body[id*="module-wsbodytime" i]:not(.bt-progs) #bt-header{background:var(--bt-prog-bg,#1d232d) !important}
}

/* 4) Mes suivis (Reporting) : pas de scroll horizontal + marges autour des encadrés */
body[id*="module-wsbodytime-reporting" i]{overflow-x:hidden}
body[id*="module-wsbodytime-reporting" i] #content{padding:12px 14px 24px !important}
body[id*="module-wsbodytime-reporting" i] h1.chooseProg{margin-top:28px !important}
