/* ============================================================
   PMP DECOR — PREMIUM LAYER v2 (VENDEUR PREMIUM)
   2026-05-27
   ADN strict : cyan #2fb5d2, orange #FF9A52, jaune #f1e238, beige #d9d2c2
   Karla, scope préfixé. ZERO selector existant écrasé en non-opt-in.

   ARCHITECTURE COUCHES :
   A — Cards produit premium hover         html.pmp-v2-A
   B — Sticky phone/avis bar               html.pmp-v2-B
   C — USP bande sous hero                 html.pmp-v2-C
   D — Badges produits dynamiques          html.pmp-v2-D
   E — Pop-in newsletter -10€              html.pmp-v2-E
   F — Trust strip enrichi avis 4.9★       html.pmp-v2-F
   G — Hero teaser amélioré (2e CTA)       html.pmp-v2-G

   ROLLBACK GRANULAIRE :
   - Désactiver UNE couche : changer A:true en A:false dans le layout (1 char)
   - Désactiver TOUT : commenter <link> CSS dans layout
   - Restaurer : cp depuis backups/layout-*.pre-premium-20260527
   ============================================================ */

/* ---------- VARIABLES ADN (préfixées) ---------- */
:root{
  --pmp-prem-cyan:#2fb5d2;
  --pmp-prem-orange:#FF9A52;
  --pmp-prem-yellow:#f1e238;
  --pmp-prem-beige:#d9d2c2;
  --pmp-prem-cyan-deep:#1a7a8f;
  --pmp-prem-orange-deep:#d97d35;
  --pmp-prem-cream:#f5efe6;
  --pmp-prem-dark:#2f3a12;
  --pmp-prem-ink:#1a1a1a;
  --pmp-prem-line:rgba(47,58,18,.10);
  --pmp-prem-ease:cubic-bezier(.22,.61,.36,1);
  --pmp-prem-shadow:0 12px 28px -12px rgba(20,30,40,.18);
  --pmp-prem-shadow-h:0 18px 40px -14px rgba(20,30,40,.28);
}

/* ===========================================================
   COUCHE A — CARDS PRODUIT PREMIUM HOVER
   Active sur : .product-miniature, .js-product-miniature
   Opt-in via html.pmp-v2-A pour ZERO impact si désactivé
   =========================================================== */
html.pmp-v2-A .product-miniature,
html.pmp-v2-A .js-product-miniature{
  transition:transform .28s var(--pmp-prem-ease),box-shadow .35s var(--pmp-prem-ease);
}
html.pmp-v2-A .product-miniature:hover,
html.pmp-v2-A .js-product-miniature:hover{
  transform:translateY(-4px);
  box-shadow:var(--pmp-prem-shadow-h);
  z-index:2;
}
/* Image légèrement zoom au hover */
html.pmp-v2-A .product-miniature .product-thumbnail img,
html.pmp-v2-A .js-product-miniature .product-thumbnail img,
html.pmp-v2-A .product-miniature .thumbnail-container img,
html.pmp-v2-A .js-product-miniature .thumbnail-container img{
  transition:transform .7s var(--pmp-prem-ease);
}
html.pmp-v2-A .product-miniature:hover .product-thumbnail img,
html.pmp-v2-A .js-product-miniature:hover .product-thumbnail img,
html.pmp-v2-A .product-miniature:hover .thumbnail-container img,
html.pmp-v2-A .js-product-miniature:hover .thumbnail-container img{
  transform:scale(1.04);
}
/* CTA "Ajouter au panier" feedback */
html.pmp-v2-A .product-miniature .add-to-cart,
html.pmp-v2-A .product-miniature .product-add-cart .btn,
html.pmp-v2-A .js-product-miniature .add-to-cart{
  position:relative;
  transition:background .25s var(--pmp-prem-ease),transform .25s var(--pmp-prem-ease),box-shadow .25s var(--pmp-prem-ease);
}
html.pmp-v2-A .product-miniature .add-to-cart:hover,
html.pmp-v2-A .product-miniature .product-add-cart .btn:hover,
html.pmp-v2-A .js-product-miniature .add-to-cart:hover{
  transform:translateY(-1px);
  box-shadow:var(--pmp-prem-shadow);
}
/* Quick view button légèrement plus saillant */
html.pmp-v2-A .product-miniature .quick-view,
html.pmp-v2-A .js-product-miniature .quick-view{
  transition:opacity .25s,transform .25s var(--pmp-prem-ease);
}
html.pmp-v2-A .product-miniature:hover .quick-view,
html.pmp-v2-A .js-product-miniature:hover .quick-view{
  transform:scale(1.05);
}

/* ===========================================================
   COUCHE B — STICKY PHONE / AVIS BAR
   Bottom plein largeur sur mobile, top-right pill sur desktop
   Activée via JS qui injecte le .pmp-v2-sticky dans le body
   =========================================================== */
.pmp-v2-sticky{
  display:none;
  position:fixed;
  z-index:9990;
  font-family:'Karla',Arial,Helvetica,sans-serif;
  background:var(--pmp-prem-cyan-deep);
  color:#fff;
  font-weight:700;
  align-items:center;
  gap:14px;
  letter-spacing:.02em;
  box-shadow:0 -10px 30px -8px rgba(0,0,0,.25);
  transform:translateY(120%);
  transition:transform .35s var(--pmp-prem-ease);
}
html.pmp-v2-B .pmp-v2-sticky{display:flex;}
html.pmp-v2-B .pmp-v2-sticky.is-visible{transform:translateY(0);}
.pmp-v2-sticky a{
  color:#fff;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:4px;
  transition:background .2s;
}
.pmp-v2-sticky a:hover{background:rgba(255,255,255,.15);}
.pmp-v2-sticky__icon{font-size:1.1em;}
.pmp-v2-sticky__sep{opacity:.4;}

/* Mobile bottom bar plein largeur */
@media (max-width:880px){
  .pmp-v2-sticky{
    left:0;right:0;bottom:0;
    padding:10px 12px max(10px,env(safe-area-inset-bottom));
    border-top:3px solid var(--pmp-prem-yellow);
    justify-content:space-around;
    font-size:.82rem;
  }
  .pmp-v2-sticky__sep,
  .pmp-v2-sticky__desktop-only{display:none;}
  .pmp-v2-sticky a{padding:4px 8px;}
}
/* Desktop pill bottom-right */
@media (min-width:881px){
  .pmp-v2-sticky{
    right:18px;bottom:18px;
    padding:10px 16px;
    border-radius:50px;
    font-size:.88rem;
    border:2px solid var(--pmp-prem-yellow);
  }
}

