html { scroll-behavior: smooth; scroll-padding-top: 4.5rem; }
body { font-family: 'Inter', sans-serif; }

/* Hero video background */
.hero-video-container {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

/* Scroll reveal */
.reveal {
  opacity: 0;
  transform: translateY(2rem);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Nav link style */
.nav-link {
  position: relative;
  transition: color 0.3s;
}
.nav-link::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  background: linear-gradient(to right, #b01f24, #D8282E, #e85459);
  transition: width 0.3s;
}

/* Gradient text for section headings */
.gradient-heading {
  background: linear-gradient(135deg, #1C355E 0%, #2a4a7a 40%, #D8282E 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.nav-link:hover::after {
  width: 100%;
}

/* Lightbox animation */
#lightbox {
  transition: opacity 0.3s;
}
#lightbox.showing {
  opacity: 1;
}

@keyframes bounce-slow {
  0%, 100% { transform: translateY(0) translateX(-50%); }
  50% { transform: translateY(-12px) translateX(-50%); }
}
.animate-bounce-slow {
  animation: bounce-slow 2s infinite;
}
