body {
    background-color: #FBF8F4;
  }

  #menu-toggle.menu-open .hamburger-line:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  #menu-toggle.menu-open .hamburger-line:nth-child(2) {
    opacity: 0;
    transform: scaleX(0);
  }
  #menu-toggle.menu-open .hamburger-line:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  
  .glass-card {
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }
  
  .reveal {
    opacity: 0;
    transform: translateY(28px);
    transition:
      opacity 0.8s ease,
      transform 0.8s ease;
    will-change: opacity, transform;
  }
  
  .reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
  }
  
  .reveal.delay-1 {
    transition-delay: 0.08s;
  }
  
  .reveal.delay-2 {
    transition-delay: 0.16s;
  }
  
  .reveal.delay-3 {
    transition-delay: 0.24s;
  }
  
  .music-pulse {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.26);
    position: relative;
  }
  
  .music-pulse::before,
  .music-pulse::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.4);
    animation: pulseRing 2.8s ease-out infinite;
  }
  
  .music-pulse::after {
    animation-delay: 1.2s;
  }
  
  @keyframes pulseRing {
    0% {
      transform: scale(0.9);
      opacity: 0.8;
    }
    70% {
      transform: scale(1.7);
      opacity: 0;
    }
    100% {
      transform: scale(1.8);
      opacity: 0;
    }
  }