/* LIGHTBOX */
.lightbox-overlay{
  position:fixed; inset:0; z-index:10000;
  background:rgba(26,17,31,0.92); backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition:opacity 0.35s ease, visibility 0.35s ease;
  padding:1.5rem;
}
.lightbox-overlay.active{opacity:1; visibility:visible;}
.lightbox-container{
  max-width:1020px; width:100%; max-height:92vh; border-radius:26px;
  position:relative; display:flex; flex-direction:column; overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,0.5); border:1px solid rgba(255,255,255,0.12);
}
.lightbox-close{
  position:absolute; top:1.1rem; right:1.3rem; z-index:10;
  background:rgba(255,255,255,0.12); border:1px solid rgba(255,255,255,0.22);
  color:var(--cream); width:42px; height:42px; border-radius:50%; font-size:1.5rem;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.25s ease;
}
.lightbox-close:hover{background:rgba(255,255,255,0.3); transform:scale(1.08);}
.lightbox-nav{
  position:absolute; top:50%; transform:translateY(-50%); z-index:10;
  background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.22);
  color:var(--cream); width:48px; height:48px; border-radius:50%; font-size:1.3rem;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.25s ease;
}
.lightbox-nav:hover{background:rgba(255,255,255,0.32); transform:translateY(-50%) scale(1.08);}
.lightbox-prev{left:1.2rem;}
.lightbox-next{right:1.2rem;}
@media (max-width:640px){
  .lightbox-prev{left:0.5rem; width:38px; height:38px;}
  .lightbox-next{right:0.5rem; width:38px; height:38px;}
  .lightbox-close{top:0.6rem; right:0.6rem; width:36px; height:36px;}
}
.lightbox-content{
  display:flex; flex-direction:column; align-items:center; padding:2.8rem 1.5rem 1.6rem;
  max-height:92vh; overflow-y:auto;
}
.lightbox-image-wrapper{
  max-height:65vh; display:flex; align-items:center; justify-content:center; width:100%;
}
.lightbox-image-wrapper img{
  max-height:65vh; max-width:100%; object-fit:contain; border-radius:14px;
  box-shadow:0 18px 45px rgba(0,0,0,0.35); transition:transform 0.3s ease;
}
.lightbox-caption{margin-top:1.3rem; text-align:center; color:var(--cream);}
.lightbox-counter{
  font-family:var(--font-mono); font-size:0.7rem; letter-spacing:0.08em; color:var(--gold-soft); margin-bottom:0.35rem;
}
.lightbox-title{
  font-family:var(--font-display); font-style:italic; font-size:1.35rem; color:var(--cream); margin-bottom:0.35rem;
}
.lightbox-desc{font-size:0.88rem; color:rgba(251,247,243,0.72); max-width:620px; line-height:1.5;}
