* {
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
  overscroll-behavior: auto;
  -webkit-overflow-scrolling: touch;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  overscroll-behavior: auto;
  -webkit-overflow-scrolling: touch;
}


/* hover effect */
.link--underline {
  text-decoration: none;
}

/* mouse dot */
.mouse-dot {
  z-index: 9999;
  position: fixed;
  width: 20px;
  height: 20px;
  background-color: #ffc31e;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: transform 0.1s ease-out;
  filter: blur(1px);
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.3);
}

@media (max-width: 1024px) {
  .mouse-dot {
    display: none;
  }
}

/* Initial state for animation (hidden off-screen) */
.hidden1 {
  opacity: 0;
  transform: translateY(100px);
  transition: opacity 1s ease, transform 1s ease;
}

/* Animation when element is in view */
.visible1 {
  opacity: 1;
  transform: translateY(0);
}

#navbar {
  transition: top 0.5s ease-in-out;
}

.logo-swiper .swiper-slide img {
  height: 200px;
  object-fit: contain;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .logo-swiper .swiper-slide img {
    height: 100px;
    object-fit: contain;
    margin: 0 auto;
  }
}
