/* Elementor Woo Products Grid */
.epg-woo-grid{
  --epg-cols: 4;
  --epg-gap: 22px;
  --epg-aspect: 4/3;
  display:grid;
  grid-template-columns: repeat(var(--epg-cols), minmax(0,1fr));
  gap: var(--epg-gap);
}
@media (max-width: 1024px){ .epg-woo-grid{ --epg-cols: 3; } }
@media (max-width: 768px){ .epg-woo-grid{ --epg-cols: 2; --epg-gap: 16px; } }
@media (max-width: 480px){ .epg-woo-grid{ --epg-cols: 1; } }

.epg-card{
  background:#fff; border:1px solid #f0f0f0; border-radius:14px; overflow:hidden;
  display:flex; flex-direction:column; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  height:100%;
}
.epg-card:hover{ transform:translateY(-4px); border-color:#e9e9e9; box-shadow:0 12px 28px rgba(0,0,0,.06); }

.epg-thumb{ display:block; width:100%; aspect-ratio: var(--epg-aspect); background-size:cover; background-position:center; }
.epg-body{ padding:14px; display:flex; flex-direction:column; gap:10px; flex:1 1 auto; }
.epg-title{ margin:0; font-size:16px; line-height:1.35; }
.epg-title a{ color:inherit; text-decoration:none; }
.epg-price{ font-weight:700; }
.epg-actions .button{ border-radius:10px; padding:.6em 1em; }
