/* Products page — refined cards & catalog */
.product-service-card {
  padding: 1.75rem;
  background: #ffffff;
  border-radius: 1rem;
  border: 1px solid rgba(147, 110, 109, 0.16);
  box-shadow: 0 2px 10px rgba(41, 22, 22, 0.05);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.product-service-card:hover {
  transform: translateY(-4px);
  border-color: rgba(186, 0, 44, 0.22);
  box-shadow: 0 10px 28px rgba(41, 22, 22, 0.08);
}
.product-promo-card {
  background: #ffffff;
  border-radius: 1rem;
  padding: 1rem;
  border: 1px solid rgba(147, 110, 109, 0.16);
  box-shadow: 0 2px 10px rgba(41, 22, 22, 0.05);
  transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.product-promo-card:hover {
  border-color: rgba(0, 100, 147, 0.25);
  box-shadow: 0 8px 22px rgba(41, 22, 22, 0.07);
}
.product-book-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.product-book-cover {
  aspect-ratio: 3 / 4;
  border-radius: 0.75rem;
  overflow: hidden;
  margin-bottom: 0.75rem;
  background: #ffffff;
  border: 1px solid rgba(147, 110, 109, 0.14);
  box-shadow: 0 2px 8px rgba(41, 22, 22, 0.05);
  padding: 0.35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.product-book-card:hover .product-book-cover {
  border-color: rgba(186, 0, 44, 0.28);
  box-shadow: 0 6px 18px rgba(41, 22, 22, 0.1);
  transform: translateY(-2px);
}
.product-book-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: transform 0.35s ease;
}
.product-book-card:hover .product-book-cover img {
  transform: scale(1.03);
}
.products-hero {
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 12px 40px rgba(186, 0, 44, 0.15);
}
.products-section-title {
  letter-spacing: -0.02em;
}
.products-cta-panel {
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}
