body.page-id-8139 {
  --ck-products-card-image-size: clamp(300px, 42vw, 540px);
  --ck-products-single-card-width: 640px;
  --ck-products-loop-shift: 0px;
}

body.page-id-8139
  .e-loop-item.product
  .elementor-widget-theme-post-featured-image {
  height: var(--ck-products-card-image-size) !important;
  min-height: var(--ck-products-card-image-size) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}

body.page-id-8139
  .e-loop-item.product
  .elementor-widget-theme-post-featured-image
  img {
  width: auto !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: var(--ck-products-card-image-size) !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}

body.page-id-8139 .e-loop-item.product {
  min-height: var(--ck-products-card-image-size);
}

@media (min-width: 1025px) {
  body.page-id-8139 .elementor-loop-container {
    justify-content: center !important;
  }
}

@media (min-width: 1760px) {
  body.page-id-8139 .elementor-8139 .elementor-element.elementor-widget-loop-grid {
    transform: translateX(var(--ck-products-loop-shift)) !important;
  }

  body.page-id-8139
    .elementor-8139
    .elementor-element.elementor-widget-loop-grid:has(
      .elementor-loop-container > .e-loop-item.product:only-of-type
    ) {
    transform: none !important;
  }
}

@media (max-width: 767px) {
  body.page-id-8139 {
    --ck-products-card-image-size: min(90vw, 420px);
  }
}

/* Cartes produit des pages categorie — structure stable et sans debordement. */
body:has(.e-loop-item.product[data-elementor-id="20192"]) {
  overflow-x: clip;
}

body
  .elementor-loop-container:has(
    > .e-loop-item.product[data-elementor-id="20192"]
  ) {
  align-items: stretch !important;
  gap: clamp(24px, 2.5vw, 36px) 20px !important;
}

