/* =====================================
   REVAN SILVER | LUXURY PRODUCT CARDS
   ===================================== */

:root {
  --rv-navy: #101D35;
  --rv-silver: #C3C8D0;
  --rv-ivory: #F8F7F4;
  --rv-border: #E5E7EB;
}

/* PRODUCT CARD */
.s-product-card-entry {
  background: #FFFFFF !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  box-shadow: 0 3px 12px rgba(16,29,53,.05) !important;
  transition: all .3s ease !important;
}

.s-product-card-entry:hover {
  border-color: var(--rv-silver) !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(16,29,53,.10) !important;
}

/* PRODUCT IMAGE */
.s-product-card-image {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  background: var(--rv-ivory) !important;
  overflow: hidden !important;
}

.s-product-card-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .4s ease !important;
}

.s-product-card-entry:hover .s-product-card-image img {
  transform: scale(1.035);
}

/* PRODUCT INFORMATION */
.s-product-card-content {
  background: #FFFFFF !important;
  padding: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  gap: 9px !important;
  text-align: center !important;
}

/* PRODUCT NAME */
.s-product-card-content-title,
.s-product-card-content-title a,
.s-product-card-title {
  color: var(--rv-navy) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.8 !important;
  text-align: center !important;
  min-height: 50px !important;
  max-height: 50px !important;
  overflow: hidden !important;
}

/* PRODUCT PRICE */
.s-product-card-price,
.s-product-card-sale-price {
  color: var(--rv-navy) !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  text-align: center !important;
  font-family: Arial, sans-serif !important;
}

/* OLD PRICE */
.s-product-card-price-before {
  color: #999999 !important;
  text-decoration: line-through !important;
}

/* CARD FOOTER */
.s-product-card-content-footer {
  margin-top: auto !important;
  padding-top: 10px !important;
}

/* ADD TO CART */
.s-product-card-entry .s-button-primary,
.s-product-card-entry .s-button-outline {
  background: var(--rv-navy) !important;
  color: #FFFFFF !important;
  border: 1px solid var(--rv-navy) !important;
  border-radius: 6px !important;
  width: 100% !important;
  min-height: 43px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  transition: .25s ease !important;
}

.s-product-card-entry .s-button-primary:hover,
.s-product-card-entry .s-button-outline:hover {
  background: #263B5C !important;
  border-color: var(--rv-silver) !important;
}

/* SIZE SELECTOR */
.s-product-card-entry select {
  background: #FFFFFF !important;
  color: var(--rv-navy) !important;
  border: 1px solid var(--rv-silver) !important;
  border-radius: 6px !important;
  width: 100% !important;
}

/* DESKTOP GRID */
@media (min-width: 1024px) {
  .grid:has(> salla-product-card) {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }
}

/* MOBILE */
@media (max-width: 768px) {
  .s-product-card-content {
    padding: 10px 8px !important;
  }

  .s-product-card-content-title,
  .s-product-card-content-title a,
  .s-product-card-title {
    font-size: 12px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  .s-product-card-price,
  .s-product-card-sale-price {
    font-size: 16px !important;
  }

  .s-product-card-entry .s-button-primary,
  .s-product-card-entry .s-button-outline {
    min-height: 39px !important;
    font-size: 12px !important;
  }
}