@keyframes waveAnimation {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-100% / 2));
    }
}
  
@keyframes popIn {
    0% {
      opacity: 0;
      transform: scale(0.8);
    }
    50% {
      opacity: 1;
      transform: scale(1.1);
    }
    100% {
      opacity: 1;
      transform: scale(1);
    }
  }
  

  

  
  .page {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
    will-change: transform, opacity;
  }
  
  #main-page {
    z-index: 2;
  }
  
  #scene {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 3;
    pointer-events: none;
  }
  
  .leaf {
    position: absolute;
    opacity: 0;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.4));
  }
  
  @keyframes fadeOut {
    0% { opacity: 1; }
    100% { opacity: 0; }
  }
  
  @keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  
  @keyframes leafFloat {
    0% {
      transform: translate(0, -50%) rotate(0deg) scale(0.8);
      opacity: 0.8;
    }
    100% {
      transform: translate(200vw, calc(-50% + 20vh)) rotate(360deg) scale(1.2);
      opacity: 0;
    }
  }


/* Fade-out animation */
.fade-out {
    animation: fadeOut 1s forwards;
}

/* Fade-in animation */
.fade-in {
    animation: fadeIn 1s forwards;
}

/* Keyframes for fadeOut */
@keyframes fadeOut {
    0% {
        opacity: 1;
        visibility: visible;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

/* Keyframes for fadeIn */
@keyframes fadeIn {
    0% {
        opacity: 0;
        visibility: visible;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}
