﻿/*
 Theme Name: Divi Child
 Description: Divi Child Theme
 Author: Arthur JOUVE - Cenov Distribution
 Author URI: https://www.cenov-distribution.fr/
 Template: Divi
 Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */
:root{
	--height-nav-bar:50px;
	--primary-red:#E31206;
	--primary-blue: #0066cc;
	--dark-blue: #023a51;
	--primary-white:#FFFFFF;
	--primary-black:#312F2D;
	--background-light: #f8f9fa;
    --border-light: #e9ecef;
    --accent-blue: #e6f3ff;
	--text-medium: #666666;
	--text-dark: #333333;
	--font-main:'Red Hat Display',Helvetica,Arial,Lucida,sans-serif;
}

/*------------------ 13.03.2024 Début ajout fonction sommaire en début de page-----------------------------------*/



.wp-sommaire {
	border-left: 5px solid #D9D9D9;
	hyphens: auto;
}
.wp-sommaire ul {
	list-style: none;
	padding-left: 0;
}
.wp-sommaire ul li {
	padding-left: 0;
}
.wp-sommaire ul li.titre-h3,
.wp-sommaire ul li.titre-h4,
.wp-sommaire ul li.titre-h5,
.wp-sommaire ul li.titre-h6 {
	padding-left: 20px;
	font-size: .9em;
}
.sommaire-ancre {
    position: relative;
}
.sommaire-ancre span {
    position: absolute;
    top: -100px;
}

/*------------------ 13.03.2024 fin ajout fonction sommaire en début de page-------------------------------------*/





/*---------------- 16.05.2024 DEBUT Ajout add to cart depuis les listes de produits ---------------------*/



.product .cart {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	margin-top: 10px;
}

.product .cart button[type="submit"] {
    margin: 0 10px !important;
}

/*
---------------- 16.05.2024 FIN Ajout add to cart depuis les listes de produits ---------------------
*/

h2.woocommerce-loop-product__title {font-size: 15px !important;}
h3.woocommerce-loop-product__title {font-size: 15px !important;}


/* ------------------ DEBUT MARCHE PAS modif 02.10.2024 pimpage produits  */
.woocommerce ul.products li.product {
    background-color: #fff !important;
    border-radius: 20px 20px 20px 20px !important;
 	box-shadow: 0px 12px 18px -6px rgba(0, 0, 0, 0.1) !important;
	border: 1px solid #e2e2e2 !important; 
}

.woocommerce ul.products li.product:hover {
  	border: 1px solid #b5b5b5 !important;
}

.woocommerce ul.products li.product a img{
  margin-top: 0.5em !important;
  margin-bottom: 0em !important;
  border-bottom: 0.2em !important;
  border-radius: 20px 20px !important;
}


h3.woocommerce-loop-product__title {
  margin-left: 0.5em !important;
  margin-right: 0.5em !important;
  margin-bottom: 0em !important;
  margin-top: 0.2em !important;
}



.woocommerce .products .star-rating {
  margin-left: 0.8em !important;
  margin-bottom: 0em !important;
  margin-top: 0em !important;
}


div.pwb-brands-in-loop {
  font-size:1em !important;
  margin-left: 0.5em !important;
  margin-right: 0.5em !important;
  margin-top: 0px !important;
  border-top: 0px !important;
  margin-bottom: 0.5em !important;
  font-family: 'Red Hat Display', Helvetica, Arial, Lucida, sans-serif;
  font-weight: 700;
}

/* ------------------ FIN modif 02.10.2024 pimpage produits  */

/* ------------------ DEBUT style produit  */

/* ------------------ FIN style produits  */


/* # WooCommerce Cart Icon CSS with FontAwesome 5
---------------------------------------------------------------------------------------------------- */
/*----------------------------------------------------------- ajout 10.01.2025 themes REACT pour les pages nav catégiries -----------------------------------------------------------*/
/* ------------------ FIN modif 10.01.2025 themes REACT ----------------------------------------------------*/




/*----- cenov-design-system.css v1.3.1 (2026-11-04) -----*/
/*
 * Cenov Distribution — Design System CSS
 * Source de vérité : ui-demo.html (projet local)
 * Version : 1.3.0 — 2026-11-03
 *
 * UTILISATION :
 * Copier l'intégralité de ce fichier dans le style.css du child theme Divi.
 * Purger le cache LiteSpeed après chaque mise à jour.
 *
 * CHANGELOG :
 * 1.3.0 — 2026-11-03 — Mobile cards WooCommerce : 1 col ≤480px, titre line-height,
 *                       bouton full-width. Article : h2 mobile, drop cap, padding.
 * 1.2.0 — 2026-05-20 — Reset typo Divi sur .entry-content .panel :
 *                       color, font-family, p, li, h2, h3 forcés !important.
 *                       Même approche que l'article ATEX (.cenov-article inline).
 * 1.1.0 — 2026-05-20 — Préfixe .entry-content sur tous les sélecteurs.
 * 1.0.0 — 2026-05-20 — Version initiale extraite de ui-demo.html.
 */