/* ===========================================================
   COUCHE C — USP BANDE SOUS HERO (4 items ADN)
   Injectée par JS juste après .pmp-home-hero
   =========================================================== */
.pmp-v2-uspband{
  display:none;
  background:linear-gradient(180deg,#fff 0%,var(--pmp-prem-cream) 100%);
  padding:24px 0;
  border-bottom:1px solid var(--pmp-prem-line);
  font-family:'Karla',Arial,Helvetica,sans-serif;
}
html.pmp-v2-C .pmp-v2-uspband{display:block;}
.pmp-v2-uspband__inner{
  width:min(1270px,calc(100% - 24px));
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.pmp-v2-uspband__item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 10px;
  border-right:1px solid var(--pmp-prem-line);
}
.pmp-v2-uspband__item:last-child{border-right:none;}
.pmp-v2-uspband__icon{
  font-size:30px;
  flex-shrink:0;
  line-height:1;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--pmp-prem-yellow);
  color:var(--pmp-prem-dark);
}
.pmp-v2-uspband__item:nth-child(2) .pmp-v2-uspband__icon{background:#fff;border:2px solid var(--pmp-prem-cyan);color:var(--pmp-prem-cyan-deep);}
.pmp-v2-uspband__item:nth-child(3) .pmp-v2-uspband__icon{background:var(--pmp-prem-orange);color:#fff;}
.pmp-v2-uspband__item:nth-child(4) .pmp-v2-uspband__icon{background:var(--pmp-prem-cyan);color:#fff;}
.pmp-v2-uspband__label{
  font-weight:800;
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--pmp-prem-ink);
  line-height:1.2;
}
.pmp-v2-uspband__sub{
  font-size:.74rem;
  color:var(--pmp-prem-dark);
  margin-top:3px;
  line-height:1.3;
}
@media (max-width:880px){
  .pmp-v2-uspband__inner{grid-template-columns:repeat(2,1fr);gap:14px;}
  .pmp-v2-uspband__item:nth-child(2),
  .pmp-v2-uspband__item:nth-child(4){border-right:none;}
  .pmp-v2-uspband__item:nth-child(-n+2){border-bottom:1px solid var(--pmp-prem-line);padding-bottom:14px;}
  .pmp-v2-uspband__icon{width:40px;height:40px;font-size:24px;}
  .pmp-v2-uspband__label{font-size:.78rem;}
}
@media (max-width:480px){
  .pmp-v2-uspband__inner{grid-template-columns:1fr;}
  .pmp-v2-uspband__item{border-right:none;border-bottom:1px solid var(--pmp-prem-line);padding:10px 0;}
  .pmp-v2-uspband__item:last-child{border-bottom:none;}
}

/* ===========================================================
   COUCHE D — BADGES PRODUITS DYNAMIQUES
   Ajoutés par JS sur .product-miniature
   =========================================================== */
.pmp-v2-badges{
  display:none;
  position:absolute;
  top:8px;
  left:8px;
  z-index:3;
  flex-direction:column;
  gap:5px;
  pointer-events:none;
}
html.pmp-v2-D .pmp-v2-badges{display:flex;}

.pmp-v2-badge{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px 8px;
  border-radius:3px;
  font-family:'Karla',Arial,sans-serif;
  font-weight:800;
  font-size:.66rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 4px 10px -2px rgba(0,0,0,.18);
}
.pmp-v2-badge--bestseller{background:var(--pmp-prem-orange);color:#fff;}
.pmp-v2-badge--new{background:var(--pmp-prem-cyan);color:#fff;}
.pmp-v2-badge--france{
  background:#fff;
  color:var(--pmp-prem-ink);
  border:1px solid var(--pmp-prem-line);
  padding-left:6px;
}
.pmp-v2-badge--france::before{
  content:"";
  display:inline-block;
  width:14px;
  height:10px;
  background:linear-gradient(90deg,#002654 33.33%,#fff 33.33% 66.66%,#ED2939 66.66%);
  border-radius:1px;
}
.pmp-v2-badge--promo{background:var(--pmp-prem-yellow);color:var(--pmp-prem-dark);}

/* ===========================================================
   COUCHE E — POP-IN NEWSLETTER -10€
   Trigger sticky bottom-left + modal au clic
   =========================================================== */
.pmp-v2-popnews-trigger{
  display:none;
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:9988;
  background:var(--pmp-prem-yellow);
  color:var(--pmp-prem-dark);
  padding:11px 18px 11px 14px;
  border-radius:50px;
  font-family:'Karla',Arial,sans-serif;
  font-weight:800;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:0 14px 40px -12px rgba(0,0,0,.4);
  border:none;
  align-items:center;
  gap:8px;
  animation:pmpV2PulseTeaser 5s ease-in-out infinite;
}
html.pmp-v2-E .pmp-v2-popnews-trigger{display:inline-flex;}
.pmp-v2-popnews-trigger:hover{
  background:var(--pmp-prem-yellow);
  filter:brightness(1.05);
  transform:scale(1.03);
}
.pmp-v2-popnews-trigger__icon{
  width:26px;
  height:26px;
  border-radius:50%;
  background:var(--pmp-prem-dark);
  color:var(--pmp-prem-yellow);
  display:grid;
  place-items:center;
  font-size:14px;
}
@keyframes pmpV2PulseTeaser{
  0%,100%{transform:scale(1);box-shadow:0 14px 40px -12px rgba(0,0,0,.4);}
  50%{transform:scale(1.04);box-shadow:0 18px 50px -10px rgba(0,0,0,.5);}
}
/* Mobile : repositionne au-dessus de la sticky bar */
@media (max-width:880px){
  html.pmp-v2-B .pmp-v2-popnews-trigger{
    bottom:70px;
  }
}

.pmp-v2-popnews-modal{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(20,30,40,.72);
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:16px;
  backdrop-filter:blur(3px);
}
.pmp-v2-popnews-modal.is-open{display:flex;animation:pmpV2FadeIn .25s var(--pmp-prem-ease);}
.pmp-v2-popnews-modal__inner{
  background:linear-gradient(135deg,#fff 0%,var(--pmp-prem-cream) 100%);
  max-width:460px;
  width:100%;
  border-radius:8px;
  padding:36px 28px 28px;
  position:relative;
  text-align:center;
  box-shadow:0 30px 80px -20px rgba(0,0,0,.5);
  animation:pmpV2PopIn .35s var(--pmp-prem-ease);
}
.pmp-v2-popnews-modal__close{
  position:absolute;
  top:10px;
  right:14px;
  background:transparent;
  border:none;
  font-size:24px;
  cursor:pointer;
  color:var(--pmp-prem-dark);
  width:36px;
  height:36px;
  border-radius:50%;
  transition:background .2s;
}
.pmp-v2-popnews-modal__close:hover{background:rgba(0,0,0,.06);}
.pmp-v2-popnews-modal__badge{
  display:inline-block;
  background:var(--pmp-prem-yellow);
  color:var(--pmp-prem-dark);
  padding:8px 18px;
  border-radius:4px;
  font-family:'Karla',sans-serif;
  font-weight:900;
  font-size:1.7rem;
  letter-spacing:-.01em;
  margin-bottom:14px;
  box-shadow:0 6px 16px -4px rgba(0,0,0,.15);
}
.pmp-v2-popnews-modal__title{
  font-family:'Karla',sans-serif;
  font-weight:900;
  font-size:1.4rem;
  text-transform:uppercase;
  letter-spacing:.01em;
  color:var(--pmp-prem-ink);
  margin:0 0 8px;
}
.pmp-v2-popnews-modal__sub{
  font-family:'Karla',sans-serif;
  font-size:.92rem;
  color:var(--pmp-prem-dark);
  margin:0 0 22px;
}
.pmp-v2-popnews-modal__form{
  display:flex;
  gap:8px;
  margin-bottom:14px;
}
.pmp-v2-popnews-modal__form input[type="email"]{
  flex:1;
  padding:13px 16px;
  border:2px solid var(--pmp-prem-line);
  border-radius:6px;
  font-family:'Karla',sans-serif;
  font-size:1rem;
  outline:none;
  transition:border-color .2s;
}
.pmp-v2-popnews-modal__form input[type="email"]:focus{
  border-color:var(--pmp-prem-cyan);
}
.pmp-v2-popnews-modal__form button{
  padding:13px 22px;
  background:var(--pmp-prem-cyan);
  color:#fff;
  border:none;
  border-radius:6px;
  font-family:'Karla',sans-serif;
  font-weight:800;
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  cursor:pointer;
  transition:background .2s,transform .2s;
}
.pmp-v2-popnews-modal__form button:hover{
  background:var(--pmp-prem-cyan-deep);
  transform:translateY(-1px);
}
.pmp-v2-popnews-modal__legal{
  font-size:.7rem;
  color:var(--pmp-prem-dark);
  margin:0;
  opacity:.7;
}
@keyframes pmpV2FadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes pmpV2PopIn{from{opacity:0;transform:translateY(20px) scale(.95);}to{opacity:1;transform:translateY(0) scale(1);}}

/* ===========================================================
   COUCHE F — TRUST STRIP ENRICHI (avis 4.9/5, retour 30j)
   Injectée par JS juste après hero (avant USP si C aussi actif)
   =========================================================== */
.pmp-v2-trustband{
  display:none;
  background:var(--pmp-prem-cyan-deep);
  color:#fff;
  padding:11px 0;
  font-family:'Karla',Arial,sans-serif;
  font-size:.82rem;
  letter-spacing:.01em;
}
html.pmp-v2-F .pmp-v2-trustband{display:block;}
.pmp-v2-trustband__inner{
  width:min(1270px,calc(100% - 24px));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-around;
  flex-wrap:wrap;
  gap:14px 22px;
}
.pmp-v2-trustband__item{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#fff;
  text-decoration:none;
  font-weight:600;
  transition:opacity .2s;
}
.pmp-v2-trustband__item:hover{
  opacity:.85;
  color:#fff;
}
.pmp-v2-trustband__star{color:var(--pmp-prem-yellow);font-weight:900;}
@media (max-width:680px){
  .pmp-v2-trustband__inner{
    justify-content:flex-start;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .pmp-v2-trustband__inner::-webkit-scrollbar{display:none;}
  .pmp-v2-trustband__item{flex-shrink:0;}
}

/* ===========================================================
   COUCHE G — HERO TEASER (2e CTA + mini-compteur)
   =========================================================== */
.pmp-v2-hero-extra{
  display:none;
  margin-top:14px;
  flex-wrap:wrap;
  gap:8px 16px;
  font-family:'Karla',Arial,sans-serif;
  font-size:.78rem;
  color:rgba(255,255,255,.92);
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:700;
  text-shadow:0 1px 5px rgba(0,0,0,.35);
}
html.pmp-v2-G .pmp-v2-hero-extra{display:flex;}
.pmp-v2-hero-extra span{display:inline-flex;align-items:center;gap:5px;}
.pmp-v2-hero-extra span::before{
  content:"●";
  color:var(--pmp-prem-yellow);
  font-size:.7em;
}

.pmp-v2-hero-cta2{
  display:none;
  margin-left:10px;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  border-radius:3px;
  background:transparent;
  color:#fff !important;
  border:2px solid #fff;
  font-family:Arial,Helvetica,sans-serif;
  font-weight:800;
  text-decoration:none !important;
  transition:background .2s,color .2s;
  letter-spacing:.04em;
}
html.pmp-v2-G .pmp-v2-hero-cta2{display:inline-flex;}
.pmp-v2-hero-cta2:hover{
  background:#fff;
  color:var(--pmp-prem-dark) !important;
}
@media (max-width:767px){
  .pmp-v2-hero-cta2{margin-left:0;margin-top:10px;min-height:42px;padding:0 18px;font-size:.9rem;}
  .pmp-v2-hero-extra{font-size:.7rem;}
}

/* ===========================================================
   COMPENSATION SPACING quand sticky bar mobile présente
   Ajoute padding-bottom au footer pour ne pas masquer du contenu
   =========================================================== */
@media (max-width:880px){
  html.pmp-v2-B body{padding-bottom:64px;}
  html.pmp-v2-B .footer-container,
  html.pmp-v2-B #footer{margin-bottom:0;}
}

/* ===========================================================
   ACCESSIBILITY
   =========================================================== */
@media (prefers-reduced-motion:reduce){
  html.pmp-v2-A .product-miniature,
  html.pmp-v2-A .js-product-miniature,
  html.pmp-v2-A .product-miniature:hover .product-thumbnail img,
  .pmp-v2-popnews-trigger,
  .pmp-v2-popnews-modal,
  .pmp-v2-popnews-modal__inner{
    transition:none !important;
    animation:none !important;
    transform:none !important;
  }
}
.pmp-v2-sticky a:focus-visible,
.pmp-v2-popnews-trigger:focus-visible,
.pmp-v2-popnews-modal__form button:focus-visible,
.pmp-v2-popnews-modal__close:focus-visible,
.pmp-v2-trustband__item:focus-visible{
  outline:3px solid var(--pmp-prem-yellow);
  outline-offset:2px;
}

/* ===========================================================
   COUCHE H — MEGA-MENU PREMIUM (iqitmegamenu warehouse)
   ⚠️ NON DÉPLOYÉE — rollback mega-menu effectué 2026-05-27
   Conservée ici comme référence si re-déploiement futur.
   Pour activer : (1) refaire la refonte BDD du menu, puis
   (2) inclure cette section dans le CSS uploadé.
   =========================================================== */
/* (Section présente mais non déployée — chercher "FIN MEGA-MENU PREMIUM") */

/* Panel container */
.iqitmegamenu-submenu-container .cbp-hrsub-inner,
.iqitmegamenu-wrapper .cbp-hrsub{
  border-top:3px solid var(--pmp-prem-cyan) !important;
  border-radius:0 0 8px 8px;
  box-shadow:0 24px 48px -16px rgba(20,30,40,.22) !important;
  background:#fff !important;
}
.iqitmegamenu-submenu-container .cbp-hrsub-inner{
  padding:28px 24px !important;
}

/* Colonnes : espacement + bord vertical fin entre */
.iqitmegamenu-submenu-container .cbp-hrsub-inner > .row > [class*="col-"],
.iqitmegamenu-submenu-container .cbp-hrsub-inner .col-md-3,
.iqitmegamenu-submenu-container .cbp-hrsub-inner .col-md-4{
  padding-left:18px;
  padding-right:18px;
  position:relative;
}
.iqitmegamenu-submenu-container .cbp-hrsub-inner > .row > [class*="col-"] + [class*="col-"]::before{
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  left:0;
  width:1px;
  background:linear-gradient(180deg, transparent 0%, var(--pmp-prem-line) 18%, var(--pmp-prem-line) 82%, transparent 100%);
}

/* Titres de colonnes : Karla, uppercase, accent cyan/jaune */
.iqitmegamenu-submenu-container .cbp-column-title,
.iqitmegamenu-submenu-container .cbp-column-title.nav-link.cbp-category-title{
  font-family:'Karla',Arial,sans-serif !important;
  font-weight:800 !important;
  font-size:.92rem !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  color:var(--pmp-prem-ink) !important;
  padding:6px 0 !important;
  margin-bottom:14px !important;
  position:relative;
  display:inline-block;
  transition:color .2s var(--pmp-prem-ease);
}
.iqitmegamenu-submenu-container .cbp-column-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-2px;
  width:40px;
  height:3px;
  border-radius:2px;
  background:linear-gradient(90deg,var(--pmp-prem-yellow) 0%,var(--pmp-prem-yellow) 50%,var(--pmp-prem-cyan) 50%,var(--pmp-prem-cyan) 100%);
  transition:width .35s var(--pmp-prem-ease);
}
.iqitmegamenu-submenu-container .cbp-column-title:hover{
  color:var(--pmp-prem-cyan-deep) !important;
}
.iqitmegamenu-submenu-container .cbp-column-title:hover::after{
  width:72px;
}

/* Liens sous-catégories : Karla, hover cyan */
.iqitmegamenu-submenu-container .cbp-links li > a,
.iqitmegamenu-submenu-container .cbp-category-tree li > a,
.iqitmegamenu-submenu-container .cbp-category-link-w a:not(.cbp-column-title){
  font-family:'Karla',Arial,sans-serif !important;
  font-size:.88rem !important;
  color:var(--pmp-prem-dark) !important;
  padding:5px 0 5px 12px !important;
  display:block;
  border-radius:3px;
  position:relative;
  transition:color .2s var(--pmp-prem-ease), background .2s var(--pmp-prem-ease), transform .15s var(--pmp-prem-ease);
}
.iqitmegamenu-submenu-container .cbp-links li > a::before,
.iqitmegamenu-submenu-container .cbp-category-tree li > a::before{
  content:"→";
  position:absolute;
  left:0;
  color:var(--pmp-prem-cyan);
  font-weight:700;
  opacity:0;
  transition:opacity .2s,transform .2s var(--pmp-prem-ease);
  transform:translateX(-4px);
}
.iqitmegamenu-submenu-container .cbp-links li > a:hover,
.iqitmegamenu-submenu-container .cbp-category-tree li > a:hover{
  color:var(--pmp-prem-cyan-deep) !important;
  background:rgba(47,181,210,.06) !important;
  padding-left:18px !important;
  transform:translateX(0);
  text-decoration:none !important;
}
.iqitmegamenu-submenu-container .cbp-links li > a:hover::before,
.iqitmegamenu-submenu-container .cbp-category-tree li > a:hover::before{
  opacity:1;
  transform:translateX(0);
}

/* Top tabs : hover state plus marqué */
.iqitmegamenu .cbp-tab-element > a{
  font-family:'Karla',Arial,sans-serif !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  position:relative;
  transition:color .2s var(--pmp-prem-ease);
}
.iqitmegamenu .cbp-tab-element > a::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:0;
  height:3px;
  background:var(--pmp-prem-yellow);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .3s var(--pmp-prem-ease);
}
.iqitmegamenu .cbp-tab-element:hover > a::after,
.iqitmegamenu .cbp-tab-element.cbp-tab-element-hover > a::after{
  transform:scaleX(1);
}

/* Bloc Manufacturers (contentType:5) — affichage en grille de logos premium */
.iqitmegamenu-submenu-container .cbp-manufacturer-list,
.iqitmegamenu-submenu-container .manufacturer-list{
  display:grid !important;
  grid-template-columns:repeat(2, 1fr);
  gap:6px;
  margin-top:8px;
}
.iqitmegamenu-submenu-container .cbp-manufacturer-list li,
.iqitmegamenu-submenu-container .manufacturer-list li{
  list-style:none;
  margin:0;
  padding:0;
}
.iqitmegamenu-submenu-container .cbp-manufacturer-list li a,
.iqitmegamenu-submenu-container .manufacturer-list li a{
  display:block;
  padding:8px 10px;
  background:var(--pmp-prem-cream);
  border:1px solid var(--pmp-prem-line);
  border-radius:4px;
  font-family:'Karla',Arial,sans-serif !important;
  font-weight:700;
  font-size:.78rem !important;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--pmp-prem-ink) !important;
  text-align:center;
  transition:all .2s var(--pmp-prem-ease);
  text-decoration:none !important;
}
.iqitmegamenu-submenu-container .cbp-manufacturer-list li a:hover,
.iqitmegamenu-submenu-container .manufacturer-list li a:hover{
  background:var(--pmp-prem-cyan);
  color:#fff !important;
  border-color:var(--pmp-prem-cyan);
  transform:translateY(-2px);
  box-shadow:0 6px 14px -4px rgba(47,181,210,.4);
}

/* Mobile menu : same spirit */
.mobile-menu__column-title{
  font-family:'Karla',Arial,sans-serif !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  font-size:.88rem !important;
  color:var(--pmp-prem-ink) !important;
}

/* Animation overall pour les sous-menus apparaissant */
.iqitmegamenu-submenu-container,
.iqitmegamenu .cbp-hrsub{
  animation:pmpMegaFade .25s var(--pmp-prem-ease);
}
@keyframes pmpMegaFade{
  from{opacity:0;transform:translateY(-6px);}
  to{opacity:1;transform:translateY(0);}
}

/* === MEGAMENU STEP 1 — Hide X+ réf badges (2026-05-27) ===
   Cache les badges "250+ réf.", "90+ réf." etc. rouges qui apparaissent
   à côté des titres de colonnes. Pure suppression visuelle, aucun
   changement de layout. Pour réactiver : commenter cette règle. */
.iqitmegamenu .cbp-legend,
.iqitmegamenu .cbp-legend-inner,
.iqitmegamenu-submenu-container .cbp-legend,
.iqitmegamenu-submenu-container .cbp-legend-inner,
.iqitmegamenu-submenu-container .label.cbp-legend,
.mobile-menu .cbp-legend{
  display:none !important;
}
/* === /MEGAMENU STEP 1 === */

/* === MEGAMENU PIXEL DESIGN tab Peintures intérieures (2026-05-27) ===
   Sous-menu custom HTML rendu via contentType=1 + htmlc id=1.
   Layout pixel-près de la maquette user :
   - 3 colonnes équilibrées avec icônes circulaires
   - Section headers avec trait jaune+cyan ADN
   - Chevrons verts
   Scope strict sur .pmp-mm — aucun impact ailleurs. */

.iqitmegamenu-submenu-container .pmp-mm{
  padding:32px 28px;
  background:#fff;
  font-family:'Karla',Arial,sans-serif;
}
.iqitmegamenu-submenu-container .pmp-mm__row{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
}
.iqitmegamenu-submenu-container .pmp-mm__col{
  display:flex;
  flex-direction:column;
}
.iqitmegamenu-submenu-container .pmp-mm__icon{
  width:60px;height:60px;
  border-radius:50%;
  background:rgba(74,127,58,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  color:#4a7f3a;
  font-size:22px;
}
.iqitmegamenu-submenu-container .pmp-mm__primary{
  list-style:none;
  padding:0;
  margin:0 0 22px;
}
.iqitmegamenu-submenu-container .pmp-mm__primary li{
  margin:0;
  padding:0;
  list-style:none;
}
.iqitmegamenu-submenu-container .pmp-mm__primary li > a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:7px 0;
  color:#2c5d24 !important;
  font-family:'Karla',Arial,sans-serif !important;
  font-size:1rem;
  text-decoration:none !important;
  font-weight:500;
  transition:color .2s ease, transform .2s ease;
}
.iqitmegamenu-submenu-container .pmp-mm__primary li > a::before{
  content:">";
  color:#4a7f3a;
  font-weight:700;
  font-size:1.1em;
  flex-shrink:0;
  transition:color .2s ease, transform .2s ease;
}
.iqitmegamenu-submenu-container .pmp-mm__primary li > a:hover{
  color:#1a7a8f !important;
  text-decoration:none !important;
}
.iqitmegamenu-submenu-container .pmp-mm__primary li > a:hover::before{
  color:var(--pmp-prem-cyan);
  transform:translateX(3px);
}

/* Section header (PEINTURES PRO, etc.) */
.iqitmegamenu-submenu-container .pmp-mm__section{
  border-top:1px solid var(--pmp-prem-line);
  padding-top:20px;
  margin-top:auto;
}
.iqitmegamenu-submenu-container .pmp-mm__title{
  font-family:'Karla',Arial,sans-serif !important;
  font-weight:900;
  font-size:.92rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--pmp-prem-ink);
  margin:0 0 18px;
  padding-bottom:12px;
  position:relative;
  display:block;
}
.iqitmegamenu-submenu-container .pmp-mm__title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:48px;
  height:3px;
  border-radius:2px;
  background:linear-gradient(90deg, var(--pmp-prem-yellow) 0%, var(--pmp-prem-yellow) 50%, var(--pmp-prem-cyan) 50%, var(--pmp-prem-cyan) 100%);
}
.iqitmegamenu-submenu-container .pmp-mm__sub{
  list-style:none;
  padding:0;
  margin:0;
}
.iqitmegamenu-submenu-container .pmp-mm__sub li{
  margin:0;
  padding:0;
  list-style:none;
}
.iqitmegamenu-submenu-container .pmp-mm__sub li > a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:6px 0;
  color:#5a5a5a !important;
  font-family:'Karla',Arial,sans-serif !important;
  font-size:.94rem;
  font-weight:500;
  text-decoration:none !important;
  transition:color .2s ease, transform .2s ease;
}
.iqitmegamenu-submenu-container .pmp-mm__sub li > a::before{
  content:">";
  color:#4a7f3a;
  font-weight:700;
  font-size:1.05em;
  flex-shrink:0;
  transition:color .2s ease, transform .2s ease;
}
.iqitmegamenu-submenu-container .pmp-mm__sub li > a:hover{
  color:#1a7a8f !important;
}
.iqitmegamenu-submenu-container .pmp-mm__sub li > a:hover::before{
  color:var(--pmp-prem-cyan);
  transform:translateX(3px);
}

@media (max-width:880px){
  .iqitmegamenu-submenu-container .pmp-mm__row{
    grid-template-columns:1fr;
    gap:24px;
  }
}
/* === /MEGAMENU PIXEL DESIGN === */

/* === SECTION MARQUES HOME — Premium ADN PMP (2026-05-27) ===
   Section pleine largeur sur la home pour les 9 marques partenaires.
   Scope strict sur .pmp-marques → aucun impact ailleurs. */
.pmp-marques{
  background:linear-gradient(180deg, #fff 0%, var(--pmp-prem-cream) 100%);
  padding:clamp(40px,5vw,72px) clamp(16px,3vw,32px);
  border-top:1px solid var(--pmp-prem-line);
  border-bottom:1px solid var(--pmp-prem-line);
  font-family:'Karla',Arial,sans-serif;
}
.pmp-marques__inner{
  max-width:1270px;
  margin:0 auto;
}
.pmp-marques__head{
  text-align:center;
  margin-bottom:36px;
}
.pmp-marques__eyebrow{
  display:inline-block;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--pmp-prem-cyan-deep);
  padding:5px 14px;
  background:rgba(47,181,210,.08);
  border-radius:2px;
  margin-bottom:14px;
}
.pmp-marques__title{
  position:relative;
  font-family:'Karla',Arial,sans-serif;
  font-weight:900;
  font-size:clamp(1.6rem,2.6vw,2.2rem);
  line-height:1.1;
  text-transform:uppercase;
  letter-spacing:-.005em;
  color:var(--pmp-prem-ink);
  margin:0 0 10px;
  padding-bottom:14px;
  display:inline-block;
}
.pmp-marques__title::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:64px;
  height:4px;
  border-radius:2px;
  background:linear-gradient(90deg, var(--pmp-prem-yellow) 0%, var(--pmp-prem-yellow) 50%, var(--pmp-prem-cyan) 50%, var(--pmp-prem-cyan) 100%);
}
.pmp-marques__lead{
  max-width:600px;
  margin:14px auto 0;
  font-size:.96rem;
  line-height:1.55;
  color:var(--pmp-prem-dark);
}
.pmp-marques__grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:14px;
}
.pmp-marques__tile{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid var(--pmp-prem-line);
  border-radius:8px;
  padding:24px 20px;
  min-height:120px;
  text-decoration:none !important;
  transition:transform .25s var(--pmp-prem-ease), border-color .25s var(--pmp-prem-ease), box-shadow .25s var(--pmp-prem-ease);
  overflow:hidden;
}
.pmp-marques__tile:hover{
  border-color:var(--pmp-prem-cyan);
  transform:translateY(-4px);
  box-shadow:0 16px 32px -14px rgba(47,181,210,.45);
}
.pmp-marques__tile img{
  max-width:100%;
  max-height:72px;
  width:auto;
  height:auto;
  object-fit:contain;
  transition:transform .35s var(--pmp-prem-ease), filter .25s var(--pmp-prem-ease);
  filter:grayscale(.18);
}
.pmp-marques__tile:hover img{
  transform:scale(1.04);
  filter:grayscale(0);
}
@media (max-width:1100px){
  .pmp-marques__grid{ grid-template-columns:repeat(4, 1fr); }
}
@media (max-width:780px){
  .pmp-marques__grid{ grid-template-columns:repeat(3, 1fr); gap:10px; }
  .pmp-marques__tile{ min-height:96px; padding:18px 14px; }
  .pmp-marques__tile img{ max-height:54px; }
}
@media (max-width:480px){
  .pmp-marques__grid{ grid-template-columns:repeat(2, 1fr); }
  .pmp-marques__tile{ min-height:80px; padding:14px 10px; }
  .pmp-marques__tile img{ max-height:44px; }
}
.pmp-marques__tile:focus-visible{
  outline:3px solid var(--pmp-prem-yellow);
  outline-offset:2px;
}
/* === /SECTION MARQUES HOME === */

