/* V11: textura no fundo da página, sem camada de brilho sobre as fotos dos produtos. */
.catalog-page .catalog-section {
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 75% 24% at 2% 3%, rgba(199,231,196,.75), transparent 78%),
    radial-gradient(ellipse 60% 32% at 98% 48%, rgba(197,228,201,.62), transparent 78%),
    linear-gradient(155deg, #eef7ec 0%, #e6f1e7 51%, #f0f7ee 100%);
}
.catalog-page .catalog-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(33,95,57,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(33,95,57,.075) 1px, transparent 1px),
    repeating-linear-gradient(115deg, rgba(18,84,48,.018) 0 1px, transparent 1px 11px);
  background-size: 76px 76px, 76px 76px, auto;
  opacity: .72;
}
.catalog-page .catalog-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 8%;
  left: -18%;
  width: min(85vw, 1000px);
  height: 1250px;
  pointer-events: none;
  background: radial-gradient(ellipse, rgba(206,239,196,.47), transparent 72%);
  animation: catalog-light-drift 22s ease-in-out infinite alternate;
}
.catalog-page .catalog-section > .container { position: relative; z-index: 1; }
.catalog-page .catalog-toolbar .kicker { color: #3a7250; }
.catalog-page .catalog-filters {
  background: rgba(255,255,255,.91);
  border-color: rgba(135,182,140,.44);
  box-shadow: 0 22px 58px rgba(20,77,42,.08), inset 0 1px rgba(255,255,255,.9);
  backdrop-filter: blur(10px);
}
.catalog-page .filter-chip { background: #eff7ec; border-color: #d0e4d0; }
.catalog-page .product-card {
  box-shadow: 0 10px 28px rgba(18,72,40,.07);
}
.catalog-page .product-card-img,
.product-showcase .showcase-related .product-card-img { background: #f8faf7; }
.catalog-page .product-card:hover {
  box-shadow: 0 25px 46px rgba(16,68,39,.17);
}
.catalog-page .catalog-btn {
  box-shadow: inset 0 1px rgba(255,255,255,.34), 0 11px 24px rgba(3,44,23,.15);
}
.catalog-page .catalog-btn:hover,
.catalog-page .catalog-btn:focus-visible {
  box-shadow: inset 0 1px rgba(255,255,255,.54), 0 17px 34px rgba(3,44,23,.25);
}
.catalog-page .catalog-hero::before {
  opacity: .68;
  background-image:
    linear-gradient(rgba(225,255,227,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(225,255,227,.075) 1px, transparent 1px);
  background-size: 72px 72px;
}
/* O brilho pertence aos botões; imagens permanecem limpas e legíveis. */
.catalog-page .product-card-img::after,
.product-showcase .showcase-related .product-card-img::after { display: none !important; }
.catalog-page .product-card-img img,
.product-showcase .showcase-related .product-card-img img,
.catalog-hero-media > img { transition: none !important; }
.catalog-hero-media > img { filter: none; }
.catalog-page .product-card:hover .product-card-img img,
.product-showcase .showcase-related .product-card:hover .product-card-img img,
.catalog-hero-media:hover > img { transform: none !important; }
@keyframes catalog-light-drift {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(14%, 4%, 0); }
}
@media (max-width: 550px) {
  .catalog-page .catalog-section::before { background-size: 54px 54px, 54px 54px, auto; opacity: .55; }
  .catalog-page .catalog-section::after { width: 110vw; height: 800px; }
  .catalog-page .catalog-filters { backdrop-filter: none; }
}
@media (prefers-reduced-motion: reduce) {
  .catalog-page .catalog-section::after { animation: none; }
}
