/* Match the year-end page's editorial case hierarchy and surfaces. */
.service-cases{padding:clamp(80px,8vw,128px) 0;scroll-margin-top:112px;background:var(--blue-mist)}
.service-page .service-gallery,.service-page .full-videos{background:#fff}
.service-cases-heading{margin-bottom:48px}
.service-cases-heading .service-kicker{margin-bottom:24px}
.service-cases .service-cases-title{margin:0;font-size:clamp(38px,4.5vw,68px);font-weight:400;line-height:1.28;letter-spacing:.02em;color:var(--ink);background:none;-webkit-text-fill-color:currentColor}
.service-cases-title span{display:inline-block;position:relative;color:var(--ink);-webkit-text-fill-color:currentColor}
@supports (-webkit-background-clip:text){
 .service-cases-title [data-gradient-text]::after{content:attr(data-gradient-text);position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#111820,var(--blue-deep) 58%,var(--blue));background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
}
.service-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.service-case{min-width:0;padding:36px;border-radius:32px;background:#fff}
.service-case:first-child{background:#fff}
.service-cases .service-case-metric{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;line-height:1;color:var(--blue-deep);margin:24px 0 12px}
.service-case-metric strong{font-size:clamp(72px,7vw,100px);font-weight:400;letter-spacing:-.04em;line-height:1}
.service-case-metric span{font-size:18px;font-weight:500}
.service-case-metric .service-case-keyword{font-size:clamp(46px,4.6vw,66px);font-weight:500;line-height:1.2;letter-spacing:.045em}
.service-case-keyword span{font:inherit}
.service-cases .service-case-metric-note{font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 8px}
.service-cases .service-case-label{font-size:15px;font-weight:500;color:var(--blue-deep);margin:0 0 8px}
.service-cases .service-case-context{font-size:14px;line-height:1.75;margin:0;color:var(--muted)}
.service-case-story{margin-top:32px}
.service-cases .service-case :is(h3,p:where(.display-h3)){font-size:24px;font-weight:500;line-height:1.5;margin:0 0 16px;color:var(--navy);background:none;-webkit-text-fill-color:currentColor}
.service-case-story :is(p:not(:where(.display-h2,.display-h3)),h2:where(.promoted-kicker)){font-size:16px;font-weight:400;line-height:1.85;text-align:left;color:var(--muted);margin:0 0 20px}
.service-case-story :is(p:not(:where(.display-h2,.display-h3)),h2:where(.promoted-kicker))>strong{font-weight:600;color:var(--navy)}
/* Share content-sized rows across both desktop cards instead of fixed heights. */
@media(min-width:981px){
 .service-case-grid{grid-template-rows:repeat(7,auto);row-gap:0}
 .service-case{display:grid;grid-row:span 7;grid-template-rows:subgrid}
 .service-case-meta,.service-case-identity,.service-case-details,.service-case-story{display:contents}
 .service-cases .service-case-metric{align-items:baseline;align-content:start}
 .service-cases .service-case-context{margin-bottom:32px}
}
.service-cases .service-case-takeaway{font-weight:500;color:var(--blue-deep);margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:980px){.service-case-grid{grid-template-columns:1fr}.service-case{display:grid;grid-template-columns:180px minmax(0,1fr);gap:32px;border-radius:24px;padding:clamp(28px,4vw,40px)}.service-case-story{margin-top:0}}
@media(min-width:768px) and (max-width:980px){
 .service-case-keyword span{display:block;white-space:nowrap}
}
@media(max-width:767px){.service-cases{padding-block:72px}.service-case{display:block;padding:28px 24px}.service-case-story{margin-top:28px}.service-cases .service-case :is(h3,p:where(.display-h3)){font-size:22px}.service-cases .service-cases-title{font-size:var(--heading-mobile-size)}}
.service-cases-title .service-case-punctuation{color:var(--blue)}
@media(max-width:767px){
 .service-cases-heading{text-align:center}
 .service-cases-title .service-case-phrase{white-space:nowrap}
 .service-cases-title .service-case-punctuation{position:absolute;left:100%;top:0;width:1em}
 .service-case{display:block}
 .service-case-story{margin-top:28px}
 .service-case-meta{display:block;text-align:center}
 .service-case-details{margin-top:20px}
 .service-case-identity,.service-case-details{min-width:0}
 .service-cases .service-case-takeaway{text-align:center}
 .service-cases .service-case-metric{justify-content:center;margin:20px 0 0}
 .service-case-metric .service-case-keyword{font-size:clamp(42px,11vw,58px);font-weight:500;line-height:1.16;letter-spacing:.055em;white-space:nowrap}
 .service-case-keyword span{display:inline}
}

/* Case headings retain the compact identity label presentation. */
.service-cases .service-case h3.service-case-label{font-size:15px;font-weight:500;line-height:inherit;letter-spacing:normal;color:var(--blue-deep);margin:0 0 8px;background:none;-webkit-text-fill-color:currentColor}
