/* Collaboration case-study cards; existing dialog content and behavior are retained. */
.fmp-partners { --partner-paper:var(--page-light); --partner-tile:var(--page-light); --partner-ink:#19151d; --partner-muted:#706675; --partner-line:#ddd5e1; --partner-purple:#785093; --partner-tint:#eee5f4; position:relative; left:50%; width:100vw; margin-left:-50vw; padding-block:64px; background:var(--partner-paper); color:var(--partner-ink); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; scroll-margin-top:100px; }
.fmp-partners-inner { width:calc(100% - 112px); max-width:1280px; margin-inline:auto; }
.fmp-road-trust-section { scroll-margin-top:120px; }
.fmp-road-trust-head { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:28px; }
.fmp-road-trust-head h2 { margin:12px 0; color:var(--partner-ink); font:400 clamp(30px,3vw,40px)/1.12 var(--serif); letter-spacing:-.7px; }
.fmp-road-trust-head p { margin:0; }
.fmp-road-trust-intro { color:var(--partner-muted); font-size:14px; line-height:1.7; }
.fmp-road-trust-link { display:inline-flex; align-items:center; gap:13px; flex-shrink:0; padding-block:8px; border-bottom:1px solid currentColor; color:var(--partner-purple); font-size:12px; line-height:1.5; text-decoration:none; }
.fmp-road-trust-link > span { font-size:20px; }
.fmp-road-trust-logos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; padding:0; list-style:none; }
.fmp-road-trust-logos li { min-width:0; }
.fmp-road-trust-logos li + li { border-left:1px solid var(--partner-line); }
.fmp-road-trust-brand { display:flex; flex-direction:column; align-items:center; gap:12px; padding:16px; color:var(--partner-ink); text-decoration:none; }
.fmp-road-trust-image { display:flex; align-items:center; justify-content:center; width:100%; height:102px; }
.fmp-road-trust-image img { display:block; width:auto; max-width:100%; height:auto; max-height:100%; object-fit:contain; filter:brightness(0); }
.fmp-road-trust-brand.is-mercedes img { width:112px; }
.fmp-road-trust-brand.is-canon img { width:156px; }
.fmp-road-trust-brand.is-riverside img { width:142px; }
.fmp-road-trust-name { color:var(--partner-muted); font-size:12px; line-height:1.5; text-align:center; }
.fmp-road-trust-brand:hover { background:var(--partner-tint); }
.fmp-road-trust-brand:focus-visible, .fmp-road-trust-link:focus-visible { outline:2px solid var(--partner-purple); outline-offset:4px; }
.fmp-partners-head p, .fmp-partners-head h2 { margin:0; }
.fmp-partners .fmp-partners-kicker { color:var(--partner-purple); text-transform:uppercase; letter-spacing:1.8px; font-size:11px; font-weight:500; line-height:1.6; }
.fmp-partners-head h2 { font:400 clamp(43px,4.2vw,62px)/1.08 var(--serif); letter-spacing:-1.4px; margin:18px 0; max-width:800px; color:var(--partner-ink); text-wrap:initial; }
.fmp-partners-head h2 em { color:var(--partner-purple); font-weight:400; }
.fmp-partners .fmp-partners-intro { color:var(--partner-muted); font-size:16px; line-height:1.75; max-width:620px; margin-bottom:32px; }
.fmp-partners-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.fmp-partner-card { border:1px solid var(--partner-line); padding:28px; text-align:left; border-radius:0; background:var(--partner-tile); color:var(--partner-ink); display:flex; flex-direction:column; min-width:0; width:100%; font:inherit; text-transform:none; letter-spacing:normal; box-shadow:none; cursor:pointer; transition:background .18s,border-color .18s; }
.fmp-partner-card:hover { background:var(--partner-tint); border-color:var(--partner-purple); }
.fmp-partner-card:focus-visible { outline:2px solid var(--partner-purple); outline-offset:4px; }
.fmp-partner-brand { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:55px; width:100%; margin-bottom:24px; }
.fmp-partner-brand img { display:block; width:auto; max-width:175px; height:46px; object-fit:contain; object-position:left center; filter:grayscale(1); mix-blend-mode:multiply; }
.fmp-partner-index { font-size:11px; color:var(--partner-muted); align-self:flex-start; }
.fmp-partner-kind { color:var(--partner-muted); font-size:12px; line-height:1.6; margin-bottom:8px; }
.fmp-partner-title { font:400 30px/1.18 var(--serif); letter-spacing:-.3px; margin-bottom:24px; }
.fmp-partner-action { display:flex; justify-content:space-between; align-items:center; gap:15px; width:100%; border-top:1px solid var(--partner-line); padding-top:15px; margin-top:auto; color:var(--partner-purple); font-size:13px; font-weight:500; line-height:1.5; }
.fmp-partner-action > span { display:inline-block; font-size:23px; line-height:1; transition:transform .18s; }
.fmp-partner-card:hover .fmp-partner-action > span { transform:translateX(4px); }
@media (max-width:1100px) { .fmp-partners-inner { width:calc(100% - 64px); } .fmp-partner-title { font-size:27px; } }
@media (max-width:620px) {
 .fmp-partners { padding-block:38px; }
 .fmp-partners-inner { width:calc(100% - 40px); }
 .fmp-road-trust-section { scroll-margin-top:95px; }
 .fmp-road-trust-head { flex-direction:column; align-items:flex-start; gap:14px; margin-bottom:20px; }
 .fmp-road-trust-intro { font-size:13px; }
 .fmp-road-trust-brand { padding:12px 8px; gap:10px; }
 .fmp-road-trust-image { height:74px; }
 .fmp-road-trust-brand.is-mercedes img { width:90px; }
 .fmp-road-trust-brand.is-canon img { width:96px; }
 .fmp-road-trust-brand.is-riverside img { width:98px; }
 .fmp-road-trust-name { font-size:10px; }
 .fmp-partners-grid { grid-template-columns:1fr; gap:14px; }
 .fmp-partners-head h2 { font-size:35px; letter-spacing:-1px; }
 .fmp-partners .fmp-partners-intro { font-size:14px; margin-bottom:27px; }
 .fmp-partner-card { padding:22px; }
 .fmp-partner-title { font-size:25px; }
}
@media (prefers-reduced-motion:reduce) { .fmp-partner-card, .fmp-partner-action > span { transition:none; } }
