/* =============================================================================
   PUPPY KING 305 — COMPONENTES
   Piezas reutilizables. Se carga despues de style.css.
   Fase 2: barra marquee de confianza.
   ========================================================================== */


/* -----------------------------------------------------------------------------
   BARRA MARQUEE DE CONFIANZA
   Uso:
     - Shortcode:  [pk_trust_bar]
     - En Elementor: widget "Shortcode" con [pk_trust_bar]
     - A mano:     <div class="pk-trust-bar"> ... </div>  (ver estructura abajo)

   Estructura que genera el shortcode:
     .pk-trust-bar
       .pk-trust-bar__viewport
         .pk-trust-bar__track
           .pk-trust-bar__group        (copia 1, la que lee el lector de pantalla)
           .pk-trust-bar__group        (copia 2, aria-hidden, solo para el bucle)

   El bucle es continuo porque el track mide 200% y se desplaza -50%: cuando la
   copia 1 sale, la copia 2 esta exactamente en su lugar.
-------------------------------------------------------------------------------- */

.pk-trust-bar {
  --pk-marquee-duration: 32s;   /* lo sobreescribe el atributo speed del shortcode */
  --pk-marquee-gap: 42px;

  position: relative;
  width: 100%;
  background-color: var(--pk-black);
  border-top: 1px solid var(--pk-border);
  border-bottom: 1px solid var(--pk-border);
  padding: 12px 0;
  overflow: hidden;
}

/* Degradados laterales: los items entran y salen sin cortarse en seco */
.pk-trust-bar::before,
.pk-trust-bar::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 60px;
  z-index: 2;
  pointer-events: none;
}

.pk-trust-bar::before {
  left: 0;
  background: linear-gradient(to right, var(--pk-black), rgba(var(--pk-black-rgb), 0));
}

.pk-trust-bar::after {
  right: 0;
  background: linear-gradient(to left, var(--pk-black), rgba(var(--pk-black-rgb), 0));
}

.pk-trust-bar__viewport {
  overflow: hidden;
}

.pk-trust-bar__track {
  display: flex;
  width: max-content;
  animation: pk-marquee var(--pk-marquee-duration) linear infinite;
}

/* Pausa al pasar el mouse o al enfocar con teclado: se puede leer con calma */
.pk-trust-bar:hover .pk-trust-bar__track,
.pk-trust-bar:focus-within .pk-trust-bar__track {
  animation-play-state: paused;
}

.pk-trust-bar__group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin: 0;
  padding: 0 calc(var(--pk-marquee-gap) / 2);
  list-style: none;
}

.pk-trust-bar__item {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  padding: 0 calc(var(--pk-marquee-gap) / 2);
  color: var(--pk-gold);
  font-family: var(--pk-font-display);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: var(--pk-tracking-label);
}

/* Separador entre items */
.pk-trust-bar__item::after {
  content: attr(data-sep);
  margin-left: calc(var(--pk-marquee-gap) / 2);
  color: var(--pk-gold-dark);
  font-size: 13px;
}

@keyframes pk-marquee {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-50%, 0, 0); }
}

/* --- Variantes ------------------------------------------------------------ */

/* Fondo dorado con texto negro (para romper el negro en una landing) */
.pk-trust-bar--gold {
  background: var(--pk-gold-gradient);
  border-color: transparent;
}

.pk-trust-bar--gold .pk-trust-bar__item {
  color: var(--pk-black);
}

.pk-trust-bar--gold .pk-trust-bar__item::after {
  color: rgba(var(--pk-black-rgb), 0.55);
}

.pk-trust-bar--gold::before {
  background: linear-gradient(to right, var(--pk-gold), rgba(212, 175, 55, 0));
}

.pk-trust-bar--gold::after {
  background: linear-gradient(to left, var(--pk-gold), rgba(212, 175, 55, 0));
}

/* Sentido inverso */
.pk-trust-bar--reverse .pk-trust-bar__track {
  animation-direction: reverse;
}

/* Barra estatica, sin movimiento (centrada, para el footer) */
.pk-trust-bar--static .pk-trust-bar__track {
  animation: none;
  width: 100%;
  justify-content: center;
  flex-wrap: wrap;
}

.pk-trust-bar--static .pk-trust-bar__group[aria-hidden="true"] {
  display: none;
}

.pk-trust-bar--static .pk-trust-bar__group {
  flex-wrap: wrap;
  justify-content: center;
}

/* --- Movil ---------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .pk-trust-bar {
    --pk-marquee-gap: 26px;
    padding: 10px 0;
  }

  .pk-trust-bar__item {
    font-size: 12px;
    letter-spacing: 0.1em;
  }

  .pk-trust-bar::before,
  .pk-trust-bar::after {
    width: 28px;
  }
}

/* --- Accesibilidad: respetar "reducir movimiento" -------------------------- */
/* Sin animacion, la barra se vuelve deslizable con el dedo y no pierde info. */
@media (prefers-reduced-motion: reduce) {
  .pk-trust-bar__viewport {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .pk-trust-bar__track {
    animation: none;
  }

  .pk-trust-bar__group[aria-hidden="true"] {
    display: none;
  }
}