/* ── TOKENS CSS ─────────────────────────────────────────────── */
:root {
  --bg:               #F7F6F3;
  --card:             #FFFFFF;
  --border:           #E5E2DC;
  --muted:            #9E9892;
  --text:             #1A1816;
  --ease:             cubic-bezier(0.16, 1, 0.3, 1);
  --cenov-red:        #DC0D15;
  --cenov-red-dark:   #B50A11;
  --cenov-anthracite: #393430;
  --cenov-yellow:     #EDF000;
  --ppv-navy:         #1B3B6F;
  --ppv-navy-dark:    #142D57;
  --ppv-orange:       #EF7A24;
  --ppv-orange-dark:  #D06A1A;
  --ppv-text:         #0F1A2B;
  --success:          #2A7D4F;
  --info:             #4A7FD4;
  --warning:          #D4A500;
  --error-ppv:        #D93025;
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;
  --shadow-sm: 0 1px 4px rgba(0,0,0,.04);
  --shadow-md: 0 4px 16px rgba(0,0,0,.08);
  --shadow-lg: 0 8px 32px rgba(0,0,0,.1);
}

/* ════════════════════════════════════════════════════════════
   RESET DIVI — base typo du wrapper article
   Identique à ce que fait .cenov-article en inline sur l'article ATEX.
   Ecrase rgb(2,58,81) partout dans .panel.
   ════════════════════════════════════════════════════════════ */
