/* Portfolio stories: metrics, source images and long-form project descriptions. */
.case-aside{position:sticky;top:26px;align-self:start;max-height:calc(100vh - 52px);overflow:auto}
.case-aside{border-left:0;padding-left:0}.case-aside>.eyebrow{padding-left:14px}.case-aside nav{display:grid;gap:14px}.case-aside nav a{font-size:13px;line-height:1.5;padding-left:12px;border-left:2px solid transparent}.case-aside nav a.active{color:var(--blue);border-left-color:var(--blue);font-weight:500}.case-aside nav a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.case-reading{min-width:0}.case-reading section{scroll-margin-top:28px}.case-reading h3{font-size:22px;line-height:1.45;margin:30px 0 12px;font-weight:500}
.case-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:30px 0}.case-steps>div{border-top:1px solid var(--line);padding-top:18px}.case-steps>div>span{color:var(--blue);font-size:14px}.case-steps h3{margin:10px 0 12px}.case-steps p{font-size:15px;line-height:1.7;margin-bottom:0}
.case-shot{margin:30px 0}.case-shot>a{display:block;border:1px solid var(--line);padding:7px;background:#f6f8fc}.case-shot img{display:block;width:100%;height:auto}.case-shot a:hover{border-color:var(--blue)}
.case-reading figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px}.case-reading figcaption a{text-decoration:underline}.case-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0}.case-photo-grid figure{min-width:0;margin:0}.case-photo-grid img{width:100%;height:auto;display:block;aspect-ratio:820/470;object-fit:cover}
.case-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:25px 0;margin:20px 0 25px;border-block:1px solid var(--line)}.case-kpis>div{min-width:0}.case-kpis strong{display:block;color:var(--blue);font-size:clamp(24px,2.7vw,39px);font-weight:500;white-space:nowrap;line-height:1.25;letter-spacing:-.05em}.case-kpis span{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:12px}.case-kpis-two{grid-template-columns:repeat(2,minmax(0,1fr))}.case-kpis-two strong{font-size:30px;white-space:normal}
.case-before-after{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0}.case-before-after>div{padding:25px;background:#f3f6fb}.case-before-after>div:last-child{background:#e8f0ff}.case-before-after span{display:block;font-size:13px;color:var(--muted)}.case-before-after strong{display:block;font-size:clamp(30px,4vw,54px);font-weight:500;letter-spacing:-.05em;line-height:1.2;margin:20px 0 10px;color:var(--blue);white-space:nowrap}.case-before-after small{font-size:13px;color:var(--muted)}
.case-chart{margin:30px 0}.case-chart svg{width:100%;height:auto;display:block}.case-source{font-size:13px!important;line-height:1.8;color:var(--muted);border-left:2px solid var(--line);padding-left:18px}
@media(max-width:1100px){.case-kpis{gap:15px}.case-kpis strong{font-size:29px}.case-before-after>div{padding:19px}.case-before-after strong{font-size:40px}}
@media(max-width:780px){.case-aside{display:none}.case-kpis strong{font-size:28px}.case-kpis span{font-size:12px}.case-before-after strong{font-size:37px}.case-steps{gap:24px}.case-photo-grid{gap:20px}}
@media(max-width:480px){.case-steps{grid-template-columns:1fr}.case-kpis{grid-template-columns:1fr;gap:22px;padding-block:22px}.case-kpis>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:center}.case-kpis span{margin:0}.case-kpis strong{font-size:30px;white-space:normal}.case-before-after{grid-template-columns:1fr;gap:12px}.case-before-after strong{font-size:49px;margin:14px 0 8px}.case-photo-grid{grid-template-columns:1fr}.case-reading h3{font-size:21px}}