/* Désactivation : commenter de ici jusqu'à FIN MEGA-MENU pour retirer */
/* ============ FIN MEGA-MENU PREMIUM ============ */

/* ============ FIN PMP PREMIUM LAYER v2 ============ */
/* ============================================================
   PMP DECOR — STYLE PAGES JURIDIQUES (CGV / Mentions / RGPD / CGU)
   2026-05-27
   ADN strict : cyan #2fb5d2, orange #FF9A52, jaune #f1e238, beige #d9d2c2
   Karla, scope préfixé .pmp-cms.pmp-legal pour ne rien casser ailleurs.

   Architecture :
   - .pmp-cms          : conteneur global pages CMS (déjà utilisé)
   - .pmp-legal        : extension juridique (TOC, articles structurés)
   - .pmp-legal__meta  : bandeau version/date
   - .pmp-hero/.pmp-lead : intro
   - .pmp-grid + .pmp-card : cards récap haut de page
   - .pmp-protect      : encadré orange (protection PMP)
   - .pmp-note         : encadré jaune (info légale)
   - .pmp-defs         : liste de définitions
   - .pmp-rgpd-table   : tableau finalités/bases légales
   - .pmp-formulaire   : formulaire de rétractation
   - .pmp-legal__footer : signature bas de page

   Print-friendly : optimisé pour impression PDF / archivage client.
   ============================================================ */

