.elementor-2930 .elementor-element.elementor-element-7dbef79 .dbl-gp-product-gallery{--dbl-gp-product-gallery-thumb-width:112px;--dbl-gp-product-gallery-gap:18px;}.elementor-2930 .elementor-element.elementor-element-7dbef79 .dbl-gp-product-gallery__stage, .elementor-2930 .elementor-element.elementor-element-7dbef79 .dbl-gp-product-gallery__slide{border-radius:18px 18px 18px 18px;}.elementor-2930 .elementor-element.elementor-element-d99592c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2930 .elementor-element.elementor-element-d99592c .dbl-gp-product-summary{font-size:1px;}.elementor-2930 .elementor-element.elementor-element-702465d > .elementor-widget-container{margin:20px 0px 0px 0px;}.elementor-2930 .elementor-element.elementor-element-702465d .dbl-gp-product-quote-modal-button{font-size:21px;font-weight:700;}.elementor-2930 .elementor-element.elementor-element-588b95d > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-2930 .elementor-element.elementor-element-ad3267a > .elementor-widget-container{margin:00px 0px 0px 0px;}.elementor-2930 .elementor-element.elementor-element-ad3267a .dbl-gp-product-quote-modal-button{font-size:21px;font-weight:700;}.elementor-2930 .elementor-element.elementor-element-1e74490{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:60px;--margin-left:0px;--margin-right:0px;}.elementor-2930 .elementor-element.elementor-element-f785d5f.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2930 .elementor-element.elementor-element-f785d5f .dbl-gp-cta-card{min-height:340px;padding:60px 60px 60px 60px;border-radius:20px 20px 20px 20px;--dbl-gp-cta-bg-color:#df5555;--dbl-gp-cta-overlay-opacity:0;--dbl-gp-cta-bg-size:cover;--dbl-gp-cta-text-color:#ffffff;}.elementor-2930 .elementor-element.elementor-element-f785d5f .dbl-gp-cta-title-card__title{font-size:40px;}.elementor-2930 .elementor-element.elementor-element-dfe72f8 .dbl-gp-cta-card{min-height:310px;padding:60px 60px 60px 60px;border-radius:20px 20px 20px 20px;--dbl-gp-cta-bg-color:#161616;--dbl-gp-cta-overlay-opacity:0.73;--dbl-gp-cta-bg-size:cover;--dbl-gp-cta-text-color:#ffffff;}.elementor-2930 .elementor-element.elementor-element-dfe72f8 .dbl-gp-cta-action-card{--dbl-gp-cta-button-bg:#ffffff;--dbl-gp-cta-button-color:#161616;}/* Start custom CSS for dbl-gp-product-categories, class: .elementor-element-ff44fa4 */.elementor-2930 .elementor-element.elementor-element-ff44fa4 {
    background-color:transparent !important;
}/* End custom CSS */
/* Start custom CSS for dbl-gp-product-summary, class: .elementor-element-d99592c */.elementor-2930 .elementor-element.elementor-element-d99592c h4{
    font-size: 20px;
    line-height: 30px;
    font-weight: 400;
    margin: 0;
}/* End custom CSS */
/* Start custom CSS for dbl-gp-product-content, class: .elementor-element-588b95d *//* ============================================================
   ABS BOXES — Product Description Styles v3
   Scope: .dbl-product-description
   Couvre 48 produits, 2 ères de markup (Bootstrap + Tables)
   ============================================================ */

/* BASE */
.dbl-product-description {
  font-size: 1rem;
  line-height: 1.65;
  color: #333;
  word-break: break-word;
  overflow: hidden;
}

/* SPACERS BLANCS */
.dbl-product-description span[style*="color: #ffffff"],
.dbl-product-description span[style*="color:#ffffff"],
.dbl-product-description span[style*="color: rgb(255, 255, 255)"],
.dbl-product-description span[style*="color:rgb(255,255,255)"],
.dbl-product-description span[style*="color: white"] {
  display: none !important;
}
.dbl-product-description p:has(> span[style*="color: #ffffff"]:only-child),
.dbl-product-description p:has(> span[style*="color:#ffffff"]:only-child),
.dbl-product-description p:has(> span[style*="color: rgb(255"]:only-child) {
  margin: 0; line-height: 0; font-size: 0;
}
.dbl-product-description p:empty { display: none; }

