/* Vistio Business v1.1.43 · Reflejo dorado y destellos discretos.
   Alcance: únicamente la sección #opiniones; no cambia estructura ni carrusel. */

/* Reflejo transversal detrás de las reseñas, consistente con Planes y Tu experiencia. */
#opiniones.vb140-reviews-section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: 0;
  pointer-events: none;
  background: linear-gradient(106deg,
    transparent 17%,
    rgba(238,192,114,0) 31%,
    rgba(243,204,135,.035) 39%,
    rgba(247,213,156,.115) 48%,
    rgba(220,174,96,.052) 55%,
    rgba(238,192,114,0) 67%,
    transparent 82%);
  transform: translate3d(110%,0,0);
  animation: vb143-section-reflection 17s ease-in-out infinite;
  will-change: transform;
}
@keyframes vb143-section-reflection {
  0%,9%   { transform:translate3d(110%,0,0); }
  84%,100% { transform:translate3d(-110%,0,0); }
}

/* La luz nunca cubre los controles ni el contenido. */
#opiniones .vb140-reviews-shell {
  position: relative;
  z-index: 1;
}

/* Un destello suave en cada tarjeta, repartido en el tiempo. */
#opiniones .vb140-review-card {
  --vb143-shine-offset: 0s;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: rgba(222,182,113,.19);
  animation: vb143-card-glow 14s ease-in-out infinite;
  animation-delay: var(--vb143-shine-offset);
}
#opiniones .vb140-review-card::before {
  content: "";
  position: absolute;
  top: -32%;
  bottom: -32%;
  left: -55%;
  width: 45%;
  z-index: 1;
  pointer-events: none;
  transform: skewX(-17deg) translate3d(-260%,0,0);
  background: linear-gradient(90deg,
    transparent,
    rgba(224,176,99,.025) 22%,
    rgba(248,216,153,.155) 50%,
    rgba(224,176,99,.025) 78%,
    transparent);
  animation: vb143-card-sweep 14s ease-in-out infinite;
  animation-delay: var(--vb143-shine-offset);
  will-change: transform;
}
#opiniones .vb140-review-card > * {
  position: relative;
  z-index: 2;
}

/* Las tarjetas no destellan a la vez. */
#opiniones .vb140-review-card:nth-child(5n + 1) { --vb143-shine-offset: -1s; }
#opiniones .vb140-review-card:nth-child(5n + 2) { --vb143-shine-offset: -3.8s; }
#opiniones .vb140-review-card:nth-child(5n + 3) { --vb143-shine-offset: -6.6s; }
#opiniones .vb140-review-card:nth-child(5n + 4) { --vb143-shine-offset: -9.4s; }
#opiniones .vb140-review-card:nth-child(5n)     { --vb143-shine-offset: -12.2s; }

@keyframes vb143-card-glow {
  0%,9%,31%,100% {
    border-color: rgba(222,182,113,.19);
    box-shadow: 0 18px 34px rgba(0,0,0,.16);
  }
  16%,21% {
    border-color: rgba(238,196,117,.53);
    box-shadow: 0 18px 36px rgba(0,0,0,.19),
                0 0 25px rgba(220,172,86,.12),
                inset 0 0 17px rgba(232,186,103,.055);
  }
}
@keyframes vb143-card-sweep {
  0%,8%   { transform:skewX(-17deg) translate3d(-260%,0,0); opacity:0; }
  12%     { opacity:.9; }
  27%     { transform:skewX(-17deg) translate3d(570%,0,0); opacity:.7; }
  31%,100%{ transform:skewX(-17deg) translate3d(570%,0,0); opacity:0; }
}

/* Respeta las preferencias de accesibilidad y el rendimiento en dispositivos móviles. */
@media (prefers-reduced-motion: reduce) {
  #opiniones.vb140-reviews-section::after,
  #opiniones .vb140-review-card,
  #opiniones .vb140-review-card::before {
    animation: none;
  }
  #opiniones.vb140-reviews-section::after,
  #opiniones .vb140-review-card::before {
    display: none;
  }
}
