/* Animation Styles */

/* Fade In */
.fade-in {
    opacity: 0;
    transition: opacity 1s ease-in-out;
  }
  
  .fade-in.animated {
    opacity: 1;
  }
  
  /* Slide Up */
  .slide-up {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  
  .slide-up.animated {
    opacity: 1;
    transform: translateY(0);
  }
  
  /* Slide In Left */
  .slide-in-left {
    opacity: 0;
    transform: translateX(-50px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  
  .slide-in-left.animated {
    opacity: 1;
    transform: translateX(0);
  }
  
  /* Slide In Right */
  .slide-in-right {
    opacity: 0;
    transform: translateX(50px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  
  .slide-in-right.animated {
    opacity: 1;
    transform: translateX(0);
  }
  
  /* Zoom In */
  .zoom-in {
    opacity: 0;
    transform: scale(0.9);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  
  .zoom-in.animated {
    opacity: 1;
    transform: scale(1);
  }
  
  /* Bounce */
  .bounce {
    animation: bounce 1s ease infinite;
  }
  
  @keyframes bounce {
    0%,
    100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-10px);
    }
  }
  
  /* Pulse */
  .pulse {
    animation: pulse 2s ease infinite;
  }
  
  @keyframes pulse {
    0% {
      transform: scale(1);
    }
    50% {
      transform: scale(1.05);
    }
    100% {
      transform: scale(1);
    }
  }
  
  /* Shake */
  .shake {
    animation: shake 0.5s ease infinite;
  }
  
  @keyframes shake {
    0%,
    100% {
      transform: translateX(0);
    }
    25% {
      transform: translateX(-5px);
    }
    75% {
      transform: translateX(5px);
    }
  }
  
  /* Delay classes */
  .delay-100 {
    transition-delay: 0.1s;
  }
  
  .delay-200 {
    transition-delay: 0.2s;
  }
  
  .delay-300 {
    transition-delay: 0.3s;
  }
  
  .delay-400 {
    transition-delay: 0.4s;
  }
  
  .delay-500 {
    transition-delay: 0.5s;
  }
  
  /* Back to top button animation */
  #back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background-color: var(--primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    z-index: 999;
  }
  
  #back-to-top.show {
    opacity: 1;
    visibility: visible;
  }
  
  #back-to-top:hover {
    background-color: var(--secondary);
  }
  
  