/* ================================================================
   products.css  –  Shivap Solutions  |  Products Listing Page ONLY
   Shared base/gradient/reveal/pulse/lift styles live in common.css
   This page shows a simple grid: image, title, short description.
   Full product detail lives on each product's own page
   (tracivo.html, steelmetrix.html) styled via product-detail.css.
   ================================================================ */

/* ── Hero blob backgrounds ── */
@keyframes pFloat  { 0%,100%{transform:translateY(0)}  50%{transform:translateY(-14px)} }
@keyframes pFloat2 { 0%,100%{transform:translateY(0)}  50%{transform:translateY(-9px)} }

.product-card {
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 22px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 48px rgba(15,23,42,.1);
  border-color: rgba(29,78,216,.15);
}

.product-card-media {
  position: relative;
  height: 220px;
  overflow: hidden;
  background: #0f172a;
}
.product-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.product-card:hover .product-card-media img { transform: scale(1.06); }

.product-card-badge {
  position: absolute;
  top: 14px; left: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 5px 11px;
  border-radius: 999px;
  z-index: 1;
}
.product-card-badge.live { background: rgba(255,255,255,.92); color: #15803d; }
.product-card-badge.live .dot { width: 6px; height: 6px; border-radius: 50%; background: #22c55e; display: inline-block; animation: pulse-green 1.6s infinite; }
.product-card-badge.soon { background: rgba(15,23,42,.6); color: #fff; backdrop-filter: blur(4px); }

.product-card-body {
  padding: 20px 22px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.product-card-cat {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--ss-blue-600);
  margin-bottom: 6px;
}
.product-card-body h3 {
  font-size: 18px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 8px;
}
.product-card-body p {
  font-size: 13.5px;
  color: #64748b;
  line-height: 1.6;
  margin-bottom: 18px;
  flex: 1;
}
.product-card-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ss-blue-600);
  transition: gap .2s;
}
.product-card:hover .product-card-link { gap: 11px; }
.product-card-link.disabled { color: #94a3b8; }
.product-card.is-disabled { pointer-events: none; }
.product-card.is-disabled:hover { transform: none; box-shadow: none; }