/* ---------- Variables ADN PMP (réutilisées de pmp-premium-layer.css) ---------- */
:root{
  --pmp-leg-cyan:#2fb5d2;
  --pmp-leg-cyan-deep:#1a7a8f;
  --pmp-leg-orange:#FF9A52;
  --pmp-leg-orange-deep:#d97d35;
  --pmp-leg-yellow:#f1e238;
  --pmp-leg-beige:#d9d2c2;
  --pmp-leg-cream:#f5efe6;
  --pmp-leg-ink:#1a1a1a;
  --pmp-leg-dark:#2f3a12;
  --pmp-leg-muted:#5a6068;
  --pmp-leg-line:rgba(47,58,18,.12);
  --pmp-leg-line-soft:rgba(47,58,18,.06);
}

/* ---------- Conteneur global ---------- */
.pmp-cms.pmp-legal{
  font-family:'Karla',Arial,Helvetica,sans-serif;
  font-size:1.02rem;
  line-height:1.75;
  color:var(--pmp-leg-ink);
  max-width:920px;
  margin:0 auto;
  padding:24px 0 60px;
  counter-reset:pmp-art;
}

/* ---------- Bandeau meta : version + badge ---------- */
.pmp-legal__meta{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  justify-content:space-between;
  margin-bottom:24px;
  padding-bottom:14px;
  border-bottom:1px solid var(--pmp-leg-line);
}
.pmp-legal__badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 12px 4px;
  background:var(--pmp-leg-cyan);
  color:#fff;
  font-weight:800;
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  border-radius:3px;
}
.pmp-legal__badge::before{
  content:"§";
  font-size:1.1em;
  font-weight:900;
}
.pmp-legal__version{
  font-size:.78rem;
  color:var(--pmp-leg-muted);
  letter-spacing:.04em;
  font-style:italic;
}

