/* fig_adviser_cta — coloured bg, image card left, copy right, logo strip below */
.fig-adviser-cta{background:var(--fig-color-navy,#102C58);overflow:hidden;padding:var(--fig-section-md,88px) 0 88px}
.fig-adviser-cta--gradient{background:var(--fig-gradient-hero,linear-gradient(to right,#021A3E,#0075C0))}
.fig-adviser-cta--light_blue{background:var(--fig-color-light-blue-bg,#EAF5F9)}
.fig-adviser-cta--white{background:#fff}

/* Light bg text overrides */
.fig-adviser-cta--light_blue .fig-adviser-cta__eyebrow,.fig-adviser-cta--white .fig-adviser-cta__eyebrow{color:var(--fig-color-action,#0075C0)}
.fig-adviser-cta--light_blue .fig-adviser-cta__heading,.fig-adviser-cta--white .fig-adviser-cta__heading{color:var(--fig-color-navy,#102C58)}
.fig-adviser-cta--light_blue .fig-adviser-cta__body,.fig-adviser-cta--white .fig-adviser-cta__body{color:var(--fig-color-ink,#314257)}
.fig-adviser-cta--light_blue .fig-adviser-cta__logos-label,.fig-adviser-cta--white .fig-adviser-cta__logos-label{color:rgba(0,0,0,.4)}

/* Content grid — fig-container handles max-width + 32px side padding */
.fig-adviser-cta__inner{display:grid;grid-template-columns:500px 1fr;gap:72px;align-items:center}

/* Image card */
.fig-adviser-cta__art img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center top;border-radius:16px;display:block}

/* Copy column — overflow:visible lets logos bleed left into image and right to screen edge */
.fig-adviser-cta__copy{display:flex;flex-direction:column;min-width:0;overflow:visible}
.fig-adviser-cta__eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85);margin:0 0 16px}
.fig-adviser-cta__heading{font-size:clamp(26px,2.8vw,42px);font-weight:700;color:#fff;line-height:1.12;margin:0 0 20px}
.fig-adviser-cta__body{font-size:16px;line-height:1.65;color:rgba(255,255,255,.8);margin:0 0 36px}
.fig-adviser-cta__btn{display:inline-flex;align-items:center;gap:9px;align-self:flex-start}

/* Logos label — sits in normal copy column flow above the bleed strip */
.fig-adviser-cta__logos-label{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:52px 0 12px}

/* Logo strip — bleeds left to image left edge and right to screen edge */
/* px stops on left: image is 500px wide so keep transparent until 480px, fade in by 560px */
.fig-adviser-cta__logos{margin-left:calc(-500px - 72px);width:100vw;overflow:hidden;padding:8px 0 0;-webkit-mask-image:linear-gradient(to right,transparent 0,transparent 570px,rgba(0,0,0,1) 670px,rgba(0,0,0,1) calc(100% - 100px),transparent 100%);mask-image:linear-gradient(to right,transparent 0,transparent 570px,rgba(0,0,0,1) 670px,rgba(0,0,0,1) calc(100% - 100px),transparent 100%)}
.fig-adviser-cta__logos-belt{display:flex;align-items:center;width:max-content;animation:adviser-logos-scroll 30s linear infinite}
.fig-adviser-cta__logo{height:32px;width:auto;max-width:140px;object-fit:contain;flex-shrink:0;opacity:.85;margin-right:48px}
.fig-adviser-cta--navy .fig-adviser-cta__logo,.fig-adviser-cta--gradient .fig-adviser-cta__logo{filter:brightness(0) invert(1);opacity:.7}
.fig-adviser-cta--light_blue .fig-adviser-cta__logo,.fig-adviser-cta--white .fig-adviser-cta__logo{opacity:.9}

/* Belt is TRIPLED in the markup (session 61) — keyframe must travel one
   third. It was -50% for a doubled belt; mismatching the two makes the
   reel jump at the wrap point. */
@keyframes adviser-logos-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-100%/3))}}
}

@media(max-width:960px){
  .fig-adviser-cta__inner{grid-template-columns:1fr 1fr;gap:48px}
  .fig-adviser-cta__logos{margin-left:calc(-50% - 48px);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,1) 20%,rgba(0,0,0,1) 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,1) 20%,rgba(0,0,0,1) 88%,transparent 100%)}
}
@media(max-width:767px){
  .fig-adviser-cta{padding:var(--fig-section-sm,64px) 0 0}
  .fig-adviser-cta__inner{grid-template-columns:1fr;gap:40px}
  .fig-adviser-cta__art img{max-width:300px;margin:0 auto;border-radius:12px}
  .fig-adviser-cta__logos{margin-left:-32px;width:100vw;padding:32px 0 64px;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,1) 8%,rgba(0,0,0,1) 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,1) 8%,rgba(0,0,0,1) 92%,transparent 100%)}
  .fig-adviser-cta__logos-label{margin-top:28px}
}

/* Pale blue/grey — light bg, dark text + full-colour logos (mirrors light_blue/white) */
.fig-adviser-cta--pale{background:var(--fig-color-pale-bg,#F3F7FB)}
.fig-adviser-cta--pale .fig-adviser-cta__eyebrow{color:var(--fig-color-action,#0075C0)}
.fig-adviser-cta--pale .fig-adviser-cta__heading{color:var(--fig-color-navy,#102C58)}
.fig-adviser-cta--pale .fig-adviser-cta__body{color:var(--fig-color-ink,#314257)}
.fig-adviser-cta--pale .fig-adviser-cta__logos-label{color:rgba(0,0,0,.4)}
.fig-adviser-cta--pale .fig-adviser-cta__logo{opacity:.9}

/* 🔴 A SUPPLIED WHITE LOGO IS NOT KNOCKED OUT (s95) — see fig_partner. The
   filter is set per background variant above, so the opt-out has to beat both
   `--navy` and `--gradient`; naming them keeps the specificity honest rather
   than reaching for !important. */
.fig-adviser-cta--navy .fig-adviser-cta__logo--supplied,
.fig-adviser-cta--gradient .fig-adviser-cta__logo--supplied { filter: none; opacity: 1; }
