/* Case studies share the site's monochrome palette, typography and controls. */
.case-detail{background:#080808;color:#efefef}
.case-mobile-copy,.case-mobile-back{display:none}
.case-desktop-copy{display:contents}
.case-cover{padding:28px 0 40px}
.case-back{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:#bcbcbc}
.case-back svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3}
.case-cover-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:36px;min-height:440px;align-items:center;margin-top:20px}
.case-cover h1{font-size:clamp(40px,4.6vw,66px);font-weight:400;line-height:1.14;letter-spacing:-.035em;max-width:800px;text-wrap:balance;margin:0 0 26px}
.case-cover h1 br{display:none}
.case-cover-copy>p{font-size:18px;line-height:1.7;color:#bcbcbc;max-width:650px;margin:0}
.case-cover-copy>a:not(.case-mobile-back){display:inline-block;font-size:12px;color:#bcbcbc;margin-top:18px}
.case-structure-caption.case-desktop-copy{display:block;font-size:13px;line-height:1.6;color:#bcbcbc;margin:0 0 24px}
.case-evidence p.case-desktop-copy{display:block}
.case-reference{position:relative;height:440px;overflow:hidden;pointer-events:none}
.case-reference img{position:absolute;left:50%;transform:translateX(-50%);height:auto;max-width:none;mix-blend-mode:screen}
.case-reference-jellyfish img{width:248px;top:0;mix-blend-mode:normal}
.case-reference-back img{width:430px;top:-350px}
.case-reference-fragment img{width:470px;top:-220px}
.case-reference-justice img{width:335px;top:-105px}
.case-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;border-top:1px solid #505050;padding-top:28px;margin:20px 0 0}
.case-highlights dt{font-size:clamp(30px,3.4vw,48px);line-height:1.15;letter-spacing:-.035em;margin:0 0 12px}
.case-highlights dd{font-size:13px;line-height:1.6;color:#bcbcbc;margin:0;max-width:270px}
.case-context{font-size:12px;line-height:1.7;color:#a0a0a0;margin:24px 0 0;max-width:900px}
.case-situation,.case-solution,.case-result,.case-comparison{padding:76px 0}
.case-situation,.case-comparison{background:#efefef;color:#111}
.case-two-column{display:grid;grid-template-columns:1.1fr .9fr;gap:76px;align-items:start}
.case-detail h2{font-size:clamp(32px,3.7vw,52px);font-weight:400;line-height:1.15;letter-spacing:-.03em;margin:0;text-wrap:balance}
.case-lead,.case-intro{font-size:18px;line-height:1.7;max-width:900px;margin:25px 0 0;color:#bcbcbc}
.case-situation .case-lead{color:#444}
.case-issues{list-style:none;padding:0;display:grid;gap:22px;margin:34px 0 0}
.case-issues li{border-top:1px solid #aaa;padding-top:22px}
.case-issues h3,.case-actions h3{font-size:21px;font-weight:500;line-height:1.35;margin:0 0 12px}
.case-issues p,.case-actions p{font-size:15px;line-height:1.8;margin:0;color:#444}
.case-evidence{position:sticky;top:128px;margin:0}
.case-evidence figcaption{font-size:15px;line-height:1.6;margin-bottom:18px}
.case-evidence img{display:block;width:100%;height:auto;border:1px solid #bbb;background:#fff}
.case-evidence p{font-size:13px;line-height:1.7;color:#555;margin:16px 0 0}
.case-evidence-link{font-size:12px;display:inline-flex;align-items:center;gap:14px;margin-top:18px;color:#333}
.case-evidence-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3}
.case-actions{display:grid;gap:25px;margin-top:34px}
.case-actions article{border-top:1px solid #505050;padding-top:22px}
.case-actions p{color:#bcbcbc}
.case-structure{position:sticky;top:128px;border-top:1px solid #666;padding-top:24px}
.case-structure h3{font-size:24px;font-weight:400;line-height:1.4;margin:0 0 24px}
.case-structure ul{list-style:none;padding:0;margin:0;display:grid;gap:20px}
.case-structure li{font-size:16px;line-height:1.65;border-bottom:1px solid #343434;padding-bottom:20px}
.case-story-heading{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.case-story-heading .case-lead{margin:0}
.case-wide .case-issues,.case-wide .case-actions{grid-template-columns:repeat(3,1fr);gap:36px;margin-top:44px}
.case-wide .case-issues li{display:block}
.case-wide .case-intro{max-width:1000px}
.case-result p{font-size:22px;line-height:1.75;margin:28px 0 0;max-width:1000px}
.case-result p+p{font-size:16px;color:#bcbcbc;margin-top:18px}
.case-comparison-intro{font-size:16px;line-height:1.75;max-width:950px;color:#444;margin:24px 0 0}
.case-table-wrap{margin-top:34px}
.case-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:16px;line-height:1.6;text-align:left}
.case-table th,.case-table td{padding:19px 22px;border-bottom:1px solid #b0b0b0;vertical-align:top;font-weight:400}
.case-table th:first-child{width:54%}
.case-table thead th{font-size:12px;color:#555}
.case-table tbody td:last-child{font-weight:600}
.case-table td span{display:block;font-size:12px;font-weight:400;margin-top:4px}
.case-table-highlight{background:#dedede}
.case-table-note{font-size:12px;line-height:1.8;max-width:1100px;color:#555;margin:22px 0 0}
.case-contact{background:#141414;padding:70px 0}
.case-contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:center}
.case-contact p{font-size:17px;line-height:1.7;color:#bcbcbc;margin:24px 0 0;max-width:620px}
.case-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.case-contact-actions .text-link{display:inline-flex;gap:28px;align-items:center;font-size:13px}
.case-contact-actions .text-link svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.3}
.case-direct-contact{font-size:13px;color:#bcbcbc}
.case-related{padding:65px 0}
.case-related h2{font-size:36px}
.case-related nav{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:34px}
.case-related nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #666;padding-top:22px;font-size:18px;line-height:1.5}
.case-related svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.3;transition:transform .22s ease}
.case-related a:hover svg{transform:translateX(3px)}
@media(max-width:1100px){
 .case-cover-grid{grid-template-columns:1.4fr 1fr;gap:22px}.case-cover h1{font-size:50px}
 .case-two-column{gap:40px}.case-wide .case-issues,.case-wide .case-actions{gap:28px}
 .case-highlights dt{font-size:40px}.case-reference-back img{width:385px;top:-285px}.case-reference-fragment img{width:420px;top:-160px}
}
@media(max-width:800px){
 .case-cover-grid{grid-template-columns:1fr 1fr;min-height:380px}.case-cover h1{font-size:40px}.case-reference{height:380px}
 .case-reference-jellyfish img{width:212px}.case-reference-back img{width:330px;top:-240px}.case-reference-fragment img{width:370px;top:-120px}.case-reference-justice img{width:280px;top:-65px}
 .case-two-column,.case-story-heading{grid-template-columns:1fr;gap:34px}.case-wide .case-issues,.case-wide .case-actions{grid-template-columns:1fr}
 .case-evidence,.case-structure{position:static}
 .case-table th:first-child{width:48%}.case-related nav{gap:24px}.case-related nav a{font-size:16px}
}
@media(max-width:550px){
 .case-cover{padding:22px 0 32px}.case-cover-grid{display:flex;flex-direction:column;gap:12px;margin-top:30px;min-height:0;align-items:stretch}
 .case-cover h1{font-size:clamp(34px,9vw,44px);margin-bottom:22px}.case-cover-copy>p{font-size:16px}
 .case-reference{height:300px}.case-reference-jellyfish img{width:175px}.case-reference-back img{width:305px;top:-242px}.case-reference-fragment img{width:320px;top:-125px}.case-reference-justice img{width:215px;top:-60px}
 .case-highlights{grid-template-columns:1fr;gap:0;padding-top:0;margin-top:14px}.case-highlights>div{display:grid;grid-template-columns:1fr 1.05fr;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #343434}
 .case-highlights dt{font-size:29px;margin:0}.case-highlights dd{font-size:12px}.case-context{font-size:11px;margin-top:18px}
 .case-situation,.case-solution,.case-result,.case-comparison{padding:50px 0}.case-detail h2{font-size:34px}.case-lead,.case-intro{font-size:16px}
 .case-issues h3,.case-actions h3{font-size:20px}.case-issues p,.case-actions p{font-size:15px}
 .case-result p{font-size:18px}.case-result p+p{font-size:15px}.case-table{font-size:14px}.case-table th:first-child{width:43%}.case-table th,.case-table td{padding:16px 8px}.case-table thead th{font-size:11px}.case-table-note{font-size:11px}
 .case-contact{padding:50px 0}.case-contact-grid{grid-template-columns:1fr;gap:30px}.case-contact p{font-size:16px}.case-contact-actions{align-items:stretch}.case-contact-actions .button{width:100%;font-size:13px}.case-contact-actions .text-link{align-self:flex-start}.case-direct-contact{align-self:flex-start}
 .case-related{padding:50px 0}.case-related nav{grid-template-columns:1fr;gap:28px}.case-related nav a{font-size:18px}
}
@media(max-width:360px){.case-cover h1{font-size:34px}.case-highlights dt{font-size:26px}.case-table{font-size:12px}.case-table th,.case-table td{padding:15px 6px}.case-reference{height:275px}}
@media(prefers-reduced-motion:reduce){.case-related svg{transition:none}}
