.fc-hover{
  transition: transform 180ms ease, box-shadow 180ms ease;
  will-change: transform;
}
.fc-hover:hover{
  transform: translateY(-2px);
}
.fc-hover:active{
  transform: translateY(0);
}

.fc-focus:focus-visible{
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 10px;
}

/* ===== Marquee infinito (2 filas, sentidos opuestos) — FULL CSS (con filtro) ===== */

.fc-marquee{
  overflow: hidden;
  width: 100%;
  position: relative;
  padding: 6px 12px;

  /* (Opcional) Fade en bordes */
  -webkit-mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
  mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
}

.fc-marquee__inner{
  display: flex !important;
  width: max-content !important;
  gap: 0 !important;
  will-change: transform;
  animation: fcMarqueeLeft 28s linear infinite;
}

.fc-marquee__track{
  flex: 0 0 auto !important;
  width: max-content !important;
  margin: 0 !important;
  padding: 0 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;

  gap: 18px !important;
}

.fc-marquee__track > .wp-block-group{
  width: max-content !important;
  flex: 0 0 auto !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
}

.fc-marquee__track .wp-block-image,
.fc-marquee__track figure,
.fc-marquee__track a{
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
}

.fc-marquee__track figcaption{
  display: none !important;
}

/* Logos: proporción intacta + filtro */
.fc-marquee__track img{
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  object-fit: contain !important;

  max-height: 40px !important; /* desktop */
  opacity: 0.85 !important;
  transition: filter 180ms ease, opacity 180ms ease !important;
}

.fc-marquee__track img:hover{
  filter: grayscale(0) !important;
  opacity: 1 !important;
}

@keyframes fcMarqueeLeft{
  from { transform: translateX(0); }
  to   { transform: translateX(-100%); }
}

.fc-marquee--reverse .fc-marquee__inner{
  animation-name: fcMarqueeRight;
  animation-duration: 32s;
}
@keyframes fcMarqueeRight{
  from { transform: translateX(-80%); }
  to   { transform: translateX(0); }
}

/* No pausar carril en hover */
.fc-marquee:hover .fc-marquee__inner{
  animation-play-state: running !important;
}

@media (max-width: 768px){
  .fc-marquee{ padding: 6px 10px; }

  .fc-marquee__track{ gap: 20px !important; }
  .fc-marquee__track > .wp-block-group{ gap: 20px !important; }

  .fc-marquee__track img{
    max-height: 25px !important;  /* mobile */
  }

  .fc-marquee__inner{ animation-duration: 34s; }
}

@media (prefers-reduced-motion: reduce){
  .fc-marquee__inner{
    animation: none !important;
    transform: none !important;
  }
}