.entry-content .panel {
  display: block !important;
  color: #1A1816 !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 15px;
  line-height: 1.75;
}
.entry-content .panel p  { color: #555 !important; font-family: 'Lato', sans-serif !important; margin: 0 0 1.1em; }
.entry-content .panel li { color: #555 !important; font-family: 'Lato', sans-serif !important; margin-bottom: .4em; }
.entry-content .panel h2 { color: #393430 !important; font-family: 'Red Hat Display', sans-serif !important; font-size: 22px; font-weight: 700; margin: 2.6em 0 .8em; }
.entry-content .panel h3 { color: #393430 !important; font-family: 'Red Hat Display', sans-serif !important; font-size: 17px; font-weight: 700; margin: 2em 0 .6em; }
.entry-content .panel a  { color: #DC0D15 !important; text-decoration: none; }
.entry-content .panel a:hover { text-decoration: underline; }
.entry-content .panel-inner { max-width: 100%; padding: 0; }

/* ════════════════════════════════════════════════════════════
   COMPOSANTS ARTICLE (préfixe .a-)
   Communs Cenov + PPV
   ════════════════════════════════════════════════════════════ */

/* ── Typographie éditoriale ─────────────────────────────────── */
.entry-content .a-lead { font-family:'Lato',sans-serif !important; font-size:19px !important; font-weight:300 !important; line-height:1.75 !important; color:#555 !important; }
.entry-content .a-dropcap::first-letter { float:left; font-family:'Red Hat Display',sans-serif; font-weight:900; font-size:66px; line-height:.82; margin:4px 10px 0 0; color:#DC0D15; }
.entry-content .a-mark { background:rgba(237,240,0,.45); border-radius:2px; padding:0 2px; }
.entry-content .a-inline { font-family:'Courier New',monospace; font-size:13px; background:#F0EEEA; color:#DC0D15 !important; padding:1px 5px; border-radius:3px; border:1px solid #E0DEDB; }
.entry-content .a-footnote-ref { font-size:10px; color:#DC0D15 !important; font-weight:700; vertical-align:super; font-family:'Courier New',monospace; }
.entry-content .a-footnote { font-family:'Lato',sans-serif; font-size:12px; color:var(--muted); padding-top:10px; border-top:1px solid var(--border); margin-top:10px; }

/* ── Blockquote / Pull quote ────────────────────────────────── */
.entry-content .a-blockquote { margin:0; padding:14px 22px; border-left:4px solid #DC0D15; background:#FFF5F5; border-radius:0 6px 6px 0; font-family:'Lato',sans-serif; font-size:15px; font-style:italic; color:#393430 !important; line-height:1.7; }
.entry-content .a-blockquote cite { display:block; margin-top:8px; font-style:normal; font-size:12px; font-weight:700; color:var(--muted); }
.entry-content .a-pullquote { text-align:center; padding:20px 32px; border-top:2px solid #393430; border-bottom:2px solid #393430; }
.entry-content .a-pullquote-text { font-family:'Red Hat Display',sans-serif; font-size:21px; font-weight:300; line-height:1.5; color:#393430 !important; font-style:italic; }
.entry-content .a-pullquote-author { font-family:'Lato',sans-serif; font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#DC0D15 !important; margin-top:8px; }

/* ── Callouts ───────────────────────────────────────────────── */
.entry-content .a-callout { border-radius:10px; border:1px solid; font-family:'Lato',sans-serif; font-size:14px; line-height:1.6; margin-bottom:1.25rem; }
.entry-content .a-callout-body { padding:14px 18px; color:#555 !important; }
.entry-content .a-callout-body p { color:#555 !important; margin:0 0 .5em; }
.entry-content .a-callout-head { display:inline-flex; align-items:center; gap:6px; font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:11px; letter-spacing:.3px; padding:3px 10px 3px 8px; border-radius:20px; margin-bottom:8px; }
.entry-content .a-tip    { background:#EDF9F2; border-color:rgba(42,125,79,.22); }
.entry-content .a-tip    .a-callout-head { background:var(--success); color:#fff !important; }
.entry-content .a-note   { background:#EEF4FF; border-color:rgba(74,127,212,.22); }
.entry-content .a-note   .a-callout-head { background:var(--info); color:#fff !important; }
.entry-content .a-warn   { background:#FEFAE8; border-color:rgba(212,165,0,.35); }
.entry-content .a-warn   .a-callout-head { background:var(--warning); color:#fff !important; }
.entry-content .a-danger { background:#FFF3F3; border-color:rgba(220,13,21,.22); }
.entry-content .a-danger .a-callout-head { background:var(--cenov-red); color:#fff !important; }

/* ── Point clé (dark card anthracite) ──────────────────────── */
.entry-content .a-key { border-radius:8px; background:#393430; padding:18px 22px; margin-bottom:1.25rem; }
.entry-content .a-key-label { font-family:'Red Hat Display',sans-serif; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#EDF000 !important; margin-bottom:6px; }
.entry-content .a-key-text  { font-family:'Red Hat Display',sans-serif; font-size:17px; font-weight:700; color:#fff !important; line-height:1.5; }

/* ── Table des matières ─────────────────────────────────────── */
.entry-content .a-toc { background:#F7F6F5; border-radius:10px; padding:18px; border:1px solid var(--border); max-width:360px; margin-bottom:1.5rem; }
.entry-content .a-toc-title { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--border); }
.entry-content .a-toc ul { list-style:none; padding:0; margin:0; }
.entry-content .a-toc li { margin:0; }
.entry-content .a-toc a { display:flex; align-items:center; gap:8px; padding:5px 8px; margin-left:-8px; font-family:'Lato',sans-serif; font-size:13px; color:#393430 !important; text-decoration:none; border-radius:4px; transition:background 110ms, color 110ms; }
.entry-content .a-toc a:hover { color:var(--cenov-red) !important; background:rgba(220,13,21,.04); }
.entry-content .a-toc a.on   { color:var(--cenov-red) !important; font-weight:700; background:rgba(220,13,21,.07); }
.entry-content .a-toc a.h3   { padding-left:22px; font-size:12px; color:var(--muted) !important; }
.entry-content .a-toc-n { font-family:'Courier New',monospace; font-size:10px; color:#DC0D15 !important; font-weight:700; flex-shrink:0; }

/* ── Étapes numérotées ──────────────────────────────────────── */
.entry-content .a-steps { display:flex; flex-direction:column; margin-bottom:1.25rem; }
.entry-content .a-step  { display:flex; gap:14px; padding-bottom:22px; }
.entry-content .a-step:last-child { padding-bottom:0; }
.entry-content .a-step-col { display:flex; flex-direction:column; align-items:center; flex-shrink:0; }
.entry-content .a-step-num { width:32px; height:32px; border-radius:50%; background:#DC0D15 !important; color:#fff !important; font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:13px; display:flex; align-items:center; justify-content:center; z-index:1; flex-shrink:0; }
.entry-content .a-step-line { width:2px; flex:1; background:#E0DEDB; margin-top:4px; min-height:20px; }
.entry-content .a-step:last-child .a-step-line { display:none; }
.entry-content .a-step-title { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:15px; color:#393430 !important; margin-bottom:3px; padding-top:4px; }
.entry-content .a-step-desc  { font-family:'Lato',sans-serif; font-size:14px; color:#666 !important; line-height:1.6; }

/* ── Stats éditoriales ──────────────────────────────────────── */
.entry-content .a-stats { display:flex; flex-direction:column; border-top:1px solid var(--border); margin-bottom:1.25rem; }
.entry-content .a-stat  { display:grid; grid-template-columns:72px 1fr; grid-template-rows:auto auto; column-gap:20px; padding:16px 0; border-bottom:1px solid var(--border); }
.entry-content .a-stat-val   { grid-column:1; grid-row:1 / span 2; align-self:center; font-family:'Red Hat Display',sans-serif; font-size:28px; font-weight:900; color:var(--cenov-red) !important; line-height:1; text-align:right; }
.entry-content .a-stat-label { grid-column:2; grid-row:1; font-family:'Lato',sans-serif; font-size:14px; color:var(--text) !important; font-weight:700; align-self:end; }
.entry-content .a-stat-trend { grid-column:2; grid-row:2; font-size:12px; font-family:'Lato',sans-serif; color:var(--muted); align-self:start; padding-top:2px; }
.entry-content .trend-up { color:var(--success) !important; }
.entry-content .trend-dn { color:var(--cenov-red) !important; }

/* ── Tableau comparatif (feature matrix) ───────────────────── */
.entry-content .a-feat { width:100%; border-collapse:collapse; font-family:'Lato',sans-serif; }
.entry-content .a-feat th { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:12px; padding:11px 14px; border-bottom:2px solid var(--border); color:#393430 !important; text-align:center; }
.entry-content .a-feat th.f-lbl { text-align:left; color:var(--muted) !important; font-size:10px; text-transform:uppercase; letter-spacing:1px; }
.entry-content .a-feat th.f-hi  { background:#DC0D15 !important; color:#fff !important; border-radius:8px 8px 0 0; }
.entry-content .a-feat td { padding:9px 14px; border-bottom:1px solid var(--border); text-align:center; font-size:14px; color:#393430 !important; }
.entry-content .a-feat td.f-lbl { text-align:left; font-weight:500; }
.entry-content .a-feat td.f-hi  { background:rgba(220,13,21,.04); }
.entry-content .a-feat tr:last-child td { border-bottom:none; }
.entry-content .ck { color:#2A7D4F !important; font-weight:700; }
.entry-content .cx { color:#DC0D15 !important; }
.entry-content .cd { color:var(--muted) !important; }

/* ── Timeline ───────────────────────────────────────────────── */
.entry-content .a-timeline { position:relative; padding-left:22px; }
.entry-content .a-timeline::before { content:''; position:absolute; left:3px; top:8px; bottom:8px; width:2px; background:#E0DEDB; }
.entry-content .a-tl-item  { position:relative; padding-bottom:22px; }
.entry-content .a-tl-item:last-child { padding-bottom:0; }
.entry-content .a-tl-dot   { position:absolute; left:-22px; top:4px; width:10px; height:10px; border-radius:50%; background:#DC0D15 !important; border:2px solid #fff; box-shadow:0 0 0 2px #DC0D15; }
.entry-content .a-tl-date  { font-family:'Lato',sans-serif; font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#DC0D15 !important; margin-bottom:2px; }
.entry-content .a-tl-title { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:14px; color:#393430 !important; margin-bottom:3px; }
.entry-content .a-tl-desc  { font-family:'Lato',sans-serif; font-size:13px; color:var(--muted); line-height:1.6; }

/* ── Tags ───────────────────────────────────────────────────── */
.entry-content .a-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:1.5rem; }
.entry-content .a-tag  { font-family:'Lato',sans-serif; font-size:12px; font-weight:700; padding:4px 12px; border-radius:20px; border:1px solid #E0DEDB; color:#393430 !important; background:#fff; cursor:pointer; transition:border-color 120ms, color 120ms; text-decoration:none; display:inline-block; }
.entry-content .a-tag:hover,
.entry-content .a-tag.on { border-color:#DC0D15; color:#DC0D15 !important; }

/* ── Navigation article ─────────────────────────────────────── */
.entry-content .a-nav { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.entry-content .a-nav-card { border:1px solid var(--border); border-radius:10px; padding:15px 16px; text-decoration:none; display:flex; flex-direction:column; gap:4px; background:#fff; transition:border-color 130ms, box-shadow 130ms, transform 130ms; }
.entry-content .a-nav-card:hover { border-color:#DC0D15; box-shadow:0 4px 14px rgba(220,13,21,.08); transform:translateY(-1px); }
.entry-content .a-nav-dir   { font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--muted); font-family:'Lato',sans-serif; }
.entry-content .a-nav-title { font-size:14px; font-weight:700; color:#393430 !important; font-family:'Red Hat Display',sans-serif; line-height:1.4; }
.entry-content .a-nav-card.r { text-align:right; }

/* ── Auteur ─────────────────────────────────────────────────── */
.entry-content .a-author { display:flex; gap:18px; align-items:flex-start; background:#F7F6F5; border-radius:12px; padding:22px; border:1px solid var(--border); }
.entry-content .a-author-av { width:60px; height:60px; border-radius:50%; flex-shrink:0; background:#393430; display:flex; align-items:center; justify-content:center; font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:18px; color:#fff !important; }
.entry-content .a-author-name { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:16px; color:#393430 !important; }
.entry-content .a-author-role { font-family:'Lato',sans-serif; font-size:12px; color:var(--muted); margin-top:2px; margin-bottom:8px; }
.entry-content .a-author-bio  { font-family:'Lato',sans-serif; font-size:14px; color:#555 !important; line-height:1.6; }

/* ── Feedback / Partage ─────────────────────────────────────── */
.entry-content .a-feedback { text-align:center; padding:22px; border:1px solid var(--border); border-radius:10px; background:#fff; }
.entry-content .a-feedback-q { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:15px; color:#393430 !important; margin-bottom:12px; }
.entry-content .a-feedback-btns { display:flex; justify-content:center; gap:8px; }
.entry-content .a-fb-btn { display:flex; align-items:center; gap:6px; padding:8px 18px; border-radius:6px; border:1px solid var(--border); font-family:'Lato',sans-serif; font-size:14px; font-weight:700; cursor:pointer; transition:border-color 120ms, color 120ms; background:#fff; color:#393430 !important; }
.entry-content .a-fb-btn:hover { border-color:#DC0D15; color:#DC0D15 !important; }
.entry-content .a-share { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.entry-content .a-share-lbl { font-family:'Lato',sans-serif; font-size:11px; font-weight:700; color:var(--muted); text-transform:uppercase; letter-spacing:1px; }
.entry-content .a-share-btn { display:flex; align-items:center; gap:5px; padding:7px 13px; border-radius:6px; border:1px solid var(--border); font-family:'Lato',sans-serif; font-size:13px; font-weight:700; cursor:pointer; background:#fff; color:#393430 !important; text-decoration:none; transition:transform 120ms, box-shadow 120ms; }
.entry-content .a-share-btn:hover { transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.08); }

/* ── Articles liés ──────────────────────────────────────────── */
.entry-content .a-related { display:grid; grid-template-columns:2fr 1fr 1fr; gap:10px; }
.entry-content .a-rel-card { background:#fff; border:1px solid var(--border); border-radius:10px; overflow:hidden; text-decoration:none; transition:transform 130ms, box-shadow 130ms; display:block; }
.entry-content .a-rel-card:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(0,0,0,.07); }
.entry-content .a-rel-img  { height:90px; background:#E5E2DC; display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--muted); font-family:'Lato',sans-serif; }
.entry-content .a-rel-card:first-child .a-rel-img { height:130px; }
.entry-content .a-rel-body { padding:11px 12px; }
.entry-content .a-rel-cat  { font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#DC0D15 !important; font-family:'Red Hat Display',sans-serif; margin-bottom:3px; }
.entry-content .a-rel-ttl  { font-size:13px; font-weight:700; color:#393430 !important; font-family:'Red Hat Display',sans-serif; line-height:1.4; }

/* ── Newsletter ─────────────────────────────────────────────── */
.entry-content .a-news { background:#393430; border-radius:12px; padding:30px; text-align:center; }
.entry-content .a-news-eye   { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#EDF000 !important; margin-bottom:7px; font-family:'Red Hat Display',sans-serif; }
.entry-content .a-news-title { font-family:'Red Hat Display',sans-serif; font-size:21px; font-weight:900; color:#fff !important; margin-bottom:7px; }
.entry-content .a-news-sub   { font-family:'Lato',sans-serif; font-size:14px; color:rgba(255,255,255,.55); margin-bottom:18px; }
.entry-content .a-news-form  { display:flex; gap:8px; max-width:380px; margin:0 auto; }
.entry-content .a-news-input { flex:1; height:46px; padding:0 14px; border:1px solid rgba(255,255,255,.2); border-radius:4px; background:rgba(255,255,255,.1); color:#fff !important; font-family:'Lato',sans-serif; font-size:15px; outline:none; }
.entry-content .a-news-input::placeholder { color:rgba(255,255,255,.35); }
.entry-content .a-news-input:focus { border-color:#DC0D15; }
.entry-content .a-news-btn   { height:46px; padding:0 22px; background:#DC0D15; color:#fff !important; border:none; border-radius:4px; font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:15px; cursor:pointer; white-space:nowrap; transition:background 130ms, transform 130ms; }
.entry-content .a-news-btn:hover { background:var(--cenov-red-dark); transform:translateY(-1px); }
.entry-content .a-news-note  { font-family:'Lato',sans-serif; font-size:11px; color:rgba(255,255,255,.35); margin-top:9px; }

/* ── Médias ─────────────────────────────────────────────────── */
.entry-content .a-fig-img { width:100%; border-radius:8px; background:#E5E2DC; display:flex; align-items:center; justify-content:center; aspect-ratio:16/9; color:var(--muted); font-family:'Lato',sans-serif; font-size:13px; border:1px solid var(--border); }
.entry-content .a-fig-cap { text-align:center; font-family:'Lato',sans-serif; font-size:12px; font-style:italic; color:var(--muted); margin-top:8px; line-height:1.5; }
.entry-content .a-gallery  { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.entry-content .a-gitem    { aspect-ratio:4/3; border-radius:6px; background:#E5E2DC; display:flex; align-items:center; justify-content:center; border:1px solid var(--border); transition:opacity 130ms, transform 130ms; font-size:11px; font-family:'Lato',sans-serif; color:var(--muted); }
.entry-content .a-gitem[data-lightbox] { cursor:zoom-in; }
.entry-content .a-gitem:hover { opacity:.85; transform:scale(1.01); }

/* ── Code ───────────────────────────────────────────────────── */
.entry-content .a-code { background:#111; border-radius:10px; overflow:hidden; font-family:'Courier New',monospace; }
.entry-content .a-code-bar { display:flex; justify-content:space-between; align-items:center; padding:9px 14px; background:#1A1A1A; border-bottom:1px solid #2A2A2A; }
.entry-content .a-code-lang { font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#555 !important; }
.entry-content .a-code-copy { font-size:11px; padding:3px 10px; border-radius:4px; background:#222; color:#777 !important; border:1px solid #333; cursor:pointer; font-family:'Lato',sans-serif; font-weight:700; transition:background 120ms, color 120ms; }
.entry-content .a-code-copy:hover { background:#333; color:#ccc !important; }
.entry-content .a-code-body { padding:14px 0; overflow-x:auto; }
.entry-content .a-line { display:flex; }
.entry-content .a-ln   { width:40px; text-align:right; padding-right:14px; padding-left:14px; font-size:13px; color:#444 !important; flex-shrink:0; user-select:none; }
.entry-content .a-lc   { font-size:13px; line-height:1.65; color:#D4D4D4 !important; padding-right:16px; }
.entry-content .kw { color:#569CD6 !important; }
.entry-content .st { color:#CE9178 !important; }
.entry-content .fn { color:#DCDCAA !important; }
.entry-content .cm { color:#6A9955 !important; font-style:italic; }
.entry-content .nm { color:#B5CEA8 !important; }
.entry-content .a-term { background:#0D1117; border-radius:10px; overflow:hidden; font-family:'Courier New',monospace; }
.entry-content .a-term-bar { background:#161B22; padding:9px 14px; display:flex; gap:6px; align-items:center; }
.entry-content .a-dot { width:10px; height:10px; border-radius:50%; }
.entry-content .a-term-body { padding:14px; font-size:13px; }
.entry-content .t-pr  { color:#58A6FF !important; }
.entry-content .t-cm  { color:#E6EDF3 !important; }
.entry-content .t-out { color:#8B949E !important; }
.entry-content .t-ok  { color:#3FB950 !important; }

/* ════════════════════════════════════════════════════════════
   COMPOSANTS CENOV (préfixe .c-)
   ════════════════════════════════════════════════════════════ */

/* ── Tableau produits ───────────────────────────────────────── */
.entry-content .cenov-table { width:100%; border-collapse:collapse; font-family:'Lato',sans-serif; margin-bottom:1.25rem; }
.entry-content .cenov-table thead tr { background:#393430 !important; }
.entry-content .cenov-table thead th { font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:13px; color:#fff !important; text-align:left; padding:12px 16px; letter-spacing:.3px; background:#393430 !important; }
.entry-content .cenov-table tbody tr:nth-child(odd)  { background:#FFFFFF; }
.entry-content .cenov-table tbody tr:nth-child(even) { background:#F7F6F5; }
.entry-content .cenov-table tbody tr { transition:background 100ms; }
.entry-content .cenov-table tbody tr:hover { background:#EDEAE4; }
.entry-content .cenov-table tbody td { font-size:14px; color:#393430 !important; padding:10px 16px; border-bottom:1px solid #E0DEDB; }
@media (max-width:600px) {
  .entry-content .cenov-table thead { display:none; }
  .entry-content .cenov-table tbody tr { display:block; border:1px solid #E0DEDB; border-radius:8px; margin-bottom:12px; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.06); }
  .entry-content .cenov-table tbody td { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #F0EEEC; padding:10px 14px; }
  .entry-content .cenov-table tbody td:last-child { border-bottom:none; }
  .entry-content .cenov-table tbody td::before { content:attr(data-label); font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:11px; color:#DC0D15 !important; text-transform:uppercase; letter-spacing:.5px; flex-shrink:0; margin-right:12px; }
}

/* ── Boutons ────────────────────────────────────────────────── */
.entry-content .c-btn-primary {
  background: var(--cenov-red) !important;
  color: #fff !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 24px;
  border-radius: 4px;
  font-family: 'Red Hat Display', sans-serif;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background 150ms var(--ease), transform 150ms var(--ease), box-shadow 150ms var(--ease);
}
.entry-content .c-btn-primary:hover {
  background: var(--cenov-red-dark) !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(220,13,21,.32);
  text-decoration: none;
}
.entry-content .c-btn-outline {
  background: transparent !important;
  color: var(--cenov-red) !important;
  border: 2px solid var(--cenov-red);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 24px;
  border-radius: 4px;
  font-family: 'Red Hat Display', sans-serif;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  cursor: pointer;
  transition: background 150ms var(--ease), transform 150ms var(--ease), box-shadow 150ms var(--ease);
}
.entry-content .c-btn-outline:hover { background:#FFF5F5 !important; transform:translateY(-2px); box-shadow:0 4px 12px rgba(220,13,21,.14); }

/* ── Badges ─────────────────────────────────────────────────── */
.entry-content .c-badge { display:inline-flex; align-items:center; font-family:'Red Hat Display',sans-serif; font-weight:700; font-size:11px; padding:3px 8px; border-radius:4px; letter-spacing:.4px; }
.entry-content .c-badge-ie    { background:#DC0D15; color:#fff !important; }
.entry-content .c-badge-atex  { background:#393430; color:#EDF000 !important; }
.entry-content .c-badge-new   { background:#EDF000; color:#393430 !important; }
.entry-content .c-badge-dispo { background:#2A7D4F; color:#fff !important; }
.entry-content .c-badge-cmd   { background:transparent; color:#393430 !important; border:1px solid #DC0D15; }

/* ── Alertes ────────────────────────────────────────────────── */
.entry-content .c-alert { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; border-radius:var(--r-md); border:1px solid; font-family:'Lato',sans-serif; font-size:14px; margin-bottom:10px; color:#555 !important; }
.entry-content .c-alert-icon { width:22px; height:22px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:900; margin-top:1px; line-height:1; }
.entry-content .c-alert-info    { background:#EEF4FF; border-color:rgba(74,127,212,.3); }
.entry-content .c-alert-success { background:#EDFAF4; border-color:rgba(42,125,79,.25); }
.entry-content .c-alert-warning { background:#FEFAE8; border-color:rgba(212,165,0,.4); }
.entry-content .c-alert-error   { background:#FFF3F3; border-color:rgba(220,13,21,.25); }
.entry-content .c-alert-info    .c-alert-icon { background:var(--info); color:#fff !important; }
.entry-content .c-alert-success .c-alert-icon { background:var(--success); color:#fff !important; }
.entry-content .c-alert-warning .c-alert-icon { background:var(--warning); color:#fff !important; }
.entry-content .c-alert-error   .c-alert-icon { background:var(--cenov-red); color:#fff !important; }

/* ── Breadcrumb ─────────────────────────────────────────────── */
.entry-content .c-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:4px; font-family:'Lato',sans-serif; font-size:13px; }
.entry-content .c-breadcrumb a { color:#393430 !important; text-decoration:none; transition:color 110ms; }
.entry-content .c-breadcrumb a:hover { color:#DC0D15 !important; }
.entry-content .c-breadcrumb .sep { color:#9E9892; }
.entry-content .c-breadcrumb .current { font-weight:700; color:#393430 !important; }

/* ════════════════════════════════════════════════════════════
   COMPOSANTS PPV (préfixe .p-)
   ════════════════════════════════════════════════════════════ */

/* ── Tableau pièces ─────────────────────────────────────────── */
.entry-content .ppv-table { width:100%; border-collapse:collapse; font-family:'Poppins',sans-serif; }
.entry-content .ppv-table thead tr { background:#1B3B6F !important; }
.entry-content .ppv-table thead th { font-weight:700; font-size:13px; color:#fff !important; text-align:left; padding:12px 16px; background:#1B3B6F !important; }
.entry-content .ppv-table tbody tr:nth-child(odd)  { background:#FFFFFF; }
.entry-content .ppv-table tbody tr:nth-child(even) { background:#F0F4F9; }
.entry-content .ppv-table tbody tr { transition:background 100ms; }
.entry-content .ppv-table tbody tr:hover { background:rgba(239,122,36,.08); }
.entry-content .ppv-table tbody td { font-size:14px; color:var(--ppv-text) !important; padding:10px 16px; border-bottom:1px solid #CBD8EC; }

/* ── Boutons PPV ────────────────────────────────────────────── */
.entry-content .p-btn-primary { background:var(--ppv-orange) !important; color:#fff !important; display:inline-flex; align-items:center; justify-content:center; height:48px; padding:0 24px; border-radius:4px; font-family:'Poppins',sans-serif; font-weight:700; font-size:15px; text-decoration:none; border:none; cursor:pointer; transition:background 150ms, transform 150ms, box-shadow 150ms; }
.entry-content .p-btn-primary:hover { background:var(--ppv-orange-dark) !important; color:#fff !important; transform:translateY(-2px); box-shadow:0 6px 18px rgba(239,122,36,.32); text-decoration:none; }

/* ── Badges PPV ─────────────────────────────────────────────── */
.entry-content .p-badge { display:inline-flex; align-items:center; font-family:'Poppins',sans-serif; font-weight:500; font-size:11px; padding:3px 9px; border-radius:4px; }
.entry-content .p-badge-marque { background:#1B3B6F; color:#fff !important; }
.entry-content .p-badge-ref    { background:transparent; color:#1B3B6F !important; border:1px solid #1B3B6F; }
.entry-content .p-badge-kit    { background:#EF7A24; color:#fff !important; }
.entry-content .p-badge-stock  { background:#2A7D4F; color:#fff !important; }
.entry-content .p-badge-last   { background:#FFF3E8; color:#EF7A24 !important; border:1px solid #EF7A24; }

/* ── Alertes PPV ────────────────────────────────────────────── */
.entry-content .p-alert { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; border-radius:var(--r-md); border:1px solid; font-family:'Poppins',sans-serif; font-size:14px; font-weight:300; margin-bottom:10px; color:#555 !important; }
.entry-content .p-alert-icon { width:22px; height:22px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:900; margin-top:1px; }
.entry-content .p-alert-info    { background:#EEF3FA; border-color:rgba(27,59,111,.25); }
.entry-content .p-alert-warning { background:#FFF8F2; border-color:rgba(239,122,36,.3); }
.entry-content .p-alert-info    .p-alert-icon { background:var(--ppv-navy); color:#fff !important; }
.entry-content .p-alert-warning .p-alert-icon { background:var(--ppv-orange); color:#fff !important; }

/* ════════════════════════════════════════════════════════════
   RESPONSIVE ARTICLE
   ════════════════════════════════════════════════════════════ */
@media (max-width:640px) {
  .entry-content .a-nav      { grid-template-columns:1fr; }
  .entry-content .a-related  { grid-template-columns:1fr; }
  .entry-content .a-gallery  { grid-template-columns:repeat(2,1fr); }
  .entry-content .a-news-form { flex-direction:column; }
  .entry-content .a-author   { flex-direction:column; }
  .entry-content .a-pullquote { padding:16px; }
  .entry-content .a-pullquote-text { font-size:17px; }

  /* Headings article — .cenov-article est le wrapper réel des articles WP */
  .entry-content .cenov-article h2 { font-size:19px; margin:2em 0 .6em; }
  /* Drop cap 66px → illisible à 390px */
  .entry-content .a-dropcap::first-letter { font-size:40px !important; line-height:.9; }
  /* CTA box + point clé : spécificité 020 > inline 010 */
  .entry-content .a-cta-box { padding:20px 16px !important; }
  .entry-content .a-key { padding:16px 18px !important; }
  /* Boutons full-width dans les articles */
  .entry-content .cenov-article .c-btn-primary,
  .entry-content .cenov-article .c-btn-outline { width:100%; justify-content:center; }
}

/* ════════════════════════════════════════════════════════════
   WOOCOMMERCE PRODUCT CARDS — MOBILE
   Divi Shop module : .et-db #et-boc .et-l .et_pb_shop ul.products.columns-X li.product
   spécificité (1,6,2) avec width:48% !important à ≤980px.
   Fix : ajouter .et_pb_column .et_pb_module pour atteindre (1,6,2) + source order child theme.
   ════════════════════════════════════════════════════════════ */
@media (max-width:480px) {
  /* (1,3,2) pour pages hors Shop module + (1,6,2) pour Divi Shop module via .et_pb_column */
  #et-boc .woocommerce ul.products li.product,
  #et-boc .woocommerce-page ul.products li.product,
  .et-db #et-boc .et-l .et_pb_column .et_pb_module.et_pb_shop ul.products li.product {
    width:100% !important;
    float:none !important;
    margin-bottom:12px !important;
  }

  /* Titre : line-height Divi = 15px sur font-size 15px → ratio 1:1, lignes se touchent */
  .woocommerce-loop-product__title {
    line-height:1.4 !important;
  }

  /* Bouton : tap target pleine largeur */
  #et-boc .woocommerce ul.products li.product .button,
  #et-boc .woocommerce-page ul.products li.product .button,
  .et-db #et-boc .et-l .et_pb_column .et_pb_module.et_pb_shop ul.products li.product .button {
    width:100% !important;
    display:block !important;
    box-sizing:border-box !important;
    margin-top:8px !important;
  }
}

/* honeypot anti-spam formulaire de contact */
input[name="cenov_website"],
#cenov_website {
    display: none !important;
    visibility: hidden !important;
}
