.index-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-md);
  padding: var(--spacing-lg);
  font-family: var(--font-heading);
}

.index-gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: var(--border-radius-m);
  box-shadow: var(--drop-shadow-1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.index-gallery-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
}

.index-gallery-img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.index-gallery-item:hover .index-gallery-img {
  transform: scale(1.05);
}

.index-gallery-label {
  font-family: 'Roboto', sans-serif;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0.75rem 1rem;
  background: rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: var(--font-size-lg);
  letter-spacing: var(--letter-spacing-sm);
  font-weight: var(--font-weight-md);
  text-transform: uppercase;
  transition: background 0.3s ease;
}

.index-gallery-item:hover .index-gallery-label {
  background: rgba(0, 0, 0, 0.95);
}

@media (max-width: 1024px) {
  .index-gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .index-gallery {
    grid-template-columns: 1fr;
  }
}
