/* ═══════════════ GALLERY ═══════════════ */
.Gallery {
  background: #fff;
  padding: 6em 2em;
}

.gallery-inner {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.gallery-inner h2 {
  font-size: 2.4em;
  font-weight: 700;
  color: #1a1a2e;
  margin-bottom: 1.5em;
}

/* ── Filter Buttons ── */
.gallery-filter {
  display: flex;
  gap: 1em;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 3em;
}

.filter-btn {
  padding: 0.6em 1.6em;
  border-radius: 50px;
  border: 2px solid #133E87;
  background: transparent;
  color: #133E87;
  font-size: 0.9em;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: "Poppins", sans-serif;
}

.filter-btn:hover,
.filter-btn.active {
  background: #133E87;
  color: white;
}

/* ── Grid ── */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1.2em;
}

.gallery-item {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  aspect-ratio: 4/3;
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
  border-radius: 16px;
  cursor: zoom-in;
  transform: none;
}

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

.gallery-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 1.5em 1em 1em;
  background: linear-gradient(transparent, rgba(0,0,0,0.65));
  border-radius: 0 0 16px 16px;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.gallery-item:hover .gallery-overlay {
  opacity: 1;
}

.gallery-overlay span {
  color: white;
  font-weight: 600;
  font-size: 0.95em;
}

.gallery-item.hidden {
  display: none;
}
