/* A quiet, full-width proof chapter. Logo assets and brand colours stay intact. */
.client-proof{--logo-cell:152px;--logo-gap:32px;position:relative;padding-block:var(--space-3xl) var(--space-xl);margin-block:var(--space-lg) var(--space-3xl);background:var(--color-paper-2);overflow:hidden;overflow:clip}
.client-proof-heading{display:grid;gap:var(--space-lg);margin-bottom:var(--space-xl)}
.client-proof-heading h2{max-width:19ch}
.client-proof-heading p{color:var(--color-ink-2);max-width:34ch;align-self:end}
.client-proof-window{display:grid;gap:var(--space-sm)}
.client-logo-lane{min-width:0}
.client-logo-track{width:100%}
.client-logo-set{list-style:none;margin:0;padding:0 var(--page-gutter);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}
.client-logo{display:flex;align-items:center;justify-content:center;min-width:0;height:96px;background:var(--color-paper-2);isolation:isolate}
.client-logo img{display:block;object-fit:contain;width:100%;height:100%;max-width:112px;max-height:96px;filter:grayscale(1);mix-blend-mode:multiply}
.client-logo-modern img{max-width:96px;max-height:58px}
.client-logo-wide img{max-width:140px;max-height:46px}
@media(min-width:40rem){.client-proof{--logo-cell:176px;--logo-gap:56px}.client-logo-set{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-xl)}.client-logo{height:124px}}
@media(min-width:62rem){.client-proof{--logo-cell:184px;--logo-gap:64px;padding-top:var(--space-4xl);margin-bottom:var(--space-4xl)}.client-proof-heading{grid-template-columns:1fr 1fr;align-items:end;gap:var(--space-4xl);margin-bottom:var(--space-2xl)}.client-proof-heading p{max-width:31ch}.client-logo{height:132px}}
@media(prefers-reduced-motion:no-preference){
  .client-proof.is-moving .client-proof-window{mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}
  .client-proof.is-moving .client-logo-track{display:flex;width:max-content}
  .client-proof.is-moving .client-logo-set{display:flex;gap:var(--logo-gap);padding:0 var(--logo-gap) 0 0;flex:none;min-width:100vw;justify-content:space-around}
  .client-proof.is-moving .client-logo{width:var(--logo-cell);flex:none}
}
@media print{.client-proof{break-inside:avoid}.client-logo-track{transform:none!important}.client-proof.is-moving .client-logo-set{display:grid}.client-logo-lane{opacity:1!important}}
