.gallery-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.gallery-item {
  flex: 1 1 23%;
  border: 1px solid #ccc;
  margin-bottom: 10px;
}

.gallery-item:hover {
  border: 1px solid #777;
}

.gallery-item img {
  width: 100%;
  height: auto;
}

.gallery-item .desc {
  padding: 8px;
  text-align: center;
  font-size: 0.9em;
}

@media (max-width: 700px) {
  .gallery-item { flex: 1 1 48%; }
}

@media (max-width: 500px) {
  .gallery-item { flex: 1 1 100%; }
}

