/* Material Symbols Outlined Font Configuration */
.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

/* Smooth scrolling for navigation */
html {
  scroll-behavior: smooth;
}

/* Mobile Menu Styles */
#mobile-menu {
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  z-index: 40;
}

#mobile-menu-button {
  transition: transform 0.2s ease-in-out;
  z-index: 50;
}

#mobile-menu-button:active {
  transform: scale(0.95);
}

/* Full screen mobile menu styles */
#mobile-menu {
  backdrop-filter: blur(10px);
  background: rgba(0, 0, 0, 0.95);
}

/* Smooth transitions for mobile menu links */
#mobile-menu a {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  transition: all 0.3s ease;
}

#mobile-menu a:hover {
  background-color: rgba(255, 215, 0, 0.1);
  transform: scale(1.05);
}

#mobile-menu a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.2), transparent);
  transition: left 0.5s;
}

#mobile-menu a:hover::before {
  left: 100%;
}

/* Prevent scroll when menu is open */
body.menu-open {
  overflow: hidden;
}

/* Carousel Styles */
.carousel-container {
  position: relative;
  width: 100%;
}

.carousel-track {
  display: flex;
  transition: none; /* We handle animation with JavaScript */
  will-change: transform;
}

.carousel-item {
  flex-shrink: 0;
}

.carousel-clone {
  /* Cloned items for infinite scroll */
}