/* GRILLE BOOTSTRAP → FLEXBOX */
.dbl-product-description .row {
  display: flex; flex-wrap: wrap; gap: 1.5rem;
  margin-top: 1.5rem; margin-bottom: 0;
}
.dbl-product-description .row:first-child { margin-top: 0; }
.dbl-product-description .row .row { margin-top: 0.75rem; }
.dbl-product-description .row::after,
.dbl-product-description .cms-block::after {
  content: ''; display: table; clear: both;
}
.dbl-product-description [class*="col-sm-"] { min-width: 0; flex-shrink: 1; }
.dbl-product-description .col-sm-12 { flex: 0 0 100%; }
.dbl-product-description .col-sm-9  { flex: 3 1 55%; }
.dbl-product-description .col-sm-6  { flex: 1 1 40%; }
.dbl-product-description .col-sm-4  { flex: 1 1 28%; }
.dbl-product-description .col-sm-3  { flex: 1 1 20%; }
.dbl-product-description .col-sm-2  { flex: 1 1 14%; min-width: 120px; }

/* TABLES LEGACY responsive */
.dbl-product-description table {
  width: 100% !important; max-width: 100%;
  border-collapse: collapse; table-layout: auto;
  margin-top: 1.5rem;
}
.dbl-product-description table:first-child { margin-top: 0; }
.dbl-product-description table table { margin-top: 0; }
.dbl-product-description td, .dbl-product-description th {
  vertical-align: top; padding: 0.5rem 0.75rem;
  
}
.dbl-product-description td:first-child { padding-left: 0; }
.dbl-product-description td:last-child  { padding-right: 0; }

/* RESPONSIVE */
@media (max-width: 900px) {
  .dbl-product-description .col-sm-4,
  .dbl-product-description .col-sm-3,
  .dbl-product-description .col-sm-2 { flex: 1 1 45%; }
}
@media (max-width: 768px) {
  .dbl-product-description .col-sm-6,
  .dbl-product-description .col-sm-9 { flex: 0 0 100%; }
  .dbl-product-description .row { gap: 1rem; }
  .dbl-product-description table,
  .dbl-product-description tbody,
  .dbl-product-description tr,
  .dbl-product-description td { display: block; width: 100% !important; }
  .dbl-product-description td { padding: 0.5rem 0; }
}
@media (max-width: 600px) {
  .dbl-product-description [class*="col-sm-"] { flex: 0 0 100%; }
  .dbl-product-description .row { gap: 0.75rem; }
  .dbl-product-description p[style*="text-align: justify"],
  .dbl-product-description p[style*="text-align:justify"] { text-align: left; }
  .dbl-product-description h2 { font-size: 1.2rem; }
  .dbl-product-description h3 { font-size: 1.05rem; }
  .dbl-product-description img[style*="float"] {
    float: none !important; margin: 0 auto 0.75rem !important;
    display: block !important;
  }
}

/* IMAGES */
.dbl-product-description img {
  max-width: 100% !important; height: auto !important; display: block;
}
.dbl-product-description img[style*="margin-left: auto"],
.dbl-product-description img[style*="margin-left:auto"] {
  margin-left: auto; margin-right: auto;
}
.dbl-product-description img[style*="float: left"],
.dbl-product-description img[style*="float:left"] {
  float: left; margin-right: 0.75rem; margin-bottom: 0.5rem;
}
/* Pictos inline (< 120px) */
.dbl-product-description img[width="100"], .dbl-product-description img[width="90"],
.dbl-product-description img[width="80"],  .dbl-product-description img[width="70"],
.dbl-product-description img[width="60"],  .dbl-product-description img[width="50"],
.dbl-product-description img[width="30"] {
  display: inline-block !important; vertical-align: middle; margin: 0.2rem;
}
/* Strong wrapper autour de pictos */
.dbl-product-description p > strong img,
.dbl-product-description p > strong > strong img {
  display: inline-block !important; vertical-align: middle; margin: 0.2rem;
}
/* Paragraphe contenant des floats → clearfix local */
.dbl-product-description p:has(img[style*="float"]) {
  overflow: hidden; margin-bottom: 1rem;
}

/* TITRES — texte */
.dbl-product-description h2 {
  font-size: 1.5rem; font-weight: 700; line-height: 1.3;
  margin-top: 2rem; margin-bottom: 0.75rem;
}
.dbl-product-description h3 {
  font-size: 1.15rem; font-weight: 600; line-height: 1.4;
  margin-top: 1.5rem; margin-bottom: 0.5rem;
}
.dbl-product-description h4 {
  font-size: 1rem; font-weight: 600; line-height: 1.4; color: #555;
  margin-top: 1.25rem; margin-bottom: 0.4rem;
}
.dbl-product-description .cms-block > h2:first-child,
.dbl-product-description .cms-block > h3:first-child { margin-top: 0; }

