/* Hero Slider */
.slide {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,0.2);
  transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.slide.active {
  transform: rotate(-6deg) translateX(0) scale(1);
  opacity: 1;
  z-index: 2;
}
.slide.next {
  transform: rotate(-6deg) translateX(-30%) scale(0.8);
  opacity: 0.5;
  z-index: 1;
}
.slide.prev {
  transform: rotate(-6deg) translateX(100%) scale(0.85);
  opacity: 1;
  z-index: 2;
}
.slide.waiting {
  transform: rotate(-6deg) translateX(100%) scale(0.85);
  opacity: 0;
  z-index: 0;
}
.slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Tienda Slider */
.tienda-slider .slider-container {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  margin: 0 auto;
}
.tienda-slider .tslide {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,0.2);
  transform: rotate(-6deg) translateX(100%) scale(0.85);
  opacity: 0;
  transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1;
}
.tienda-slider .tslide.tactive {
  transform: rotate(-6deg) translateX(0) scale(1);
  opacity: 1;
  z-index: 2;
}
.tienda-slider .tslide.tnext {
  transform: rotate(-6deg) translateX(-30%) scale(0.8);
  opacity: 0.5;
  z-index: 1;
}
.tienda-slider .tslide.thidden {
  transform: rotate(-6deg) translateX(100%) scale(0.85);
  opacity: 0;
  z-index: 0;
}
.tienda-slider .tslide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Rotating Text */
.rotating-text-container .scroll-btn svg {
  animation: bounce-x 1s ease-in-out infinite;
}
.rotating-text-container:hover .scroll-btn svg {
  animation-play-state: paused;
}
@keyframes bounce-x {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(4px); }
}
.scroll-btn.next svg {
  animation-name: bounce-x-right;
}
.scroll-btn.prev svg {
  animation-name: bounce-x-left;
}
@keyframes bounce-x-right {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(4px); }
}
@keyframes bounce-x-left {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-4px); }
}

/* Rotating Text Active State */
.rotating-text.active {
  opacity: 1 !important;
  pointer-events: auto;
}
.rotating-text:not(.active) {
  pointer-events: none;
}