/* Trust strip; sizes and colors come from the --trust-* variables set by the component.
   The items sit in the list through a "display: contents" wrapper (.trust-strip__items),
   so each item's own container is a child of the list's layout. */
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip {
  padding: var(--trust-pad-top, var(--space-sm)) 0 var(--trust-pad-bottom, var(--space-sm));
  background: var(--trust-bg, var(--color-surface-alt));
  color: var(--trust-text, var(--color-text-primary));
  font-family: var(--font-body);
  overflow-x: clip;
}

.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--line-top { border-top: 1px solid var(--color-border); }
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--line-bottom { border-bottom: 1px solid var(--color-border); }

.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__inner {
  box-sizing: border-box;
  max-width: calc(var(--trust-max, 1280px) + var(--container-pad, var(--space-sm)) * 2);
  margin: 0 auto;
  padding: 0 var(--container-pad, var(--space-sm));
}

.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__list {
  display: flex;
  align-items: stretch;
}

.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__items { display: contents; }

/* The repeat of the running strip exists below 1024px only (see "marquee") */
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__repeat { display: none; }

/* An item fills its container, so every divider is as tall as the row.
   The container an item is drawn in may be a box of its own or "display: contents" (then the item
   itself is the list's child): every size below is given to both, so either way it holds. */
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__items > * {
  box-sizing: border-box;
  display: flex;
  min-width: 0;
}

.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__items > * > *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip .trust-item {
  flex: 1 1 auto;
  min-width: 0;
}

@media not all and (min-width: 1024px) {
  /* Mobile: a strip that scrolls sideways … */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll .trust-strip__list {
    overflow-x: auto;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll .trust-strip__list::-webkit-scrollbar { display: none; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll .trust-strip__items > *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll .trust-item {
    flex: 0 0 min(260px, 72vw);
    scroll-snap-align: start;
  }

  /* Icon on top: items of one width. Up to four share the row when it holds them (80px each at
     least); five or more, or a narrow screen, scroll in wider steps. */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-strip__items > *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-item { flex: 1 0 80px; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-strip__items > :nth-last-child(n + 5), .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-strip__items > :nth-last-child(n + 5) ~ *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-strip__items > :nth-last-child(n + 5) .trust-item, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-strip__items > :nth-last-child(n + 5) ~ * .trust-item { flex-basis: min(168px, 44vw); }

  /* … with its ends fading out where more is waiting (the component clears a side that has nothing
     more: --trust-fade-start / -end; the fade is as wide as the page's side padding) … */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--fade .trust-strip__list {
    -webkit-mask-image: linear-gradient(to right, transparent, #000 var(--trust-fade-start, var(--space-sm)), #000 calc(100% - var(--trust-fade-end, var(--space-sm))), transparent);
    mask-image: linear-gradient(to right, transparent, #000 var(--trust-fade-start, var(--space-sm)), #000 calc(100% - var(--trust-fade-end, var(--space-sm))), transparent);
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__inner {
    -webkit-mask-image: linear-gradient(to right, transparent, #000 var(--space-sm), #000 calc(100% - var(--space-sm)), transparent);
    mask-image: linear-gradient(to right, transparent, #000 var(--space-sm), #000 calc(100% - var(--space-sm)), transparent);
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--fade .trust-strip__list { scroll-snap-type: x mandatory; }

  /* … or two columns … */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--grid .trust-strip__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-xs) 0;
  }

  /* … or a strip that runs by itself: the items twice in a row, moved by one set's width */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__inner { overflow: hidden; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__list {
    width: max-content;
    animation: cc_JsHSjQyQmG_HBI1VBwn8q_trust-strip-run var(--trust-marquee, 30s) linear infinite;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__list:hover, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__list:focus-within { animation-play-state: paused; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__repeat { display: contents; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__items > *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-item {
    flex: 0 0 auto;
    max-width: 72vw;
  }

  /* Item variants */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--top-m .trust-item {
    flex-direction: column;
    justify-content: center;
    padding: var(--space-sm) var(--space-xs);
    text-align: center;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--top-m .trust-item__copy { align-items: center; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--notext-m .trust-item__text { display: none; }

  /* In the scrolling strip a narrow item keeps more room for its words, and its texts two lines */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-item {
    justify-content: flex-start;
    padding-right: var(--space-2xs);
    padding-left: var(--space-2xs);
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-item__copy { max-width: 100%; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-item__title, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--scroll.trust-strip--top-m .trust-item__text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}

@media (min-width: 1024px) {
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip {
    padding-top: var(--trust-pad-top-d, var(--space-md));
    padding-bottom: var(--trust-pad-bottom-d, var(--space-md));
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__list { justify-content: center; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip__items > *, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip .trust-item { flex: 1 1 0; }

  /* Rows of 3, 4 or 5 */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-3 .trust-strip__list, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-4 .trust-strip__list, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-5 .trust-strip__list {
    display: grid;
    gap: var(--space-sm) 0;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-3 .trust-strip__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-4 .trust-strip__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-5 .trust-strip__list { grid-template-columns: repeat(5, minmax(0, 1fr)); }

  /* Item variants */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--center-d .trust-item { justify-content: center; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--top-d .trust-item {
    flex-direction: column;
    justify-content: center;
    gap: var(--space-xs);
    padding: var(--space-xs) var(--space-sm);
    text-align: center;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--top-d .trust-item__copy { align-items: center; }
}

/* Dividers between neighbours (none before the first item of a row): drawn on the item, chosen by
   its container's place in the list */
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--dividers .trust-strip__items > * .trust-item { box-shadow: inset 1px 0 0 var(--color-border); }
.cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--dividers .trust-strip__items > :first-child .trust-item { box-shadow: none; }

@media not all and (min-width: 1024px) {
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--grid.trust-strip--dividers .trust-strip__items > :nth-child(odd) .trust-item { box-shadow: none; }
  /* The running strip has no first item: every item keeps its divider */
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee.trust-strip--dividers .trust-strip__items > :first-child .trust-item { box-shadow: inset 1px 0 0 var(--color-border); }
}

@media (min-width: 1024px) {
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-3.trust-strip--dividers .trust-strip__items > :nth-child(3n + 1) .trust-item, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-4.trust-strip--dividers .trust-strip__items > :nth-child(4n + 1) .trust-item, .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--cols-5.trust-strip--dividers .trust-strip__items > :nth-child(5n + 1) .trust-item { box-shadow: none; }
}

@keyframes cc_JsHSjQyQmG_HBI1VBwn8q_trust-strip-run {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* Reduced motion: the running strip stands still and is scrolled by hand */
@media (prefers-reduced-motion: reduce) and (max-width: 1023.98px) {
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__list {
    width: auto;
    overflow-x: auto;
    animation: none;
    scrollbar-width: none;
  }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__list::-webkit-scrollbar { display: none; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee .trust-strip__repeat { display: none; }
  .cc_JsHSjQyQmG_HBI1VBwn8q .trust-strip--marquee.trust-strip--dividers .trust-strip__items > :first-child .trust-item { box-shadow: none; }
}