/* H3/H4 image-only → reset titre (10+ occurrences par produit) */
.dbl-product-description h2:has(> a > img):not(:has(> span)),
.dbl-product-description h2:has(> img):not(:has(> span)),
.dbl-product-description h3:has(> a > img):not(:has(> span)),
.dbl-product-description h3:has(> img):not(:has(> span)),
.dbl-product-description h4:has(> a > img):not(:has(> span)),
.dbl-product-description h4:has(> img):not(:has(> span)) {
  font-size: inherit; font-weight: normal; line-height: 1;
  margin-top: 0.75rem; margin-bottom: 0; text-align: center;
}
/* Cursor zoom sur les lightbox */
.dbl-product-description h3 > a[target="_blank"],
.dbl-product-description h4 > a[target="_blank"],
.dbl-product-description p > a[target="_blank"]:has(img) {
  cursor: zoom-in; display: block; text-align: center;
}

/* PAIRES IMAGE + LÉGENDE */
.dbl-product-description h3:has(img) + p,
.dbl-product-description h4:has(img) + p,
.dbl-product-description p:has(> a > img) + p,
.dbl-product-description p:has(> img) + p { margin-top: 0.2rem; }

/* LÉGENDES — niveaux d'imbrication 1 à 7 (em/span alternants) */
.dbl-product-description p > span[style*="color: #d0121a"] em,
.dbl-product-description p > span[style*="color:#d0121a"] em,
.dbl-product-description p > em > span[style*="color: #d0121a"],
.dbl-product-description p > em > span[style*="color:#d0121a"],
.dbl-product-description p em[style*="color: #d0121a"],
.dbl-product-description p em[style*="color:#d0121a"] {
  display: block; font-style: italic; font-size: 0.875rem;
  color: #d0121a !important; text-align: center;
  margin-top: 0.2rem; margin-bottom: 0.75rem; line-height: 1.4;
}
.dbl-product-description p > span > em br,
.dbl-product-description p > em br { display: none; }

/* LABELS PDF bleu #2c9ffd */
.dbl-product-description span[style*="color: #2c9ffd"],
.dbl-product-description span[style*="color:#2c9ffd"] {
  display: block; text-align: center;
  font-size: 0.8rem; margin-top: 0.2rem; margin-bottom: 0.5rem;
}
.dbl-product-description a[href$=".pdf"] { text-decoration: none; display: inline-block; }
.dbl-product-description a[href$=".pdf"] img { border-radius: 3px; transition: opacity .2s; }
.dbl-product-description a[href$=".pdf"]:hover img { opacity: 0.75; }

/* LISTES */
.dbl-product-description ul, .dbl-product-description ol {
  padding-left: 1.4em; margin-top: 0.5rem; margin-bottom: 0.75rem;
}
.dbl-product-description ul { list-style-type: disc; }
.dbl-product-description ol { list-style-type: decimal; }
.dbl-product-description li { margin-bottom: 0.35rem; line-height: 1.55; }
.dbl-product-description ul[style*="text-align: justify"] { text-align: left; }
.dbl-product-description li:has(> p:empty) { display: none; }
/* Quill (préventif) */
.dbl-product-description .ql-ui { display: none !important; }
.dbl-product-description li[data-list="bullet"]  { list-style-type: disc; }
.dbl-product-description li[data-list="ordered"] { list-style-type: decimal; }
.dbl-product-description .ql-align-center  { text-align: center; }
.dbl-product-description .ql-align-right   { text-align: right; }
.dbl-product-description .ql-align-justify { text-align: justify; }

/* PARAGRAPHES */
.dbl-product-description p { margin-bottom: 0.65rem; line-height: 1.65; }
.dbl-product-description td > br,
.dbl-product-description p > br:last-child { display: none; }

/* LIENS */
.dbl-product-description a { color: #d0121a; text-decoration: none; }
.dbl-product-description a:hover { text-decoration: underline; opacity: 0.85; }
.dbl-product-description a:has(img[src*="CTA"]),
.dbl-product-description a:has(img[src*="devis"]) {
  display: block; text-align: center; margin-bottom: 0.75rem;
}

/* STRONG imbriqués (wrapper pictos ère ancienne) */
.dbl-product-description strong > strong,
.dbl-product-description strong > strong > strong { font-weight: inherit; }

/* CLASSE gras-rouge (produit 921) */
.dbl-product-description .gras-rouge { color: #d0121a; font-weight: 700; }

/* SUP */
.dbl-product-description sup { font-size: 0.7em; vertical-align: super; }/* End custom CSS */
/* Start custom CSS for dbl-gp-product-quote-form, class: .elementor-element-ad3267a */.elementor-2930 .elementor-element.elementor-element-ad3267a{
    text-align: right;
    opacity: 0;
}/* End custom CSS */