@import url(https://fonts.googleapis.com/css?family=Jost:100,200,300,regular,500,600,700,800,900,100italic,200italic,300italic,italic,500italic,600italic,700italic,800italic,900italic);
@import url(https://fonts.googleapis.com/css?family=Rajdhani:300,regular,500,600,700);

body {
  background-color: #0a0118;
}

.font-family-jost {
  font-family: "Jost", sans-serif;
}

.font-family-rajdhani {
  font-family: "Rajdhani", sans-serif;
}

footer {
  background-color: #070322;
}

.flipped {
  transform: rotateY(180deg) !important;
}

@keyframes smooth-bounce {
  0%,
  100% {
    transform: translateY(0);
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    transform: translateY(-30px);
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  }
}

.smooth-bounce {
  animation: smooth-bounce 5s infinite;
}

:where([class^="ri-"])::before {
  content: "\f3c2";
}
.nav-link {
  position: relative;
}
.nav-link::after {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -4px;
  left: 0;
  background-color: #f80000;
  transition: width 0.3s ease;
}
.nav-link:hover::after,
.nav-link.active::after {
  width: 100%;
}
.dropdown-menu {
  transform: translateY(10px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.dropdown:hover .dropdown-menu {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
.mobile-menu {
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
}
.mobile-menu.active {
  transform: translateX(0);
}
.hamburger-line {
  transition: all 0.3s ease-in-out;
}
.hamburger.active .hamburger-line:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}
.hamburger.active .hamburger-line:nth-child(2) {
  opacity: 0;
}
.hamburger.active .hamburger-line:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

/* === ACTIVE MENU BUTTON COLOR === */
/* Change hamburger lines on mobile when active */
#mobile-menu-button.active .hamburger-line {
  background-color: #f5bc1d;
}

/* Change mobile menu background when active */
#mobile-menu a.active {
  color: #f5bc1d !important;
}
/* Change Event mobile menu background when active */
#mobile-menu-event a.active {
  
  color: rgb(130, 0, 52);
}

/* Highlight the active desktop nav link */
nav a.active {
  color: #f5bc1d !important;
}

/* Optional: add smooth transition */
.hamburger-line {
  transition: background-color 0.3s ease;
}


/* Custom blinking animation */
.blink {
  animation: blink-animation 1s steps(2, start) infinite;
}
@keyframes blink-animation {
  to {
    visibility: hidden;
  }
}



 /* Particle/Snow effect */
    .snow::before {
      content: "";
      position: absolute;
      inset: 0;
      background-image: radial-gradient(white 1px, transparent 1px);
      background-size: 15px 15px;
      opacity: 0.2;
      animation: snowfall 60s linear infinite;
      z-index: 1;
    }
    @keyframes snowfall {
      0% {
        background-position: 0 0;
      }
      100% {
        background-position: 1000px 1000px;
      }
    }