/* Mobile Menu Styles */
.mobile-menu-button {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 10px;
  z-index: 30;
}

.menu-bar {
  display: block;
  width: 25px;
  height: 3px;
  margin: 5px 0;
  background-color: var(--color-four);
  transition: transform 0.3s, opacity 0.3s;
}

/* Mobile Menu Button Animation */
.menu-button-open .menu-bar:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.menu-button-open .menu-bar:nth-child(2) {
  opacity: 0;
}

.menu-button-open .menu-bar:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

@media (max-width: 768px) {
  .logo a {
    font-size: 1.5rem;
  }

  .mobile-menu-button {
    display: block;
  }
  
  .nav-links {
    display: flex;
    position: fixed;
    top: 0;
    right: -100%;
    height: 100vh;
    max-width: 80%;
    background-color: var(--color-background-light);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: right 0.3s ease;
    z-index: 20;
    box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);
  }
  
  .nav-links.menu-open {
    right: 0;
  }
  
  .nav-links div {
    margin: 0.5rem 0;
  }
  
  .nav-links div a {
    padding: 10px 20px;
    display: block;
    font-size: 2rem;
  }

  .nav-links div a.nav-link {
    font-size: 1.8rem;
  }
}
