/* Audience pages only; shared chrome remains in site.css. */
.solutions .sol-band { padding: clamp(56px, 7vw, 100px) 0; scroll-margin-top: 72px; }
.solutions .sol-dark { background: #0c1226; color: #f4f6fb; }
.solutions .sol-light { background: #fff; color: #172038; }
.solutions .sol-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 20px; }
.solutions h1 { max-width: 900px; margin: 0 0 26px; font-size: clamp(42px, 6vw, 78px); line-height: 1.09; letter-spacing: -.035em; }
.solutions h2 { max-width: 850px; margin: 0 0 32px; font-size: clamp(28px, 3.2vw, 42px); line-height: 1.2; }
.solutions h3 { margin: 16px 0; font-size: 23px; line-height: 1.3; }
.solutions h4 { font: 600 12px Poppins, sans-serif; text-transform: uppercase; letter-spacing: .06em; margin: 24px 0 8px; }
.solutions p { line-height: 1.75; }
.solutions .sol-lede { max-width: 750px; font-size: clamp(17px, 2vw, 21px); color: #c7d1e6; }
.sol-channels { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; padding: 0; margin: 28px 0; }
.sol-channels li { border: 1px solid #65718c; padding: 7px 16px; border-radius: 24px; font-size: 13px; }
.sol-actions { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; margin-top: 26px; }
.sol-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.sol-card { display: flex; flex-direction: column; border-top: 1px solid #77829a; padding: 18px 0; min-width: 0; scroll-margin-top: 90px; }
/* Cards stretch to the tallest in the row, so their CTAs line up with each other rather than with
   the end of their own copy. */
.sol-card .sol-actions { margin-top: auto; padding-top: 26px; }
.sol-card > .msym { font-size: 30px; }
.sol-list { margin: 0; padding-left: 20px; }
.sol-list li { line-height: 1.7; }
.sol-list li + li { margin-top: 4px; }
.sol-work { margin: 0; min-width: 0; }
.sol-work img { width: 100%; height: 340px; object-fit: contain; background: #eff1f5; border-radius: 8px; }
.sol-work figcaption { padding-top: 16px; font-size: 14px; }
.sol-work figcaption span { display: block; margin-top: 5px; }
.solutions .sol-copy { max-width: 850px; }
.solutions .sol-dark a:not(.btn) { color: #b7deff; }
.solutions .sol-light a:not(.btn) { color: #353cad; text-decoration: underline; text-underline-offset: 4px; }
.solutions a:focus-visible { outline: 3px solid #8862ed; outline-offset: 5px; }
@media(max-width: 760px) { .sol-grid { grid-template-columns: 1fr; gap: 30px; } .sol-work img { height: 380px; } }
