/* Client logos sit below the trust eyebrow, above the reviews. */
#clients .sec-head{max-width:none;gap:0;margin-bottom:30px}
#clients .sec-head h2{max-width:760px;margin-top:24px}
#clients .trust{display:block}
#clients .testis,#clients .trust.nologos .testis{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}
#clients .testis.one,#clients .trust.nologos .testis.one{grid-template-columns:minmax(0,640px)}
#clients .testi{align-self:start}
#clients .logoband{position:relative;order:0;top:auto;width:100%;margin:15px 0 0;padding:18px 0;background:transparent;color:var(--ink);border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}
#clients .logoband{box-sizing:border-box;max-width:1200px;overflow:hidden}
#clients .lb-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#clients .lb-view,#clients .logoband.static .lb-view{width:100%;box-sizing:border-box;height:82px;max-height:none;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
#clients .lb-track,#clients .logoband.static .lb-track{display:flex;align-items:center;gap:0;width:max-content}
#clients .lb-track.run{animation:lbX var(--lb-d,24s) linear infinite}
#clients .logoband:hover .lb-track.run,#clients .logoband:focus-within .lb-track.run,#clients .logoband.logos-paused .lb-track.run{animation-play-state:paused}
#clients .lb-logo{flex:none;display:grid;place-items:center;width:180px;height:80px;margin:0 14px 0 0;padding:12px;background:#fff;border:1px solid #dce3f0;border-radius:12px;box-shadow:none}
#clients .lb-logo img{max-width:100%;max-height:58px;object-fit:contain}
#clients .lb-logo.demo{background:var(--surface-2);border:1px dashed var(--line)}
#clients .brand-tile{display:flex;align-items:center;gap:10px;color:var(--brand)}
#clients .fictional-mark{width:34px;height:34px;flex:none}
#clients .brand-wordmark{font:750 19px/1.1 var(--f-body);letter-spacing:-.04em}
#clients .brand-wordmark small{display:block;margin-top:3px;color:var(--muted);font:600 6px/1.4 var(--f-body);letter-spacing:.14em}
#clients .brand-presence{display:none}
@media(max-width:760px){#clients .testis,#clients .trust.nologos .testis{grid-template-columns:minmax(0,1fr)}#clients .lb-logo{width:150px;height:72px}#clients .lb-view,#clients .logoband.static .lb-view{height:74px}}
@media(prefers-reduced-motion:reduce){#clients .lb-track.run{animation:none}#clients .lb-logo[aria-hidden=true]{display:none}#clients .lb-view,#clients .logoband.static .lb-view{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}

/* Sophie’s welcome invitation, displayed after ten seconds on the page. */
.sophie-invite{position:fixed;z-index:42;top:calc(92px + env(safe-area-inset-top,0px));right:max(20px,env(safe-area-inset-right,0px));display:grid;grid-template-columns:44px minmax(0,1fr) 28px;align-items:start;gap:12px;width:min(370px,calc(100vw - 32px));padding:16px 14px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--surface) 94%,transparent);color:var(--ink);box-shadow:0 20px 60px rgba(2,8,25,.32),0 0 0 1px rgba(255,255,255,.035) inset;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;transform:translate3d(0,-12px,0) scale(.98);pointer-events:none;transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1)}
.sophie-invite.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);pointer-events:auto}
.sophie-invite__avatar{display:grid;place-items:center;width:44px;height:44px;overflow:hidden;border-radius:50%;background:var(--accent-soft);box-shadow:0 0 0 1px var(--line)}
.sophie-invite__avatar svg{width:100%;height:100%}
.sophie-invite__copy{min-width:0}
.sophie-invite__copy strong{display:block;margin:1px 0 4px;font-size:.91rem;line-height:1.25}
.sophie-invite__copy p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.5}
.sophie-invite__listen{display:inline-flex;align-items:center;gap:5px;margin-top:9px;margin-right:12px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--ink);font:650 .72rem var(--f-body);cursor:pointer}
.sophie-invite__listen:hover{border-color:var(--accent);color:var(--accent)}
.sophie-invite__open{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:0;border:0;background:none;color:var(--accent);font:700 .78rem var(--f-body);cursor:pointer}
.sophie-invite__open:hover{text-decoration:underline;text-underline-offset:3px}
.sophie-invite__close{display:grid;place-items:center;width:28px;height:28px;margin:-5px -5px 0 0;border:0;border-radius:50%;background:transparent;color:var(--muted);font:400 1.25rem/1 var(--f-body);cursor:pointer}
.sophie-invite__close:hover{background:var(--surface-2);color:var(--ink)}
.sophie-invite button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.voice-status:not(.sr-only){display:block;min-height:1.4em;margin:0;color:var(--muted);font-size:.78rem;line-height:1.4;text-align:center}
@media(max-width:520px){.sophie-invite{top:calc(76px + env(safe-area-inset-top,0px));right:max(12px,env(safe-area-inset-right,0px));grid-template-columns:38px minmax(0,1fr) 26px;gap:10px;padding:13px 11px;border-radius:15px}.sophie-invite__avatar{width:38px;height:38px}.sophie-invite__copy p{font-size:.76rem}}
@media(prefers-reduced-motion:reduce){.sophie-invite{transition:none}}
