@keyframes psw-clients-left { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
@keyframes psw-clients-right { from { transform: translate3d(-50%,0,0); } to { transform: translate3d(0,0,0); } }
.psw-clients-section {
  --psw-clients-bg: #f7f5f2;
  --psw-clients-text: #242424;
  --psw-clients-accent: #f0c011;
  --psw-clients-focus: #f0c011;
  --psw-clients-container: 1600px;
  --psw-clients-card-width: 286px;
  --psw-clients-card-height: 126px;
  --psw-clients-logo-size: 72%;
  --psw-clients-gap: 18px;
  --psw-clients-hover-lift: 4px;
  --psw-clients-speed-one: 36s;
  --psw-clients-speed-two: 42s;
  position: relative;
  isolation: isolate;
  width: 100vw;
  max-width: none;
  margin-inline: calc(50% - 50vw);
  overflow: hidden;
  background: var(--psw-clients-bg);
  color: var(--psw-clients-text);
}
.psw-clients-section,
.psw-clients-section *,
.psw-clients-section *::before,
.psw-clients-section *::after { box-sizing: border-box; }
.psw-clients-inner { width: 100%; max-width: var(--psw-clients-container); margin-inline: auto; padding: clamp(54px, 7vw, 112px) 0; }
.psw-clients-header { display: grid; grid-template-columns: 1.3fr .8fr; align-items: end; gap: clamp(32px, 7vw, 120px); margin: 0 clamp(20px, 4vw, 68px) clamp(36px, 5vw, 70px); }
.psw-clients-eyebrow,
.psw-clients-title,
.psw-clients-description { margin: 0; }
.psw-clients-eyebrow { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; font-family: var(--psw-font-body); font-size: 11px; font-weight: 750; text-transform: uppercase; }
.psw-clients-eyebrow::before { content: ""; width: 44px; height: 3px; background: var(--psw-clients-accent); }
.psw-clients-title { max-width: 950px; font-family: var(--psw-font-heading); font-size: clamp(34px, 3.2vw, 56px); font-weight: 350; line-height: 1.08; }
.psw-clients-highlight { font-weight: 780; }
.psw-clients-title::after { content: "."; color: var(--psw-clients-accent); }
.psw-clients-description { max-width: 52ch; font-family: var(--psw-font-body); font-size: clamp(14px, 1.05vw, 18px); line-height: 1.62; }
.psw-clients-marquees { display: flex; flex-direction: column; gap: clamp(14px, 1.5vw, 24px); }
.psw-clients-row { width: 100%; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior-inline: contain; touch-action: pan-x pan-y; }
.psw-clients-row::-webkit-scrollbar { display: none; }
.psw-clients-row:focus-visible { outline: 2px solid var(--psw-clients-focus); outline-offset: 4px; }
.psw-clients-track { display: flex; width: max-content; will-change: transform; }
.psw-clients-group { display: flex; flex: 0 0 auto; align-items: center; gap: var(--psw-clients-gap); padding-right: var(--psw-clients-gap); }
.psw-clients-section[data-autoplay="yes"] .psw-clients-row-left .psw-clients-track { animation: psw-clients-left var(--psw-clients-speed-one) linear infinite; }
.psw-clients-section[data-autoplay="yes"] .psw-clients-row-right .psw-clients-track { animation: psw-clients-right var(--psw-clients-speed-two) linear infinite; }
.psw-clients-section[data-autoplay="yes"] .psw-clients-row:hover .psw-clients-track,
.psw-clients-section[data-autoplay="yes"] .psw-clients-row:focus-within .psw-clients-track,
.psw-clients-section[data-autoplay="yes"] .psw-clients-row.is-paused .psw-clients-track { animation-play-state: paused; }
.psw-clients-card { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 var(--psw-clients-card-width); width: var(--psw-clients-card-width); height: var(--psw-clients-card-height);  overflow: hidden; border: 1px solid rgba(36,36,36,.075); border-radius: 8px; background: #fff; color: inherit; box-shadow: 0 8px 28px rgba(36,36,36,.045); text-decoration: none; transform: translateY(0); transition: transform 400ms cubic-bezier(.2,.7,.2,1), box-shadow 400ms ease; }
.psw-clients-card:hover,
.psw-clients-card:focus-visible { color: inherit; text-decoration: none; transform: translateY(calc(-1 * var(--psw-clients-hover-lift))); box-shadow: 0 15px 34px rgba(36,36,36,.1); }
.psw-clients-card:focus-visible { outline: 3px solid var(--psw-clients-focus); outline-offset: -3px; }
.psw-clients-logo { display: block; width: auto; height: auto; max-width: var(--psw-clients-logo-size); max-height: var(--psw-clients-logo-size); object-fit: contain; filter: grayscale(1); }
.psw-clients-name { font-family: var(--psw-font-body); font-size: 17px; font-weight: 700; text-align: center; }
.psw-clients-empty { margin: 0 clamp(20px, 4vw, 68px); padding: 24px; border: 1px dashed rgba(36,36,36,.25); font-family: var(--psw-font-body); font-size: 14px; text-align: center; }
.psw-clients-section.psw-clients-motion-ready:not(.is-visible) .psw-clients-header,
.psw-clients-section.psw-clients-motion-ready:not(.is-visible) .psw-clients-row { opacity: 0; transform: translateY(22px); }
.psw-clients-section.psw-clients-motion-ready .psw-clients-header,
.psw-clients-section.psw-clients-motion-ready .psw-clients-row { transition: opacity var(--psw-clients-duration, 600ms) ease, transform var(--psw-clients-duration, 600ms) cubic-bezier(.2,.7,.2,1); }
.psw-clients-section.psw-clients-motion-ready .psw-clients-row:nth-child(2) { transition-delay: 100ms; }
@media (max-width: 767px) {
  .psw-clients-header { grid-template-columns: 1fr; align-items: start; gap: 22px; }
  .psw-clients-title { font-size: clamp(31px, 10vw, 44px); }
  .psw-clients-card { flex-basis: min(var(--psw-clients-card-width), 72vw); width: min(var(--psw-clients-card-width), 72vw); }
}
@media (prefers-reduced-motion: reduce) {
  .psw-clients-section *, .psw-clients-section *::before, .psw-clients-section *::after { animation: none !important; transition: none !important; }
  .psw-clients-header, .psw-clients-row, .psw-clients-card { opacity: 1 !important; transform: none !important; }
  .psw-clients-track { transform: none !important; }
}
