/*
  TLH perf 24/10/2026 — finitions maison : styles des snippets tlh-* qui sont identiques sur toutes les pages,
  sortis du HTML (ils y étaient recopiés en ligne, ~75 Ko par page) et mis en cache ici.
  Ce fichier est GÉNÉRÉ à partir des snippets : ne pas le modifier à la main.
  - layout/theme.liquid n'écrit plus en ligne un style dont l'empreinte (md5) figure dans la liste tlh_ext ;
  - si un snippet est modifié, son empreinte change : le nouveau style est de nouveau écrit en ligne, après ce
    fichier, donc il s'applique (l'ancienne version reste ici sans effet gênant tant qu'on ne régénère pas).
  Pour annuler : dans layout/theme.liquid, retirer la ligne tlh-finitions.css et vider la liste tlh_ext.
*/
/* ===== tlh-cookies.liquid — style 1 ===== */
  /* ---------- Bandeau ---------- */
  #shopify-pc__banner.shopify-pc__banner__dialog {
    left: 50% !important;
    right: auto !important;
    bottom: 16px !important;
    transform: translateX(-50%);
    width: min(760px, calc(100% - 32px)) !important;
    min-width: 0 !important;
    max-height: 90%;
    padding: 16px 20px !important;
    border: 1px solid transparent !important;
    border-radius: 14px !important;
    background:
      linear-gradient(#0B0B0C, #0B0B0C) padding-box,
      linear-gradient(135deg, rgba(169, 122, 52, 0.55) 0%, rgba(241, 203, 126, 0.85) 25%, rgba(255, 241, 198, 0.95) 35%, rgba(211, 164, 87, 0.6) 55%, rgba(243, 209, 139, 0.85) 75%, rgba(168, 122, 53, 0.55) 100%) border-box !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, 0.6), 0 0 30px rgba(226, 181, 103, 0.08) !important;
  }
  #shopify-pc__banner .shopify-pc__banner__wrapper {
    flex-direction: row;
    align-items: center;
    gap: 20px;
  }
  #shopify-pc__banner .shopify-pc__banner__body {
    flex: 1 1 auto;
    width: auto;
    margin: 0;
  }
  /* Titre saisi dans Shopify (24/10/2026) : sans majuscules forcees, une ligne si possible, sinon deux lignes propres */
  #shopify-pc__banner #shopify-pc__banner__body-title {
    margin: 0 0 6px;
    padding: 0;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
    text-align: start;
    overflow-wrap: break-word;
  }
  #shopify-pc__banner .shopify-pc__banner__body p {
    color: #BFBFC4;
    font-size: 13px;
    line-height: 1.45;
  }
  /* Lien « Confidentialite » : meme couleur que le message, soulignement fin de la meme couleur (24/10/2026) */
  #shopify-pc__banner #shopify-pc__banner__body-policy-link {
    color: #BFBFC4;
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
  }
  #shopify-pc__banner .shopify-pc__banner__btns {
    flex: 0 0 auto;
    width: auto;
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }
  /* Accepter et Refuser : exactement le meme style */
  #shopify-pc__banner #shopify-pc__banner__btn-accept,
  #shopify-pc__banner #shopify-pc__banner__btn-decline {
    order: 2;
    flex: 0 0 auto;
    min-width: 128px;
    height: 40px;
    margin: 0;
    padding: 0 18px;
    border: 1px solid rgba(226, 181, 103, 0.75);
    border-radius: 8px;
    background: #0B0B0C;
    color: #F1CB7E;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    line-height: 1;
    white-space: nowrap;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
  }
  #shopify-pc__banner #shopify-pc__banner__btn-accept:hover,
  #shopify-pc__banner #shopify-pc__banner__btn-decline:hover {
    background: rgba(226, 181, 103, 0.12);
    border-color: #F1CB7E;
    color: #FFF1C6;
  }
  #shopify-pc__banner #shopify-pc__banner__btn-manage-prefs {
    order: 1;
    flex: 0 0 auto;
    margin: 0 4px 0 0;
    padding: 0;
    background: transparent;
    border: 0;
    color: #8E8E93;
    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: underline;
    text-underline-offset: 2px;
  }
  #shopify-pc__banner #shopify-pc__banner__btn-manage-prefs:hover { color: #E2B567; }
  #shopify-pc__banner button:focus-visible {
    outline: 2px solid #E2B567;
    outline-offset: 2px;
    box-shadow: none;
  }

  /* Telephone : panneau colle tout en bas de l'ecran, 10 px d'espace sur les cotes.
     Titre / la phrase (retour a la ligne normal, 24/10/2026) / « Confidentialite » en petit /
     Accepter + Refuser / « Gerer tes preferences » */
  @media (max-width: 749px) {
    #shopify-pc__banner.shopify-pc__banner__dialog {
      left: 10px !important;
      right: auto !important;
      bottom: 0 !important;
      transform: none;
      width: calc(100% - 20px) !important;
      padding: 14px 16px calc(12px + env(safe-area-inset-bottom)) !important;
      border-width: 1px 1px 0 !important;
      border-radius: 16px 16px 0 0 !important;
      box-shadow: 0 -12px 34px rgba(0, 0, 0, 0.6) !important;
    }
    #shopify-pc__banner .shopify-pc__banner__wrapper {
      flex-direction: column;
      align-items: stretch;
      gap: 9px;
    }
    /* Titre sur une seule ligne (360 a 430 px) : la taille suit la largeur utile de la banniere (titre = 24 em) */
    #shopify-pc__banner #shopify-pc__banner__body-title {
      font-size: clamp(11px, calc((100vw - 54px) / 25), 15px);
      white-space: nowrap;
    }
    #shopify-pc__banner .shopify-pc__banner__body p {
      font-size: 12.5px;
      line-height: 1.45;
      white-space: normal;
    }
    #shopify-pc__banner #shopify-pc__banner__body-policy-link {
      display: block;
      width: fit-content;
      margin-top: 3px;
      font-size: 10.5px;
      white-space: nowrap;
    }
    #shopify-pc__banner .shopify-pc__banner__btns {
      width: 100%;
      flex-direction: row !important;
      flex-wrap: wrap;
      gap: 8px;
    }
    #shopify-pc__banner #shopify-pc__banner__btn-accept,
    #shopify-pc__banner #shopify-pc__banner__btn-decline {
      order: 1;
      flex: 1 1 0;
      min-width: 0;
      height: 36px;
      padding: 0 8px;
      font-size: 11px;
      letter-spacing: 0.1em;
    }
    #shopify-pc__banner #shopify-pc__banner__btn-decline { order: 2; }
    #shopify-pc__banner #shopify-pc__banner__btn-manage-prefs {
      order: 3;
      flex: 0 0 100%;
      margin: 1px 0 0;
      font-size: 11px;
      text-align: center;
    }
  }

  /* ---------- Fenetre « Gerer tes preferences » ---------- */
  #shopify-pc__prefs #shopify-pc__prefs__dialog {
    border: 1px solid transparent;
    border-radius: 14px;
    background:
      linear-gradient(#0B0B0C, #0B0B0C) padding-box,
      linear-gradient(135deg, rgba(169, 122, 52, 0.55) 0%, rgba(241, 203, 126, 0.85) 25%, rgba(255, 241, 198, 0.95) 35%, rgba(211, 164, 87, 0.6) 55%, rgba(243, 209, 139, 0.85) 75%, rgba(168, 122, 53, 0.55) 100%) border-box;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.7);
    max-width: 760px;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #shopify-pc__prefs #shopify-pc__prefs__overlay {
    background-color: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(3px);
  }
  /* En-tete : titre puis les 3 choix sur une ligne (rien ne deborde) */
  #shopify-pc__prefs #shopify-pc__prefs__dialog header {
    flex-direction: column;
    align-items: stretch;
    border-bottom: 1px solid rgba(226, 181, 103, 0.22);
    padding: 26px 28px 20px;
  }
  #shopify-pc__prefs #shopify-pc__prefs__header-title {
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-align: start;
    margin: 0 0 16px;
    padding: 0 36px 0 0 !important;
  }
  #shopify-pc__prefs #shopify-pc__prefs__header-close {
    top: 24px;
    right: 24px;
  }
  #shopify-pc__prefs .shopify-pc__prefs__header-actions {
    display: flex;
    flex-direction: row;
    gap: 10px;
    width: 100%;
    padding: 0;
  }
  #shopify-pc__prefs #shopify-pc__prefs__header-close { color: #8E8E93; }
  #shopify-pc__prefs #shopify-pc__prefs__header-close:hover { color: #F1CB7E; }
  #shopify-pc__prefs #shopify-pc__prefs__header-close svg path { fill: currentColor; }
  /* Les 3 choix au meme niveau, meme style */
  #shopify-pc__prefs .shopify-pc__prefs__header-actions button {
    flex: 1 1 0;
    min-width: 0;
    height: 40px;
    margin: 0;
    padding: 0 12px;
    white-space: nowrap;
    border: 1px solid rgba(226, 181, 103, 0.75);
    border-radius: 8px;
    background: #0B0B0C;
    color: #F1CB7E;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    line-height: 1;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
  }
  #shopify-pc__prefs .shopify-pc__prefs__header-actions button:hover {
    background: rgba(226, 181, 103, 0.12);
    border-color: #F1CB7E;
    color: #FFF1C6;
  }
  #shopify-pc__prefs .shopify-pc__prefs__header-actions button:focus-visible {
    outline: 2px solid #E2B567;
    outline-offset: 2px;
    box-shadow: none;
  }
  #shopify-pc__prefs .shopify-pc__prefs__intro h3 {
    color: #E2B567;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.24em;
    text-transform: uppercase;
  }
  #shopify-pc__prefs .shopify-pc__prefs__intro p,
  #shopify-pc__prefs .shopify-pc__prefs__option p {
    color: #BFBFC4;
    font-size: 13px;
  }
  #shopify-pc__prefs .shopify-pc__prefs__option label {
    color: #FFFFFF;
    font-size: 14px;
  }
  #shopify-pc__prefs .shopify-pc__prefs__option:first-child {
    border-top: 1px solid rgba(226, 181, 103, 0.22);
  }
  #shopify-pc__prefs .shopify-pc__prefs__option label span,
  #shopify-pc__prefs .shopify-pc__prefs__option label span svg {
    background-color: #0B0B0C;
  }
  #shopify-pc__prefs .shopify-pc__prefs__option label input:focus ~ span {
    background-color: rgba(226, 181, 103, 0.35);
  }

  @media (max-width: 749px) {
    #shopify-pc__prefs #shopify-pc__prefs__dialog {
      width: calc(100% - 24px);
      max-height: 86%;
    }
    #shopify-pc__prefs #shopify-pc__prefs__dialog header {
      padding: 16px 16px 12px;
    }
    #shopify-pc__prefs #shopify-pc__prefs__header-title {
      font-size: 13px;
      margin: 0 0 12px;
      padding: 0 28px 0 0 !important;
    }
    #shopify-pc__prefs #shopify-pc__prefs__header-close {
      top: 16px;
      right: 14px;
    }
    #shopify-pc__prefs .shopify-pc__prefs__header-actions {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      width: 100%;
    }
    #shopify-pc__prefs .shopify-pc__prefs__header-actions button {
      width: 100%;
      height: 36px;
      margin: 0;
      padding: 0 8px;
      font-size: 11px;
      letter-spacing: 0.1em;
    }
    #shopify-pc__prefs #shopify-pc__prefs__header-save { grid-column: 1 / -1; }
  }

