/* Product detail page — public/css/product-detail.css */
* { scroll-behavior: smooth; }
html, body { overflow-x: hidden; }
body { font-family: "Inter", sans-serif; background-color: #f8fafc; color: #0f172a; }
h1, h2, h3, h4, h5, h6 { font-family: "Space Grotesk", sans-serif; }
.header-scrolled { box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06); }
.mobile-menu { transform: translateX(100%); transition: transform 300ms ease-out; }
.mobile-menu.open { transform: translateX(0); }
.badge-instagram { background-color: #E4405F; }
.badge-tiktok { background-color: #000000; }
.badge-youtube { background-color: #FF0000; }
.badge-twitter { background-color: #1DA1F2; }
.badge-facebook { background-color: #1877F2; }
.listing-shell {
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(37, 99, 235, 0.14), transparent 55%),
    radial-gradient(900px 500px at 95% 0%, rgba(99, 102, 241, 0.1), transparent 50%),
    linear-gradient(180deg, #f1f5f9 0%, #f8fafc 32%, #f8fafc 100%);
}
.listing-glass {
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.85);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 24px 48px -24px rgba(15, 23, 42, 0.12),
    0 12px 24px -16px rgba(15, 23, 42, 0.06);
}
.listing-icon-ring {
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.25) inset,
    0 12px 32px -8px rgba(15, 23, 42, 0.25);
}
.prose-listing {
  font-size: 1.0625rem;
  line-height: 1.75;
  color: #475569;
}
.prose-listing p + p { margin-top: 1rem; }
.cta-primary {
  transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}
.cta-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px -6px rgba(37, 99, 235, 0.45);
}
.include-card {
  transition: border-color 200ms ease, box-shadow 200ms ease;
}
.include-card:hover {
  border-color: rgba(37, 99, 235, 0.25);
  box-shadow: 0 8px 24px -12px rgba(37, 99, 235, 0.2);
}
.listing-subcategory-banner {
  width: 100%;
  max-height: 12rem;
  object-fit: cover;
  border-radius: 1rem;
  border: 1px solid rgba(226, 232, 240, 0.9);
  box-shadow: 0 12px 32px -20px rgba(15, 23, 42, 0.2);
}
.similar-products-scroll {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 0.35rem;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}
.similar-products-scroll::-webkit-scrollbar {
  height: 6px;
}
.similar-products-scroll::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}
.similar-product-card {
  flex: 0 0 15.5rem;
  scroll-snap-align: start;
  transition: border-color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}
.similar-product-card:hover {
  border-color: rgba(37, 99, 235, 0.3);
  box-shadow: 0 10px 28px -14px rgba(37, 99, 235, 0.25);
  transform: translateY(-2px);
}
.similar-product-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
