/* Client identities use their original artwork, shared with the rest of the site. */
.client-logo-frame{position:relative;display:block;flex:none;width:var(--mark-width,168px);max-width:100%;aspect-ratio:var(--mark-ratio,3);overflow:hidden;background:#fff}
.client-logo-frame img{position:absolute!important;display:block!important;width:var(--art-width,100%)!important;max-width:none!important;height:auto!important;max-height:none!important;left:var(--art-left,0);top:var(--art-top,0);object-fit:initial!important;filter:none!important}
.s1-home .s1-client-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--s1-line);border-radius:8px;overflow:hidden;background:white}
.s1-home .s1-client-grid a{display:flex;justify-content:center;align-items:center;min-height:125px;padding:23px 20px;min-width:0;border-right:1px solid var(--s1-line)}
.s1-home .s1-client-grid a:nth-child(4n){border-right:0}
.s1-home .s1-client-grid a:nth-child(-n+4){border-bottom:1px solid var(--s1-line)}
.s1-home .s1-client-grid a:hover{background:#f8fbfd}
.s1-home .s1-client-grid a:focus-visible{outline:3px solid var(--color-focus);outline-offset:-4px}
.s1-home .s1-client-grid a .client-logo-frame{max-width:100%}
.s1-home .s1-proof-more{display:flex;justify-content:flex-end;margin-top:1.3rem}
.s1-home .s1-proof .s1-intro>p{max-width:540px}
.clients-page{background:#fff;color:var(--color-ink)}
.clients-hero{padding-block:clamp(3.6rem,6vw,6rem);background:var(--color-navy-950);color:white;position:relative}
.clients-hero__layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:6vw;align-items:center}
.clients-kicker{font-size:.76rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin:0 0 1.25rem;color:var(--color-brand-teal)}
.clients-hero .clients-kicker{color:#8bd8df}
.clients-hero h1{color:white;font-size:clamp(2.7rem,5.1vw,4.6rem);line-height:1.06;letter-spacing:-.035em;margin:0 0 1.5rem}
.clients-hero__lead{font-size:clamp(1.14rem,1.65vw,1.4rem);line-height:1.6;max-width:700px;color:#e2edf3;margin:0 0 1.1rem}
.clients-hero__copy{color:#c1d3de;max-width:670px;margin:0;font-size:.97rem;line-height:1.7}
.clients-hero__aside{border-top:2px solid #79c8d3;padding-top:1.5rem}
.clients-hero__aside h2{color:white;font-size:1.3rem;line-height:1.4;margin:0 0 1.25rem}
.clients-hero__aside a{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:white;text-decoration:none;border-bottom:1px solid #476071;padding:.85rem 0;font-size:.95rem;font-weight:600}
.clients-hero__aside a:hover{color:#9ce0ed}
.clients-directory{padding-block:clamp(3.2rem,5vw,5rem);scroll-margin-top:120px}
.clients-directory__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.65rem}
.clients-directory__intro h2{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.2;margin:0 0 .8rem;color:var(--color-navy-950)}
.clients-directory__intro p{max-width:650px;margin:0;color:var(--color-muted);font-size:.98rem;line-height:1.65}
.clients-search{min-width:260px;max-width:340px;flex:1}
.clients-search label{display:block;font-size:.8rem;font-weight:700;margin-bottom:.45rem;color:var(--color-navy-950)}
.clients-search input{width:100%;font:inherit;font-size:.94rem;min-height:48px;border:1px solid var(--color-border-strong);border-radius:5px;padding:.7rem .85rem;background:white;color:var(--color-ink)}
.clients-search input:focus{outline:2px solid var(--color-focus);outline-offset:2px}
.clients-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.7rem 0 1.1rem;padding-bottom:1.6rem;border-bottom:1px solid var(--color-border)}
.clients-filter{font:inherit;font-size:.86rem;font-weight:600;border:1px solid var(--color-border);border-radius:5px;background:white;color:var(--color-navy-950);padding:.7rem .9rem;cursor:pointer;min-height:44px}
.clients-filter span{font-size:.76rem;font-weight:500;opacity:.75;margin-left:.4rem}
.clients-filter:hover{border-color:var(--color-brand-teal);background:var(--color-surface-teal)}
.clients-filter[aria-pressed=true]{color:white;background:var(--color-navy-950);border-color:var(--color-navy-950)}
.clients-filter:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}
.clients-results{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;margin-bottom:1.25rem;min-height:28px}
.clients-results p{margin:0;font-size:.85rem;color:var(--color-muted)}
.clients-results a{font-size:.84rem;font-weight:600;color:var(--color-brand-blue-800);text-decoration:none}
.clients-results a:hover{text-decoration:underline}
.clients-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.client-card{min-width:0;display:flex;flex-direction:column;background:white;border:1px solid var(--color-border);border-radius:7px;overflow:hidden;scroll-margin-top:135px;transition:border-color .18s,box-shadow .18s}
.client-card[hidden]{display:none!important}
.client-card:has(a):hover{border-color:#a7c4d6;box-shadow:0 6px 20px rgba(13,42,62,.07)}
.client-card__identity{display:flex;align-items:center;justify-content:center;height:134px;padding:24px 20px;background:white;text-decoration:none}
.client-card__identity:focus-visible{outline:3px solid var(--color-focus);outline-offset:-4px}
.client-card__copy{padding:0 1.15rem 1.1rem;display:flex;flex-direction:column;flex:1;gap:.35rem}
.client-card h3{margin:0;color:var(--color-navy-950);font-size:.96rem;line-height:1.4;letter-spacing:0}
.client-card__context{margin:0;color:var(--color-muted);font-size:.73rem;line-height:1.5}
.client-card__context--product{color:#0c6c72}
.client-card__link{margin-top:.65rem;font-size:.78rem;font-weight:700;color:var(--color-brand-blue-800);text-decoration:none;display:inline-flex;align-items:center;gap:.6rem;align-self:flex-start}
.client-card__link:hover{text-decoration:underline}
.client-card__link:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}
.clients-empty{padding:2.5rem 1.5rem;text-align:center;background:var(--color-surface-soft);border-radius:6px}
.clients-empty[hidden]{display:none}
.clients-empty p{margin:0 0 1rem}
.clients-empty button{font:inherit;color:var(--color-brand-blue-800);font-weight:600;text-decoration:underline;border:0;background:transparent;cursor:pointer;padding:.5rem}
.clients-source-note{font-size:.83rem;line-height:1.7;color:var(--color-muted);margin:1.8rem 0 0;max-width:960px}
.clients-next{background:var(--color-surface-soft);padding-block:clamp(3rem,5vw,5rem)}
.clients-next__intro{margin-bottom:2rem;max-width:740px}
.clients-next__intro h2{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.2;color:var(--color-navy-950);margin:0 0 1rem}
.clients-next__intro p{margin:0;color:var(--color-muted);line-height:1.7}
.clients-next__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.clients-next__card{display:flex;flex-direction:column;align-items:flex-start;padding:1.7rem;background:white;border:1px solid var(--color-border);border-radius:7px}
.clients-next__card h3{font-size:1.18rem;margin:0 0 .8rem;color:var(--color-navy-950)}
.clients-next__card p{font-size:.93rem;line-height:1.65;color:var(--color-muted);margin:0 0 1.5rem;flex:1}
.clients-next__card a{font-size:.9rem;font-weight:700;color:var(--color-brand-blue-800);text-decoration:none}
.clients-next__card a:hover{text-decoration:underline}
.clients-contact{padding-block:3.5rem}
.clients-contact__layout{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.clients-contact h2{font-size:clamp(1.8rem,2.8vw,2.4rem);color:var(--color-navy-950);margin:0 0 .6rem}
.clients-contact p{margin:0;color:var(--color-muted);max-width:650px}
.no-js .clients-filters,.no-js .clients-search,.no-js .clients-empty{display:none}
.no-js .client-card[hidden]{display:flex!important}
@media(max-width:1100px){.clients-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.clients-hero__layout{grid-template-columns:minmax(0,1fr) 270px;gap:3rem}}
@media(max-width:800px){.clients-hero__layout{grid-template-columns:1fr;gap:2.5rem}.clients-hero__aside{max-width:440px}.clients-directory__intro{display:block}.clients-search{max-width:100%;margin-top:1.5rem}.clients-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.clients-next__grid{grid-template-columns:1fr}.clients-contact__layout{display:block}.clients-contact .btn{margin-top:1.5rem}.clients-results{align-items:flex-start}.clients-results a{max-width:170px;text-align:right}}
@media(max-width:560px){.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.client-card__identity{height:120px;padding:22px 14px}.client-card__copy{padding:0 .85rem 1rem}.client-card h3{font-size:.9rem}.client-card__context{font-size:.71rem}.clients-filter{font-size:.82rem;padding:.6rem .72rem}.clients-filter span{margin-left:.2rem}.clients-hero{padding-block:3.4rem}.clients-hero h1{font-size:2.8rem}.s1-home .s1-proof-more{justify-content:flex-start}.s1-home .s1-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s1-home .s1-client-grid a{min-height:105px;padding:20px 14px;border-bottom:1px solid var(--s1-line)}.s1-home .s1-client-grid a:nth-child(2n){border-right:0}.s1-home .s1-client-grid a:nth-last-child(-n+2){border-bottom:0}.clients-directory__intro h2{font-size:1.9rem}}
@media(prefers-reduced-motion:reduce){.client-card{transition:none}}

/* White artwork supplied for Vua Bia remains unchanged on a dark tile. */
.client-card__identity--dark{background:var(--color-navy-950)}
.client-card__identity--dark .client-logo-frame{background:transparent}

/* Inherit the approved whole-site heading scale. */
.clients-hero h1{font-size:var(--text-h1)}
.clients-page h2{font-size:var(--text-h2)}
.clients-page h3{font-size:var(--text-h3)}
.clients-hero{padding-block:clamp(3rem,5vw,4rem)}
.clients-directory__intro .clients-kicker,.clients-next__intro .clients-kicker{font-size:.76rem;color:var(--color-brand-teal);margin:0 0 1.25rem}
