.case-study-page main { width:min(1240px,calc(100% - 96px)); margin:auto; }
.case-hero { padding:24px 0 36px; max-width:1000px; }
.eyebrow,.section-number { font:10px/1.6 var(--mono); letter-spacing:.12em; color:var(--accent); }
h1 { font-size:clamp(36px,4.7vw,64px); font-weight:500; line-height:1.08; letter-spacing:-.05em; margin:18px 0 24px; max-width:980px; }
.case-lead { font-size:clamp(18px,2vw,23px); line-height:1.55; color:#dce6eb; max-width:760px; }
.case-actions { display:flex; flex-wrap:wrap; gap:16px 28px; align-items:center; margin-top:28px; }
.case-actions a { color:var(--accent); font-size:13px; line-height:1.5; text-underline-offset:5px; padding:12px 0; }
.case-actions .case-button { display:inline-flex; gap:24px; align-items:center; padding:15px 22px; border:1px solid var(--border-strong); color:var(--text); text-decoration:none; background:var(--surface); }
.case-button:hover { border-color:var(--accent); }
.case-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:42px 0 0; padding-top:24px; border-top:1px solid var(--border); }
.case-facts dt { font-size:25px; color:var(--text); letter-spacing:-.03em; }
.case-facts dd { font:11px/1.6 var(--mono); color:var(--muted); margin:6px 0 0; }
.case-image { margin:0 0 48px; min-width:0; border:1px solid var(--border); background:var(--surface); }
.case-image img { display:block; width:100%; height:auto; }
figcaption { padding:15px 20px; font-size:12px; line-height:1.7; color:var(--muted); border-top:1px solid var(--border); }
.case-body { max-width:800px; margin:0 auto; }
.case-body section { margin:0 0 52px; }
h2 { font-size:clamp(25px,3vw,34px); font-weight:500; line-height:1.2; letter-spacing:-.04em; margin:12px 0 22px; }
.case-body p:not(.section-number) { font-size:16px; line-height:1.85; color:#c7d2d9; }
.evidence-table { margin:28px 0; border:1px solid var(--border); }
table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:13px; line-height:1.6; }
caption { text-align:left; padding:16px; font:11px/1.6 var(--mono); color:var(--accent); }
th,td { padding:14px 16px; border-top:1px solid var(--border); text-align:left; vertical-align:top; overflow-wrap:anywhere; }
thead th { font-weight:500; color:var(--muted); }
tbody th { font-weight:500; color:var(--text); }
.case-pair { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:24px; align-items:start; }
.case-pair img { object-fit:contain; }
.case-advisory { background:var(--surface); padding:24px 28px; border-left:2px solid var(--accent); margin-top:30px; }
.case-advisory h2 { font-size:23px; margin-top:0; }
.closing-actions { margin-bottom:64px; }
@media(max-width:1100px) { .case-study-page main { width:calc(100% - 64px); } }
@media(max-width:640px) {
  .case-study-page main { width:calc(100% - 40px); }
  .case-hero { padding-top:10px; }
  h1 { font-size:38px; overflow-wrap:break-word; }
  .case-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; margin-top:28px; }
  .case-facts dt { font-size:23px; }
  .case-pair { grid-template-columns:minmax(0,1fr); gap:0; }
  .case-body p:not(.section-number) { font-size:15px; line-height:1.8; }
  th,td { font-size:11px; padding:10px 8px; }
  .case-advisory { padding:20px; }
  .case-image { margin-bottom:36px; }
  figcaption { padding:12px 14px; }
}
