 .trust-cta {
   {#--ff: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;#}
    --container: 1400px;
    --gap: 28px;

    /* Ajusta colores a tu UI */
    --left-bg: #F6F9FC;
    --text: #0b1220;
    --muted: #1D3F79;
  }

  .trust-cta {
    font-family: var(--ff);
    color: var(--text);
    padding: 32px 16px;
  }

  .trust-cta__grid {
    {# max-width: var(--container);#}
    margin-left: auto;
    margin-right: auto;
    max-width: 100em;
    width: 100%;

    margin: 0 auto;
    display: grid;
    gap: var(--gap);
    align-items: center;
    grid-template-columns: 1fr;
  }

  /* 2 columnas en desktop */
  @media (min-width: 768px) {
    .trust-cta__grid {
      grid-template-columns: 1fr 2fr;
    }
  }

  /* Columna izquierda (tarjeta) */
  .trust-cta__left {
    background: var(--left-bg);
    border-radius: 18px;
    padding: 60px 70px;
  }

  .trust-cta__leftText {
    font-family: 'Montserrat';
    color:#360084;
    margin: 0;
    font-weight: 500;
    font-size: 25px;      /* desktop */
    line-height: 1.19;    /* 119% */
    letter-spacing: 0.1px;
  }

  @media (max-width: 767px) {
    .trust-cta__leftText {
      font-size: 23px;    /* mobile */
    }
  }

  /* Columna derecha */
  .trust-cta__right {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
  }

  .trust-cta__headline {
    font-family: 'Montserrat';
    text-align:center;
    margin: 0;
    font-weight: 400;
    font-size: 30px;
    line-height: 1; /* 100% */
    color: var(--muted);
  }

  .trust-cta__cta {
    font-family: 'Montserrat';
    text-align:center;
    color: var(--muted);
    margin: 0;
    font-weight: 500;
    font-size: 35px; /* desktop */
    line-height: 1;  /* 100% */
  }

  @media (max-width: 767px) {
    .trust-cta__cta {
      font-size: 30px; /* mobile */
    }
  }

  /* ===== Marquee ===== */
  .logo-marquee {
    width: 100%;
     max-width: 100%;
  min-width: 0;
  }

  .logo-marquee__viewport {
    overflow: hidden;
    width: 100%;
    /* un poco de aire arriba/abajo como en el diseño */
    padding: 6px 0;
    max-width: 100%;
  overflow: hidden;
  }

 .logo-marquee__track{
   --gap: 24px;
  --duration: 6s;
  --shift: 0px;        /* JS: ancho exacto del set A */
  --itemW: 300px;      /* default desktop */
  --itemH: 100px;

  display: flex;
  width: max-content;
  will-change: transform;
  transform: translate3d(0,0,0);
  animation: marqueePx var(--duration) linear infinite;
}

.logo-marquee__group{
  display: flex;
  align-items: center;
  gap: var(--gap);
}

  /* “Mostrándose de a 2 en desktop”:
     cada item ocupa ~la mitad del viewport (menos el gap).
     En mobile, ocupa todo el ancho (1 a la vez). */
 .logo-marquee__item{
  flex: 0 0 auto;
  width: var(--itemW);
  height: var(--itemH);
  display: grid;
  place-items: center;
}


.logo-marquee__item img{
   width: 100%;
  height: 100%;
  object-fit: contain; /* respeta el ratio, no recorta */
  display: block;
}

  @media (max-width: 767px) {
    .logo-marquee__track{
    --gap: 16px;
    --duration: 14s;
  }
  .logo-marquee__item{
    width: calc(100vw - 32px); /* 1 visible */
  }
  .logo-marquee__item img{
    max-height: 32px;
  }
  }

@keyframes marqueePx{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(calc(-1 * var(--shift)),0,0); }
}
.logo-marquee__track:hover,
.logo-marquee__track:focus-within{
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce){
  .logo-marquee__track{ animation: none; }
}

  @keyframes marquee {
    0% {
      transform: translateX(0);
    }
    100% {
      /* Como duplicamos el set, movemos aprox la mitad del track */
      transform: translateX(-50%);
    }
  }

  /* Respeta usuarios con “reduced motion” */
  @media (prefers-reduced-motion: reduce) {
    .logo-marquee__track {
      animation: none;
    }
  }