.photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
  margin: 20px 0;
}

.photo-item {
  text-align: center;
}

.photo-item img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}

.photo-caption {
  margin-top: 8px;
  font-size: 0.9em;
  color: #666;
  font-style: italic;
}

/* Responsive breakpoints (optional) */
@media (max-width: 768px) {
  .photo-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .photo-grid {
    grid-template-columns: 1fr;
  }
}