/* ============================================================
   COGEFLU — coge-uplift.css v3 (blindé)
   Cartes produits/catégories/documents unifiées site-wide :
   image contenue, bandeau titre sous l'image, badge visible.
   Toutes les déclarations en !important + sélecteurs :is(#id)
   pour battre les 3 générations de patchs du thème.
   ============================================================ */

/* Carte : colonne en flux normal */
:is(#content#content, .content) .featured-block a.img-thumbnail{
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 14px !important;
  background: #fff !important;
  border: 1px solid rgba(43,66,119,.12) !important;
  box-shadow: 0 10px 24px rgba(18,38,78,.10) !important;
  overflow: hidden !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

/* Visuel : contenu, centré, jamais coupé ni décalé */
:is(#content#content, .content) .featured-block a.img-thumbnail img{
  position: static !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 168px !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  padding: 14px !important;
  margin: 0 !important;
  background: #fff !important;
  border-radius: 0 !important;
  transform: none !important;
  opacity: 1 !important;
}

/* Titre : bandeau sous l'image, dans le flux */
:is(#content#content, .content) .featured-block a.img-thumbnail strong{
  position: static !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  height: auto !important;
  width: auto !important;
  max-width: none !important;
  margin: auto 0 0 !important;
  padding: 8px 12px !important;
  background: linear-gradient(180deg,#fbfcfe,#f1f5fb) !important;
  color: #1c2b4f !important;
  border: 0 !important;
  border-top: 1px solid #e8edf3 !important;
  border-radius: 0 !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  text-shadow: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  white-space: normal !important;
  overflow: visible !important;
  z-index: 1 !important;
}

/* Badge (« découvrir », « Fiche produit »…) : visible en permanence */
:is(#content#content, .content) .featured-block a.img-thumbnail .more{
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  padding: 5px 10px !important;
  margin: 0 !important;
  background: #2b4277 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 9px !important;
  font: 800 10.5px/1 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial !important;
  letter-spacing: .3px !important;
  text-transform: uppercase !important;
  box-shadow: 0 6px 14px rgba(43,66,119,.25) !important;
  opacity: .92 !important;
  visibility: visible !important;
  transform: none !important;
  transition: background .15s ease, transform .15s ease, opacity .15s ease !important;
}
/* La flèche décorative du thème sur le badge : on la masque (cohérence) */
:is(#content#content, .content) .featured-block a.img-thumbnail .more::before,
:is(#content#content, .content) .featured-block a.img-thumbnail .more::after{
  content: none !important;
  display: none !important;
}

/* Survol : élévation sobre + badge orange */
@media (hover: hover){
  :is(#content#content, .content) .featured-block a.img-thumbnail:hover{
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 36px rgba(18,38,78,.16) !important;
    border-color: rgba(43,66,119,.18) !important;
  }
  :is(#content#content, .content) .featured-block a.img-thumbnail:hover .more{
    background: #ed6e2a !important;
    opacity: 1 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 18px rgba(237,110,42,.35) !important;
  }
  :is(#content#content, .content) .featured-block a.img-thumbnail:hover strong{
    color: #2b4277 !important;
  }
}

/* Neutralise les overlays « balayage » et anciens effets du thème */
:is(#content#content, .content) .featured-block a.img-thumbnail::before,
:is(#content#content, .content) .featured-block a.img-thumbnail::after{
  content: none !important;
  display: none !important;
}
:is(#content#content, .content) .featured-block a.img-thumbnail:hover img{
  left: auto !important;
  width: 100% !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Description sous la carte (.dimension) : cadrée dans la colonne */
:is(#content#content, .content) .featured-block .dimension{
  position: static !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 10px 2px 0 !important;
}
:is(#content#content, .content) .featured-block .dimension p{
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #5b6884 !important;
}

/* Respiration homogène entre cartes */
:is(#content#content, .content) .featured-blocks .featured-block{
  margin-bottom: 26px !important;
}

/* Mobile : un cran plus compact */
@media (max-width: 768px){
  :is(#content#content, .content) .featured-block a.img-thumbnail img{
    height: 140px !important;
    padding: 10px !important;
  }
  :is(#content#content, .content) .featured-block a.img-thumbnail strong{
    min-height: 46px !important;
    font-size: 13px !important;
  }
}
