/* Logo strip (BRAND.md 6.5). Color logo files made white with CSS, .7 opacity, 1 on hover.
   Base height 28px times --logo-scale (set per logo) so logos look equal in weight; artwork is never cropped.
   Max 8 logos from 768px; under 768px a static grid of 3 columns (2 under 400px), max 6. No motion. */
.ws-logo-strip{ display:grid; gap:var(--ws-space-3); }
.ws-logo-strip__list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--ws-space-4) var(--ws-space-6);
}
.ws-logo-strip__item{
  --logo-scale:1;
  display:flex;
  align-items:center;
  min-height:44px;
  opacity:.7;
  transition:opacity var(--ws-ease);
}
.ws-logo-strip__item:hover{ opacity:1; }
.ws-logo-strip__item:nth-child(n+9){ display:none; }
.ws-logo-strip__item img{
  width:auto;
  max-width:100%;
  height:calc(28px * var(--logo-scale));
  object-fit:contain;
  filter:brightness(0) invert(1);
}
:is(.ws-section--light,.ws-section--off-white) .ws-logo-strip__item img{ filter:brightness(0); }

@media (max-width:767.98px){
  .ws-logo-strip__list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--ws-space-3) var(--ws-space-2);
  }
  .ws-logo-strip__item{ justify-content:flex-start; }
  .ws-logo-strip__item:nth-child(n+7){ display:none; }
}
@media (max-width:399.98px){
  .ws-logo-strip__list{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion:reduce){
  .ws-logo-strip__item{ transition:none; }
}
