/*
  Zweck: Styles für die Produkt-Übersichtsseite (html/products.html).
  Verantwortung: Grid-Layout für die Produktliste, Styling der Produktkarten.
  Einbindung: In html/products.html im <head> nach den globalen Styles eingebunden.
  Zusammenarbeit:
    - Baut auf base.css, layout.css und components.css auf.
*/

.products-overview {
  padding: 1.5rem 0;
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: 1.5rem;
  margin-top: 1rem;
}

.product-card {
  border: 1px solid #ddd;
  border-radius: 0.25rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #fff;
}

.product-card__image {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
}

.product-card__title {
  font-size: 1.125rem;
  margin: 0.75rem 1rem 0;
  line-height: 1.3;
}

.product-card__promo {
  margin: 0.5rem 1rem;
}

/* Groessere Preiszeile als auf der Detailseite (nur Karten-Uebersicht) */
.product-card__promo.promo-price--hero {
  gap: 0.4rem 0.75rem;
}

.product-card__promo.promo-price--hero .promo-price__sale {
  font-size: clamp(1.85rem, 4.2vw, 2.5rem);
}

.product-card__promo.promo-price--hero .promo-price__original {
  font-size: clamp(1.15rem, 2.8vw, 1.5rem);
}

.product-card__promo.promo-price--hero .promo-price__discount {
  font-size: clamp(1.45rem, 3.6vw, 2.1rem);
}

.product-card__btn {
  margin: auto 1rem 1rem 0;
  display: inline-block;
  text-align: center;
  text-decoration: none;
}

.products-empty {
  margin-top: 1rem;
  color: #666;
}
