/* Hero Banner Slider styling */
.rara-hero-slider-wrap {
  position: relative !important;
  width: 100% !important;
  margin-bottom: 0 !important;
  border-radius: var(--radius-md) !important;
  box-shadow: 0 4px 24px rgba(109,40,217,0.12) !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 50%, #c4b5fd 100%) !important;
}

.rara-hero-slider {
  position: relative !important;
  width: 100% !important;
  height: 320px !important;
  overflow: hidden !important;
}

@media (max-width: 1024px) {
  .rara-hero-slider { height: 260px !important; }
}
@media (max-width: 768px) {
  .rara-hero-slider { height: 210px !important; }
}
@media (max-width: 480px) {
  .rara-hero-slider { height: 200px !important; }
}

/* Inline hero slider inside two-column grid */
.rara-hero-slider-wrap--inline .rara-hero-slider {
  height: 300px !important;
}

@media (max-width: 1024px) {
  .rara-hero-slider-wrap--inline .rara-hero-slider { height: 260px !important; }
}
@media (max-width: 768px) {
  .rara-hero-slider-wrap--inline .rara-hero-slider { height: 200px !important; }
}

.rara-slider-container {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.rara-slide {
  flex: 0 0 100% !important;
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 60%, #c4b5fd 100%) !important;
}

/* Gradient fallback slides (no bg image) */
.rara-slide:nth-child(1) {
  background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 50%, #c4b5fd 100%) !important;
}
.rara-slide:nth-child(2) {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 50%, #fcd34d 100%) !important;
}
.rara-slide:nth-child(3) {
  background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 50%, #6ee7b7 100%) !important;
}

.rara-slide-bg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  transition: transform 7s ease !important;
  z-index: 1 !important;
}

.rara-slide--active .rara-slide-bg {
  transform: scale(1.04) !important;
}

.rara-slide-bg--desktop {
  display: block !important;
}
.rara-slide-bg--mobile {
  display: none !important;
}

@media (max-width: 768px) {
  .rara-slide-bg--desktop { display: none !important; }
  .rara-slide-bg--mobile  { display: block !important; }
}

/* Device Target Helpers */
.rara-slide--devices-desktop { display: flex !important; }
.rara-slide--devices-mobile  { display: none !important;  }

@media (max-width: 768px) {
  .rara-slide--devices-desktop { display: none !important; }
  .rara-slide--devices-mobile  { display: flex !important; }
}

/* Overlay — left-to-right fade so text is readable */
.rara-slide-overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 55% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  padding: 32px 40px !important;
  z-index: 3 !important;
  background: transparent !important;
}

@media (max-width: 768px) {
  .rara-slide-overlay {
    width: 100% !important;
    align-items: flex-end !important;
    padding: 20px 16px !important;
    background: linear-gradient(0deg, rgba(237,233,254,0.92) 0%, rgba(237,233,254,0.5) 80%, rgba(237,233,254,0) 100%) !important;
  }
}

/* Decorative circle on right side */
.rara-slide::after {
  content: '' !important;
  position: absolute !important;
  right: -60px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 320px !important;
  height: 320px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.15) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.rara-slide::before {
  content: '' !important;
  position: absolute !important;
  right: 80px !important;
  top: -40px !important;
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.1) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.rara-slide-content {
  position: relative !important;
  z-index: 4 !important;
  max-width: 420px !important;
}

.rara-slide-campaign {
  display: inline-block !important;
  padding: 5px 12px !important;
  background-color: var(--rara-warning) !important;
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  border-radius: 4px !important;
  margin-bottom: 10px !important;
}

.rara-slide-title {
  font-family: 'Mukta', 'Noto Sans Devanagari', 'Poppins', sans-serif !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  color: #1e1b4b !important;
  line-height: 1.25 !important;
  margin-bottom: 10px !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
  letter-spacing: -0.01em;
}

.rara-slide-desc {
  font-family: 'Mukta', 'Noto Sans Devanagari', 'Inter', sans-serif !important;
  font-size: 14px !important;
  color: #4c1d95 !important;
  margin-bottom: 20px !important;
  line-height: 1.5 !important;
}

@media (max-width: 1024px) {
  .rara-slide-title { font-size: 26px !important; }
}

@media (max-width: 768px) {
  .rara-slide-title {
    font-size: 20px !important;
    margin-bottom: 6px !important;
  }
}

.rara-slide-cta {
  display: inline-block !important;
  padding: 12px 28px !important;
  color: #ffffff !important;
  font-family: 'Poppins', 'Mukta', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  border-radius: var(--radius-sm) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important;
  transition: all 0.25s ease !important;
  background-color: var(--rara-primary);
}

