* { margin: 0; padding: 0; box-sizing: border-box; }

    body {
      background: #000;
      padding: 40px 20px;
      min-height: 100vh;
      font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
      color: white;
    }

    .grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
      gap: 1px;
      background: #fff;
      max-width: 1600px;
      margin: 0 auto;
    }

    .item {
      background: #000;
      aspect-ratio: 1 / 1;
      position: relative;
      overflow: hidden;
      cursor: zoom-in;
    }

    .item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: opacity 0.4s ease;
    }

    .item:hover img { opacity: 0.8; }

    .caption {
      position: absolute;
      bottom: 0; left: 0; right: 0;
      padding: 28px 16px 20px;
      text-align: center;
      background: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
    }

    .caption h3 { margin: 0 0 4px 0; font-size: 1.15rem; font-weight: 500; }
    .caption p   { margin: 0; font-size: 0.9rem; opacity: 0.88; }

    /* Lightbox */
    .lightbox {
      display: none;
      position: fixed;
      z-index: 999;
      left: 0; top: 0;
      width: 100%; height: 100%;
      background: rgba(0,0,0,0.95);
      align-items: center;
      justify-content: center;
      padding: 20px;
    }

    .lightbox.active { display: flex; }

    .lightbox img {
      max-width: 95%;
      max-height: 95vh;
      object-fit: contain;
      border: 4px solid white;
      box-shadow: 0 20px 60px rgba(0,0,0,0.8);
    }

    .close {
      position: absolute;
      top: 30px; right: 40px;
      font-size: 40px;
      color: white;
      cursor: pointer;
      opacity: 0.8;
    }

    .close:hover { opacity: 1; }
    
    img{ 
    display: block;
  margin: 0 auto;
}
#tip{
    text-align: center;
}