.gallery-item { cursor: zoom-in; overflow: hidden; display: block; }
.gallery-item img { transition: transform .5s ease; }
.gallery-item:hover img { transform: scale(1.04); }

.lightbox {
  position: fixed; inset: 0; background: rgba(30,34,40,0.95); z-index: 100;
  display: none; align-items: center; justify-content: center; padding: 2rem;
}
.lightbox.open { display: flex; }
.lightbox img { max-width: 95vw; max-height: 90vh; object-fit: contain; border-radius: 8px; }
.lightbox-close, .lightbox-nav {
  position: absolute; color: white; background: rgba(0,0,0,0.4);
  border: 1px solid rgba(255,255,255,0.2); cursor: pointer; user-select: none;
  display: flex; align-items: center; justify-content: center;
  backdrop-filter: blur(8px);
}
.lightbox-close { top: 20px; right: 20px; width: 44px; height: 44px; border-radius: 50%; font-size: 24px; }
.lightbox-nav { top: 50%; transform: translateY(-50%); width: 52px; height: 52px; border-radius: 50%; font-size: 24px; }
.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }
@media (hover: hover) {
  .lightbox-close:hover, .lightbox-nav:hover { background: rgba(194,65,12,0.85); }
}
@media (max-width: 640px) {
  .lightbox-close { top: 12px; right: 12px; }
  .lightbox-prev { left: 8px; }
  .lightbox-next { right: 8px; }
  .lightbox { padding: 0.5rem; }
}
