/* Default: No animation */
.fade-in,
.fade-in-left,
.fade-in-left1,
.fade-in-left2,
.slide-in-left,
.bounce-in,
.bounce-in1,
.rotate-in,
.slide-in-right,
.roll-in-left,
.roll-in-right {
    opacity: 0; /* Start hidden */
    animation: none; /* Prevent animation before scroll */
}


@keyframes rollInLeft {
  from {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  to {
    opacity: 1;
    transform: translateX(0) rotate(0deg);
  }
}

@keyframes fadeIn {
  from {
      opacity: 0;
      transform: translateY(20px);
  }
  to {
      opacity: 1;
      transform: translateY(0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rotateIn {
  from {
    opacity: 0;
    transform: rotate(-200deg);
  }
  to {
    opacity: 1;
    transform: rotate(0);
  }
}
@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes rollInRight {
  from {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
  to {
    opacity: 1;
    transform: translateX(0) rotate(0deg);
  }
}





.animated-element {
  opacity: 0; 
  animation: none;
}

/* Apply animation when class is added */
.start-animation.fade-in {
    animation: fadeIn 1ms ease-out forwards;
    animation-delay: 1s;
}
.start-animation.fade-in-left {
    animation: fadeInLeft 1s ease-out forwards;
    animation-delay: 0.5s;
}
.start-animation.fade-in-left1 {
    animation: fadeInLeft 1s ease-out forwards;
    animation-delay: 1s;
}
.start-animation.fade-in-left2 {
    animation: fadeInLeft 1s ease-out forwards;
    animation-delay: 2.2s;
}
.start-animation.slide-in-left {
    animation: slideInLeft 1s ease-out forwards;
}
.start-animation.bounce-in {
    animation: bounceIn 1.5s linear forwards;
    animation-delay: 1.5s;
}
.start-animation.bounce-in1 {
    animation: bounceIn 1.5s linear forwards;
    animation-delay: 1.9s;
}
.start-animation.rotate-in {
    animation: rotateIn 0.7s ease-out forwards;
}
.start-animation.slide-in-right {
    animation: slideInRight 0.5s ease-out forwards;
}
.start-animation.roll-in-left {
    animation: rollInLeft 2s ease-out forwards;
}
.start-animation.roll-in-right {
    animation: rollInRight 1s ease-in forwards;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}














.custom-gallery-container {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0;
  margin: 0 auto;
}

.custom-gallery-scroll {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0 10px;
  overflow-x: scroll;
  scroll-behavior: smooth;
  mask-image: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 100%);
  -webkit-mask-image: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 100%);
}

.custom-gallery-list {
  display: flex;
  gap: 10px;
  list-style: none;
  padding: 10px 0;
  margin: 0;
}

.custom-gallery-list li {
  flex-shrink: 0;
  width: 230px;
  height: 130px;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
}

.custom-gallery-list img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: inherit;
}

