/* --- Product rail polish (additive; see assets/style.css for base .pcseal-card rules) --- */

.pcseal-rail .pcseal-card,
.pcseal-rail-carousel .pcseal-card {
  transition: transform var(--transition-spring), box-shadow var(--transition-spring), border-color var(--transition-fluid);
}

.pcseal-rail .pcseal-card:hover,
.pcseal-rail .pcseal-card:focus-visible,
.pcseal-rail-carousel .pcseal-card:hover,
.pcseal-rail-carousel .pcseal-card:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 14px 28px -14px rgba(10,30,20,.28);
  border-color: var(--accent);
  /* transform makes this its own stacking context — see shop.css for why
     the card itself (not just its quickview child) needs a z-index above
     the sitewide fixed float-widget/sticky-header (both z-index:50). */
  z-index: 60;
}

.pcseal-rail .pcseal-card img,
.pcseal-rail-carousel .pcseal-card img {
  transition: transform var(--transition-fluid);
}

.pcseal-rail .pcseal-card:hover img,
.pcseal-rail-carousel .pcseal-card:hover img {
  transform: scale(1.04);
}

/* Keep card titles aligned across a row regardless of length. */
.pcseal-rail .pcseal-card .name,
.pcseal-rail-carousel .pcseal-card .name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Sale badge: distinct from the gold "tag" pill elsewhere, sits on the accent palette. */
.pcseal-rail .pcseal-card .sale-badge,
.pcseal-rail-carousel .pcseal-card .sale-badge {
  text-transform: uppercase;
  letter-spacing: .03em;
  box-shadow: 0 2px 6px -2px rgba(255,87,34,.6);
}
