.dmtopvente-image-target {
  position: relative !important;
}

.dmtopvente-badge {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 8;
  display: block !important;
  width: 23% !important;
  max-width: 23% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  pointer-events: none;
  user-select: none;
}

/*
 * Sécurité pour toutes les listes de produits (recherche comprise).
 * Cette règle empêche les styles génériques du thème de forcer le badge à 100 %.
 */
body:not(.page-product) #js-product-list .product-miniature .thumbnail-container-image > img.dmtopvente-badge,
body:not(.page-product) #js-product-list .product-miniature .product-thumbnail > img.dmtopvente-badge,
body:not(.page-product) #js-product-list .js-product-miniature .thumbnail-container-image > img.dmtopvente-badge,
body:not(.page-product) #js-product-list .js-product-miniature .product-thumbnail > img.dmtopvente-badge {
  width: 16% !important;
  max-width: 16% !important;
  height: auto !important;
}

/* Accueil et carrousel Notre Sélection : 16 % × 1,75 = 28 %. */
body.page-index .product-miniature .thumbnail-container-image > img.dmtopvente-badge,
body.page-index .product-miniature .product-thumbnail > img.dmtopvente-badge,
body.page-index .js-product-miniature .thumbnail-container-image > img.dmtopvente-badge,
body.page-index .js-product-miniature .product-thumbnail > img.dmtopvente-badge {
  width: 28% !important;
  max-width: 28% !important;
  height: auto !important;
}

/*
 * Catégories et résultats de recherche : les classes de colonne changent quand
 * le visiteur sélectionne un affichage de 1, 2, 3 ou 4 produits par ligne.
 */
body.page-category #js-product-list .product-miniature.col-lg-12 .thumbnail-container-image > img.dmtopvente-badge,
body.page-category #js-product-list .product-miniature.col-lg-12 .product-thumbnail > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-12 .thumbnail-container-image > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-12 .product-thumbnail > img.dmtopvente-badge {
  width: 24% !important;
  max-width: 24% !important;
  height: auto !important;
}

body.page-category #js-product-list .product-miniature.col-lg-6 .thumbnail-container-image > img.dmtopvente-badge,
body.page-category #js-product-list .product-miniature.col-lg-6 .product-thumbnail > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-6 .thumbnail-container-image > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-6 .product-thumbnail > img.dmtopvente-badge {
  width: 24% !important;
  max-width: 24% !important;
  height: auto !important;
}

body.page-category #js-product-list .product-miniature.col-lg-4 .thumbnail-container-image > img.dmtopvente-badge,
body.page-category #js-product-list .product-miniature.col-lg-4 .product-thumbnail > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-4 .thumbnail-container-image > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-4 .product-thumbnail > img.dmtopvente-badge {
  width: 24% !important;
  max-width: 24% !important;
  height: auto !important;
}

body.page-category #js-product-list .product-miniature.col-lg-3 .thumbnail-container-image > img.dmtopvente-badge,
body.page-category #js-product-list .product-miniature.col-lg-3 .product-thumbnail > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-3 .thumbnail-container-image > img.dmtopvente-badge,
body.page-search #js-product-list .product-miniature.col-lg-3 .product-thumbnail > img.dmtopvente-badge {
  width: 28% !important;
  max-width: 28% !important;
  height: auto !important;
}

/* Fiche produit : taille conservée à 23 %. */
.page-product .an_productpage-slider-main .an_productpage-slider-image > img.dmtopvente-badge,
.page-product .product-cover > img.dmtopvente-badge {
  top: 0 !important;
  right: 0 !important;
  width: 23% !important;
  max-width: 23% !important;
  height: auto !important;
}
