/* ───── KARAFT gallery (Prestige Allure clone) ─────
   Centered head, configurable-column image grid, subtle hover zoom.
   Columns driven by --kf-gallery-cols; collapses gracefully on smaller screens. */

.kf-gallery { padding: var(--section-gap, 96px) 0; }

.kf-gallery__head { text-align: center; margin-bottom: 48px; }

.kf-gallery__grid {
  display: grid;
  grid-template-columns: repeat(var(--kf-gallery-cols, 3), 1fr);
  gap: 24px;
}

.kf-gallery__tile {
  display: block;
  text-decoration: none;
  color: inherit;
}

.kf-gallery__media {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--color-placeholder);
}
.kf-gallery__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.7s ease;
}
.kf-gallery__tile:hover .kf-gallery__img { transform: scale(1.05); }
.kf-gallery__placeholder { width: 100%; height: 100%; background: var(--color-placeholder); }

.kf-gallery__caption {
  display: block;
  margin-top: 14px;
  font-family: var(--font-heading);
  font-size: 12px;
  letter-spacing: var(--track-eyebrow, 0.22em);
  text-transform: uppercase;
  color: var(--color-text-muted);
}

/* ── Responsive ───────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .kf-gallery__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .kf-gallery__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .kf-gallery { padding: 64px 0; }
  .kf-gallery__head { margin-bottom: 36px; }
  .kf-gallery__grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}
