.rr-promo-section {
  background: linear-gradient(135deg, #0f2027, #203a43, #2c5364);
  color: #fff;
  position: relative;
  overflow: hidden;
  padding: 100px 0;
}

.rr-wave-bg {
  position: absolute;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  background: url('img/music-wave.png') no-repeat center;
  background-size: cover;
  opacity: 0.05;
  animation: rrWaveMove 20s linear infinite;
}

@keyframes rrWaveMove {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(10deg) scale(1.05); }
  100% { transform: rotate(0deg) scale(1); }
}

.rr-promo-subtitle {
  color: #f7c873;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
  margin-bottom: 15px;
}

.rr-promo-title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
  background: linear-gradient(90deg, #f7c873, #f06292);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.rr-promo-desc {
  font-size: 1.2rem;
  max-width: 700px;
  margin: 20px auto;
  opacity: 0.85;
}

.rr-promo-btn {
  padding: 15px 40px;
  font-size: 1.2rem;
  font-weight: 600;
  background: #f7c873;
  color: #000;
  border-radius: 50px;
  transition: 0.4s;
}

.rr-promo-btn:hover {
  transform: scale(1.1);
  background: #f06292;
  color: #fff;
}

/* Floating Instruments */
.rr-float {
  position: absolute;
  width: 80px;
  animation: floatAnim 6s ease-in-out infinite;
}

.rr-guitar { top: 20%; left: 5%; animation-delay: 0s; }
.rr-tabla  { top: 50%; right: 10%; animation-delay: 1s; }
.rr-mic    { bottom: 20%; left: 25%; animation-delay: 2s; }

@keyframes floatAnim {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-15px); }
}