/* ---------- Hero / Lead ---------- */
.pmp-cms.pmp-legal .pmp-hero{
  background:linear-gradient(135deg,var(--pmp-leg-cream) 0%,#fff 100%);
  border-left:4px solid var(--pmp-leg-cyan);
  padding:24px 28px;
  border-radius:0 6px 6px 0;
  margin:0 0 36px;
  box-shadow:0 4px 16px -8px rgba(20,30,40,.08);
}
.pmp-cms.pmp-legal .pmp-lead{
  margin:0;
  font-size:1.05rem;
  line-height:1.7;
  color:var(--pmp-leg-dark);
  font-weight:400;
}
.pmp-cms.pmp-legal .pmp-lead strong{
  color:var(--pmp-leg-ink);
  font-weight:700;
}

/* ---------- Grille de cards récap ---------- */
.pmp-cms.pmp-legal .pmp-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin:0 0 40px;
}
.pmp-cms.pmp-legal .pmp-card{
  background:#fff;
  border:1px solid var(--pmp-leg-line);
  border-top:3px solid var(--pmp-leg-cyan);
  border-radius:4px;
  padding:14px 16px;
  font-size:.88rem;
  line-height:1.5;
  color:var(--pmp-leg-dark);
}
.pmp-cms.pmp-legal .pmp-card:nth-child(2){border-top-color:var(--pmp-leg-orange);}
.pmp-cms.pmp-legal .pmp-card:nth-child(3){border-top-color:var(--pmp-leg-yellow);}
.pmp-cms.pmp-legal .pmp-card:nth-child(4){border-top-color:var(--pmp-leg-cyan-deep);}
.pmp-cms.pmp-legal .pmp-card strong{
  display:block;
  font-weight:800;
  font-size:.74rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--pmp-leg-ink);
  margin-bottom:6px;
}

