/* One closing call-to-action treatment across the website. */
html body[data-page] main :is(section.cta-band,section.narrative-final-cta:not(#finalCta)){position:relative;isolation:isolate;background:#f4f5f7;color:#16171c;padding:88px 0;text-align:center;overflow:hidden}
html body[data-page] main :is(section.cta-band,section.narrative-final-cta:not(#finalCta))::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('../img/shared-cta/background-736-6575.svg') center/100% 100% no-repeat;opacity:.5}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.container,.final-cta-shell){width:calc(100% - 40px);max-width:1300px;margin:auto;padding:0;display:block;background:none;border:0;box-shadow:none}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) h2{max-width:1000px;margin:0 auto 16px;font-size:34px;line-height:1.25;letter-spacing:-.7px;color:#16171c;font-weight:600;white-space:normal}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) p{max-width:960px;margin:0 auto;color:#667185;font-size:16px;line-height:1.7}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.cta-row,.final-cta-actions){display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;margin:28px 0 0}
html body[data-page] main .narrative-final-cta:not(#finalCta) .final-cta-copy{display:block;padding:0;max-width:none;text-align:center}
html body[data-page] main .narrative-final-cta:not(#finalCta) .final-cta-art{display:none}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.hero-connect,.final-cta-primary){position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;max-width:100%;padding:12px 26px;border:0;border-radius:999px;background:#16171c;color:white;font-size:16px;line-height:1.4;text-decoration:none;box-sizing:border-box;box-shadow:0 24px 40px #0000001a;overflow:hidden}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.hero-connect,.final-cta-primary):before{content:"";position:absolute;inset:0;z-index:-1;background:var(--brand-gradient);opacity:0;transform:none;transition:opacity .25s}
html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.hero-connect,.final-cta-primary):is(:hover,:focus-visible):before{opacity:1;transform:none}
html body[data-page] main .cta-band :is(.hero-arrow,.shared-cta-wave){display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px;padding:0;background:none;box-shadow:none}
html body[data-page] main .cta-band :is(.hero-arrow,.shared-cta-wave) img{width:18px;height:18px;opacity:1;transform:rotate(-90deg)}
html body[data-page] main .cta-band .hero-arrow:after{display:none}
@media(max-width:760px){html body[data-page] main :is(section.cta-band,section.narrative-final-cta:not(#finalCta)){padding:64px 0}html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) h2{font-size:28px}html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html body[data-page] main :is(.cta-band,.narrative-final-cta:not(#finalCta)) :is(.hero-connect,.final-cta-primary):before{transition:none}}
/* Preserve the waveform when legacy CTA hover rules slide their icon away. */
html body[data-page] main .cta-band .hero-connect:is(:hover,:focus-visible) :is(.hero-arrow,.shared-cta-wave,.cta-voice){opacity:1;visibility:visible;transform:none;overflow:visible}
html body[data-page] main .cta-band .hero-connect:is(:hover,:focus-visible) :is(.hero-arrow,.shared-cta-wave,.cta-voice) img{display:block;opacity:1;visibility:visible;transform:rotate(-90deg);filter:none}
