/* === FADE-UP ANIMATION === */
.fade-up { opacity: 0; transform: translateY(32px); transition: opacity .7s cubic-bezier(.25,.46,.45,.94), transform .7s cubic-bezier(.25,.46,.45,.94); }
.fade-up.visible { opacity: 1; transform: translateY(0); }
.fade-up:nth-child(2) { transition-delay: .1s; }
.fade-up:nth-child(3) { transition-delay: .2s; }
.fade-up:nth-child(4) { transition-delay: .3s; }
.fade-up:nth-child(5) { transition-delay: .4s; }
.fade-up:nth-child(6) { transition-delay: .5s; }

/* logo.svg support */
img[src*="logo.svg"] { filter: none; }

/* Gallery lightbox */
.lightbox-overlay {
  position: fixed; inset: 0; background: rgba(13,21,38,.96); z-index: 9999;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity .3s;
}
.lightbox-overlay.open { opacity: 1; pointer-events: all; }
.lightbox-overlay img { max-width: 90vw; max-height: 88vh; object-fit: contain; border: 2px solid rgba(201,168,76,.3); border-radius: 3px; }
.lightbox-close {
  position: absolute; top: 28px; right: 36px; font-size: 36px; color: rgba(255,255,255,.6);
  cursor: pointer; line-height: 1; transition: color .2s; background: none; border: none;
}
.lightbox-close:hover { color: var(--gold); }
.lightbox-prev, .lightbox-next {
  position: absolute; top: 50%; transform: translateY(-50%);
  font-size: 28px; color: rgba(255,255,255,.55); cursor: pointer; background: none; border: none;
  padding: 16px; transition: color .2s;
}
.lightbox-prev { left: 24px; } .lightbox-next { right: 24px; }
.lightbox-prev:hover, .lightbox-next:hover { color: var(--gold); }
