/* Case-study design preview. The shared site CSS supplies the canonical menu. */
:root{--cs-ink:#091937;--cs-blue:#2458e8;--cs-line:#ced9ec;--cs-mute:#526581;--cs-ice:#f2f6ff;--cs-lime:#ddf895}
html{scroll-behavior:smooth}body.cs-page{font-family:Barlow,Arial,sans-serif;color:var(--cs-ink);background:#fff;font-size:18px;line-height:1.5}body.cs-page h1,body.cs-page h2,body.cs-page h3{font-family:Rubik,Arial,sans-serif;letter-spacing:-.045em;line-height:1.08}body.cs-page a{text-decoration:none}.cs-wrap{width:min(1390px,calc(100% - 80px));margin-inline:auto}.cs-skip{position:absolute;left:-9999px;z-index:1000}.cs-skip:focus{left:12px;top:12px;padding:12px;background:#fff;color:#000}.cs-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.cs-design-bar{min-height:46px;padding:6px 30px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#ecf3ff;color:#153560;font:600 14px Barlow,Arial,sans-serif}.cs-design-bar nav{display:flex;gap:4px}.cs-design-bar nav a{padding:7px 12px;border-radius:7px;color:#294b78}.cs-design-bar nav a[aria-current]{background:#2458e8;color:#fff}.cs-preview-note{font-weight:400;color:#5d7190}
.cs-preview-note a{color:#2458e8;text-decoration:underline!important;text-underline-offset:2px}
.cs-kicker{font:700 13px Barlow,Arial,sans-serif;letter-spacing:.19em;color:var(--cs-blue);text-transform:uppercase}.cs-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:var(--cs-lime);color:#091937!important;padding:17px 22px;border-radius:8px;font-weight:800;font-size:17px;min-width:226px;box-shadow:0 8px 22px #00000012;transition:transform .2s,background .2s}.cs-button:hover{transform:translateY(-3px);background:#ccf16b}.cs-text-link{display:inline-flex;gap:10px;align-items:center;color:inherit!important;border-bottom:1px solid currentColor;padding-bottom:4px;font-weight:700}.cs-text-link:hover{color:#91bdff!important}
.cs-hero{background:radial-gradient(circle at 76% 27%,#214d91 0,#112b54 25%,transparent 52%),linear-gradient(115deg,#061327,#0c244b);color:white;overflow:hidden}.cs-hero-grid{min-height:665px;display:grid;grid-template-columns:1fr .76fr;gap:9%;align-items:center;padding-block:95px 110px}.cs-hero .cs-kicker{color:#b9d2ff}.cs-hero h1{font-size:clamp(53px,5.5vw,91px);max-width:900px;margin:22px 0 26px;font-weight:800}.cs-hero-copy>p:not(.cs-kicker){max-width:660px;font-size:21px;line-height:1.55;color:#d0dcef}.cs-hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:38px}.cs-hero-proof{background:#f8fbff;color:var(--cs-ink);border-radius:18px;box-shadow:22px 25px 60px #0006;overflow:hidden;transform:rotate(2deg)}.cs-proof-header,.cs-proof-footer{display:flex;justify-content:space-between;gap:20px;padding:20px 30px;border-bottom:1px solid #dce6f6;font-size:12px;font-weight:700;letter-spacing:.14em;color:#5b6e8c}.cs-proof-primary{padding:38px 32px 34px;background:linear-gradient(135deg,#f9fbff,#eaf2ff)}.cs-proof-primary>span{display:block;text-transform:uppercase;color:#2458e8;font-size:13px;font-weight:800;letter-spacing:.12em}.cs-proof-primary strong{display:block;font:800 clamp(70px,8vw,120px)/1 Rubik,Arial,sans-serif;letter-spacing:-.07em;margin:16px 0 4px}.cs-proof-primary p{font-size:24px;font-weight:700}.cs-proof-primary small{display:block;color:#60718c;font-size:14px;margin-top:10px}.cs-proof-mini{display:grid;grid-template-columns:1fr 1fr}.cs-proof-mini>div{padding:26px 30px;border-top:1px solid #dce6f6}.cs-proof-mini>div+div{border-left:1px solid #dce6f6}.cs-proof-mini span,.cs-proof-mini small{display:block;color:#61748e;font-size:13px}.cs-proof-mini b{display:block;color:#2458e8;font:800 36px Rubik,Arial,sans-serif;margin:5px 0}.cs-proof-footer{letter-spacing:0;font-size:12px;font-weight:500;line-height:1.4;border-top:1px solid #dce6f6;border-bottom:0}
.cs-route{background:#071a36;color:#a8c5f2;border-top:1px solid #244164}.cs-route .cs-wrap{display:grid;grid-template-columns:repeat(3,1fr)}.cs-route span{padding:24px 0;font-size:13px;letter-spacing:.15em;font-weight:700}.cs-route span+span{border-left:1px solid #244164;padding-left:30px}.cs-intro{padding:104px 0 70px;background:#fff}.cs-intro .cs-wrap{display:grid;grid-template-columns:.4fr 1fr;gap:8%}.cs-intro h2{font-size:clamp(40px,4vw,66px);max-width:760px;margin:0 0 20px}.cs-intro p:not(.cs-kicker){max-width:700px;color:var(--cs-mute);font-size:20px}.cs-library{padding:60px 0 105px;background:#f3f7ff}.cs-library-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.cs-library-head h2{font-size:clamp(38px,3.4vw,56px);margin-top:13px}.cs-library-head>p{color:#536a88;font-size:16px}.cs-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:35px 0 26px;border-top:1px solid #c7d6ec;padding-top:22px}.cs-filters{display:flex;flex-wrap:wrap;gap:8px}.cs-filters button{border:1px solid #bdcdea;border-radius:100px;background:#fff;color:#28415e;padding:10px 17px;font:700 15px Barlow,Arial,sans-serif;cursor:pointer}.cs-filters button.is-active,.cs-filters button:hover{background:#1d52d8;color:#fff;border-color:#1d52d8}.cs-search{position:relative;display:flex;min-width:270px}.cs-search input{width:100%;border:1px solid #bdcdea;border-radius:8px;padding:11px 36px 11px 14px;background:#fff;color:var(--cs-ink);font:500 15px Barlow,Arial,sans-serif}.cs-search span[aria-hidden]{position:absolute;right:12px;top:4px;font-size:29px;color:#55729a}.cs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cs-card{min-width:0;background:#fff;border:1px solid #d2dff1;border-radius:12px;overflow:hidden;transition:transform .2s,box-shadow .2s}.cs-card:hover{transform:translateY(-5px);box-shadow:0 20px 35px #0a29621b}.cs-card[hidden]{display:none}.cs-card-link{display:flex;flex-direction:column;height:100%;color:var(--cs-ink)!important;padding:25px 27px 24px}.cs-card-top{display:flex;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#446487;font-weight:800}.cs-card-top span:last-child{font-size:22px;line-height:1;letter-spacing:0;color:#2458e8}.cs-card-metric{border-bottom:1px solid #d7e2f2;padding:31px 0 25px;display:flex;flex-direction:column;gap:2px}.cs-card-metric strong{font:800 clamp(51px,5vw,77px)/1 Rubik,Arial,sans-serif;letter-spacing:-.07em;color:#194cdb}.cs-card-metric span{color:#3f5877;font-size:17px}.cs-card h3{font-size:25px;line-height:1.17;margin:26px 0 14px;min-height:86px}.cs-card p{font-size:15px;color:#637693;margin-bottom:28px}.cs-card-bottom{margin-top:auto;border-top:1px solid #d7e2f2;padding-top:18px;display:flex;justify-content:space-between;gap:10px;font-size:14px}.cs-card-bottom>span{font-weight:700;color:#234776}.cs-card-bottom b{color:#2458e8;white-space:nowrap}.cs-library-note{color:#687c98;font-size:14px;margin-top:20px}.cs-empty{border:1px solid #bed0ec;background:#fff;padding:25px;color:#385372}.cs-context{padding:105px 0 110px;background:#fff}.cs-context h2{max-width:830px;font-size:clamp(38px,4vw,62px);margin:17px 0 58px}.cs-context-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cad8ec}.cs-context-grid>div{padding:26px 35px 0 0}.cs-context-grid>div+div{border-left:1px solid #cad8ec;padding-left:35px}.cs-context-grid span{color:#2b60de;font-weight:800;font-size:34px}.cs-context-grid h3{font-size:23px;margin:20px 0 12px}.cs-context-grid p{font-size:17px;color:#5c708e;max-width:350px}.cs-cta{background:#143477;color:#fff;text-align:center;padding:95px 0 100px}.cs-cta .cs-kicker{color:#afccff}.cs-cta h2{font-size:clamp(40px,4vw,63px);max-width:930px;margin:18px auto}.cs-cta p:not(.cs-kicker){color:#d2e1ff;font-size:20px;max-width:620px;margin:0 auto 28px}.cs-footer{background:#061328;color:#c2d2ec;padding:45px 0 27px}.cs-footer .cs-wrap{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:25px}.cs-footer img{width:220px;height:auto}.cs-footer div div{display:flex;gap:20px;flex-wrap:wrap}.cs-footer a{color:#c2d2ec;font-size:15px}.cs-footer p{width:100%;border-top:1px solid #2b3c58;padding-top:18px;font-size:13px;color:#89a2c9}
/* Distinct review directions share the same exact case data and details. */
.cs-route .cs-wrap{grid-template-columns:repeat(5,minmax(0,1fr))}.cs-route span{font-size:12px;letter-spacing:.03em}.cs-controls{display:grid;grid-template-columns:1fr;justify-items:start;gap:15px}.cs-search{width:min(100%,360px)}.cs-filters button{white-space:nowrap}.cs-filters button span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:6px;border-radius:50%;background:#e8effc;color:#31517e;font-size:12px}.cs-filters button.is-active span,.cs-filters button:hover span{background:#ffffff35;color:#fff}.cs-card-bottom{flex-wrap:wrap}.cs-aside-note{margin:24px 0!important;padding:16px;background:#fff;border-left:3px solid #2458e8;color:#284872!important;font-size:16px!important}
.cs-option-2 .cs-hero{background:#eaf2ff;color:var(--cs-ink)}.cs-option-2 .cs-hero-grid{min-height:590px;grid-template-columns:1fr .7fr}.cs-option-2 .cs-hero .cs-kicker{color:#2458e8}.cs-option-2 .cs-hero-copy>p:not(.cs-kicker){color:#4b6385}.cs-option-2 .cs-hero-proof{transform:none;box-shadow:none;border:1px solid #bfd2ef}.cs-option-2 .cs-text-link{color:#2458e8!important}.cs-option-2 .cs-route{background:#dceaff;color:#204b8d;border-color:#c1d4ee}.cs-option-2 .cs-route span+span{border-color:#c1d4ee}.cs-option-2 .cs-library{background:#fff}.cs-option-2 .cs-card{border-radius:0}.cs-option-2 .cs-card:first-child{background:#eaf2ff}.cs-option-2 .cs-context{background:#f3f7ff}.cs-option-2 .cs-cta{background:#0c2b68}
.cs-option-3 .cs-hero{background:#143fa1;color:#fff}.cs-option-3 .cs-hero-grid{grid-template-columns:.9fr 1fr;gap:5%;min-height:600px}.cs-option-3 .cs-hero h1{font-size:clamp(49px,5vw,81px)}.cs-option-3 .cs-hero-proof{transform:none;box-shadow:none;border-radius:0;background:#fff}.cs-option-3 .cs-proof-primary{background:#fff}.cs-option-3 .cs-route{background:#0c2c75}.cs-option-3 .cs-library{background:#eef3fb}.cs-option-3 .cs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-option-3 .cs-card:first-child{grid-row:span 2;background:#0d2b66;color:#fff}.cs-option-3 .cs-card:first-child .cs-card-link,.cs-option-3 .cs-card:first-child .cs-card-metric span,.cs-option-3 .cs-card:first-child p{color:#dce8ff!important}.cs-option-3 .cs-card:first-child .cs-card-top,.cs-option-3 .cs-card:first-child .cs-card-metric strong,.cs-option-3 .cs-card:first-child .cs-card-bottom b{color:#d9f994}.cs-option-3 .cs-card:first-child .cs-card-metric{padding-block:70px}.cs-option-3 .cs-card:first-child .cs-card-metric strong{font-size:110px}.cs-option-3 .cs-card:first-child h3{font-size:38px}.cs-option-3 .cs-cta{background:#0b1c3d}
.cs-detail-hero{background:linear-gradient(120deg,#071831,#173f8c);color:#fff;padding:65px 0 80px}.cs-back{display:inline-block;color:#bdd4ff!important;font-size:16px;margin-bottom:75px}.cs-detail-hero .cs-kicker{color:#a7c6ff}.cs-detail-hero h1{font-size:clamp(48px,5vw,82px);max-width:1050px;margin:17px 0 20px}.cs-detail-loc{font-size:20px;color:#c7d8f4}.cs-detail-signal{display:flex;align-items:center;gap:25px;margin-top:60px;padding-top:25px;border-top:1px solid #6b89b4}.cs-detail-signal strong{font:800 clamp(65px,7vw,105px)/1 Rubik,Arial,sans-serif;letter-spacing:-.07em;color:#dffb91}.cs-detail-signal span{font-size:23px;font-weight:700}.cs-detail-signal small{display:block;font-size:15px;font-weight:400;color:#c2d4ee;margin-top:7px}.cs-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:11%;padding-block:90px 105px}.cs-detail-story section+section{margin-top:60px;padding-top:55px;border-top:1px solid #cad8ec}.cs-detail-story h2{font-size:clamp(34px,3.2vw,49px);margin:14px 0 22px}.cs-detail-story p:not(.cs-kicker){max-width:790px;color:#526781;font-size:20px;line-height:1.65}.cs-detail-story ol{padding-left:30px}.cs-detail-story li{font-size:20px;margin:15px 0;padding-left:8px}.cs-detail-story .cs-secondary{background:#e9f1ff;padding:20px 23px;border-left:4px solid #2458e8;color:#16396e!important;font-weight:700;margin-top:28px}.cs-method{background:#f0f5fc;padding:30px!important;border:0!important}.cs-method h2{font-size:27px}.cs-method p:not(.cs-kicker){font-size:16px}.cs-method p:last-child{margin-top:12px}.cs-detail-aside{align-self:start;position:sticky;top:22px;background:#edf4ff;padding:30px;border:1px solid #c7d9f1;border-radius:12px}.cs-detail-aside>strong{font:800 75px Rubik,Arial,sans-serif;letter-spacing:-.07em;color:#2458e8;display:block;margin-top:24px}.cs-detail-aside>p:not(.cs-kicker){font-size:19px;font-weight:700}.cs-compare{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:30px 0 15px}.cs-compare span{color:#667a95;font-size:14px}.cs-compare b{display:block;color:#0d2959;font-size:25px}.cs-detail-aside small{font-size:13px;color:#667a95}.cs-detail-aside .cs-button{display:flex;margin-top:32px;font-size:15px}.cs-related{padding:75px 0;background:#f2f6fd}.cs-related h2{font-size:45px;margin:13px 0 30px}.cs-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cs-related-grid a{padding:25px;background:#fff;color:#0d2959;border:1px solid #d4e0f2;display:flex;flex-direction:column;gap:14px}.cs-related-grid span{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#5e7394}.cs-related-grid strong{font-size:43px;color:#2458e8}.cs-related-grid b{font-size:20px;line-height:1.2}.cs-related-grid em{font-size:14px;font-weight:700;font-style:normal;color:#2458e8;margin-top:auto}
.cs-bars{height:44px;display:flex;flex-direction:column;justify-content:space-around;margin:3px 0 17px}.cs-bars span{height:11px;display:block;background:#a9bedf;border-radius:20px}.cs-bars span:last-child{width:100%;background:#2458e8}
@media(max-width:1050px){.cs-hero-grid,.cs-option-2 .cs-hero-grid,.cs-option-3 .cs-hero-grid{grid-template-columns:1fr;gap:55px}.cs-hero-proof{max-width:700px}.cs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-detail-layout{grid-template-columns:1fr;gap:45px}.cs-detail-aside{position:static;order:-1;max-width:600px}.cs-option-3 .cs-card:first-child{grid-row:auto}}
@media(max-width:700px){.cs-wrap{width:calc(100% - 38px)}.cs-design-bar{padding:7px 12px;flex-wrap:wrap;font-size:12px}.cs-design-bar nav a{padding:5px 7px}.cs-design-bar nav a span,.cs-preview-note{display:none}.cs-hero-grid{padding:65px 0 70px;min-height:0}.cs-hero h1,.cs-option-3 .cs-hero h1{font-size:clamp(42px,10vw,58px)}.cs-hero-copy>p:not(.cs-kicker){font-size:18px}.cs-hero-proof{transform:none}.cs-proof-primary{padding:28px 22px}.cs-proof-primary strong{font-size:76px}.cs-proof-mini>div{padding:16px}.cs-proof-mini b{font-size:28px}.cs-route .cs-wrap{display:flex;overflow:auto;gap:28px}.cs-route span{flex:none;font-size:11px}.cs-route span+span{padding-left:0;border:0}.cs-intro,.cs-context{padding:70px 0}.cs-intro .cs-wrap{grid-template-columns:1fr;gap:20px}.cs-intro h2,.cs-context h2{font-size:40px}.cs-library{padding:62px 0}.cs-library-head{align-items:start}.cs-library-head h2{font-size:38px}.cs-controls{display:block}.cs-filters{margin-bottom:16px}.cs-filters button{font-size:13px;padding:8px 12px}.cs-search{min-width:0}.cs-grid,.cs-option-3 .cs-grid,.cs-related-grid{grid-template-columns:1fr}.cs-card h3{min-height:0}.cs-card-metric strong{font-size:62px}.cs-option-3 .cs-card:first-child .cs-card-metric{padding-block:31px}.cs-option-3 .cs-card:first-child .cs-card-metric strong{font-size:68px}.cs-option-3 .cs-card:first-child h3{font-size:27px}.cs-context-grid{grid-template-columns:1fr}.cs-context-grid>div,.cs-context-grid>div+div{border-left:0;padding:25px 0;border-bottom:1px solid #cad8ec}.cs-cta{padding:70px 0}.cs-cta h2{font-size:40px}.cs-detail-hero{padding:35px 0 55px}.cs-back{margin-bottom:50px}.cs-detail-hero h1{font-size:43px}.cs-detail-signal{gap:15px;align-items:start;flex-direction:column;margin-top:35px}.cs-detail-signal strong{font-size:75px}.cs-detail-layout{padding-block:55px}.cs-detail-story section+section{margin-top:40px;padding-top:35px}.cs-detail-story h2{font-size:34px}.cs-detail-story p:not(.cs-kicker){font-size:17px}.cs-detail-story li{font-size:17px}.cs-related h2{font-size:37px}}
@media(min-width:701px){.cs-filters{display:grid;grid-template-columns:repeat(3,max-content);align-items:start}.cs-controls{align-items:start}}
@media(min-width:1101px){.cs-controls{grid-template-columns:minmax(0,1fr) 320px}.cs-search{width:100%}}
@media(max-width:700px){.cs-filters{display:flex;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cs-card,.cs-button{transition:none}}
