/* Only case composition; typography, colors, header and CTA stay shared. */
.case-kicker-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 24px;padding:0}
.case-kicker-list li{padding:8px 16px;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:18px;line-height:1.35}
@media(max-width:560px){.case-kicker-list{margin-bottom:20px}.case-kicker-list li{padding:7px 12px;font-size:16px}}
.case-page{--case-gap:clamp(72px,8vw,128px)}
.case-hero{padding-top:40px}.case-back{margin-bottom:36px}.case-kicker{font-size:14px;line-height:1.5;color:var(--secondary);margin-bottom:18px}.case-hero h1{font-size:clamp(64px,7.5vw,82px);line-height:1;font-weight:650;overflow-wrap:anywhere}.case-statement{font-size:clamp(28px,3vw,46px);font-weight:500;line-height:1.22;letter-spacing:-.035em;color:var(--ink);max-width:1100px;margin-top:28px;text-wrap:pretty}.case-hero>.case-cover{margin-top:44px}
.case-media{min-width:0;margin:0}.case-media-surface{position:relative;aspect-ratio:var(--media-ratio,16 / 10);background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:grid;place-items:center}.case-media img,.case-media video,.case-media iframe{display:block;width:100%;height:100%;min-width:0;object-fit:contain;border:0}.case-cover img{object-fit:contain}.case-media .is-natural img{height:auto}.case-media-placeholder{font-size:14px;line-height:1.5;color:var(--secondary);padding:28px;text-align:center;max-width:100%}.case-media figcaption{font-size:14px;line-height:1.5;color:var(--secondary);margin-top:14px;max-width:760px}.case-media-label{font-size:15px;color:var(--ink);margin-bottom:14px}
.case-media-split,.case-media-pair,.case-before-after,.case-gallery-grid{display:grid;gap:28px;align-items:start}.case-media-split{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:7%}.case-media-split.media-left{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}.media-left>.case-media{grid-column:1;grid-row:1}.media-left>.case-media-copy{grid-column:2;grid-row:1}.case-media-copy{padding-top:12px}.case-media-copy h3{font-size:clamp(28px,2.5vw,38px);margin-bottom:22px}.case-media-copy p{font-size:20px;line-height:1.6;max-width:760px}.case-media-copy p+p{margin-top:16px}.case-media-pair,.case-before-after,.case-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-media-pair.is-single,.gallery-1{grid-template-columns:1fr}.gallery-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-4{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-mobile{max-width:1060px;margin-inline:auto;gap:clamp(24px,5vw,72px)}.gallery-mobile.gallery-2{max-width:860px}
.case-meta-wrap{padding-top:32px}.case-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 40px;margin:0}.case-meta dt{font-size:14px;color:var(--secondary);margin-bottom:8px}.case-meta dd{font-size:17px;line-height:1.5;margin:0}.case-placeholder-note{font-size:14px;max-width:760px;margin-top:26px;color:var(--secondary)}
.case-block{padding-top:var(--case-gap)}.case-section-heading{margin-bottom:40px}.case-section-heading .eyebrow{margin-bottom:20px}.case-section-heading h2{font-size:52px}.case-context .case-section-heading h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.case-context .case-section-heading{margin-bottom:24px}.case-context .eyebrow{margin-bottom:0}.case-context-copy{max-width:1080px}.case-context-copy p{font-size:clamp(25px,2.4vw,36px);line-height:1.4;letter-spacing:-.025em;color:var(--ink)}.case-context-copy p+p{margin-top:24px}
.case-problem-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 8%;list-style:none;margin:0;padding:0}.case-problem-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:20px;align-items:start}.case-problem-list .number{padding-top:6px}.case-problem-list h3{font-size:clamp(27px,2.4vw,36px);line-height:1.16;letter-spacing:-.04em}.case-problem-list p{font-size:20px;line-height:1.6;margin-top:16px;max-width:620px}
.case-tasks,.case-approach{max-width:1000px;padding-top:56px}.case-tasks .case-section-heading,.case-approach .case-section-heading{margin-bottom:22px}.case-tasks h2,.case-approach h2{font-size:52px}.case-tasks .eyebrow,.case-approach .eyebrow{display:none}.case-task-list{padding-left:22px;margin:0;font-size:20px;color:var(--secondary);max-width:760px}.case-task-list li+li{margin-top:8px}.case-approach>p{font-size:21px;line-height:1.6;max-width:760px}.case-approach>p+p{margin-top:16px}
.case-decisions>.case-section-heading{margin-bottom:60px}.case-decisions>.case-section-heading h2{font-size:52px}.case-decision+.case-decision{margin-top:clamp(80px,9vw,140px)}.decision-copy{max-width:1040px}.case-decision h3{font-size:clamp(38px,4.2vw,64px);line-height:1.08;font-weight:600;letter-spacing:-.045em;text-wrap:balance}.decision-explanation{max-width:760px;margin-top:26px}.decision-explanation p{font-size:20px;line-height:1.6}.decision-explanation p+p{margin-top:12px}.decision-explanation p>span{font-weight:550;color:var(--ink)}.decision-media{display:grid;gap:32px;margin-top:36px;min-width:0}.decision-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:7%;align-items:center}.decision-split .decision-media{margin-top:0}.decision-split h3{font-size:clamp(36px,3.8vw,56px)}.decision-split .decision-explanation p{font-size:19px}.decision-split.media-left{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}.decision-split.media-left>.decision-media{grid-column:1;grid-row:1}.decision-split.media-left>.decision-copy{grid-column:2;grid-row:1}
.case-gallery>.case-section-heading{margin-bottom:44px}.case-gallery>.case-section-heading h2{font-size:52px}.case-gallery>.case-media,.case-gallery>.case-gallery-grid,.case-gallery>.case-media-pair,.case-gallery>.case-before-after,.case-gallery>.case-media-split,.case-gallery>[data-media="video"]{margin-top:36px}
.case-results{padding-bottom:var(--case-gap)}.case-results>.case-section-heading h2{font-size:52px}.case-result-statement,.case-results>p{font-size:clamp(24px,2.5vw,38px);line-height:1.35;letter-spacing:-.025em;max-width:1000px;color:var(--ink)}.case-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 5%}.case-results>p+.case-outcomes,.case-metrics+.case-outcomes{margin-top:44px}.case-outcomes h3{font-size:clamp(28px,2.5vw,38px);line-height:1.15}.case-outcomes p{font-size:20px;line-height:1.6;margin-top:18px;max-width:650px}.case-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:36px;margin:0}.case-metrics>div{display:flex;flex-direction:column;min-width:0}.case-metrics dt{font-size:20px;color:var(--secondary)}.case-metrics dd{order:-1;font-size:clamp(54px,6vw,92px);line-height:1.1;letter-spacing:-.05em;font-weight:600;margin:0 0 12px;overflow-wrap:anywhere}.case-metrics p{font-size:14px;margin-top:8px}
.case-next{padding-block:64px var(--case-gap);border-top:1px solid var(--line)}.case-next>.eyebrow{font-size:15px;margin-bottom:28px}.case-next-link{display:block}.case-next-info{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-top:28px}.case-next-info h2{font-size:52px}.case-next-info p{font-size:20px;line-height:1.5;max-width:740px;margin-top:16px}.case-next-info .text-link{flex-shrink:0;margin-top:8px}.case-next-link:hover .text-link span{transform:translateX(5px)}
@media(max-width:1023px){.case-problem-list{gap:32px}.decision-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:5%}.decision-split.media-left{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}.case-outcomes{gap:30px}.case-meta{gap:24px}.case-decision h3{overflow-wrap:anywhere}}
@media(max-width:800px){.case-hero{padding-top:28px}.case-back{margin-bottom:30px}.case-hero h1{font-size:clamp(64px,10vw,82px)}.case-statement{font-size:32px}.case-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.case-media-split,.case-media-split.media-left,.decision-split,.decision-split.media-left{grid-template-columns:1fr;gap:30px}.case-media-split.media-left>.case-media,.case-media-split.media-left>.case-media-copy,.decision-split.media-left>.decision-media,.decision-split.media-left>.decision-copy{grid-column:auto;grid-row:auto}.decision-split h3{font-size:clamp(38px,5vw,48px)}.decision-split .decision-explanation p{font-size:20px}.case-outcomes{grid-template-columns:1fr;gap:30px}.case-next-info{flex-direction:column;gap:18px}.case-next-info .text-link{margin-top:0}.gallery-mobile{gap:24px}}
@media(max-width:560px){.case-page{--case-gap:64px}.case-hero{padding-top:24px}.case-back{margin-bottom:28px}.case-kicker{font-size:13px;margin-bottom:16px}.case-hero h1{font-size:clamp(58px,16vw,82px)}.case-statement{font-size:27px;line-height:1.25;margin-top:22px}.case-hero>.case-cover{margin-top:30px}.case-media-surface{border-radius:4px}.case-media-placeholder{padding:18px;font-size:13px}.case-meta-wrap{padding-top:24px}.case-meta dd{font-size:16px}.case-placeholder-note{font-size:13px;margin-top:24px}.case-section-heading{margin-bottom:28px}.case-section-heading h2{font-size:52px}.case-context-copy p{font-size:25px}.case-problem-list{grid-template-columns:1fr;gap:28px}.case-problem-list li{grid-template-columns:22px minmax(0,1fr);gap:16px}.case-problem-list h3{font-size:28px}.case-problem-list p{font-size:17px;line-height:1.55;margin-top:12px}.case-tasks,.case-approach{padding-top:40px}.case-task-list,.case-approach>p{font-size:20px}.case-decisions>.case-section-heading{margin-bottom:38px}.case-decisions>.case-section-heading h2{font-size:52px}.case-decision h3,.decision-split h3{font-size:36px}.decision-explanation{margin-top:22px}.decision-explanation p,.decision-split .decision-explanation p{font-size:20px;line-height:1.55}.decision-media{margin-top:26px;gap:24px}.case-decision+.case-decision{margin-top:64px}.case-media-pair,.case-before-after,.case-gallery-grid{grid-template-columns:1fr;gap:28px}.case-gallery>.case-section-heading h2{font-size:52px}.case-gallery>.case-section-heading{margin-bottom:28px}.case-gallery>.case-media,.case-gallery>.case-gallery-grid,.case-gallery>.case-media-pair{margin-top:28px}.case-media-copy p{font-size:20px}.gallery-mobile .case-media{width:min(100%,320px);margin-inline:auto}.case-results>.case-section-heading h2{font-size:52px}.case-outcomes h3{font-size:30px}.case-outcomes p{font-size:17px}.case-metrics{grid-template-columns:1fr;gap:28px}.case-next{padding-top:40px}.case-next-info{margin-top:24px}.case-next-info h2{font-size:52px}.case-next-info p{font-size:20px;margin-top:12px}}