/* ---------- Titres ---------- */
.pmp-cms.pmp-legal h2{
  position:relative;
  font-family:'Karla',Arial,sans-serif;
  font-weight:900;
  font-size:1.35rem;
  line-height:1.25;
  color:var(--pmp-leg-ink);
  letter-spacing:-.005em;
  margin:48px 0 18px;
  padding-bottom:10px;
  padding-left:0;
  border-bottom:1px solid var(--pmp-leg-line);
}
.pmp-cms.pmp-legal h2::before{
  content:"";
  display:block;
  position:absolute;
  bottom:-1px;
  left:0;
  width:48px;
  height:3px;
  background:linear-gradient(90deg,var(--pmp-leg-yellow) 0%,var(--pmp-leg-yellow) 50%,var(--pmp-leg-cyan) 50%,var(--pmp-leg-cyan) 100%);
  border-radius:2px;
}
.pmp-cms.pmp-legal h3{
  font-family:'Karla',Arial,sans-serif;
  font-weight:800;
  font-size:1.05rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--pmp-leg-cyan-deep);
  margin:28px 0 12px;
}

/* ---------- Paragraphes ---------- */
.pmp-cms.pmp-legal p{
  margin:0 0 14px;
  text-align:justify;
  hyphens:auto;
}
.pmp-cms.pmp-legal p strong{
  color:var(--pmp-leg-ink);
  font-weight:700;
}
.pmp-cms.pmp-legal a{
  color:var(--pmp-leg-cyan-deep);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .2s, text-decoration-color .2s;
}
.pmp-cms.pmp-legal a:hover{
  color:var(--pmp-leg-orange-deep);
  text-decoration-color:var(--pmp-leg-orange);
}

