/* Portée limitée aux cartes du module ; la grille et les produits restent natifs. */
.elementor-widget-listing-products .ce-product-grid > .nf-editorial-card {
  min-width: 0; width: auto; align-self: start; margin: 0; box-sizing: border-box;
  padding: var(--nf-card-top, 10px) var(--nf-card-right, 10px) var(--nf-card-bottom, 10px) var(--nf-card-left, 10px);
}
.nf-editorial-card .nf-editorial-card__inner {
  height: 100%; display: flex; flex-direction: column; margin: 0; padding: 0;
  overflow: hidden; border-radius: 7px; background: #171717; color: #fff;
}
.nf-editorial-card .nf-editorial-card__image {
  display: block; width: 100%; height: auto; aspect-ratio: 1 / 1;
  object-fit: cover; margin: 0; border: 0; border-radius: 0;
}
.nf-editorial-card .nf-editorial-card__body {
  flex: 1; display: flex; flex-direction: column; align-items: flex-start;
  padding: 24px; gap: 14px;
}
.nf-editorial-card .nf-editorial-card__title {
  margin: 0; padding: 0; color: #fff; font-family: var(--font-titre, sans-serif);
  font-size: clamp(21px, 2vw, 28px); font-weight: 800; line-height: 1.15;
  text-transform: none; overflow-wrap: anywhere;
}
.nf-editorial-card .nf-editorial-card__text {
  margin: 0; color: #e5e5e5; font-family: var(--font-defaut, sans-serif);
  font-size: 14px; font-weight: 400; line-height: 1.65; white-space: pre-line;
}
.nf-editorial-card .nf-editorial-card__link {
  display: inline-flex; align-items: center; justify-content: center;
  margin-top: auto; min-height: 44px; padding: 11px 18px;
  background: var(--color1, #f88222); color: #111; border: 1px solid var(--color1, #f88222);
  border-radius: 5px; font-family: var(--font-defaut, sans-serif);
  font-size: 13px; font-weight: 700; line-height: 1.4; text-align: center; text-decoration: none;
  transition: background-color .18s ease, color .18s ease;
}
.nf-editorial-card .nf-editorial-card__link:hover { background: #fff; border-color: #fff; color: #111; }
.nf-editorial-card .nf-editorial-card__link:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (max-width: 767px) {
  .elementor-widget-listing-products .ce-product-grid > .nf-editorial-card { grid-column: 1 / -1 !important; }
  .nf-editorial-card .nf-editorial-card__body { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) { .nf-editorial-card .nf-editorial-card__link { transition: none; } }

/* Alignement v1.0.1 : même enveloppe que les produits voisins sur ordinateur. */
@media (min-width: 768px) {
  .elementor-widget-listing-products .ce-product-grid > .nf-editorial-card[data-nf-sized="true"] {
    height: var(--nf-card-height); min-height: 0;
  }
  .nf-editorial-card[data-nf-sized="true"] .nf-editorial-card__inner { min-height: 0; }
  .nf-editorial-card[data-nf-sized="true"] .nf-editorial-card__image {
    flex: 1 1 0; height: 0; min-height: 0; aspect-ratio: auto; object-fit: cover;
  }
  .nf-editorial-card[data-nf-sized="true"] .nf-editorial-card__body {
    flex: 0 1 auto; min-height: 0; max-height: 75%; overflow: auto;
    box-sizing: border-box; padding: 20px; gap: 12px;
  }
  .nf-editorial-card[data-nf-sized="true"] .nf-editorial-card__body > * { flex-shrink: 0; }
}
