/* Client stories use the site's ink, cyan accents and generous editorial rhythm. */
.has-case-study{background:#02060b}
.has-case-study .site-header{background:#02060b;border-color:#89cfee20}
.case-study{overflow:clip}
.case-hero,.case-reading,.case-more{max-width:1440px;margin-inline:auto;padding-inline:5%}
.case-hero{padding-top:44px;padding-bottom:74px;position:relative;background:radial-gradient(ellipse at 95% 50%,#0d466425,transparent 52%)}
.case-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:14px;color:#849fb0;line-height:1.65}
.case-breadcrumb a:hover{color:#a5f4ff}
.case-breadcrumb [aria-current]{color:#b5cdd9}
.case-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.8fr);gap:clamp(40px,6vw,100px);align-items:center;margin-top:75px}
.case-heading{min-width:0}
.case-heading .eyebrow{font-size:12px;letter-spacing:.14em}
.case-heading h1{font-size:clamp(38px,4.5vw,67px);font-weight:450;line-height:1.08;letter-spacing:-.045em;margin-top:24px;text-wrap:balance;overflow-wrap:break-word}
.case-lead{font-size:18px;line-height:1.8;color:#afc5d3;margin-top:30px;max-width:730px}
.case-focus{font-size:18px;line-height:1.65;color:#8bddec;margin-top:22px}
.case-read-link{display:inline-flex;align-items:center;gap:35px;color:#9debfa;font-size:14px;margin-top:34px;min-height:44px}
.case-read-link:hover{color:#fff}
.case-identity{margin:0;min-width:0;display:grid;justify-items:center;align-content:center;gap:24px;padding:36px 22px;background:var(--rd-white,#fff);border:1px solid var(--rd-line,#dce3ec);border-radius:16px;box-shadow:0 20px 44px -26px rgba(2,6,11,.5)}
.case-identity-image{width:100%;min-width:0;display:grid;place-items:center}
.case-identity img{width:auto;height:auto;max-width:100%;max-height:166px;object-fit:contain}
.case-identity--logo .case-identity-image{background:transparent;padding:22px;min-height:210px;border-radius:2px}
.case-identity--dark .case-identity-image{background:#0b2132}
.case-identity--text span{color:var(--rd-ink,#0c1524);font:450 clamp(32px,3.2vw,48px)/1.2 var(--heading);letter-spacing:-.045em;overflow-wrap:anywhere}
.case-identity--cover img{width:min(100%,300px);height:auto;max-height:340px;border-radius:2px}
.case-identity figcaption{font-size:14px;line-height:1.5;color:var(--rd-ink2,#3e4a5c);text-align:center}
.case-reading{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,2fr);column-gap:clamp(40px,7vw,110px);align-items:start;border-top:0;padding-top:60px;padding-bottom:70px;scroll-margin-top:30px;background:var(--rd-paper,#f6f8fb);box-shadow:0 0 0 100vmax var(--rd-paper,#f6f8fb);clip-path:inset(0 -100vmax)}
.case-outline{position:sticky;top:36px;padding-bottom:28px}
.case-outline nav>p{font-size:12px;letter-spacing:.11em;color:var(--rd-blue,#1e5eff)}
.case-outline ol{list-style:none;margin:24px 0 0;padding:0;border-left:1px solid var(--rd-line,#dce3ec);display:grid;gap:4px}
.case-outline a{display:block;padding:10px 0 10px 19px;font-size:14px;line-height:1.65;color:var(--rd-ink2,#3e4a5c);overflow-wrap:anywhere;transition:color .2s,border-color .2s;border-left:1px solid transparent;margin-left:-1px}
.case-outline a:hover,.case-outline a:focus-visible{color:var(--rd-blue,#1e5eff);border-left-color:var(--rd-blue,#1e5eff)}
.case-narrative{min-width:0;max-width:860px}
.case-chapter{padding:0 0 50px;scroll-margin-top:40px}
.case-chapter+.case-chapter{border-top:1px solid var(--rd-line,#dce3ec);padding-top:40px}
.case-chapter-number{display:block;font-size:12px;letter-spacing:.1em;color:var(--rd-blue,#1e5eff);font-variant-numeric:tabular-nums;margin-bottom:16px}
.case-chapter h2{font-size:clamp(28px,2.9vw,42px);font-weight:450;line-height:1.17;letter-spacing:-.04em;color:var(--rd-ink,#0c1524);margin-bottom:26px;overflow-wrap:break-word}
.case-chapter p,.case-chapter li{font-size:17px;line-height:1.9;color:var(--rd-ink2,#3e4a5c);overflow-wrap:anywhere}
.case-chapter p+p{margin-top:22px}
.case-chapter ul{padding-left:22px;margin:25px 0}
.case-chapter li{padding-left:9px;margin:12px 0}
.case-chapter li::marker{color:var(--rd-blue,#1e5eff)}
.case-chapter blockquote{font:450 clamp(20px,2vw,27px)/1.65 var(--heading);letter-spacing:-.02em;color:var(--rd-ink,#0c1524);min-height:0;max-width:none;padding:8px 0 8px 26px;margin:35px 0;border-left:2px solid var(--rd-blue,#1e5eff);overflow-wrap:anywhere}
.case-source{border-top:1px solid var(--rd-line,#dce3ec);padding-top:25px}
.case-source p{font-size:13px;color:var(--rd-ink2,#3e4a5c);line-height:1.7}
.case-source a{font-size:13px;display:inline-flex;align-items:center;gap:12px;margin-top:12px;color:var(--rd-blue,#1e5eff);text-decoration:underline;text-underline-offset:4px;line-height:1.7}
.case-more{padding-top:65px;padding-bottom:90px;border-top:1px solid var(--rd-line,#dce3ec);background:var(--rd-paper,#f6f8fb);box-shadow:0 0 0 100vmax var(--rd-paper,#f6f8fb);clip-path:inset(0 -100vmax)}
.case-more-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}
.case-more-heading h2{font-size:clamp(29px,3.1vw,44px);font-weight:450;line-height:1.2}
.case-more-heading h2 span{color:var(--rd-blue,#1e5eff)}
.case-more .text-link{font-size:14px;min-height:44px;white-space:normal;color:var(--rd-blue,#1e5eff)}
.case-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px;margin-top:38px}
.case-more-grid>a{display:grid;grid-template-columns:100px minmax(0,1fr);gap:25px;padding-top:25px;border-top:1px solid var(--rd-line,#dce3ec)}
.case-more-grid img{width:100px;height:100px;object-fit:cover;border-radius:2px}
.case-more-grid p{font-size:12px;line-height:1.6;letter-spacing:.025em;color:var(--rd-blue,#1e5eff);margin-bottom:10px}
.case-more-grid h3{font-size:21px;line-height:1.4;font-weight:450;letter-spacing:-.025em;overflow-wrap:break-word;color:var(--rd-ink,#0c1524)}
.case-more-grid a>div>span{font-size:14px;color:var(--rd-ink2,#3e4a5c);display:flex;justify-content:space-between;gap:22px;margin-top:25px}
.case-more-grid a:hover h3,.case-more-grid a:hover>div>span{color:var(--rd-blue,#1e5eff)}
.has-case-study #site-footer{background:#030a13}
@media(max-width:1000px){
 .case-hero-grid{grid-template-columns:minmax(0,1.55fr) minmax(180px,.7fr);gap:30px}
 .case-identity{padding-inline:0}.case-identity--logo .case-identity-image{min-height:160px;padding:18px}.case-identity img{max-height:124px}
 .case-reading{grid-template-columns:170px minmax(0,1fr);gap:36px}
 .case-more-grid>a{grid-template-columns:75px minmax(0,1fr);gap:18px}.case-more-grid img{width:75px;height:75px}
}
@media(max-width:749px){
 .case-hero,.case-reading,.case-more{padding-inline:6%}
 .case-hero{padding-top:28px;padding-bottom:45px}
 .case-breadcrumb{font-size:13px;gap:7px}
 .case-hero-grid{grid-template-columns:1fr;gap:28px;margin-top:40px}
 .case-heading h1{font-size:clamp(34px,8.5vw,52px);line-height:1.12;margin-top:20px}
 .case-lead{font-size:16px;line-height:1.85;margin-top:24px}
 .case-read-link{margin-top:20px}
 .case-identity{padding:22px 0;display:flex;justify-content:space-between;gap:24px}
 .case-identity .case-identity-image{width:55%;max-width:240px;min-height:120px;padding:14px}.case-identity img{max-height:92px}
 .case-identity--cover .case-identity-image{width:46%;padding:0;max-width:180px}.case-identity--cover img{max-height:180px}
 .case-identity figcaption{font-size:14px;text-align:left;max-width:42%;min-width:0;overflow-wrap:anywhere}
 .case-reading{grid-template-columns:1fr;padding-top:30px;padding-bottom:45px}
 .case-outline{position:static;padding-bottom:10px}
 .case-outline ol{display:flex;flex-wrap:wrap;gap:0 18px;border:0;margin-top:14px}
 .case-outline li{max-width:100%}.case-outline a{padding:8px 0;border-left:0;border-bottom:1px solid #2e5162;line-height:1.6;margin:0}
 .case-chapter{padding-bottom:34px}.case-chapter+.case-chapter{padding-top:28px}
 .case-chapter h2{font-size:30px;margin-bottom:20px}.case-chapter p,.case-chapter li{font-size:16px;line-height:1.85}
 .case-chapter blockquote{padding-left:20px;font-size:21px;margin:28px 0}
 .case-more{padding-top:40px;padding-bottom:50px}
 .case-more-heading{align-items:start;flex-direction:column;gap:18px}
 .case-more-grid{grid-template-columns:1fr;gap:28px;margin-top:25px}
 .case-more-grid>a{grid-template-columns:80px minmax(0,1fr);gap:20px}.case-more-grid img{width:80px;height:80px}
 .case-more-grid h3{font-size:20px}.case-more-grid a>div>span{margin-top:16px}
}