/* ---------- Listes ---------- */
.pmp-cms.pmp-legal ul,
.pmp-cms.pmp-legal ol{
  margin:0 0 18px;
  padding-left:1.4em;
}
.pmp-cms.pmp-legal ul li,
.pmp-cms.pmp-legal ol li{
  margin-bottom:6px;
  padding-left:4px;
}
.pmp-cms.pmp-legal ul li::marker{
  color:var(--pmp-leg-cyan);
}
.pmp-cms.pmp-legal ol li::marker{
  color:var(--pmp-leg-cyan-deep);
  font-weight:700;
}

/* ---------- Liste de définitions ---------- */
.pmp-cms.pmp-legal .pmp-defs{
  background:var(--pmp-leg-cream);
  border-radius:6px;
  padding:18px 24px 18px 38px;
  margin:0 0 22px;
  list-style:none;
  position:relative;
}
.pmp-cms.pmp-legal .pmp-defs li{
  position:relative;
  padding:5px 0 5px 0;
  border-bottom:1px solid var(--pmp-leg-line-soft);
  font-size:.96rem;
  line-height:1.55;
}
.pmp-cms.pmp-legal .pmp-defs li:last-child{
  border-bottom:none;
}
.pmp-cms.pmp-legal .pmp-defs li::before{
  content:"§";
  position:absolute;
  left:-22px;
  top:5px;
  color:var(--pmp-leg-cyan);
  font-weight:900;
  font-size:1em;
}
.pmp-cms.pmp-legal .pmp-defs li strong{
  display:inline-block;
  min-width:0;
  font-weight:800;
  color:var(--pmp-leg-ink);
}

