    .gallery {
      display: grid;
      grid-template-columns: repeat(4, 1fr); /* Four columns */
      gap: 30px;
      margin: 20px;
      margin-top: 100px;
      background-color: black;
    }

    .photo {
      position: relative;
      overflow: hidden;
      cursor: pointer;
    }

    .photo img {
      width: 100%;
      height: auto;
      display: block;
      transition: transform 0.3s ease;
    }

    .photo:hover img {
      transform: scale(1.1);
    }

    .photo-info {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: rgba(0, 0, 0, 0.6);
      color: #fff;
      text-align: center;
      padding: 10px;
      font-size: 18px;
      opacity: 0;
      transition: opacity 0.3s ease;
    }

    .photo:hover .photo-info {
      opacity: 1;
    }

    /* Responsive: Adjust for smaller screens */
    @media (max-width: 768px) {
      .gallery {
        grid-template-columns: repeat(2, 1fr); /* Two columns on smaller screens */
      }

      .photo-info {
        font-size: 14px;
      }
    }

    @media (max-width: 480px) {
      .gallery {
        grid-template-columns: 1fr; /* One column for very small screens */
      }
    }