@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@500..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@700&family=Open+Sans:wght@400&display=swap');

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  line-height: 1.6;
}

.heading-font {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  line-height: 1.2;
}


#mobile-menu {
  transform: translateX(100%);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out,
  visibility 0.5s ease-in-out;
}

#mobile-menu.open {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

nav.scrolled {
  background-color: #ffffffe2; /* Light transparent background when scrolled */
  transition: background-color 0.3s ease; /* Smooth transition */
}

/* cursor */
.circle {
  position: fixed;
  top: 0;
  left: 0;
  border-radius: 50%;
  pointer-events: none;
  z-index: 99999999;
}

.circle {
  transition: transform 0.2s ease, border-color 0.2s ease,
    background-color 0.2s ease;
}

/* Large outer circle */
.outer {
  height: 40px;
  width: 40px;
  border: 2px solid #d0adec;
  background-color: transparent;
}

/* Small inner circle */
.inner {
  height: 8px;
  width: 8px;
  background-color: #7b2bbe;
}

.preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: whitesmoke;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 1;
  transition: opacity 0.5s ease-out;
}
/* Loader styles */
.loader {
  width: 44.8px;
  height: 44.8px;
  color: #7b2bbe;
  position: relative;
  background: radial-gradient(11.2px, currentColor 94%, #0000);
}

.loader:before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: radial-gradient(10.08px at bottom right, #0000 94%, currentColor)
      top left,
    radial-gradient(10.08px at bottom left, #0000 94%, currentColor) top right,
    radial-gradient(10.08px at top right, #0000 94%, currentColor) bottom left,
    radial-gradient(10.08px at top left, #0000 94%, currentColor) bottom right;
  background-size: 22.4px 22.4px;
  background-repeat: no-repeat;
  animation: loader 1.5s infinite cubic-bezier(0.3, 1, 0, 1);
}

/* Default transparent navbar */
#nav {
  background-color: rgba(255, 255, 255, 0);
  box-shadow: none;
}

/* Scrolled navbar style */
#nav.scrolled {
  background-color: rgba(255, 255, 255, 0.9); /* Light transparent background */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* Slight shadow */
}

@keyframes loader {
  33% {
    inset: -11.2px;
    transform: rotate(0deg);
  }

  66% {
    inset: -11.2px;
    transform: rotate(90deg);
  }

  100% {
    inset: 0;
    transform: rotate(90deg);
  }
}

/* SVG ele */
@keyframes slow-float {
  0%, 100% {
      transform: translateY(0);
  }
  50% {
      transform: translateY(-10px); /* Adjust this value for float height */
  }
}

.animate-float {
      animation: slow-float 5s infinite; /* Adjust this value for slower floating */
}


/* Slide left transition */

@keyframes slide-in {
  0% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
.animate-slide-in {
  animation: slide-in 0.5s ease-out forwards;
}


/* Slide up transition */

@keyframes slide-up {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

.animate-slide-up {
  animation: slide-up 0.6s ease-out;
}

/* Unbounded font custom class */
.unbounded-lg {
  font-family: "Unbounded", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
