.case-hero { padding-block: 96px 74px; }
.case-hero h1 { max-width: 1000px; font-size: clamp(52px, 7vw, 90px); }
.case-lede { max-width: 850px; margin-top: 30px; color: #394548; font-size: clamp(19px, 2vw, 24px); line-height: 1.48; }
.case-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 62px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.case-facts div { padding: 22px 28px 24px 0; border-right: 1px solid var(--line); }
.case-facts div + div { padding-left: 28px; }
.case-facts div:last-child { border-right: 0; }
.case-facts strong { display: block; font-family: var(--serif); font-size: 25px; font-weight: 500; line-height: 1.1; }
.case-facts span { display: block; margin-top: 9px; color: var(--muted); font-size: 13px; }
.case-band, .case-section-tinted { background: var(--paper-2); }
.case-band { padding-block: 86px; }
.case-grid { display: grid; grid-template-columns: minmax(230px, .72fr) minmax(0, 1.28fr); gap: clamp(48px, 9vw, 130px); }
.case-grid h2, .case-heading h2 { max-width: 780px; font-family: var(--serif); font-size: clamp(40px, 5vw, 62px); font-weight: 500; letter-spacing: -.05em; }
.case-copy { max-width: 750px; }
.case-copy p + p { margin-top: 21px; }
.case-copy p { color: #394548; font-size: 18px; line-height: 1.62; }
.case-copy strong { color: var(--ink); }
.case-copy .text-link { display: inline-block; margin-top: 29px; }
.case-section { padding-block: 100px; }
.case-section-tinted { padding-block: 96px; }
.case-heading { display: grid; grid-template-columns: 1fr minmax(260px, 410px); align-items: end; gap: 68px; margin-bottom: 38px; }
.case-heading > p { color: var(--muted); }
.case-figure { aspect-ratio: 1200 / 640; background: #0b1220; border: 1px solid var(--line); }
.case-figure img { width: 100%; height: 100%; object-fit: contain; }
.case-table-wrap { width: 100%; overflow-x: auto; margin-top: 38px; }
.case-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 15px; }
.case-table caption { margin-bottom: 12px; color: var(--muted); text-align: left; font-family: var(--mono); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
.case-table th, .case-table td { padding: 13px 18px 13px 0; border-bottom: 1px solid var(--line); white-space: nowrap; }
.case-table thead th { color: var(--muted); font-family: var(--mono); font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
.case-table tbody th { min-width: 180px; font-weight: 650; }
.case-table tbody th small { display: block; color: var(--muted); font-size: 12px; font-weight: 400; }
.case-note { max-width: 880px; margin-top: 25px; padding-left: 18px; border-left: 2px solid var(--blue); color: var(--muted); font-size: 14px; }
@media (max-width: 760px) {
  .case-hero { padding-block: 70px 56px; }
  .case-facts { grid-template-columns: 1fr; margin-top: 40px; }
  .case-facts div, .case-facts div + div { padding: 16px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .case-facts div:last-child { border-bottom: 0; }
  .case-band, .case-section, .case-section-tinted { padding-block: 62px; }
  .case-grid, .case-heading { grid-template-columns: 1fr; gap: 24px; }
  .case-copy p { font-size: 16px; }
  .case-table { font-size: 14px; }
  .case-table caption { display: block; width: 100%; }
  .case-table thead { display: none; }
  .case-table, .case-table tbody, .case-table tr, .case-table th, .case-table td { display: block; width: 100%; }
  .case-table tr { margin-bottom: 12px; padding: 12px 14px; border: 1px solid var(--line); background: var(--white); }
  .case-table th, .case-table td { padding: 4px 0; border: 0; white-space: normal; }
  .case-table tbody th { padding-bottom: 10px; border-bottom: 1px solid var(--line); }
  .case-table td::before { display: inline-block; width: 118px; color: var(--muted); font-size: 12px; content: attr(data-label); }
}
