.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hero-wordmark-wrap { width:470px; }
.hero-promise { font-size:42px; max-width:690px; }
.hero-copy { max-width:570px; }
.hero-content { padding-block:30px 30px; }
.hero-bottom { margin-top:24px; }
.profit-intro { background:#f5f8f7; padding-block:74px; }
.profit-heading { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:end; margin-bottom:38px; }
.profit-heading h2 { font-size:36px; }
.profit-heading > p { color:var(--muted); }
.profit-path { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #ccd7d2; padding-top:26px; gap:32px; }
.profit-path a { display:grid; grid-template-columns:28px 1fr; gap:8px 12px; align-content:start; position:relative; }
.profit-path .icon { color:var(--teal); width:25px; height:25px; }
.profit-path strong { font-size:19px; line-height:1.3; }
.profit-path span { grid-column:2; color:var(--muted); font-size:13px; }
.profit-path a:hover strong { color:var(--purple); }
.business-stories { background:#20262a; color:#fff; }
.business-stories .eyebrow { color:var(--mint); }
.business-stories .section-heading > p { color:#c1c8cc; }
.business-grid { display:grid; grid-template-columns:1fr 1fr; gap:34px; }
.business-film { min-width:0; }
.business-screen { position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:6px; }
.business-play { position:absolute; bottom:18px; left:18px; display:flex; align-items:center; gap:10px; padding:12px 18px; border:1px solid #ffffff60; border-radius:5px; background:#20262aed; color:white; font-size:13px; font-weight:700; }
.business-play:hover { background:#432488; }
.business-film video,.solution-film video { width:100%; aspect-ratio:16/9; background:#171b20; object-fit:contain; border-radius:6px; }
.business-film video::cue,.solution-film video::cue { font:16px/1.3 system-ui,sans-serif; background:#14151ee8; color:white; }
.business-film h3 { margin-top:22px; font-size:23px; }
.business-film > p { color:#c1c8cc; font-size:14px; margin-block:10px 15px; }
.business-film figcaption { display:flex; justify-content:space-between; gap:10px; font-size:11px; margin-top:12px; color:#c7d9d3; }
.business-film .film-transcript { color:#d7dce0; border-color:#ffffff30; }
.business-film .film-transcript summary { color:#b9ecdf; }
.business-film .film-transcript p { color:#d7dce0; }
.media-credit { border-top:1px solid #ffffff26; padding-top:22px; margin-top:30px; color:#aebfc1; font-size:11px; }
.media-credit a { text-decoration:underline; }
.growth-section { background:white; }
.growth-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:90px; align-items:center; }
.growth-layout p:not(.eyebrow) { color:var(--muted); margin:20px 0 24px; }
.campaign-flow { background:#f4f8f6; border-left:3px solid var(--teal); padding:12px 30px; margin:0; list-style:none; }
.campaign-flow li { display:grid; grid-template-columns:32px 1fr 22px; gap:16px; align-items:center; padding:22px 0; border-bottom:1px solid #d8e1dc; }
.campaign-flow li:last-child { border:0; }
.campaign-flow .icon { color:var(--teal); }
.campaign-flow strong { display:block; font-size:16px; }
.campaign-flow small { display:block; font-size:12px; color:var(--muted); }
.campaign-flow li > span:first-child { font-size:12px; color:var(--teal); }
.route-section { background:#f6f5fa; }
.route-list { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
.route-list a { display:grid; grid-template-columns:36px 1fr 20px; align-items:center; gap:16px; border-top:1px solid #d8d4e3; padding:24px 0; }
.route-list .icon { color:var(--purple); }
.route-list strong { font-size:18px; display:block; }
.route-list small { font-size:12px; color:var(--muted); display:block; margin-top:5px; }
.route-list a:hover strong { color:var(--purple); }
.route-list a:hover > .icon:last-child { transform:translate(2px,-2px); }
.route-list a > .icon:last-child { transition:transform .2s; }
.case-reading-links { display:flex; flex-wrap:wrap; gap:8px 28px; border-top:1px solid var(--line); padding-top:22px; margin-top:26px; }
.case-reading-links a { font-size:13px; color:var(--purple); text-decoration:underline; text-underline-offset:4px; }
.solution-intro { padding:30px 0 58px; background:#f4f7f6; border-bottom:1px solid #dfe4e1; }
.breadcrumbs { display:flex; gap:9px; flex-wrap:wrap; font-size:11px; color:var(--muted); margin-bottom:45px; }
.breadcrumbs a:hover { color:var(--purple); }
.solution-intro h1 { font-size:48px; line-height:1.12; max-width:860px; text-wrap:balance; font-weight:750; }
.intro-copy { max-width:750px; color:var(--muted); margin:24px 0 28px; font-size:18px; }
.intro-back { margin-left:24px; }
.solution-overview { display:grid; grid-template-columns:1fr 1.25fr; gap:64px; align-items:center; }
.solution-overview h2 { font-size:34px; }
.solution-overview > div > p:not(.eyebrow) { color:var(--muted); margin:22px 0; }
.topic-marker { display:flex; align-items:center; gap:12px; padding-top:20px; border-top:1px solid var(--line); color:var(--teal); font-size:12px; }
.solution-film { min-width:0; }
.solution-film figcaption { display:flex; justify-content:space-between; gap:14px; }
.solution-film .film-context { font-size:11px; }
.process-section { background:#232a28; color:white; }
.process-section .eyebrow { color:var(--mint); }
.process-section .section-heading > p { color:#c5d1cd; }
.process-rail { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; padding:0; margin:0; gap:28px; }
.process-rail li { position:relative; border-top:2px solid #ffffff30; padding-top:25px; }
.process-rail li::before { content:''; height:2px; width:48px; background:var(--mint); position:absolute; top:-2px; left:0; }
.rail-index { font-size:12px; color:var(--mint); display:block; margin-bottom:18px; }
.process-rail h3 { margin-bottom:12px; }
.process-rail p { color:#c5d1cd; font-size:14px; }
.control-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; }
.control-columns article { border-left:1px solid var(--line); padding-left:26px; }
.control-columns .icon { color:var(--teal); width:30px; height:30px; margin-bottom:20px; }
.control-columns p { color:var(--muted); margin-top:14px; font-size:14px; }
.measurement-section { background:#f5f7f6; }
.measurement-list article { display:grid; grid-template-columns:32px 1fr 1.25fr 24px; gap:30px; align-items:center; border-top:1px solid #d4ded8; padding-block:26px; }
.measurement-list article > span { color:var(--teal); font-size:12px; }
.measurement-list p { font-size:14px; color:var(--muted); }
.measurement-list .icon { color:var(--teal); }
.evidence-layout { display:grid; grid-template-columns:1fr 1.1fr; gap:80px; }
.evidence-layout > div > p:not(.eyebrow) { color:var(--muted); }
.scope-note { border-left:2px solid var(--purple); padding-left:20px; margin:24px 0; font-size:13px; }
.related-solutions { padding-block:48px; }
.related-solutions .shell > div { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.related-solutions a { display:flex; align-items:center; gap:16px; border-top:1px solid var(--line); padding-top:20px; font-weight:650; }
.related-solutions .icon { color:var(--purple); }
.related-solutions a > span { flex:1; }
.media-unavailable { padding:16px; background:#fff3cc; color:#3c3419; font-size:13px; }
.contact-measurement { margin-top:12px; padding-top:16px; border-top:1px solid #ffffff40; }
.contact-measurement[hidden],.measurement-status[hidden] { display:none; }
.contact-options .measurement-choice { display:flex; align-items:flex-start; gap:10px; color:#e4dff3; font-size:12px; line-height:1.5; cursor:pointer; }
.measurement-choice input { flex:0 0 17px; width:17px; height:17px; margin:1px 0 0; accent-color:var(--purple); }
.measurement-choice input:focus-visible { outline:2px solid var(--mint); outline-offset:3px; }
.contact-measurement details { margin-top:10px; color:#dcd5ee; font-size:12px; }
.contact-measurement summary { cursor:pointer; color:var(--mint); text-decoration:underline; text-underline-offset:3px; }
.contact-options .contact-measurement p { color:#dcd5ee; font-size:12px; line-height:1.6; margin-top:10px; overflow-wrap:anywhere; }
@media(min-width:901px) and (prefers-reduced-motion:no-preference) {
  .profit-path a:hover .icon { animation:control-lift .7s ease-in-out; }
  @keyframes control-lift { 50% { transform:translateY(-5px); } }
}
@media(max-width:1000px) {
  .profit-heading,.growth-layout,.solution-overview,.evidence-layout { gap:35px; }
  .route-list { gap:0 25px; }
  .control-columns { gap:26px; }
  .hero-promise { font-size:36px; }
}
@media(max-width:700px) {
  .hero-wordmark-wrap { width:400px; margin-block:0 14px; }
  .hero-promise { font-size:31px; }
  .hero-content { padding-block:24px; }
  .profit-intro { padding-block:46px; }
  .profit-heading,.business-grid,.growth-layout,.solution-overview,.evidence-layout { grid-template-columns:1fr; gap:26px; }
  .profit-heading h2,.solution-overview h2 { font-size:29px; }
  .profit-heading > p { font-size:14px; }
  .profit-path { grid-template-columns:1fr 1fr; gap:28px 18px; }
  .profit-path strong { font-size:16px; }
  .profit-path span { font-size:12px; }
  .business-grid { gap:36px; }
  .business-film h3 { font-size:21px; }
  .business-film video::cue,.solution-film video::cue { font-size:13px; }
  .route-list { grid-template-columns:1fr; }
  .route-list a { padding-block:20px; }
  .route-list strong { font-size:17px; }
  .campaign-flow { padding-inline:22px; }
  .solution-intro { padding-bottom:36px; }
  .breadcrumbs { margin-bottom:28px; }
  .solution-intro h1 { font-size:34px; }
  .intro-copy { font-size:16px; }
  .intro-back { margin:18px 0 0; display:flex; }
  .process-rail { grid-template-columns:1fr 1fr; gap:30px 24px; }
  .process-rail h3 { font-size:18px; }
  .process-rail p { font-size:13px; }
  .control-columns { grid-template-columns:1fr; gap:30px; }
  .control-columns .icon { margin-bottom:12px; }
  .measurement-list article { grid-template-columns:24px 1fr 20px; gap:10px 16px; }
  .measurement-list article h3 { font-size:18px; }
  .measurement-list article p { grid-column:2; grid-row:2; }
  .measurement-list article > .icon { grid-column:3; grid-row:1; }
  .related-solutions .shell > div { grid-template-columns:1fr; gap:28px; }
  .media-credit { font-size:10px; }
}
@media(max-width:360px) {
  .hero-promise { font-size:28px; }
  .profit-path { gap:24px 12px; }
  .profit-path a { grid-template-columns:1fr; }
  .profit-path span { grid-column:1; }
  .solution-intro h1 { font-size:29px; }
}