body .e-loop-item.product[data-elementor-id="20192"] {
  min-width: 0 !important;
  /* auto : grille 2 cols + 3 cartes (STARTBOX) — height:100% + overflow
   * coupait Evo Drive (rangée impaire). */
  height: auto !important;
  overflow: visible !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  > .elementor-element-2136fca {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  align-content: start !important;
  column-gap: 8px !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Colonne image : hauteur = colonne contenu (grid stretch).
   Enfants en absolute pour que l'image n'impose PAS sa hauteur intrinsèque. */
body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-99c298f {
  position: relative !important;
  display: block !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-99c298f
  :is(.elementor-widget-container, a) {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-99c298f
  img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: top center !important;
  transform: none !important;
}

/* Colonne contenu : hauteur naturelle, PAS collée au bas de l'image */
body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-127ab75 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: start !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 4px 0 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-127ab75
  > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-c42594e {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-127ab75
  > .elementor-element-c42594e {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-89511c0 {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-89511c0
  > .elementor-widget-container {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 4px !important;
  text-align: left !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-89511c0
  :is(h1, h2, h3, .product_title) {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: left !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(.elementor-element-5059459, .elementor-element-e251487) {
  width: 100% !important;
  text-align: left !important;
  margin: 0 0 22px !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(.elementor-element-5059459, .elementor-element-e251487)
  :is(.elementor-widget-container, p) {
  text-align: left !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  ) {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-auto-flow: row !important;
  align-items: start !important;
  align-content: start !important;
  justify-content: start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 2px 0 0 !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  )
  > .e-con {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: start !important;
  align-content: flex-start !important;
  row-gap: 0 !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-3870f72,
    .elementor-element-f84bca3,
    .elementor-element-65dd5a7,
    .elementor-element-4684545,
    .elementor-element-b5050db,
    .elementor-element-b2d1eae
  ) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  min-width: 34px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-3870f72,
    .elementor-element-f84bca3,
    .elementor-element-65dd5a7,
    .elementor-element-4684545,
    .elementor-element-b5050db,
    .elementor-element-b2d1eae
  )
  img {
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  margin: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-0fb98b5,
    .elementor-element-0bb193d,
    .elementor-element-ccc7b7d,
    .elementor-element-814730f,
    .elementor-element-9cfd9aa,
    .elementor-element-9744748,
    .elementor-element-fd1f9b9,
    .elementor-element-fecc1c1,
    .elementor-element-d722b0f,
    .elementor-element-aa8a72d,
    .elementor-element-a5ebfd1,
    .elementor-element-7f3562b
  ) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  :is(
    .elementor-element-0fb98b5,
    .elementor-element-0bb193d,
    .elementor-element-ccc7b7d,
    .elementor-element-814730f,
    .elementor-element-9cfd9aa,
    .elementor-element-9744748,
    .elementor-element-fd1f9b9,
    .elementor-element-fecc1c1,
    .elementor-element-d722b0f,
    .elementor-element-aa8a72d,
    .elementor-element-a5ebfd1,
    .elementor-element-7f3562b
  )
  :is(.elementor-widget-container, p) {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  line-height: 1.15 !important;
}

body
  .e-loop-item.product[data-elementor-id="20192"]
  .elementor-element-56c304f {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin-top: 8px !important;
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product[data-elementor-id="20192"]
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 40px) !important;
    max-width: 840px !important;
    margin-inline: auto !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr) !important;
  }
}

@media (max-width: 767px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product[data-elementor-id="20192"]
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: 24px !important;
  }

  body .e-loop-item.product[data-elementor-id="20192"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    gap: 0 !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-99c298f {
    position: relative !important;
    height: min(86vw, 340px) !important;
    min-height: min(86vw, 340px) !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-127ab75 {
    height: auto !important;
    min-height: 0 !important;
    padding: 14px 4px 12px !important;
    overflow: visible !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-89511c0 {
    min-height: 0 !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-3215a42,
      .elementor-element-1d0bb3d,
      .elementor-element-144a753
    ) {
    gap: 4px !important;
    min-height: 0 !important;
    padding-top: 2px !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-3215a42,
      .elementor-element-1d0bb3d,
      .elementor-element-144a753
    )
    > .e-con {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-self: start !important;
    text-align: center !important;
    row-gap: 0 !important;
    gap: 0 !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-3870f72,
      .elementor-element-f84bca3,
      .elementor-element-65dd5a7,
      .elementor-element-4684545,
      .elementor-element-b5050db,
      .elementor-element-b2d1eae
    ) {
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-0fb98b5,
      .elementor-element-0bb193d,
      .elementor-element-ccc7b7d,
      .elementor-element-814730f,
      .elementor-element-9cfd9aa,
      .elementor-element-9744748,
      .elementor-element-fd1f9b9,
      .elementor-element-fecc1c1,
      .elementor-element-d722b0f,
      .elementor-element-aa8a72d,
      .elementor-element-a5ebfd1,
      .elementor-element-7f3562b
    ),
  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-0fb98b5,
      .elementor-element-0bb193d,
      .elementor-element-ccc7b7d,
      .elementor-element-814730f,
      .elementor-element-9cfd9aa,
      .elementor-element-9744748,
      .elementor-element-fd1f9b9,
      .elementor-element-fecc1c1,
      .elementor-element-d722b0f,
      .elementor-element-aa8a72d,
      .elementor-element-a5ebfd1,
      .elementor-element-7f3562b
    )
    :is(.elementor-widget-container, p) {
    text-align: center !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-89511c0,
  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-89511c0
    :is(h1, h2, h3, .product_title) {
    text-align: center !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-3870f72,
      .elementor-element-f84bca3,
      .elementor-element-65dd5a7,
      .elementor-element-4684545,
      .elementor-element-b5050db,
      .elementor-element-b2d1eae
    ) {
    height: 32px !important;
    min-height: 32px !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    :is(
      .elementor-element-3870f72,
      .elementor-element-f84bca3,
      .elementor-element-65dd5a7,
      .elementor-element-4684545,
      .elementor-element-b5050db,
      .elementor-element-b2d1eae
    )
    img {
    width: 30px !important;
    height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
  }

  body
    .e-loop-item.product[data-elementor-id="20192"]
    .elementor-element-56c304f {
    justify-content: center !important;
  }
}

/* =============================================================================
 * Templates Intégration (20408 / 26210) + Module Wash (20393)
 * Même structure carte que 20192 (grid + image absolute → plus de débordement),
 * object-fit: contain : la photo garde ses proportions dans le cadre fixe
 * (fill etirait les visuels portrait, ex. PAX IM30 800x1200 affiche en 381x313).
 * S’applique aux pages catégorie ET à Nos produits (mêmes templates).
 * ============================================================================= */
body
  .e-loop-item.product[data-elementor-id="20408"],
body
  .e-loop-item.product[data-elementor-id="26210"],
body
  .e-loop-item.product[data-elementor-id="20393"] {
  min-width: 0 !important;
  height: auto !important;
  overflow: visible !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  > .elementor-element-2136fca,
body
  .e-loop-item.product[data-elementor-id="26210"]
  > .elementor-element-2136fca,
body
  .e-loop-item.product[data-elementor-id="20393"]
  > .elementor-element-2136fca {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  align-content: start !important;
  column-gap: 8px !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-99c298f,
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-99c298f,
body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-99c298f {
  position: relative !important;
  display: block !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-99c298f
  :is(.elementor-widget-container, a),
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-99c298f
  :is(.elementor-widget-container, a),
body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-99c298f
  :is(.elementor-widget-container, a) {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-99c298f
  img,
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-99c298f
  img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-99c298f
  img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: top center !important;
  transform: none !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-127ab75,
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-127ab75,
body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-127ab75 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: start !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 4px 0 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-c42594e,
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-c42594e,
body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-c42594e {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  .elementor-element-89511c0
  .elementor-heading-title,
body
  .e-loop-item.product[data-elementor-id="26210"]
  .elementor-element-89511c0
  .elementor-heading-title,
body
  .e-loop-item.product[data-elementor-id="20393"]
  .elementor-element-89511c0
  .elementor-heading-title {
  text-align: left !important;
}

body
  .e-loop-item.product[data-elementor-id="20408"]
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  ),
body
  .e-loop-item.product[data-elementor-id="26210"]
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  ) {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 2px 0 0 !important;
  box-sizing: border-box !important;
}

/* =============================================================================
 * Harmonisation finale des cartes hors Accessoires - 2026-07-29
 *
 * Les templates 20379, 20393, 20408 et 26210 utilisaient des largeurs, hauteurs
 * et modes de cadrage différents. Conséquences : photos étirées sur
 * Périphériques, carte Module Wash trop étroite, libellés coupés et cartes
 * Intégration de hauteurs très variables.
 *
 * La page Accessoires & consommables (19743) et sa section miroir sur
 * Nos produits restent volontairement hors de ce bloc : leur rendu est validé.
 * Toutes les photos restent entières grâce à object-fit: contain.
 * ============================================================================= */

body
  .elementor-loop-container:has(
    > .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
  ) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 1280px !important;
  min-width: 0 !important;
  margin-right: auto !important;
  margin-left: auto !important;
  gap: 36px 20px !important;
}

body
  .elementor-widget-loop-grid:has(
    .e-loop-item.product[data-elementor-id="20393"]
  ) {
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body
  .elementor-loop-container:has(
    > .e-loop-item.product[data-elementor-id="20393"]:only-child
  ) {
  grid-template-columns: minmax(0, 640px) !important;
  justify-content: center !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  ) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  /* height:auto + overflow:visible : la 3e carte (rangee impaire)
   * grandit avec son contenu. height:100% + overflow:clip coupait
   * STARTBOX Evo Drive (titre + 2 icones seulement). */
  height: auto !important;
  min-height: 380px !important;
  margin: 0 !important;
  overflow: visible !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  > .elementor-element-2136fca {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  align-content: start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 380px !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f {
  position: relative !important;
  display: block !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 380px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f
  :is(.elementor-widget-container, a) {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f
  img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  image-rendering: auto !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-127ab75 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 380px !important;
  margin: 0 !important;
  padding: 18px 16px 16px 10px !important;
  gap: 10px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-c42594e {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 10px !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  ) {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 10px !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  )
  > .e-con {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: start !important;
  align-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  text-align: center !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-0fb98b5,
    .elementor-element-0bb193d,
    .elementor-element-ccc7b7d,
    .elementor-element-814730f,
    .elementor-element-9cfd9aa,
    .elementor-element-9744748,
    .elementor-element-fd1f9b9,
    .elementor-element-fecc1c1,
    .elementor-element-d722b0f,
    .elementor-element-aa8a72d,
    .elementor-element-a5ebfd1,
    .elementor-element-7f3562b
  ) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-89511c0,
body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-89511c0
  :is(h1, h2, h3, .product_title) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  text-align: left !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-56c304f {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: auto !important;
  padding: 10px 0 0 !important;
}

/* Le zoom au survol rognait visuellement les produits proches des bords.
   La carte conserve son léger mouvement, mais la photo reste toujours entière. */
body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  ):hover
  .elementor-element-99c298f
  img {
  transform: none !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product:is(
        [data-elementor-id="20379"],
        [data-elementor-id="20393"]
      )
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 40px) !important;
    max-width: 840px !important;
    gap: 28px !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    min-height: 0 !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-99c298f {
    height: min(58vw, 420px) !important;
    min-height: min(58vw, 420px) !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-127ab75 {
    height: auto !important;
    min-height: 0 !important;
    padding: 18px 22px 18px !important;
  }
}

@media (max-width: 767px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product:is(
        [data-elementor-id="20379"],
        [data-elementor-id="20393"]
      )
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: 24px !important;
  }

  body
    .elementor-widget-loop-grid:has(
      .e-loop-item.product[data-elementor-id="20393"]
    ) {
    width: 100% !important;
    max-width: 100% !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    ) {
    min-height: 0 !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    min-height: 0 !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-99c298f {
    height: min(78vw, 330px) !important;
    min-height: min(78vw, 330px) !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-127ab75 {
    height: auto !important;
    min-height: 0 !important;
    padding: 16px 14px 16px !important;
    gap: 10px !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-89511c0,
  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-89511c0
    :is(h1, h2, h3, .product_title) {
    text-align: center !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-56c304f {
    justify-content: center !important;
  }
}

/* =============================================================================
 * Contrat visuel final — référence Pupitres (2026-07-29)
 *
 * Périphériques et Module Wash reprennent le format validé des Pupitres :
 * carte de 630 px, répartition 60/40 et hauteur de 395 px. Les sections
 * Accessoires et Terminaux bancaires ne sont pas modifiées sur ordinateur.
 * ============================================================================= */
body
  .elementor-loop-container:has(
    > .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
  ) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  gap: 36px 20px !important;
}

body
  .elementor-loop-container
  > .e-loop-item.product[data-elementor-id="20393"]:only-child {
  width: 100% !important;
  max-width: 630px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  ) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 400px !important;
  /* auto : ne pas reintroduire height:100% (coupait STARTBOX Evo Drive). */
  height: auto !important;
  margin: 0 !important;
  overflow: visible !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  > .elementor-element-2136fca {
  display: grid !important;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) !important;
  align-items: stretch !important;
  align-content: start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 400px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f {
  position: relative !important;
  display: block !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f
  :is(.elementor-widget-container, a) {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-99c298f
  img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  image-rendering: auto !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-127ab75 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 400px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 10px 4px 0 0 !important;
  gap: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-c42594e {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  ) {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 2px 0 0 !important;
  gap: 10px !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-3215a42,
    .elementor-element-1d0bb3d,
    .elementor-element-144a753
  )
  > .e-con {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: start !important;
  align-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  text-align: center !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  :is(
    .elementor-element-0fb98b5,
    .elementor-element-0bb193d,
    .elementor-element-ccc7b7d,
    .elementor-element-814730f,
    .elementor-element-9cfd9aa,
    .elementor-element-9744748,
    .elementor-element-fd1f9b9,
    .elementor-element-fecc1c1,
    .elementor-element-d722b0f,
    .elementor-element-aa8a72d,
    .elementor-element-a5ebfd1,
    .elementor-element-7f3562b
  ) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  )
  .elementor-element-56c304f {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: auto !important;
  padding: 8px 0 0 !important;
}

/* Le produit reste toujours entier, même quand la carte se soulève au hover. */
body
  .e-loop-item.product:is(
    [data-elementor-id="20379"],
    [data-elementor-id="20393"]
  ):hover
  .elementor-element-99c298f
  img {
  transform: none !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product:is(
        [data-elementor-id="20379"],
        [data-elementor-id="20393"]
      )
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 40px) !important;
    max-width: 840px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: 28px !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr) !important;
  }
}

/* Mobile : le placement de Pupitres devient la référence de toutes les cartes. */
@media (max-width: 767px) {
  body
    .elementor-loop-container:has(
      > .e-loop-item.product:is(
        [data-elementor-id="20192"],
        [data-elementor-id="20379"],
        [data-elementor-id="20393"]
      )
    ) {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: 24px !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    ) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    > .elementor-element-2136fca {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    min-height: 0 !important;
    height: auto !important;
    gap: 0 !important;
    overflow: visible !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-99c298f {
    position: relative !important;
    height: min(86vw, 340px) !important;
    min-height: min(86vw, 340px) !important;
    overflow: hidden !important;
  }

  /* Module Wash utilise une image carrée. Un cadre portrait de 420 px ajoutait
     du vide au-dessus du produit ; un cadre presque carré garde l'image entière
     tout en la rapprochant du titre de section. */
  body
    .e-loop-item.product[data-elementor-id="20393"]
    .elementor-element-99c298f {
    height: min(86vw, 340px) !important;
    min-height: min(86vw, 340px) !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-127ab75 {
    align-items: center !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 14px 4px 12px !important;
    gap: 0 !important;
    text-align: center !important;
    overflow: visible !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-89511c0,
  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-89511c0
    :is(.elementor-widget-container, h1, h2, h3, .product_title) {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }

  /* Corrige notamment « Applique ou sur pied » sur Pupitres. */
  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    :is(.elementor-element-5059459, .elementor-element-e251487),
  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    :is(.elementor-element-5059459, .elementor-element-e251487)
    :is(.elementor-widget-container, p, em) {
    width: 100% !important;
    text-align: center !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-c42594e {
    width: 100% !important;
    max-width: 100% !important;
    align-items: stretch !important;
  }

  body
    .e-loop-item.product:is(
      [data-elementor-id="20192"],
      [data-elementor-id="20379"],
      [data-elementor-id="20393"]
    )
    .elementor-element-56c304f {
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =============================================================================
 * Mobile : empilement des cartes Integration (20408 / 26210).
 * La regle 2 colonnes plus haut (1.55fr / 1fr) n'avait pas de contrepoids mobile
 * DANS ce fichier : les regles d'empilement ecrites en CSS inline par PHP sont
 * placees AVANT lui dans le document et perdaient la cascade. A 390 px la photo
 * restait a gauche sur 201 px avec une colonne texte de 129 px, titre sur 2
 * lignes et bouton tronque a 105 px.
 *
 * ATTENTION : le contenu du widget image est en position:absolute. En 2 colonnes
 * sa hauteur venait de l'etirement de la grille ; en une seule colonne il tombe
 * a 0 px et la photo disparait. D'ou l'aspect-ratio, cale sur le gabarit 20192
 * qui s'empile nativement (358x335).
 * ============================================================================= */
@media (max-width: 767.98px) {
  body .e-loop-item.product[data-elementor-id="20408"] > .elementor-element-2136fca,
  body .e-loop-item.product[data-elementor-id="26210"] > .elementor-element-2136fca {
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 14px !important;
  }

  body .e-loop-item.product[data-elementor-id="20408"] > .elementor-element-2136fca > .elementor-element-99c298f,
  body .e-loop-item.product[data-elementor-id="26210"] > .elementor-element-2136fca > .elementor-element-99c298f {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 358 / 335 !important;
  }
}
