/**
 * Social-proof recipes: review_platform_badges / review_summary_bars / case_study_metrics /
 * wall_of_love / press_logo_ticker.
 * apb-rx-* tokens only; brand derives from --apb-rx-brand + scheme. Reduced-motion fallback inline.
 * Rendered by trait-apb-component-render-socialproof.php. No literals for brand/glow/tint.
 */

/* ---------- review platform badges ---------- */
.apb-rx-rpb{padding:clamp(40px,6vw,72px) 24px}
.apb-rx-rpb-inner{max-width:820px;margin:0 auto;text-align:center}
.apb-rx-rpb-lead{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--apb-rx-muted);margin:0 0 22px}
.apb-rx-rpb-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.apb-rx-rpb-card{flex:1 1 180px;max-width:220px;background:var(--apb-rx-surface,#fff);border:1px solid var(--apb-rx-line);border-radius:var(--apb-rx-radius,16px);padding:20px 18px;box-shadow:var(--apb-rx-shadow-1,0 1px 2px rgba(11,13,18,.06))}
.apb-rx-rpb-plat{font-size:12.5px;font-weight:700;letter-spacing:.03em;color:var(--apb-rx-muted);margin:0 0 12px;display:flex;align-items:center;justify-content:center;gap:7px}
.apb-rx-rpb-plat svg{color:var(--apb-rx-ink);flex:0 0 auto}
.apb-rx-rpb-score{font-family:var(--apb-rx-font-display,var(--apb-rx-font));font-size:32px;font-weight:800;letter-spacing:-.02em;color:var(--apb-rx-ink);line-height:1}
.apb-rx-rpb-stars{display:inline-flex;gap:1px;margin:8px 0 6px;color:var(--apb-rx-accent-text,var(--apb-rx-brand))}
.apb-rx-rpb-n{font-size:12px;color:var(--apb-rx-muted)}

/* ---------- review summary bars ---------- */
.apb-rx-rsb{padding:clamp(40px,6vw,72px) 24px}
.apb-rx-rsb-inner{max-width:720px;margin:0 auto;display:grid;grid-template-columns:0.8fr 1.2fr;gap:clamp(24px,4vw,48px);align-items:center;background:var(--apb-rx-surface,#fff);border:1px solid var(--apb-rx-line);border-radius:var(--apb-rx-radius,18px);padding:clamp(24px,3vw,34px);box-shadow:var(--apb-rx-shadow-1,0 1px 2px rgba(11,13,18,.06))}
.apb-rx-rsb-score{text-align:center;border-right:1px solid var(--apb-rx-line);padding-right:clamp(20px,3vw,40px)}
.apb-rx-rsb-num{font-family:var(--apb-rx-font-display,var(--apb-rx-font));font-size:56px;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--apb-rx-ink)}
.apb-rx-rsb-stars{display:inline-flex;gap:2px;margin:10px 0 6px;color:var(--apb-rx-accent-text,var(--apb-rx-brand))}
.apb-rx-rsb-count{font-size:13px;color:var(--apb-rx-muted)}
.apb-rx-rsb-row{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.apb-rx-rsb-row:last-child{margin-bottom:0}
.apb-rx-rsb-star{font-size:12.5px;font-weight:600;color:var(--apb-rx-muted);width:34px;display:inline-flex;align-items:center;gap:3px}
.apb-rx-rsb-track{flex:1;height:9px;border-radius:999px;background:var(--apb-rx-soft);overflow:hidden}
.apb-rx-rsb-fill{height:100%;border-radius:999px;background:var(--apb-rx-brand)}
.apb-rx-rsb-pct{font-size:12px;color:var(--apb-rx-muted);width:36px;text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:560px){.apb-rx-rsb-inner{grid-template-columns:1fr}.apb-rx-rsb-score{border-right:0;border-bottom:1px solid var(--apb-rx-line);padding-right:0;padding-bottom:20px}}

/* ---------- case study metrics ---------- */
.apb-rx-csm{padding:clamp(44px,7vw,80px) 24px}
.apb-rx-csm-inner{max-width:840px;margin:0 auto}
.apb-rx-csm-head{max-width:560px;margin:0 0 30px}
.apb-rx-csm-eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--apb-rx-accent-text,var(--apb-rx-brand));margin:0 0 12px}
.apb-rx-csm-quote{font-family:var(--apb-rx-font-display,var(--apb-rx-font));font-size:clamp(20px,3vw,27px);font-weight:700;letter-spacing:-.02em;line-height:1.3;color:var(--apb-rx-ink);margin:0 0 14px}
.apb-rx-csm-by{font-size:14px;color:var(--apb-rx-muted)}
.apb-rx-csm-by b{color:var(--apb-rx-ink);font-weight:650}
.apb-rx-csm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--apb-rx-line);border:1px solid var(--apb-rx-line);border-radius:var(--apb-rx-radius,16px);overflow:hidden}
.apb-rx-csm-cell{background:var(--apb-rx-surface,#fff);padding:26px 22px}
.apb-rx-csm-v{font-family:var(--apb-rx-font-display,var(--apb-rx-font));font-size:clamp(30px,5vw,44px);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--apb-rx-ink)}
.apb-rx-csm-cell.accent .apb-rx-csm-v{color:var(--apb-rx-accent-text,var(--apb-rx-brand))}
.apb-rx-csm-l{font-size:13.5px;color:var(--apb-rx-muted);margin-top:10px;line-height:1.5}
@media(max-width:640px){.apb-rx-csm-grid{grid-template-columns:1fr}}

/* ---------- wall of love ---------- */
.apb-rx-wol{padding:clamp(44px,7vw,80px) 24px}
.apb-rx-wol-inner{max-width:900px;margin:0 auto}
.apb-rx-wol-head{text-align:center;max-width:520px;margin:0 auto 30px}
.apb-rx-wol-head h3{font-size:clamp(22px,3.4vw,30px);font-weight:780;letter-spacing:-.02em;color:var(--apb-rx-ink);margin:0 0 8px}
.apb-rx-wol-head p{font-size:16px;color:var(--apb-rx-muted);margin:0}
.apb-rx-wol-grid{columns:3;column-gap:16px}
.apb-rx-wol-card{break-inside:avoid;margin-bottom:16px;background:var(--apb-rx-surface,#fff);border:1px solid var(--apb-rx-line);border-radius:var(--apb-rx-radius,16px);padding:20px;box-shadow:var(--apb-rx-shadow-1,0 1px 2px rgba(11,13,18,.06))}
.apb-rx-wol-q{font-size:14.5px;line-height:1.6;color:var(--apb-rx-ink);margin:0 0 14px}
.apb-rx-wol-q .mark{color:var(--apb-rx-accent-text,var(--apb-rx-brand));font-family:Georgia,serif;font-size:20px;font-weight:700;margin-right:2px;line-height:0}
.apb-rx-wol-by{display:flex;align-items:center;gap:10px}
.apb-rx-wol-av{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--apb-rx-soft);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--apb-rx-muted)}
.apb-rx-wol-name{font-size:13px;font-weight:650;color:var(--apb-rx-ink)}
.apb-rx-wol-role{font-size:12px;color:var(--apb-rx-muted)}
@media(max-width:760px){.apb-rx-wol-grid{columns:2}}
@media(max-width:480px){.apb-rx-wol-grid{columns:1}}

/* ---------- press logo ticker ---------- */
.apb-rx-prs{padding:clamp(32px,5vw,56px) 0}
.apb-rx-prs-lead{text-align:center;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--apb-rx-muted);margin:0 0 22px}
.apb-rx-prs-mask{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.apb-rx-prs-track{display:flex;gap:clamp(36px,6vw,72px);width:max-content;animation:apb-rx-prs-scroll 32s linear infinite}
.apb-rx-prs-mask:hover .apb-rx-prs-track{animation-play-state:paused}
@keyframes apb-rx-prs-scroll{to{transform:translateX(-50%)}}
.apb-rx-prs-item{display:inline-flex;align-items:center;gap:10px;color:color-mix(in srgb,var(--apb-rx-ink) 46%,transparent);white-space:nowrap;font-weight:800;letter-spacing:-.02em;font-size:19px}
.apb-rx-prs-item svg{opacity:.7;flex:0 0 auto}
.apb-rx-prs-item--img img{height:22px;width:auto;filter:grayscale(1);opacity:.7}
@media(prefers-reduced-motion:reduce){.apb-rx-prs-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto;transform:none;row-gap:20px}.apb-rx-prs-mask:hover .apb-rx-prs-track{animation-play-state:paused}}
