.lightbox {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.8);
  z-index: 999;
  justify-content: center;
  align-items: center;
  opacity: 0;
}

  /* Visible state + fade-in */
.lightbox.show {
  display: flex;
  animation: fadeIn 0.3s ease forwards;
}

@keyframes fadeIn {
  from { opacity: 0; }
    to { opacity: 1; }
}

/* Video wrapper keeps aspect ratio */
.video-wrapper {
  position: relative;
  width: 80vw;
  height: 80vh;
  max-width: 19620px;
  max-height: 1080px;
}

.video-wrapper video {
  width: 100%;
  height: 100%;
  object-fit: contain; /* Keep aspect ratio */
  border-radius: 8px;
  background: transparent;
  }

/* Fixed close button in top-right corner of viewport */
.close-btn {
  position: fixed;
  top: 20px;
  right: 25px;
  font-size: 32px;
  color: white;
  cursor: pointer;
  background: rgba(0,0,0,0.5);
  border: none;
  border-radius: 4px;
  padding: 4px 10px;
  z-index: 1000;
  transition: background 0.2s ease;
}

.close-btn:hover {
  background: rgba(255,255,255,0.2);
}

.play-btn {
  font-size: 20px;
  padding: 10px 25px;
  cursor: pointer;
  background: #007bff;
  color: white;
  border: none;
  border-radius: 4px;
}