.emal-gallery {
  display: grid;
  gap: var(--emal-gallery-gap, 24px);
}
.emal-gallery--cols-1 { grid-template-columns: 1fr; }
.emal-gallery--cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.emal-gallery--cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.emal-gallery--cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.emal-gallery--cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.emal-gallery--cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.emal-gallery__item { margin: 0; overflow: hidden; border-radius: var(--emal-radius-lg, 16px); }
.emal-gallery__item img { width: 100%; height: 100%; object-fit: cover; display: block; aspect-ratio: 4 / 3; transition: transform .25s ease; }
.emal-gallery__item a:hover img { transform: scale(1.04); }
.emal-featured-points { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; }
.emal-featured-points li { position: relative; padding-left: 1.4rem; }
.emal-featured-points li::before { content: ''; position: absolute; left: 0; top: .65em; width: .45rem; height: .45rem; border-radius: 999px; background: currentColor; opacity: .75; }
.emal-price-unit { font-size: .85em; opacity: .78; }
.emal-product-specs { margin-top: 2rem; }
.emal-product-specs dl { display: grid; gap: .75rem; margin: 1rem 0; }
.emal-product-specs dl > div { display: grid; grid-template-columns: minmax(120px, 180px) 1fr; gap: 1rem; }
.emal-product-specs dt { font-weight: 700; }
.emal-product-specs dd { margin: 0; }
@media (max-width: 767px) {
  .emal-gallery { grid-template-columns: 1fr !important; }
  .emal-product-specs dl > div { grid-template-columns: 1fr; gap: .25rem; }
}
