/* ===== SOUNDLAB V9 ENHANCEMENTS ===== */
.payment-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 20%, rgba(255,45,85,.18), transparent 32%),
    radial-gradient(circle at 85% 80%, rgba(0,229,255,.15), transparent 32%),
    linear-gradient(135deg,#090909 0%,#111 45%,#050505 100%);
}
.payment-section::before{
  content:"";
  position:absolute; inset:-2px;
  background:linear-gradient(120deg,rgba(255,32,78,.3),transparent 35%,rgba(0,229,255,.22));
  filter:blur(30px);
  opacity:.55; pointer-events:none;
}
.payment-section .container{position:relative;z-index:1}
.payment-head{text-align:center;max-width:850px;margin-inline:auto}
.payment-flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  gap:16px;align-items:center;margin-top:34px
}
.pay-step{
  min-height:210px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:28px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  box-shadow:0 18px 55px rgba(0,0,0,.3);
  backdrop-filter:blur(12px);
  transition:.35s ease;
}
.pay-step:hover{
  transform:translateY(-8px) scale(1.02);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 26px 70px rgba(0,0,0,.45),0 0 35px rgba(255,45,85,.14)
}
.pay-icon{
  width:58px;height:58px;border-radius:18px;
  display:grid;place-items:center;
  font-weight:900;font-size:20px;
  background:linear-gradient(135deg,#ff2d55,#ff7a00);
  box-shadow:0 0 28px rgba(255,45,85,.35);
  margin-bottom:18px
}
.pay-step h3{margin:0 0 10px;font-size:20px}
.pay-step p{margin:0;opacity:.76;line-height:1.55}
.pay-arrow{font-size:34px;font-weight:900;opacity:.4}
.payment-cta{text-align:center;margin-top:32px}

.setup-impact{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.setup-impact::before{
  content:"";
  position:absolute;
  width:520px;height:520px;border-radius:50%;
  left:-180px;top:-220px;
  background:radial-gradient(circle,rgba(0,229,255,.25),transparent 65%);
  animation:setupPulse 4s ease-in-out infinite;
  z-index:-1;
}
.setup-impact::after{
  content:"";
  position:absolute;
  width:520px;height:520px;border-radius:50%;
  right:-180px;bottom:-230px;
  background:radial-gradient(circle,rgba(255,45,85,.28),transparent 65%);
  animation:setupPulse 4s ease-in-out infinite reverse;
  z-index:-1;
}
.setup-impact .container{
  animation:setupFloat 4.5s ease-in-out infinite;
}
.setup-impact h2,.setup-impact h3{
  text-shadow:0 0 18px rgba(255,255,255,.12),0 0 38px rgba(255,45,85,.20);
}
@keyframes setupPulse{
  0%,100%{transform:scale(.92);opacity:.55}
  50%{transform:scale(1.12);opacity:1}
}
@keyframes setupFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

/* testimonial hover */
.testimonials-enhanced img{
  transition:transform .38s cubic-bezier(.2,.8,.2,1), filter .38s ease, box-shadow .38s ease;
  will-change:transform;
}
.testimonials-enhanced img:hover{
  transform:translateY(-10px) scale(1.045) rotate(.6deg);
  filter:saturate(1.14) contrast(1.05) brightness(1.05);
  box-shadow:0 24px 55px rgba(0,0,0,.45),0 0 28px rgba(0,229,255,.18);
  z-index:5;
}

/* Reels-like samples */
#galeria .gallery,
#galeria .grid,
#galeria .samples-grid{
  align-items:stretch;
}
.reel-card{
  position:relative;
  aspect-ratio:9/16;
  border-radius:24px;
  overflow:hidden;
  background:#050505;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 48px rgba(0,0,0,.38);
  transition:.35s ease;
}
.reel-card:hover{
  transform:translateY(-7px);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 26px 60px rgba(0,0,0,.55),0 0 28px rgba(255,45,85,.12);
}
.reel-video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  background:#000;
}
.reel-overlay{
  position:absolute;
  left:12px;top:12px;
  pointer-events:none;
}
.reel-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 11px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  background:rgba(0,0,0,.62);
  border:1px solid rgba(255,255,255,.15);
  backdrop-filter:blur(8px);
}
.reel-badge::before{
  content:"▶";
  font-size:10px;
}

@media(max-width:980px){
  .payment-flow{
    grid-template-columns:1fr 1fr;
  }
  .pay-arrow{display:none}
}
@media(max-width:620px){
  .payment-flow{grid-template-columns:1fr}
  .pay-step{min-height:auto}
  .reel-card{border-radius:18px}
}