/* ---------- Encadré PROTECTION (orange) ---------- */
.pmp-cms.pmp-legal .pmp-protect{
  background:linear-gradient(135deg,#fff7ee 0%,#fef0de 100%);
  border:1px solid rgba(217,125,53,.3);
  border-left:4px solid var(--pmp-leg-orange);
  border-radius:0 6px 6px 0;
  padding:14px 18px;
  margin:18px 0 24px;
  font-size:.95rem;
  line-height:1.6;
  color:var(--pmp-leg-dark);
  position:relative;
}
.pmp-cms.pmp-legal .pmp-protect::before{
  content:"⚖";
  position:absolute;
  top:14px;
  right:18px;
  font-size:1.4rem;
  color:var(--pmp-leg-orange-deep);
  opacity:.5;
}
.pmp-cms.pmp-legal .pmp-protect strong{
  color:var(--pmp-leg-orange-deep);
  font-weight:800;
}

/* ---------- Encadré INFO LÉGALE (jaune) ---------- */
.pmp-cms.pmp-legal .pmp-note{
  background:linear-gradient(135deg,#fffce8 0%,#fff8c8 100%);
  border:1px solid rgba(201,184,23,.35);
  border-left:4px solid var(--pmp-leg-yellow);
  border-radius:0 6px 6px 0;
  padding:14px 18px;
  margin:18px 0 24px;
  font-size:.93rem;
  line-height:1.6;
  color:var(--pmp-leg-dark);
  position:relative;
}
.pmp-cms.pmp-legal .pmp-note::before{
  content:"ℹ";
  position:absolute;
  top:14px;
  right:18px;
  font-size:1.3rem;
  color:#a89107;
  opacity:.6;
}
.pmp-cms.pmp-legal .pmp-note strong{
  color:var(--pmp-leg-dark);
  font-weight:800;
}

/* ---------- Tableau RGPD finalités / base légale ---------- */
.pmp-cms.pmp-legal .pmp-rgpd-table{
  width:100%;
  border-collapse:collapse;
  margin:18px 0 28px;
  font-size:.88rem;
  background:#fff;
  box-shadow:0 4px 16px -10px rgba(20,30,40,.12);
  border-radius:6px;
  overflow:hidden;
}
.pmp-cms.pmp-legal .pmp-rgpd-table thead th{
  background:var(--pmp-leg-cyan-deep);
  color:#fff;
  font-family:'Karla',sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:.74rem;
  padding:12px 14px;
  text-align:left;
  vertical-align:middle;
}
.pmp-cms.pmp-legal .pmp-rgpd-table tbody td{
  padding:12px 14px;
  border-bottom:1px solid var(--pmp-leg-line);
  vertical-align:top;
  line-height:1.5;
}
.pmp-cms.pmp-legal .pmp-rgpd-table tbody tr:nth-child(even) td{
  background:var(--pmp-leg-cream);
}
.pmp-cms.pmp-legal .pmp-rgpd-table tbody tr:hover td{
  background:rgba(47,181,210,.06);
}

/* ---------- Formulaire de rétractation ---------- */
.pmp-cms.pmp-legal .pmp-formulaire{
  background:#fff;
  border:2px dashed var(--pmp-leg-cyan);
  border-radius:6px;
  padding:20px 24px;
  margin:14px 0 24px;
  font-family:'Karla',Arial,sans-serif;
  font-size:.92rem;
  line-height:1.7;
  color:var(--pmp-leg-dark);
}
.pmp-cms.pmp-legal .pmp-formulaire p:first-child{
  font-style:italic;
  color:var(--pmp-leg-muted);
  margin-bottom:12px;
}
.pmp-cms.pmp-legal .pmp-formulaire ul{
  padding-left:0;
  list-style:none;
}
.pmp-cms.pmp-legal .pmp-formulaire ul li{
  padding:4px 0;
  border-bottom:1px dotted var(--pmp-leg-line);
}
.pmp-cms.pmp-legal .pmp-formulaire ul li:last-child{
  border-bottom:none;
}

/* ---------- Bloc CTA bas de page (si présent) ---------- */
.pmp-cms.pmp-legal .pmp-cta{
  background:var(--pmp-leg-cream);
  border-radius:6px;
  padding:24px 28px;
  margin:32px 0;
  text-align:center;
}
.pmp-cms.pmp-legal .pmp-cta p{
  text-align:center;
  margin-bottom:14px;
}
.pmp-cms.pmp-legal .pmp-cta .btn,
.pmp-cms.pmp-legal .pmp-cta .btn-primary{
  display:inline-block;
  background:var(--pmp-leg-cyan);
  color:#fff !important;
  padding:11px 22px;
  border-radius:4px;
  font-weight:800;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:.88rem;
  margin:0 8px;
  transition:background .2s, transform .2s;
}
.pmp-cms.pmp-legal .pmp-cta .btn:hover,
.pmp-cms.pmp-legal .pmp-cta .btn-primary:hover{
  background:var(--pmp-leg-cyan-deep);
  transform:translateY(-1px);
}

/* ---------- Footer signature ---------- */
.pmp-legal__footer{
  margin-top:48px;
  padding:18px 22px;
  background:var(--pmp-leg-cream);
  border-radius:6px;
  border-left:3px solid var(--pmp-leg-cyan);
  font-size:.85rem;
  color:var(--pmp-leg-muted);
  line-height:1.55;
}
.pmp-legal__footer p{
  margin:0;
  text-align:left;
}

/* ---------- Anchor links sur les Articles (UX) ---------- */
.pmp-cms.pmp-legal h2:target{
  background:rgba(47,181,210,.08);
  border-radius:4px;
  padding-left:12px;
  scroll-margin-top:80px;
  transition:background .35s;
}

/* ---------- Responsive ---------- */
@media (max-width:780px){
  .pmp-cms.pmp-legal{
    padding:18px 0 40px;
    font-size:.98rem;
  }
  .pmp-cms.pmp-legal h2{font-size:1.18rem; margin:36px 0 14px;}
  .pmp-cms.pmp-legal h3{font-size:.98rem;}
  .pmp-cms.pmp-legal .pmp-hero{padding:18px 20px;}
  .pmp-cms.pmp-legal .pmp-lead{font-size:.96rem;}
  .pmp-cms.pmp-legal p{text-align:left; hyphens:none;}
  .pmp-cms.pmp-legal .pmp-rgpd-table{
    font-size:.78rem;
  }
  .pmp-cms.pmp-legal .pmp-rgpd-table thead th,
  .pmp-cms.pmp-legal .pmp-rgpd-table tbody td{
    padding:8px 10px;
  }
}

/* ---------- Print-friendly ---------- */
@media print{
  .pmp-cms.pmp-legal{
    max-width:100%;
    color:#000;
    font-size:11pt;
    line-height:1.5;
  }
  .pmp-cms.pmp-legal h2{
    page-break-after:avoid;
    border-color:#000;
  }
  .pmp-cms.pmp-legal .pmp-hero,
  .pmp-cms.pmp-legal .pmp-protect,
  .pmp-cms.pmp-legal .pmp-note,
  .pmp-cms.pmp-legal .pmp-card,
  .pmp-cms.pmp-legal .pmp-defs{
    background:transparent !important;
    border:1px solid #000 !important;
    box-shadow:none !important;
  }
  .pmp-cms.pmp-legal .pmp-rgpd-table thead th{
    background:#000 !important;
    color:#fff !important;
  }
  .pmp-cms.pmp-legal a{
    color:#000;
    text-decoration:underline;
  }
  .pmp-cms.pmp-legal a[href^="http"]::after{
    content:" (" attr(href) ")";
    font-size:.85em;
    color:#444;
  }
  .pmp-legal__footer{
    page-break-before:avoid;
  }
}

/* ---------- Focus accessibilité ---------- */
.pmp-cms.pmp-legal a:focus-visible{
  outline:3px solid var(--pmp-leg-yellow);
  outline-offset:2px;
  border-radius:2px;
}

/* ============ FIN PMP LEGAL CSS ============ */
