.partner__section{background:var(--bg-surface)}.partner__grid{margin-top:var(--section-gap);display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:var(--block-gap)}.partner__card{display:flex;flex-direction:column;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);transition:transform .35s var(--ease),box-shadow .35s ease,border-color .35s ease}.partner__card:hover{transform:translateY(-4px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.partner__logo{display:grid;place-items:center;height:56px;margin-bottom:var(--space-5);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-subtle)}.partner__logo img{max-height:26px;max-width:100%;width:auto;-o-object-fit:contain;object-fit:contain;transition:filter .35s ease}[data-theme=dark] .partner__logo img{filter:brightness(0) invert(1) opacity(.72)}[data-theme=dark] .partner__card:hover .partner__logo img{filter:brightness(0) invert(1) opacity(1)}.partner__name{font-size:var(--fs-h4)}.partner__role{margin-top:var(--space-2);color:var(--text-body);font-size:var(--fs-sm);line-height:var(--lh-body)}.clients__section{--cl-line: color-mix(in srgb, var(--color-primary) 13%, transparent);--cl-glow-op: .45;--cl-grid: 46px;position:relative;isolation:isolate;overflow:hidden;background:var(--bg-subtle);padding-block:var(--section-y);border-block:1px solid var(--border)}.clients__section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background-image:linear-gradient(to right,var(--cl-line) 1px,transparent 1px),linear-gradient(to bottom,var(--cl-line) 1px,transparent 1px);background-size:var(--cl-grid) var(--cl-grid);background-position:-1px -1px;mask-image:radial-gradient(ellipse 82% 68% at 10% 6%,#000 0%,rgba(0,0,0,.5) 42%,transparent 76%);-webkit-mask-image:radial-gradient(ellipse 82% 68% at 10% 6%,#000 0%,rgba(0,0,0,.5) 42%,transparent 76%)}.clients__section:after{content:"";position:absolute;top:-22%;right:-12%;width:46vw;height:46vw;max-width:620px;max-height:620px;z-index:-1;pointer-events:none;border-radius:50%;opacity:var(--cl-glow-op);background:radial-gradient(circle,var(--glow-primary),transparent 68%)}[data-theme=dark] .clients__section{--cl-line: color-mix(in srgb, var(--color-primary) 24%, transparent);--cl-glow-op: .62;background-image:linear-gradient(180deg,color-mix(in srgb,var(--bg-inverse) 55%,transparent) 0%,transparent 34%,color-mix(in srgb,var(--bg-inverse) 42%,transparent) 100%)}[data-theme=dark] .clients__section:before{mask-image:radial-gradient(ellipse 74% 60% at 8% 4%,#000 0%,rgba(0,0,0,.45) 38%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse 74% 60% at 8% 4%,#000 0%,rgba(0,0,0,.45) 38%,transparent 72%)}.clients__grid{position:relative;margin-top:var(--space-7);display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--block-gap)}.clients__card{position:relative;overflow:hidden;min-width:0;aspect-ratio:1 / 1;display:grid;place-items:center;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);transition:transform .35s var(--ease),border-color .35s ease,box-shadow .35s ease}.clients__card:hover{transform:translateY(-4px);border-color:var(--color-primary-border);box-shadow:var(--shadow-md)}.clients__card.is-hidden{display:none}.clients__card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--color-primary) 16%,transparent) 0%,color-mix(in srgb,var(--color-primary) 5%,transparent) 40%,transparent 72%);transition:transform .5s var(--ease),opacity .4s ease}.clients__card:hover:before{transform:scale(1.14)}.clients__logo{position:relative;z-index:1;width:auto;max-width:68%;max-height:76px;-o-object-fit:contain;object-fit:contain;opacity:.78;transition:transform .45s var(--ease),opacity .35s ease}[data-theme=dark] .clients__logo{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb,var(--white) 92%,transparent);opacity:.92}.clients__reveal{position:absolute;z-index:2;inset:auto 0 0 0;min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-7) var(--space-4) var(--space-5);text-align:center;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg-surface) 72%,transparent) 42%,color-mix(in srgb,var(--bg-surface) 96%,transparent) 100%);transition:opacity .35s ease,transform .45s var(--ease)}@media(hover:hover){.clients__reveal{opacity:0;transform:translateY(14px)}.clients__card:hover .clients__reveal{opacity:1;transform:none}.clients__card:hover .clients__logo{transform:translateY(-16px) scale(.94);opacity:1}}@media(hover:none){.clients__logo{transform:translateY(-14px);opacity:1}}.clients__tag{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;line-height:var(--lh-none);white-space:nowrap}.clients__name{color:var(--text-title);font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--ls-normal);line-height:var(--lh-snug);max-width:22ch;text-wrap:balance;transform:translateY(6px);transition:transform .45s var(--ease) .06s}.clients__card:hover .clients__name{transform:none}@media(max-width:900px){.section-lead{max-width:none}}@media(max-width:640px){.partner__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.partner__card{padding:var(--space-5)}.partner__logo{height:48px;margin-bottom:var(--space-4)}.clients__section:before{background-size:34px 34px}.clients__section:after{opacity:.3}.clients__grid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:var(--space-3)}.clients__logo{max-width:74%;max-height:54px}.clients__name{font-size:var(--fs-sm)}.clients__reveal{min-height:76px;padding:var(--space-6) var(--space-3) var(--space-4)}}@media(prefers-reduced-motion:reduce){.clients__card:hover{transform:none}.clients__card:hover:before{transform:none}.clients__logo,.clients__name,.clients__reveal{transition:opacity .2s ease}.clients__name{transform:none}@media(hover:hover){.clients__card:hover .clients__logo,.clients__card:hover .clients__reveal{transform:none}}}