.rara-slide-cta:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(109,40,217,0.4) !important;
  color: #ffffff !important;
  background-color: var(--rara-secondary) !important;
}

/* Discount badge on right side of slide (Festive Animated) */
.rara-slide-badge {
  position: absolute !important;
  right: 200px !important;
  top: 50% !important;
  z-index: 5 !important;
  width: 95px !important;
  height: 95px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #7c3aed, #d97706, #ef4444, #6d28d9) !important;
  background-size: 300% 300% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 30px rgba(124, 58, 237, 0.45), 0 0 0 4px rgba(255, 255, 255, 0.6) !important;
  border: 2px solid #ffffff !important;
  animation: 
    raraBadgeFloat 3.5s ease-in-out infinite,
    raraGradientShift 6s ease infinite,
    raraFestivePulse 2s ease-in-out infinite alternate !important;
  overflow: hidden !important;
}

/* Shimmer Sheen Effect Across Badge */
.rara-slide-badge::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -50% !important;
  width: 200% !important;
  height: 200% !important;
  background: linear-gradient(
    45deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0) 40%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 60%,
    rgba(255, 255, 255, 0) 100%
  ) !important;
  animation: raraShimmerSweep 3s infinite !important;
  pointer-events: none !important;
}

/* Pulsing Outer Festival Ring */
.rara-slide-badge::after {
  content: '' !important;
  position: absolute !important;
  inset: -5px !important;
  border-radius: 50% !important;
  border: 2px dashed rgba(251, 191, 36, 0.85) !important;
  animation: raraSpinRing 12s linear infinite !important;
  pointer-events: none !important;
}

.rara-slide-badge__pct {
  font-size: 24px !important;
  line-height: 1 !important;
  text-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
  animation: raraPctHeartbeat 2.5s ease-in-out infinite !important;
}

.rara-slide-badge__up {
  font-size: 8.5px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  opacity: 0.9 !important;
}

.rara-slide-badge__off {
  font-size: 10px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  opacity: 0.95 !important;
}

/* Keyframe Animations */
@keyframes raraBadgeFloat {
  0%, 100% {
    transform: translateY(-50%) translateY(0px) scale(1);
  }
  50% {
    transform: translateY(-50%) translateY(-10px) scale(1.04);
  }
}

@keyframes raraGradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@keyframes raraFestivePulse {
  0% {
    box-shadow: 0 8px 25px rgba(124, 58, 237, 0.4), 0 0 0 4px rgba(255, 255, 255, 0.6);
  }
  100% {
    box-shadow: 0 14px 40px rgba(239, 68, 68, 0.6), 0 0 0 8px rgba(251, 191, 36, 0);
  }
}

@keyframes raraShimmerSweep {
  0% { transform: translate(-100%, -100%) rotate(45deg); }
  30%, 100% { transform: translate(100%, 100%) rotate(45deg); }
}

@keyframes raraSpinRing {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes raraPctHeartbeat {
  0%, 100% { transform: scale(1); }
  14% { transform: scale(1.12); }
  28% { transform: scale(1); }
  42% { transform: scale(1.08); }
  70% { transform: scale(1); }
}

@media (max-width: 1024px) {
  .rara-slide-badge { right: 120px !important; width: 75px !important; height: 75px !important; }
  .rara-slide-badge__pct { font-size: 18px !important; }
}
@media (max-width: 768px) {
  .rara-slide-badge { display: none !important; }
}

/* Slider Controls */
.rara-slider-nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 40px !important;
  height: 40px !important;
  background-color: rgba(255,255,255,0.9) !important;
  border: 1px solid rgba(255,255,255,0.5) !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  color: var(--rara-primary) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  z-index: 10 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.1) !important;
}

.rara-slider-nav:hover {
  background-color: var(--rara-primary) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(109,40,217,0.3) !important;
}

.rara-slider-prev { left: 16px !important; }
.rara-slider-next { right: 16px !important; }

@media (max-width: 768px) {
  .rara-slider-nav  { width: 30px !important; height: 30px !important; }
  .rara-slider-prev { left: 8px !important; }
  .rara-slider-next { right: 8px !important; }
}

.rara-slider-dots {
  position: absolute !important;
  bottom: 14px !important;
  left: 40px !important;
  transform: none !important;
  display: flex !important;
  gap: 6px !important;
  z-index: 10 !important;
}

.rara-slider-dot {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background-color: rgba(109,40,217,0.3) !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.25s ease !important;
}

.rara-slider-dot--active {
  background-color: var(--rara-primary) !important;
  width: 22px !important;
  border-radius: 4px !important;
}
