
/* ---------- Product card themes ---------- */

.product-card {
  border-radius: var(--radius-card);
  overflow: hidden;
  text-decoration: none;
  display: block;
  transition: transform 0.15s ease;
}
.product-card:hover { transform: translateY(-2px); }

.product-card-light {
  background: var(--white);
  border: 1.5px solid var(--fruits-border);
}
.product-card-light .product-card-body { background: var(--fruits-cream); color: var(--fruits-ink); }
.product-card-light .product-card-sub { color: var(--fruits-text-muted); }

.product-card-dark {
  background: var(--fruits-ink);
  border: 1.5px solid #4A4E3A;
}
.product-card-dark .product-card-body { background: var(--fruits-olive-light); color: #F6F1E4; }
.product-card-dark .product-card-sub { color: #A8A68F; }

.product-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (max-width: 860px) {
  .product-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}

.product-card-photo {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}
.product-card-body { padding: 12px 14px; }
.product-card-name { font-size: 13px; font-weight: 500; margin-bottom: 2px; }
.product-card-sub { font-size: 11px; }

/* Product detail hero photo */
.product-hero-photo {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-card);
}

/* ---------- Certification grid (horizontal scroll on mobile) ---------- */

.cert-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 860px) {
  .cert-grid {
    display: flex;
    overflow-x: auto;
    gap: 12px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 6px;
  }
  .cert-grid > * {
    flex: 0 0 72%;
    scroll-snap-align: start;
  }
}