/* ===== tlh-gold-select.liquid — style 2 ===== */
  /* ---------- Boutons principaux « Ajouter au panier » et « Commander » : or poli, reflet en continu ---------- */
  .product-add-to-cart-button button.button--primary[name="add"]:not([disabled]),
  button.button[name="checkout"]:not([disabled]),
  .mbp .mbp-cta a.mbp-go {
    background-color: #E2B567 !important;
    background-image:
      linear-gradient(105deg, transparent 40%, rgba(255, 248, 225, 0.65) 50%, transparent 60%),
      linear-gradient(180deg, rgba(255, 252, 235, 0.6) 0%, rgba(255, 245, 210, 0) 24%, rgba(0, 0, 0, 0) 64%, rgba(80, 45, 5, 0.32) 100%),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='52' viewBox='0 0 400 52' preserveAspectRatio='none'%3E%3Cfilter id='s' x='0' y='0' width='100%25' height='100%25' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.004 0.9' numOctaves='2' seed='7'/%3E%3CfeColorMatrix values='0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 0 1'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncG type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncB type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncA type='linear' slope='0' intercept='0.14'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cg transform='rotate(-14 200 26)'%3E%3Crect x='-120' y='-140' width='640' height='332' filter='url(%23s)'/%3E%3C/g%3E%3C/svg%3E"),
      linear-gradient(112deg, #A97A34 0%, #D3A457 8%, #F1CB7E 16%, #FCE3A2 22%, #FFF6D2 25%, #F8DA95 30%, #E2B567 41%, #CC9C4E 48%, #D7A95B 54%, #EFC97F 63%, #FBE2A4 71%, #FFF1C6 74%, #F3D18B 80%, #D6A85C 90%, #A87A35 100%) !important;
    background-size: 250% 100%, 100% 100%, 100% 100%, 100% 100% !important;
    background-repeat: no-repeat !important;
    background-blend-mode: screen, normal, overlay, normal;
    color: #2B1A06 !important;
    border: 1px solid rgba(214, 170, 90, 0.85) !important;
    box-shadow:
      inset 0 0 0 2px #0B0B0C,
      inset 0 0 0 3px #7A5218,
      inset 0 4px 0 rgba(255, 250, 225, 1),
      inset 0 0 0 5px rgba(255, 236, 180, 0.4),
      inset 0 -5px 0 rgba(120, 75, 20, 0.55),
      0 10px 26px rgba(0, 0, 0, 0.55) !important;
    text-shadow: 0 1px 0 rgba(255, 245, 215, 0.7);
    transition: filter 0.3s ease, transform 0.12s ease;
    animation: tlh-sync-sweep4 8s ease-in-out infinite;
  }
  .product-add-to-cart-button button.button--primary[name="add"]:not([disabled]) *,
  button.button[name="checkout"]:not([disabled]) *,
  .mbp .mbp-cta a.mbp-go * {
    color: #2B1A06 !important;
    border-color: #2B1A06 !important;
  }
  @keyframes tlh-sync-sweep4 {
    0% { background-position: 100% 0, 0 0, 0 0, 0 0; }
    35%, 100% { background-position: 0% 0, 0 0, 0 0, 0 0; }
  }
  /* Survol (ordinateur) : l'or s'eclaire legerement */
  @media (hover: hover) {
    .product-add-to-cart-button button.button--primary[name="add"]:not([disabled]):hover,
    button.button[name="checkout"]:not([disabled]):hover,
    .mbp .mbp-cta a.mbp-go:hover {
      filter: brightness(1.07) saturate(1.05);
      opacity: 1 !important;
    }
  }
  /* Appui : le bouton s'enfonce d'1 px */
  .product-add-to-cart-button button.button--primary[name="add"]:not([disabled]):active,
  button.button[name="checkout"]:not([disabled]):active,
  .mbp .mbp-cta a.mbp-go:active {
    transform: translateY(1px);
    filter: brightness(0.97);
    box-shadow:
      inset 0 0 0 2px #0B0B0C,
      inset 0 0 0 3px #7A5218,
      inset 0 3px 0 rgba(255, 250, 225, 0.9),
      inset 0 0 0 5px rgba(255, 236, 180, 0.4),
      inset 0 -3px 0 rgba(120, 75, 20, 0.5),
      0 5px 14px rgba(0, 0, 0, 0.5) !important;
  }
  /* Eclat or juste apres un ajout au panier */
  .product-add-to-cart-button button.button--primary[name="add"].tlh-flash {
    animation: tlh-btn-flash 0.9s cubic-bezier(0.3, 0, 0.2, 1) 1 !important;
  }
  @keyframes tlh-btn-flash {
    0% { background-position: 100% 0, 0 0, 0 0, 0 0; filter: brightness(1.18); }
    100% { background-position: 0% 0, 0 0, 0 0, 0 0; filter: brightness(1); }
  }

  /* Bouton « Devenir Membre⁺ » (collection Devenir Membre⁺) : meme or, garde sa taille et son arrondi */
  .mbp .mbp-cta a.mbp-go {
    color: #2B1A06 !important;
    border-radius: 14px !important;
    display: inline-block;
  }

  /* ---------- « Continuer les achats » (panier vide) : noir avec filet or ---------- */
  .cart-drawer-empty-blocks > button.button {
    background: #0A0A0A !important;
    color: #F1CB7E !important;
    border: 1px solid rgba(226, 181, 103, 0.75) !important;
    box-shadow: none !important;
    letter-spacing: 0.08em;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
  }
  .cart-drawer-empty-blocks > button.button * {
    color: inherit !important;
  }
  @media (hover: hover) {
    .cart-drawer-empty-blocks > button.button:hover {
      background: rgba(226, 181, 103, 0.12) !important;
      border-color: #F1CB7E !important;
      color: #FFF1C6 !important;
    }
  }

  /* ---------- Panier : suggestions « Avant de valider » (tiroir panier et page panier) ---------- */
  /* Contour de la carte en or */
  .cart-body-blocks .cross-sells .cross-sell.card,
  .cart-footer-resume-blocks .cross-sells .cross-sell.card {
    border-color: rgba(226, 181, 103, 0.85) !important;
  }
  /* Fleches en or */
  .cart-body-blocks .cross-sells .splide__arrow,
  .cart-footer-resume-blocks .cross-sells .splide__arrow {
    color: #E2B567 !important;
  }
  .cart-body-blocks .cross-sells .splide__arrow theme-icon,
  .cart-footer-resume-blocks .cross-sells .splide__arrow theme-icon {
    background-color: #E2B567 !important;
  }
  /* Bouton « Ajouter » : bouton secondaire or (filet or, interieur noir, texte or) */
  .cart-body-blocks .cross-sells .cross-sell__form button.button,
  .cart-footer-resume-blocks .cross-sells .cross-sell__form button.button {
    background: #0A0A0A !important;
    color: #F1CB7E !important;
    border: 1px solid rgba(226, 181, 103, 0.85) !important;
    box-shadow: none !important;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
  }
  .cart-body-blocks .cross-sells .cross-sell__form button.button *,
  .cart-footer-resume-blocks .cross-sells .cross-sell__form button.button * {
    color: inherit !important;
  }
  .cart-body-blocks .cross-sells .cross-sell__form button.button theme-icon,
  .cart-footer-resume-blocks .cross-sells .cross-sell__form button.button theme-icon {
    background-color: currentColor !important;
  }
  @media (hover: hover) {
    .cart-body-blocks .cross-sells .cross-sell__form button.button:hover,
    .cart-footer-resume-blocks .cross-sells .cross-sell__form button.button:hover {
      background: rgba(226, 181, 103, 0.12) !important;
      border-color: #F1CB7E !important;
      color: #FFF1C6 !important;
    }
  }

  /* ---------- Panier : jauge des cadeaux et pastilles « OFFERT » en or ---------- */
  .cart-progress-bar__progress[value]::-webkit-progress-bar {
    background-color: rgba(226, 181, 103, 0.16) !important;
  }
  .cart-progress-bar__progress[value]::-webkit-progress-value {
    background: linear-gradient(90deg, #A97A34 0%, #D3A457 30%, #F1CB7E 60%, #FFF1C6 82%, #E2B567 100%) !important;
  }
  .cart-progress-bar__progress[value]::-moz-progress-bar {
    background: linear-gradient(90deg, #A97A34 0%, #D3A457 30%, #F1CB7E 60%, #FFF1C6 82%, #E2B567 100%) !important;
  }
  .cart-progress-bar__progress[value] {
    background-color: rgba(226, 181, 103, 0.16);
  }
  /* Sous la jauge : le nom du cadeau passe en or une fois debloque (le theme y ajoute alors une coche) */
  .cart-progress-bar__step-label:has(.icon--check) {
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent !important;
  }
  .cart-progress-bar__step-label .icon--check {
    background-color: #E2B567 !important;
    color: #E2B567 !important;
  }
  /* Pastille « OFFERT » : version legere, simple filet or, fond transparent, texte et icone en or */
  .cart-drawer__item--gift .cart-drawer__item-discount.badge {
    background: transparent !important;
    border: 1px solid rgba(226, 181, 103, 0.85) !important;
    color: #F1CB7E !important;
    box-shadow: none !important;
  }
  .cart-drawer__item--gift .cart-drawer__item-discount.badge * {
    color: #F1CB7E !important;
  }
  .cart-drawer__item--gift .cart-drawer__item-discount.badge theme-icon,
  .cart-drawer__item--gift .cart-drawer__item-discount.badge .icon {
    background-color: #E2B567 !important;
  }

  /* ---------- Panier : abonnement en or (le vert du theme est remplace) ---------- */
  /* Pastille « ABONNEMENT » : lingot or */
  .cart-drawer__item-badge.badge {
    background: linear-gradient(112deg, #A97A34 0%, #D3A457 10%, #F1CB7E 22%, #FFF6D2 32%, #E2B567 50%, #CC9C4E 64%, #EFC97F 80%, #A87A35 100%) !important;
    border: 0 !important;
    color: #2B1A06 !important;
    box-shadow: inset 0 1px 0 rgba(255, 250, 225, 0.8), inset 0 -1px 0 rgba(120, 75, 20, 0.45);
  }
  .cart-drawer__item-badge.badge * {
    color: #2B1A06 !important;
  }
  /* Frequence « TOUS LES 1 MOIS » : filet or, texte or */
  .cart-drawer__item-option--selling-plan.badge {
    border: 1px solid transparent !important;
    background:
      linear-gradient(#0A0A0A, #0A0A0A) padding-box,
      linear-gradient(112deg, #A97A34 0%, #F1CB7E 30%, #FFF1C6 45%, #D3A457 70%, #A87A35 100%) border-box !important;
    color: #F1CB7E !important;
  }
  .cart-drawer__item-option--selling-plan.badge *,
  .cart-drawer__item-option--selling-plan .icon {
    color: #E2B567 !important;
  }
  /* Bandeau « Renouvellement automatique... » : voile or discret */
  .cart-drawer__item-subscription.badge {
    background-color: rgba(226, 181, 103, 0.07) !important;
    border: 1px solid rgba(226, 181, 103, 0.28) !important;
    color: #E8E2D4 !important;
  }
  .cart-drawer__item-subscription.badge .icon,
  .cart-drawer__item-subscription.badge svg {
    color: #E2B567 !important;
  }

  /* ---------- Logo du site : reflet de lumiere qui passe sur les lettres or (meme rythme) ---------- */
  a.header__logo[data-tlh-logo] {
    position: relative;
  }
  a.header__logo[data-tlh-logo]::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(105deg, transparent 40%, rgba(255, 248, 222, 0.72) 50%, transparent 60%);
    background-size: 250% 100%;
    background-repeat: no-repeat;
    -webkit-mask: var(--tlh-logo-mask) center / contain no-repeat;
    mask: var(--tlh-logo-mask) center / contain no-repeat;
    mix-blend-mode: screen;
    animation: tlh-sync-sweep1 8s ease-in-out infinite;
  }
  @keyframes tlh-sync-sweep1 {
    0% { background-position: 100% 0; }
    35%, 100% { background-position: 0% 0; }
  }

  @media (prefers-reduced-motion: reduce) {
    .product-add-to-cart-button button.button--primary[name="add"],
    button.button[name="checkout"],
    .mbp .mbp-cta a.mbp-go {
      animation: none !important;
      transition: none;
    }
    a.header__logo[data-tlh-logo]::after {
      display: none;
    }
  }

/* ===== tlh-maison.liquid — style 1 ===== */
  /* ---------- Pastilles produit (photo produit et cartes) : lingot or ---------- */
  .product-badges .badge.badge--custom {
    background: linear-gradient(112deg, #A97A34 0%, #D3A457 12%, #F1CB7E 28%, #FFF6D2 40%, #E2B567 58%, #CC9C4E 78%, #A87A35 100%) !important;
    border: 0 !important;
    color: #2B1A06 !important;
    box-shadow: inset 0 1px 0 rgba(255, 250, 225, 0.8), inset 0 -1px 0 rgba(120, 75, 20, 0.45);
    font-weight: 700;
  }

  /* ---------- Lien « Voir le taux de drop » (fiche produit) en or ---------- */
  .product-section__product-info .button.button--link {
    color: #F1CB7E !important;
    border-color: rgba(226, 181, 103, 0.85) !important;
  }
  .product-section__product-info .button.button--link theme-icon {
    background-color: #E2B567 !important;
  }

  /* ---------- Ligne de contrôle des taux de drop : champagne ---------- */
  .drop-rate-verified:not(.tlh-drop-proof) {
    visibility: hidden;
  }
  .tlh-drop-proof,
  .tlh-drop-proof * {
    color: #CFC6B4 !important;
    font-weight: 400 !important;
  }
  .tlh-drop-proof,
  .tlh-drop-proof p {
    font-size: 12px !important;
    letter-spacing: 0.02em;
    white-space: normal !important;
  }
  .tlh-drop-proof a {
    color: #F1CB7E !important;
    text-decoration: underline;
    text-decoration-color: rgba(226, 181, 103, 0.5);
    text-underline-offset: 3px;
  }

  /* ---------- Fenêtre « Taux de drop » : plus de vert ---------- */
  .dialog-modal--drop-rate .dialog-modal,
  .dialog-modal--drop-rate .drop-rate-progress-bars {
    --color-accent: rgba(207, 198, 180, 1);
    --color-primary-button-background: rgba(226, 181, 103, 1);
    --color-primary-button-border: rgba(226, 181, 103, 1);
    --color-stars-icons: rgba(226, 181, 103, 1);
  }
  .dialog-modal--drop-rate .drop-rate-progress-bars__progress[value]::-webkit-progress-bar {
    background-color: rgba(226, 181, 103, 0.16) !important;
  }
  .dialog-modal--drop-rate .drop-rate-progress-bars__progress[value]::-webkit-progress-value {
    background: linear-gradient(90deg, #A97A34 0%, #D3A457 30%, #F1CB7E 60%, #FFF1C6 82%, #E2B567 100%) !important;
  }
  .dialog-modal--drop-rate .drop-rate-progress-bars__progress[value]::-moz-progress-bar {
    background: linear-gradient(90deg, #A97A34 0%, #D3A457 30%, #F1CB7E 60%, #FFF1C6 82%, #E2B567 100%) !important;
  }
  .dialog-modal--drop-rate .drop-rate-progress-bars__progress[value] {
    background-color: rgba(226, 181, 103, 0.16);
  }
  .dialog-modal--drop-rate .color-accent,
  .dialog-modal--drop-rate .color-accent * {
    color: #CFC6B4 !important;
  }
  .dialog-modal--drop-rate .color-accent theme-icon {
    background-color: #E2B567 !important;
  }
  /* ---------- Accueil : une ligne pour comprendre le concept de chaque booster ---------- */
  .tlh-card-concept,
  .tlh-card-concept p {
    margin: 0;
    text-align: center;
    font-size: 11px !important;
    line-height: 1.4;
    letter-spacing: 0.04em;
    color: #CFC6B4 !important;
    text-transform: uppercase;
  }
  .tlh-card-concept.tlh-has-flag {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    column-gap: 0.45em;
  }
  .tlh-card-concept .tlh-concept-flag {
    font-size: 11px;
    line-height: 1.4;
    font-weight: 400;
  }
  /* Téléphone : la ligne des taux et le drapeau tiennent sur une seule ligne (taille ajustée à la carte) */
  @media (max-width: 749px) {
    .tlh-card-concept,
    .tlh-card-concept.tlh-has-flag {
      flex-wrap: nowrap;
      white-space: nowrap;
      max-width: 100%;
      overflow: hidden;
      column-gap: 0.35em;
    }
    .tlh-card-concept p { letter-spacing: 0.02em; white-space: nowrap; }
    .tlh-card-concept .tlh-concept-flag { flex: 0 0 auto; }
  }

  /* ---------- Cartes produits : sans étoiles de note (les avis clients restent) ---------- */
  product-card .rating {
    display: none !important;
  }

  /* ---------- Panier : abonnement plus discret (20/10/2026) ----------
     - Mention « Annulable à tout moment… » dans un fin encart à liseré or, sans capitales ni icône.
     - Fréquence « Tous les 1 mois » retirée (l'abonnement est mensuel, la pastille « Abonnement » suffit).
     - Pastille « Abonnement » plus petite, sans icône : le sélecteur de quantité et la corbeille restent dans le cadre. */
  .cart-drawer__item-footer .cart-drawer__item-subscription.badge,
  .cart__item-footer .cart__item-subscription.badge {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    max-width: 100%;
    min-height: 0 !important;
    padding: 7px 12px !important;
    background: rgba(226, 181, 103, 0.03) !important;
    border: 1px solid rgba(226, 181, 103, 0.32) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    text-transform: none !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.4 !important;
    color: rgba(232, 226, 212, 0.65) !important;
  }
  .cart-drawer__item-footer .cart-drawer__item-subscription.badge > span,
  .cart__item-footer .cart__item-subscription.badge > span { text-transform: none !important; }
  .cart-drawer__item-footer .cart-drawer__item-subscription.badge .icon,
  .cart-drawer__item-footer .cart-drawer__item-subscription.badge svg,
  .cart__item-footer .cart__item-subscription.badge .icon,
  .cart__item-footer .cart__item-subscription.badge svg { display: none !important; }

  .cart-drawer__item-options:has(> .cart-drawer__item-option--selling-plan),
  .cart__item-options:has(> .cart__item-option--selling-plan) { display: none !important; }

  cart-drawer-item .cart-drawer__item-badge.badge,
  .cart__item-badge.badge.badge--small {
    display: inline-flex !important;
    align-items: center;
    gap: 4px !important;
    width: auto !important;
    padding: 3px 8px !important;
    border-radius: 6px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.3 !important;
  }
  cart-drawer-item .cart-drawer__item-badge.badge .icon,
  cart-drawer-item .cart-drawer__item-badge.badge svg,
  .cart__item-badge.badge.badge--small .icon,
  .cart__item-badge.badge.badge--small svg { display: none !important; }
  /* Sélecteur de quantité et corbeille rapprochés : tout tient dans le panier, même sur petit téléphone */
  cart-drawer-item .cart-drawer__item-content { min-width: 0 !important; }
  cart-drawer-item .cart-drawer__item-actions-wrapper { gap: 8px !important; }

/* ===== tlh-menu-or.liquid — style 1 ===== */
  /* TLH perf 24/10/2026 — :not(tlhz) sur les liens de sous-menu : la transition or reste prioritaire
     maintenant que ce style n'est plus répété en bas de page (layout/theme.liquid). */
  .header__menu .header__menu-link-text,
  .header__menu .header__submenu-link:not(tlhz) {
    background-image: linear-gradient(100deg, #A97A34 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #A97A34 100%);
    background-size: 220% 100%;
    background-position: 100% 0;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: currentColor;
    transition: -webkit-text-fill-color 0.35s ease;
  }
  .header__menu .header__menu-link-text { position: relative; }
  .header__menu .header__menu-link-text::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -5px;
    height: 1px;
    background: linear-gradient(90deg, rgba(226, 181, 103, 0), #E2B567 20%, #FFF1C6 50%, #E2B567 80%, rgba(226, 181, 103, 0));
    transform: scaleX(0);
    transform-origin: 50% 50%;
    transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
    pointer-events: none;
  }
  .header__menu a:hover,
  .header__menu-mobile:hover,
  .header__menu-link-text:hover,
  .header__menu .header__menu-link:hover .header__menu-link-text,
  .header__menu .header__submenu-link:hover {
    text-shadow: none !important;
    text-decoration: none !important;
  }
  .header__menu .header__menu-link:hover .header__menu-link-text,
  .header__menu .header__menu-link-text:hover,
  .header__menu .header__submenu-link:hover {
    -webkit-text-fill-color: transparent;
    animation: tlhMenuGold 3.2s linear infinite;
  }
  .header__menu .header__menu-link:hover .header__menu-link-text::after,
  .header__menu .header__menu-link-text:hover::after {
    transform: scaleX(1);
  }
  .header__menu .header__menu-link:hover theme-icon {
    background-color: #F1CB7E !important;
    transition: background-color 0.35s ease;
  }
  @keyframes tlhMenuGold {
    from { background-position: 100% 0; }
    to { background-position: -120% 0; }
  }

  /* ---------- Bulles : filet or + reflet qui circule, halo or ---------- */
  header-component .dropdown-content {
    border: 1px solid transparent !important;
    background:
      linear-gradient(#0A0A0A, #0A0A0A) padding-box,
      linear-gradient(100deg, #7A5218 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #7A5218 100%) border-box !important;
    background-size: 100% 100%, 220% 100% !important;
    background-position: 0 0, 100% 0;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.6), 0 0 22px rgba(226, 181, 103, 0.14) !important;
    animation: tlhBubbleGold 3.2s linear infinite;
  }
  @keyframes tlhBubbleGold {
    from { background-position: 0 0, 100% 0; }
    to { background-position: 0 0, -120% 0; }
  }
  /* Choix pays / devise : survol et pays choisi en or */
  header-component .localization-form__country {
    background-image: linear-gradient(100deg, #A97A34 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #A97A34 100%);
    background-size: 220% 100%;
    background-position: 100% 0;
    -webkit-background-clip: text;
    background-clip: text;
    transition: -webkit-text-fill-color 0.35s ease;
  }
  header-component .localization-form__country:hover {
    -webkit-text-fill-color: transparent;
    animation: tlhMenuGold 3.2s linear infinite;
  }
  header-component .localization-form__country--selected {
    -webkit-text-fill-color: transparent;
    box-shadow: inset 0 0 0 1px rgba(226, 181, 103, 0.35);
  }
  header-component .localization-form__country theme-icon { background: #E2B567 !important; }

  /* ---------- Pays / devise, Mon compte, Panier : or fixe ---------- */
  header-component .header__icon-account theme-icon,
  header-component .header__icon-cart theme-icon,
  header-component .dropdown-localization__toggle theme-icon,
  header-component .header__menu-mobile theme-icon {
    background: linear-gradient(135deg, #C99A4E 0%, #E2B567 30%, #FFF1C6 52%, #F1CB7E 66%, #D3A457 100%) !important;
  }
  header-component .dropdown-localization__toggle .currency-code {
    font-weight: 600;
    letter-spacing: 0.04em;
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  header-component .dropdown-localization__toggle .icon-flag { box-shadow: 0 0 0 1px rgba(226, 181, 103, 0.6); }
  header-component .header__icon-count-bubble-inner {
    background: linear-gradient(135deg, #D3A457 0%, #F1CB7E 45%, #FFF1C6 60%, #E2B567 100%) !important;
    color: #2B1A06 !important;
    font-weight: 700;
  }
  header-component .header__icon-account,
  header-component .header__icon-cart,
  header-component .dropdown-localization__toggle { transition: filter 0.3s ease; }
  @media (hover: hover) {
    header-component .header__icon-account:hover,
    header-component .header__icon-cart:hover,
    header-component .dropdown-localization__toggle:hover { filter: brightness(1.15) drop-shadow(0 0 6px rgba(226, 181, 103, 0.35)); }
  }
  @media (prefers-reduced-motion: reduce) {
    header-component .dropdown-content { animation: none; }
  }

/* ===== tlh-menu-mobile.liquid — style 1 ===== */
  .header__mobile-menu {
    background:
      radial-gradient(140% 50% at 50% 0%, rgba(226, 181, 103, 0.11) 0%, rgba(226, 181, 103, 0) 62%),
      #0A0A0A !important;
  }
  .header__mobile-menu-header { position: relative; }
  .header__mobile-menu [data-ref="menu-close"] theme-icon {
    background: linear-gradient(135deg, #C99A4E 0%, #E2B567 30%, #FFF1C6 52%, #F1CB7E 66%, #D3A457 100%) !important;
  }
  /* Logo de la maison, à la même place que dans l'en-tête du site */
  .header__mobile-menu-header { min-height: 70px; align-items: center; }
  .header__mobile-menu-header .tlh-mm-logo {
    position: absolute !important;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    height: 70px;
    display: flex !important;
    align-items: center;
    margin: 0 !important;
  }
  /* Focus : filet or discret au lieu du contour bleu du navigateur */
  .header__mobile-menu a:focus,
  .header__mobile-menu summary:focus { outline: none; }
  .header__mobile-menu a:focus-visible,
  .header__mobile-menu summary:focus-visible { outline: 1px solid rgba(226, 181, 103, 0.6); outline-offset: 2px; }

  /* Lignes principales : numérotées, filet or, flèche or */
  .header__mobile-menu-nav {
    counter-reset: tlhm;
    gap: 0 !important;
    padding: 8px 28px 16px !important;
  }
  .header__mobile-menu-nav > a.header__mobile-menu-link,
  .header__mobile-menu-nav > .accordion-animation {
    border-bottom: 1px solid rgba(226, 181, 103, 0.18);
    border-radius: 0 !important;
  }
  .header__mobile-menu-nav > a.header__mobile-menu-link,
  .header__mobile-menu-nav > .accordion-animation summary.header__mobile-menu-link--parent {
    display: flex !important;
    align-items: center;
    gap: 14px;
    padding: 17px 0 !important;
    font-size: 19px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    color: #FFFFFF !important;
  }
  .header__mobile-menu-nav > a.tlh-mm-pillar::before,
  .header__mobile-menu-nav > .tlh-mm-pillar summary.header__mobile-menu-link--parent::before {
    counter-increment: tlhm;
    content: counter(tlhm, decimal-leading-zero);
    min-width: 22px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: #E2B567;
  }
  .header__mobile-menu-nav > a.header__mobile-menu-link::after {
    content: '→';
    margin-left: auto;
    font-size: 16px;
    color: #E2B567;
    opacity: 0.8;
    transition: transform 0.25s ease;
  }
  .header__mobile-menu-nav > a.header__mobile-menu-link:active::after { transform: translateX(3px); }
  .header__mobile-menu-nav summary.header__mobile-menu-link--parent theme-icon {
    margin-left: auto;
    background: #E2B567 !important;
  }
  /* Les trois piliers (trois premières lignes) : numérotés, en dégradé or */
  .header__mobile-menu-nav > .tlh-mm-pillar .header__mobile-menu-link-text {
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .header__mobile-menu-nav > .tlh-mm-pillar--last {
    border-bottom-color: rgba(226, 181, 103, 0.45) !important;
    margin-bottom: 10px;
  }
  /* Le reste en retrait : plus petit, blanc, sans numéro, texte aligné sur celui des piliers */
  .header__mobile-menu-nav > a.tlh-mm-sec,
  .header__mobile-menu-nav > .tlh-mm-sec summary.header__mobile-menu-link--parent {
    padding: 14px 0 14px 36px !important;
    font-size: 16px !important;
    letter-spacing: 0.08em !important;
  }
  .header__mobile-menu-nav > a.tlh-mm-sec::after { font-size: 14px; }
  .header__mobile-menu-nav > .tlh-mm-sec .header__mobile-menu-link--child { padding-left: 52px !important; }

  /* Sous-menu « Autres » : plus petit, plus discret */
  .header__mobile-menu-nav .header__mobile-menu-link--child {
    padding: 10px 0 10px 36px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    color: rgba(255, 255, 255, 0.72) !important;
  }
  .header__mobile-menu-nav .header__mobile-menu-submenu { padding-bottom: 10px; }

  /* Bas du menu : Mon compte + pays / devise en pastilles or, réseaux en or, rappel huissier */
  .header__mobile-menu-footer {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 20px 28px 24px !important;
    border-top: 1px solid rgba(226, 181, 103, 0.28) !important;
  }
  .header__mobile-menu-footer .tlh-mm-account { order: 1; }
  .header__mobile-menu-footer .dropdown-localization { order: 2; }
  .header__mobile-menu-footer .header-drawer-menu-footer { order: 3; flex-basis: 100%; display: flex; justify-content: center; }
  .header__mobile-menu-footer .tlh-mm-tag { order: 4; flex-basis: 100%; }
  .header__mobile-menu-footer .tlh-mm-account,
  .header__mobile-menu-footer .dropdown-localization__toggle {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 18px !important;
    border: 1px solid rgba(226, 181, 103, 0.55) !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase;
    text-decoration: none !important;
  }
  .header__mobile-menu-footer .tlh-mm-account span {
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .header__mobile-menu-footer .social-icons {
    --icon-color: #E2B567 !important;
    justify-content: center !important;
    gap: 22px !important;
  }
  .header__mobile-menu-footer .tlh-mm-tag {
    margin: 4px 0 0;
    text-align: center;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.5);
  }

  /* Apparition en cascade à l'ouverture */
  @media (prefers-reduced-motion: no-preference) {
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > * {
      animation: tlhMmIn 0.55s cubic-bezier(0.2, 0.7, 0.2, 1) both;
    }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(2) { animation-delay: 0.04s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(3) { animation-delay: 0.08s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(4) { animation-delay: 0.12s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(5) { animation-delay: 0.16s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(6) { animation-delay: 0.2s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(7) { animation-delay: 0.24s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(8) { animation-delay: 0.28s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-nav > :nth-child(n+9) { animation-delay: 0.32s; }
    .header__mobile-menu-overlay.is-open .header__mobile-menu-footer { animation: tlhMmIn 0.6s 0.3s cubic-bezier(0.2, 0.7, 0.2, 1) both; }
  }
  @keyframes tlhMmIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: none; }
  }

/* ===== tlh-da.liquid — style 1 ===== */
  /* ---------- 1. Boutons secondaires : or au survol ---------- */
  .button.button--secondary,
  .article-content .cta-final-btn-sec {
    transition: border-color 0.35s ease, color 0.35s ease, box-shadow 0.35s ease, -webkit-text-fill-color 0.35s ease;
  }
  @media (hover: hover) {
    .button.button--secondary:not([disabled]):hover,
    .article-content .cta-final-btn-sec:hover {
      opacity: 1 !important;
      border-color: #E2B567 !important;
      color: #F1CB7E !important;
      box-shadow: 0 0 18px rgba(226, 181, 103, 0.16);
      background-image: linear-gradient(100deg, #A97A34 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #A97A34 100%);
      background-size: 220% 100%;
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      animation: tlhDaGold 3.2s linear infinite;
    }
    .button.button--secondary:not([disabled]):hover theme-icon {
      background-color: #F1CB7E !important;
    }
  }

  /* Pied de page : menu et mentions */
  .shopify-section-group-footer-group .menu-block__link,
  .shopify-section-group-footer-group .policy-list__link {
    position: relative;
    background-image: linear-gradient(100deg, #A97A34 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #A97A34 100%);
    background-size: 220% 100%;
    background-position: 100% 0;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: currentColor;
    transition: -webkit-text-fill-color 0.35s ease;
  }
  .shopify-section-group-footer-group .menu-block__link::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -4px;
    height: 1px;
    background: linear-gradient(90deg, rgba(226, 181, 103, 0), #E2B567 20%, #FFF1C6 50%, #E2B567 80%, rgba(226, 181, 103, 0));
    transform: scaleX(0);
    transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
    pointer-events: none;
  }
  @media (hover: hover) {
    .shopify-section-group-footer-group .menu-block__link:hover,
    .shopify-section-group-footer-group .policy-list__link:hover {
      opacity: 1 !important;
      text-decoration: none !important;
      -webkit-text-fill-color: transparent;
      animation: tlhDaGold 3.2s linear infinite;
    }
    .shopify-section-group-footer-group .menu-block__link:hover::after { transform: scaleX(1); }
  }
  @keyframes tlhDaGold {
    from { background-position: 100% 0; }
    to { background-position: -120% 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .button.button--secondary:hover,
    .article-content .cta-final-btn-sec:hover,
    .shopify-section-group-footer-group .menu-block__link:hover,
    .shopify-section-group-footer-group .policy-list__link:hover { animation: none !important; }
  }

  /* ---------- 2. En-têtes de page (même DA que Devenir membre⁺) ---------- */
  /* Titre en or, reflet lent synchronisé avec les titres des fiches produit (toutes les 8 s) */
  .tlh-da-title {
    display: inline-block;
    max-width: 100%;
    font-size: 48px !important;
    line-height: 1.25 !important;
    letter-spacing: normal !important;
    padding-bottom: 0.04em;
    background-image:
      linear-gradient(105deg, transparent 42%, rgba(255, 250, 230, 0.95) 50%, transparent 58%),
      linear-gradient(100deg, #D3A457 0%, #F1CB7E 28%, #FFF1C6 46%, #E2B567 64%, #C99A4E 100%);
    background-size: 250% 100%, 100% 100%;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent !important;
    animation: tlh-sync-sweepT 8s ease-in-out infinite;
  }
  .tlh-da-title * { -webkit-text-fill-color: transparent; color: transparent !important; }
  @keyframes tlh-sync-sweepT {
    0% { background-position: 100% 0, 0 0; }
    35%, 100% { background-position: 0% 0, 0 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .tlh-da-title { animation: none; background-position: 100% 0, 0 0; }
  }
  /* Phrase d'accueil en blanc sous le titre or (le filet or ferait doublon) */
  .tlh-da-intro {
    font-size: 18px !important;
    line-height: 1.6 !important;
    color: #FFFFFF !important;
    margin-top: 12px !important;
    font-style: normal !important;
    letter-spacing: 0.01em;
    max-width: 720px;
  }
  .tlh-da-intro em,
  .tlh-da-intro i { font-style: normal !important; }
  .tlh-da-intro::before { content: none !important; display: none !important; }
  /* Textes d'appui de l'en-tête : gris clair, pour garder la hiérarchie titre or > phrase blanche > le reste */
  .tlh-da-head .text-block p:not(.tlh-da-intro),
  .tlh-da-head li { color: rgba(255, 255, 255, 0.72) !important; }
  .tlh-da-intro a {
    color: #F1CB7E !important;
    text-decoration-color: rgba(241, 203, 126, 0.5) !important;
    text-underline-offset: 3px;
  }
  .tlh-da-intro strong {
    font-weight: 600;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF;
  }
  /* Phrase entièrement en gras dans l'éditeur : même rendu que les autres en-têtes */
  .tlh-da-flat strong {
    font-weight: inherit;
    color: inherit !important;
    -webkit-text-fill-color: currentColor;
  }
  @media (max-width: 749px) {
    .tlh-da-title { font-size: 32px !important; }
    .tlh-da-intro { font-size: 15px !important; }
    .tlh-da-intro::before { margin-top: 10px; }
  }
  .text-block-center-mobile .tlh-da-intro::before,
  .text-block-center-desktop .tlh-da-intro::before { margin-left: auto; margin-right: auto; }
  @media (min-width: 750px) {
    .text-block-left-desktop .tlh-da-intro::before { margin-left: 0; margin-right: 0; }
  }
  @media (max-width: 749px) {
    .text-block-left-mobile .tlh-da-intro::before { margin-left: 0; margin-right: 0; }
  }

  /* Où nous trouver : sous-titre en capitales or, texte d'appui sans italique */
  .tlh-da-intro.tlh-da-eyebrow {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase;
    color: #FFFFFF !important;
    margin: 4px 0 0 !important;
  }
  .tlh-da-plain,
  .tlh-da-plain em,
  .tlh-da-plain i { font-style: normal !important; color: rgba(255, 255, 255, 0.72) !important; }

  /* Titres de section des pages : 32 px comme l'accueil */
  .tlh-da-h2 { font-size: 32px !important; line-height: 1.25 !important; }
  @media (max-width: 749px) { .tlh-da-h2 { font-size: 24px !important; } }

  /* ---------- En-têtes : même place sur toutes les pages (repère : Nos displays) ----------
     Titre calé à gauche, 33 px sous le menu, phrase d'accueil 12 px dessous, ordinateur comme téléphone. */
  .tlh-da-head .text-block:has(> .tlh-da-title) {
    margin: 0 !important;
    text-align: left !important;
  }
  .tlh-da-head .tlh-da-title {
    display: block !important;
    width: fit-content;
    margin: 0 !important;
    text-align: left !important;
  }
  .tlh-da-head .text-block:has(> .tlh-da-intro) { margin-top: 0 !important; text-align: left !important; }
  .tlh-da-head .tlh-da-intro { margin-top: 12px !important; text-align: left !important; }
  [id$="__custom_section_DDp9dX"] .custom-section__inner,
  .section-main-page.tlh-da-head .main-page__inner { padding-top: 33px !important; }
  [id$="__image_banner_e3yQgP"] .image-banner__content { padding: 33px 0 40px !important; }
  [id$="__image_banner_e3yQgP"] .image-banner__content > .group { margin-top: 0 !important; }
  /* Espacement automatique entre blocs (20 px / 10 px) neutralisé sous le titre : phrase à 12 px partout */
  .section-main-page.tlh-da-head .text-block:has(> .tlh-da-title) { margin-bottom: -20px !important; }
  [id$="__image_banner_e3yQgP"].tlh-da-head .text-block:has(> .tlh-da-title) { margin-bottom: -10px !important; }

  /* ---------- 3. Bouton principal or (même or et même taille que « Ouvre que des hits ») ---------- */
  .tlh-da-cta,
  .tlh-qa__btn.tlh-mb-go {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 35px;
    padding: 5px 14px !important;
    border-radius: 10px !important;
    font-family: inherit;
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: 0.4px !important;
    line-height: 1.4 !important;
    text-transform: uppercase;
    text-decoration: none !important;
    /* Or poli de « Ouvre que des hits » : double filet (or / noir), biseau, reflet */
    background-color: #E2B567 !important;
    background-image:
      linear-gradient(105deg, transparent 40%, rgba(255, 248, 225, 0.65) 50%, transparent 60%),
      linear-gradient(180deg, rgba(255, 252, 235, 0.6) 0%, rgba(255, 245, 210, 0) 24%, rgba(0, 0, 0, 0) 64%, rgba(80, 45, 5, 0.32) 100%),
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='52' viewBox='0 0 400 52' preserveAspectRatio='none'%3E%3Cfilter id='s' x='0' y='0' width='100%25' height='100%25' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.004 0.9' numOctaves='2' seed='7'/%3E%3CfeColorMatrix values='0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 0 1'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncG type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncB type='linear' slope='2.2' intercept='-0.6'/%3E%3CfeFuncA type='linear' slope='0' intercept='0.14'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cg transform='rotate(-14 200 26)'%3E%3Crect x='-120' y='-140' width='640' height='332' filter='url(%23s)'/%3E%3C/g%3E%3C/svg%3E"),
      linear-gradient(112deg, #A97A34 0%, #D3A457 8%, #F1CB7E 16%, #FCE3A2 22%, #FFF6D2 25%, #F8DA95 30%, #E2B567 41%, #CC9C4E 48%, #D7A95B 54%, #EFC97F 63%, #FBE2A4 71%, #FFF1C6 74%, #F3D18B 80%, #D6A85C 90%, #A87A35 100%) !important;
    background-size: 250% 100%, 100% 100%, 100% 100%, 100% 100% !important;
    background-repeat: no-repeat !important;
    background-position: 100% 0, 0 0, 0 0, 0 0;
    background-blend-mode: screen, normal, overlay, normal;
    color: #2B1A06 !important;
    -webkit-text-fill-color: #2B1A06;
    border: 1px solid rgba(214, 170, 90, 0.85) !important;
    box-shadow:
      inset 0 0 0 2px #0B0B0C,
      inset 0 0 0 3px #7A5218,
      inset 0 4px 0 rgba(255, 250, 225, 1),
      inset 0 0 0 5px rgba(255, 236, 180, 0.4),
      inset 0 -5px 0 rgba(120, 75, 20, 0.55),
      0 10px 26px rgba(0, 0, 0, 0.55) !important;
    text-shadow: 0 1px 0 rgba(255, 245, 215, 0.7);
    opacity: 1 !important;
    transition: filter 0.3s ease, transform 0.12s ease, background-position 1.4s cubic-bezier(0.45, 0, 0.25, 1);
  }
  .tlh-da-cta *,
  .tlh-qa__btn.tlh-mb-go * { color: #2B1A06 !important; -webkit-text-fill-color: #2B1A06; }
  .tlh-da-cta theme-icon { background-color: #2B1A06 !important; }
  .tlh-qa__btn.tlh-mb-go[disabled] { opacity: 0.7 !important; }
  @media (hover: hover) {
    .tlh-da-cta:hover,
    .tlh-qa__btn.tlh-mb-go:not([disabled]):hover {
      filter: brightness(1.07) saturate(1.05);
      background-position: 0% 0, 0 0, 0 0, 0 0;
    }
  }
  .tlh-da-cta:active,
  .tlh-qa__btn.tlh-mb-go:active {
    transform: translateY(1px);
    filter: brightness(0.97);
  }
  @media (max-width: 749px) {
    .tlh-da-cta { font-size: 15px !important; }
  }
  /* Bouton secondaire hors thème (The True Story) */
  .article-content .cta-final-btn-sec {
    display: inline-flex;
    align-items: center;
    min-height: 35px;
    padding: 5px 14px;
    border: 1px solid #FFFFFF;
    border-radius: 7px;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.4px;
    line-height: 1.4;
  }

/* ===== tlh-girlboy.liquid — style 1 ===== */
  /* ---------- Pastille (commune) ---------- */
  .tlh-gb-dot {
    display: block;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background:
      radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 40%),
      linear-gradient(145deg, var(--tlh-c1) 0%, var(--tlh-c2) 100%);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16), inset 0 -3px 6px rgba(0, 0, 0, 0.18);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
  }
  .tlh-gb-dot--girl { --tlh-c1: #F6DCD8; --tlh-c2: #CFA09D; }
  .tlh-gb-dot--boy { --tlh-c1: #D4E2FA; --tlh-c2: #7E9FDD; }
  .is-tlh-on .tlh-gb-dot {
    box-shadow: 0 0 0 2px #0A0A0A, 0 0 0 3px #E2B567, 0 0 16px rgba(226, 181, 103, 0.35), inset 0 -3px 6px rgba(0, 0, 0, 0.18);
  }
  @media (hover: hover) {
    .tlh-gb-mini button:hover .tlh-gb-dot { transform: scale(1.06); }
  }
  .tlh-gb-name {
    display: block;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.14em;
    line-height: 1.3;
    text-transform: uppercase;
    white-space: nowrap;
    color: rgba(255, 255, 255, 0.6);
    transition: color 0.3s ease;
  }
  .is-tlh-on .tlh-gb-name {
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  /* ---------- Fiche produit : pastilles dessinées en CSS pur ----------
     Aucune attente du script : quand le thème redessine la fiche (fondu enchaîné), la nouvelle version
     est déjà en pastilles. Plus d'apparition de l'ancien bouton blanc. */
  variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-values { gap: 22px !important; }
  variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-value label {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 9px;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 2px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
    outline: 0;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    line-height: 1.3 !important;
    text-transform: uppercase;
    white-space: nowrap;
    color: rgba(255, 255, 255, 0.6) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    transition: none !important;
  }
  variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-value label::before {
    content: '' !important;
    display: block !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    opacity: 1 !important;
    flex: none;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background:
      radial-gradient(circle at 32% 28%, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 40%),
      linear-gradient(145deg, var(--tlh-c1, #F6DCD8) 0%, var(--tlh-c2, #CFA09D) 100%) !important;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16), inset 0 -3px 6px rgba(0, 0, 0, 0.18) !important;
    transition: box-shadow 0.3s ease, transform 0.3s ease !important;
  }
  variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-value label::after { display: none !important; content: none !important; }
  variant-picker[data-product-url*="girl-power-lucky-boy"] input[value="THE GIRL POWER"] + label { --tlh-c1: #F6DCD8; --tlh-c2: #CFA09D; }
  variant-picker[data-product-url*="girl-power-lucky-boy"] input[value="THE LUCKY BOY"] + label { --tlh-c1: #D4E2FA; --tlh-c2: #7E9FDD; }
  variant-picker[data-product-url*="girl-power-lucky-boy"] input:checked + label {
    background-image: linear-gradient(100deg, #D3A457 0%, #F1CB7E 30%, #FFF1C6 48%, #E2B567 66%, #C99A4E 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent;
  }
  variant-picker[data-product-url*="girl-power-lucky-boy"] input:checked + label::before {
    box-shadow: 0 0 0 2px #0A0A0A, 0 0 0 3px #E2B567, 0 0 16px rgba(226, 181, 103, 0.35), inset 0 -3px 6px rgba(0, 0, 0, 0.18) !important;
  }
  @media (hover: hover) {
    variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-value label:hover::before { transform: scale(1.06) !important; }
  }

  /* ---------- Fiche produit : photo du sachet choisi, appliquée par le style (instantané) ---------- */
  /* (le visuel double ou l'autre sachet, quel que soit celui que le thème affiche) */
  html[data-tlh-gb="girl"] .product-section img[src*="girl_da5e8cd1-fe05-4b7b-9037-abc55327fa8e"],
  html[data-tlh-gb="girl"] .product-section img[src*="10_9af37bee-7eaf-444b-9195-54d7fa05192c"] {
    content: url("https://www.theluckyhand.fr/cdn/shop/files/9_2c1493be-4f97-43de-980c-7f0a87001bb4.png?v=1792507902&width=1200");
  }
  html[data-tlh-gb="boy"] .product-section img[src*="girl_da5e8cd1-fe05-4b7b-9037-abc55327fa8e"],
  html[data-tlh-gb="boy"] .product-section img[src*="9_2c1493be-4f97-43de-980c-7f0a87001bb4"] {
    content: url("https://www.theluckyhand.fr/cdn/shop/files/10_9af37bee-7eaf-444b-9195-54d7fa05192c.png?v=1792507918&width=1200");
  }

  /* ---------- Panier : « Avant de valider » ---------- */
  .tlh-gb-cs .cross-sell__select { display: none !important; }
  /* Même présentation que les autres cartes : photo, titre, prix, bouton à droite ;
     les deux pastilles se glissent, petites, sous le prix */
  .tlh-gb-cs .cross-sell__title { text-transform: uppercase; }
  .tlh-gb-mini { display: flex; align-items: center; gap: 10px; margin-top: 6px; }
  .tlh-gb-mini button {
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
    border-radius: 50%;
  }
  .tlh-gb-mini button { display: block; line-height: 0; }
  .tlh-gb-mini .tlh-gb-dot { width: 17px; height: 17px; box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16), inset 0 -2px 4px rgba(0, 0, 0, 0.18); }
  .tlh-gb-mini .is-tlh-on .tlh-gb-dot { box-shadow: 0 0 0 2px #0A0A0A, 0 0 0 3px #E2B567, 0 0 10px rgba(226, 181, 103, 0.35), inset 0 -2px 4px rgba(0, 0, 0, 0.18); }

/* ===== tlh-crosssell.liquid — style 1 ===== */
  /* ---------- Carte ---------- */
  .product-section__product-info .cross-sells .cross-sell.card {
    grid-template-columns: auto 1fr !important;
    grid-template-areas: 'image content' !important;
    align-items: center;
    min-height: 120px;
    border-color: rgba(226, 181, 103, 0.85) !important;
    background: #0A0A0A;
  }
  .product-section__product-info .cross-sells .cross-sell__image { max-height: 96px; object-fit: contain; }
  /* Titre + prix à gauche, bouton à droite, centrés en hauteur */
  .product-section__product-info .cross-sells .cross-sell__content {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    min-width: 0;
  }
  .product-section__product-info .cross-sells .cross-sell__heading { flex: 1 1 auto; min-width: 0; }
  .product-section__product-info .cross-sells .cross-sell__title { text-transform: uppercase; }
  .product-section__product-info .cross-sells .cross-sell__actions {
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: auto !important;
  }
  /* Menu des versions déjà remplacé par les pastilles (Girl or Boy) ou inutile (une seule version) : on libère la place */
  .product-section__product-info .cross-sells .cross-sell__selects:not(:has(.cross-sell__select:not(.hidden))),
  .product-section__product-info .cross-sells .tlh-gb-cs .cross-sell__selects { display: none !important; }

  /* ---------- Bouton « Ajouter » : bouton secondaire or, comme dans le panier ---------- */
  .product-section__product-info .cross-sells .cross-sell__form button.button {
    background: #0A0A0A !important;
    color: #F1CB7E !important;
    border: 1px solid rgba(226, 181, 103, 0.85) !important;
    box-shadow: none !important;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
  }
  .product-section__product-info .cross-sells .cross-sell__form button.button * { color: inherit !important; }
  .product-section__product-info .cross-sells .cross-sell__form button.button theme-icon { background-color: currentColor !important; }
  @media (hover: hover) {
    .product-section__product-info .cross-sells .cross-sell__form button.button:hover {
      background: rgba(226, 181, 103, 0.12) !important;
      border-color: #F1CB7E !important;
      color: #FFF1C6 !important;
    }
  }

  /* ---------- Indicateurs du carrousel en or (fiche produit et panier) ---------- */
  .cross-sells .splide__pagination__page { background: rgba(226, 181, 103, 0.3) !important; opacity: 1 !important; }
  .cross-sells .splide__pagination__page.is-active { background: #E2B567 !important; }

/* ===== tlh-titres.liquid — style 1 ===== */
  html .tlh-da-title:not(.hero-title) {
    font-size: 36px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.02em !important;
  }
  html .tlh-da-h2 { font-size: 28px !important; }
  @media (max-width: 749px) {
    html .tlh-da-title:not(.hero-title) { font-size: 28px !important; }
    html .tlh-da-h2 { font-size: 22px !important; }
    html .tlh-da-head .tlh-da-intro { margin-top: 14px !important; }
  }
  @media (min-width: 750px) {
    html .tlh-da-head .text-block:has(> .tlh-da-intro) {
      width: auto !important;
      max-width: 720px !important;
      flex: 0 1 auto !important;
    }
    html .tlh-da-head .tlh-da-intro { margin-top: 18px !important; }
    html .tlh-da-intro:not(.tlh-da-eyebrow) {
      font-size: 17px !important;
      line-height: 1.65 !important;
      color: rgba(242, 237, 228, 0.85) !important;
    }
    html .tlh-da-intro:not(.tlh-da-eyebrow) > span { white-space: nowrap; }
  }

/* ===== tlh-luxe.liquid — style 1 ===== */
  /* ---------- 1. Barre de menu (ordinateur) ---------- */
  @media (width > 1000px) {
    html:root { --header-height: 84px; }
    html .header__layout-desktop .header__logo-image,
    html .header__layout-desktop .header__logo-image--transparent {
      height: 72px !important;
      width: auto !important;
    }
  }


  /* ---------- 2. Devenir membre⁺ ---------- */
  html .mbp .mbp-big {
    container-type: inline-size;
    border: 1px solid rgba(226, 181, 103, 0.3);
    background: linear-gradient(180deg, rgba(226, 181, 103, 0.045) 0%, rgba(226, 181, 103, 0) 70%);
    padding: 26px 24px;
    min-height: 0;
  }
  html .mbp .mbp-big .deco { display: none !important; }
  html .mbp .mbp-big > span { font-weight: 500; font-size: 14.5px; opacity: 1; color: var(--color-foreground); max-width: none; white-space: normal; }
  html .mbp .mbp-head { height: auto; }
  /* Emblèmes or : même police, même taille, même métal poli pour les quatre avantages ;
     la taille s'adapte à la largeur des encarts pour que « CADEAUX » tienne toujours en entier */
  html .mbp .mbp-big .mbp-head span.tlh-emb {
    display: inline-block;
    margin: 0;
    max-width: none;
    opacity: 1;
    font-size: min(40px, 19cqi);
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
    background-image: linear-gradient(180deg, #FFF4CF 0%, #F3D38A 24%, #D7A651 46%, #A87731 56%, #E5BE6E 72%, #FFF0C2 88%, #C99A4E 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    filter: drop-shadow(0 1px 0 rgba(90, 58, 14, 0.95)) drop-shadow(0 8px 18px rgba(226, 181, 103, 0.14));
    padding-bottom: 0.04em;
  }
  .tlh-emb sup { font-size: 0.5em; vertical-align: 0.85em; margin-left: 0.04em; }
  .tlh-emb small { font-size: 0.62em; margin-left: 0.04em; }
  html .mbp .mbp-card { border-color: rgba(226, 181, 103, 0.16); }
  html .mbp .mbp-card p { opacity: 1; color: var(--color-foreground); }
  html .mbp .mbp-card strong { font-weight: 600; }
  @media (max-width: 750px) {
    html .mbp .mbp-big,
    html .mbp .mbp-big.has-deco { padding: 18px 14px; }
    html .mbp .mbp-big .mbp-head span.tlh-emb { font-size: min(24px, 19cqi); }
    html .mbp .mbp-big > span { font-size: 13.5px; }
  }
  /* Cartes boosters : bouton « Devenir membre⁺ » juste sous le prix, bloc centré */
  html .main-collection product-card.tlh-mb-card .tlh-qa { margin-top: -8px !important; }

  /* ---------- 3. Phrases d'introduction : une couleur, le lien en or ---------- */
  html body .tlh-da-intro:not(.tlh-da-eyebrow),
  html body .tlh-mb-intro,
  html body .tlh-da-head .text-block p:not(.tlh-da-intro),
  html body .tlh-da-head li {
    color: var(--color-foreground) !important;
    -webkit-text-fill-color: var(--color-foreground) !important;
    font-weight: 400 !important;
  }
  html body .tlh-da-intro:not(.tlh-da-eyebrow) :is(strong, b, em, i, span),
  html body .tlh-mb-intro :is(strong, b, em, i, span:not(.tlh-tm)) {
    font-weight: inherit !important;
    font-style: normal !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    background: none !important;
  }
  html body .tlh-da-intro a,
  html body .tlh-mb-intro a {
    color: #E2B567 !important;
    -webkit-text-fill-color: #E2B567 !important;
    font-weight: 400 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-decoration-color: rgba(226, 181, 103, 0.45) !important;
    text-underline-offset: 4px;
    transition: text-decoration-color 0.25s ease, color 0.25s ease;
  }
  /* Mobile : « Voir le registre → » sur sa propre ligne, sans point de séparation */
  @media (max-width: 749px) {
    html body .tlh-da-intro .tlh-lx-sep { display: none; }
    html body .tlh-da-intro:has(.tlh-lx-sep) a { display: table; margin-top: 2px; }
  }
  @media (hover: hover) {
    html body .tlh-da-intro a:hover,
    html body .tlh-mb-intro a:hover { color: #F1CB7E !important; -webkit-text-fill-color: #F1CB7E !important; text-decoration-color: #F1CB7E !important; }
  }

  /* ---------- 4. Menu ordinateur ---------- */
  @media (width > 1000px) {
    /* Écriture : même signature que le menu mobile (graisse 600, capitales, lettres espacées) */
    html .header__menu-desktop .header__menu-desktop-list { column-gap: 1.8rem !important; }
    html .header__menu-desktop .header__menu-link-text {
      font-size: 14px !important;
      font-weight: 600 !important;
      letter-spacing: 0.12em !important;
    }
    html .header__menu-desktop .header__menu-link--parent theme-icon { transform: scale(0.85); }
    /* Sous-menu : sans puces, bien espacé */
    html .header__menu-desktop .dropdown-content { padding: 10px 8px !important; min-width: 230px; }
    html .header__menu-desktop .header__menu-item--dropdown .header__submenu-link {
      padding: 10px 16px !important;
      font-size: 14px !important;
      font-weight: 500 !important;
      letter-spacing: 0.12em !important;
      text-transform: uppercase;
      white-space: nowrap;
    }
    /* Liseré or dégradé sous la barre (même or que les bulles du menu) */
    html .header__layout-desktop.header__layout--bottom-border { border-bottom: 0 !important; position: relative; }
    html .header__layout-desktop.header__layout--bottom-border::after {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 1.5px;
      background: linear-gradient(100deg, #7A5218 0%, #D3A457 18%, #F1CB7E 36%, #FFF6D2 50%, #F1CB7E 64%, #D3A457 82%, #7A5218 100%);
      pointer-events: none;
    }
    /* Barre fixe : pas de réduction au défilement */
    html .header__layout-desktop :is(.header__layout--logo-left, .header__layout--logo-left-menu-left, .header__layout--logo-center),
    html .header__layout-desktop .header__logo-image,
    html .section-header { transition: none !important; }
  }

  /* ---------- 6. « Quel booster pour toi ? » (téléphone) ---------- */
  html .tlh-cmp--pick .tlh-cmp__list { border-color: rgba(226, 181, 103, 0.22); }
  @media (max-width: 749px) {
    html .tlh-cmp h2 { font-size: 22px; }
    html .tlh-cmp__sub { font-size: 14px; }
    html .tlh-cmp--pick .tlh-cmp__row {
      grid-template-columns: auto auto 1fr auto;
      grid-template-areas: 'n f . g' 'r r r r' 'u u u m';
      align-items: center;
      row-gap: 9px;
      column-gap: 8px;
      padding: 16px;
    }
    html .tlh-cmp--pick .tlh-cmp__name { font-size: 14px; line-height: 1.2; }
    /* Drapeau à côté du nom, à la même taille */
    html .tlh-cmp--pick .tlh-cmp__flag { font-size: 14px; line-height: 1; text-align: left; justify-self: start; }
    /* Taux de drop : une seule ligne */
    html .tlh-cmp--pick .tlh-cmp__rates { flex-wrap: nowrap; gap: 0; overflow: hidden; }
    html .tlh-cmp--pick .tlh-cmp__rates span + span::before { margin: 0 1.4vw; }
    html .tlh-cmp--pick .tlh-cmp__go { justify-self: end; font-size: 10px; letter-spacing: 0.16em; }
    html .tlh-cmp--pick .tlh-cmp__rates span {
      padding: 0;
      border: 0;
      border-radius: 0;
      font-size: clamp(9px, 2.55vw, 11.5px);
      font-weight: 500;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      white-space: nowrap;
      color: var(--color-foreground);
    }
    /* Prix : Achat unique d'abord, puis Membre⁺ (en or, à droite) */
    html .tlh-cmp--pick .tlh-cmp__price { display: flex; align-items: baseline; gap: 6px; font-size: 15px; }
    html .tlh-cmp--pick .tlh-cmp__price--u { grid-area: u; justify-self: start; }
    html .tlh-cmp--pick .tlh-cmp__price--m { grid-area: m; justify-self: end; }
    html .tlh-cmp--pick .tlh-cmp__lbl { display: inline; margin: 0; font-size: 9.5px; letter-spacing: 0.14em; }
  }

  /* ---------- 7. Palette : blanc pour les titres, noms et prix ; ivoire pour tout le reste ; l'or ne bouge pas ---------- */
  /* Blanc des titres : blanc pur sur les fonds sombres ; sur les fonds clairs, la couleur du schéma reste */
  html:root,
  html .color-scheme-1,
  html .color-scheme-c74f113f-f4dd-4a11-acb9-06b77978b261,
  html .color-scheme-fe54f138-8a65-4534-9910-137d2141b69b,
  html .color-scheme-e269be08-fbc6-4536-bbfd-1e5b11741c93 { --tlh-titre: #FFFFFF; }
  html .color-scheme-2,
  html .color-scheme-3,
  html .color-scheme-bd906876-cade-4f55-b01d-a4e4a8afdb45,
  html .color-scheme-c3a59cdc-e30e-46ae-8e2c-4ef78d355309,
  html .color-scheme-e569913b-6de2-48e0-9670-b452c8c82298 { --tlh-titre: var(--color-foreground); }
  /* Bordure des boutons principaux : ivoire au lieu du blanc */
  html:root,
  html .color-scheme-1 { --color-primary-button-border: rgba(242, 237, 228, 1); }
  /* Schémas sombres qui étaient en blanc : le texte courant, les filets et les champs passent en ivoire */
  html .color-scheme-c74f113f-f4dd-4a11-acb9-06b77978b261,
  html .color-scheme-fe54f138-8a65-4534-9910-137d2141b69b,
  html .color-scheme-e269be08-fbc6-4536-bbfd-1e5b11741c93 {
    --color-foreground: rgba(242, 237, 228, 1);
    --color-border: rgba(242, 237, 228, 1);
    --color-input-text: rgba(242, 237, 228, 1);
    --color-input-border: rgba(242, 237, 228, 1);
    --color-input-border-low-opacity: rgba(242 237 228 / 0.55);
    --color-selected-input-background: rgba(242, 237, 228, 1);
    --color-selected-input-border: rgba(242, 237, 228, 1);
    --color-selected-input-border-low-opacity: rgba(242 237 228 / 0.55);
    --color-variant-text: rgba(242, 237, 228, 1);
    --color-variant-border: rgba(242, 237, 228, 1);
    --color-selected-variant-background: rgba(242, 237, 228, 1);
    --color-selected-variant-border: rgba(242, 237, 228, 1);
    --color-tab-text: rgba(242, 237, 228, 1);
    --color-tab-border: rgba(242, 237, 228, 1);
    --color-selected-tab-background: rgba(242, 237, 228, 1);
    --color-selected-tab-border: rgba(242, 237, 228, 1);
    --color-primary-badge-text: rgba(242, 237, 228, 1);
    --color-primary-badge-border: rgba(242, 237, 228, 1);
  }
  html .color-scheme-fe54f138-8a65-4534-9910-137d2141b69b { --color-secondary-badge-background: rgba(242, 237, 228, 1); }
  html .color-scheme-e269be08-fbc6-4536-bbfd-1e5b11741c93 { --color-secondary-button-text: rgba(242, 237, 228, 1); }

  /* Titres, noms de produits et prix : blanc pur */
  html :is(h1, h2, h3, h4, .h1, .h2, .h3, .h4),
  html .text-block:is(.h1, .h2, .h3, .h4) > *,
  html .text-block > :is(h1, h2, h3, h4),
  html .cross-sell__title,
  html .price { color: var(--tlh-titre, var(--color-foreground)); }
  html .tlh-invite-dialog__title,
  html .mbq .mbq-head b,
  html .mbp .mbp-head b { color: #FFFFFF; }

  /* Tout le reste : ivoire (mêmes nuances qu'avant, sur base ivoire) */
  html .header__mobile-menu-nav > a.header__mobile-menu-link,
  html .header__mobile-menu-nav > .accordion-animation summary.header__mobile-menu-link--parent { color: #F2EDE4 !important; }
  html .header__mobile-menu-nav .header__mobile-menu-link--child { color: rgba(242, 237, 228, 0.72) !important; }
  html .header__mobile-menu-footer .tlh-mm-tag { color: rgba(242, 237, 228, 0.5); }
  html body .tlh-da-intro.tlh-da-eyebrow,
  html body .tlh-da-intro.tlh-da-eyebrow strong { color: #F2EDE4 !important; -webkit-text-fill-color: #F2EDE4 !important; }
  html body .tlh-da-plain,
  html body .tlh-da-plain :is(em, i) { color: rgba(242, 237, 228, 0.72) !important; }
  html .article-content .cta-final-btn-sec { border-color: #F2EDE4; color: #F2EDE4; }
  html .article-content .hero-label { color: rgba(242, 237, 228, 0.6) !important; }
  html .article-content .hero-sub { color: #F2EDE4 !important; }
  html .article-content .stats { background: rgba(242, 237, 228, 0.12) !important; border-color: rgba(242, 237, 228, 0.12) !important; }
  html .tlh-gb-name { color: rgba(242, 237, 228, 0.6); }
  html variant-picker[data-product-url*="girl-power-lucky-boy"] .variant-picker__option-value label { color: rgba(242, 237, 228, 0.6) !important; -webkit-text-fill-color: rgba(242, 237, 228, 0.6); }
  html .jdgm-histogram__bar-content { background-color: #F2EDE4; }
  html .jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,
  html .jdgm-rev__buyer-badge.jdgm-rev__buyer-badge { background-color: #F2EDE4; }
  html .jdgm-preview-badge .jdgm-star.jdgm-star { color: #F2EDE4; }
  html .jm-text:not(h1, h2, h3, h4) { color: #F2EDE4 !important; }
  html .jm-button { color: #F2EDE4 !important; }
  html .tlh-cmp__list { border-color: rgba(242, 237, 228, 0.12); }
  html .tlh-cmp__row { border-top-color: rgba(242, 237, 228, 0.08); }
  html .tlh-cmp__step { border-color: rgba(242, 237, 228, 0.12); }
  html .mbq { color: #F2EDE4; }
  html .mbq .mbq-big { border-color: rgba(242, 237, 228, 0.4); }
  html .mbq .mbq-list li { border-color: rgba(242, 237, 228, 0.12); }
  html .tlh-reassurance__link { color: #F2EDE4; }
  html .mbp { color: #F2EDE4; }
  html .tlh-club__card { color: #F2EDE4; }
  html .tlh-club__title { color: #FFFFFF; }
  html .tlh-club__submit,
  html .tlh-club__submit:hover,
  html .tlh-invite-dialog__submit,
  html .tlh-invite-dialog__submit:hover { background: #F2EDE4; border-color: #F2EDE4; }
  html .tlh-invite-dialog { color: #F2EDE4; }
  html .tlh-invite-dialog input:-webkit-autofill,
  html .tlh-club input:-webkit-autofill { -webkit-text-fill-color: #F2EDE4 !important; }
  html .tlh-rv { color: #F2EDE4; }
  html .tlh-rv .tlh-rv__card { border-color: rgba(242, 237, 228, 0.4); }
  html .tlh-rv .tlh-rv__card span { color: #F2EDE4; }
  html .tlh-rv .tlh-rv__step { border-color: rgba(242, 237, 228, 0.12); }
  html .tlh-locator .tlh-pdv { border-color: rgba(242, 237, 228, 0.12) !important; }
  html .tlh-locator .tlh-pdv:hover { border-color: rgba(242, 237, 228, 0.34) !important; background: rgba(242, 237, 228, 0.06); }
  html body .tlh-locator__sub,
  html body .tlh-pdv__addr,
  html body .tlh-pdv__link,
  html body .tlh-locator__foot-text { color: rgba(242, 237, 228, 0.6); }
  html body .tlh-pdv__city { color: rgba(242, 237, 228, 0.72); }
  html .tlh-dt { color: #F2EDE4; }
  html .drop-rate-progress-bars__item-label,
  html .drop-rate-progress-bars__item-value { color: #F2EDE4; }
