.case { max-width: 1080px; margin: 0 auto; padding: 56px 24px 24px; }
.case__back { font-size: .9rem; color: var(--muted); text-decoration: none; }
.case__back:hover { color: var(--red); }
.case__head h1 { font-family: var(--serif); font-size: clamp(2rem, 4vw, 3rem); margin: 16px 0 12px; }
.case__lead { color: var(--muted); max-width: 60ch; }
.case__img {
  display: block; width: 100%; height: auto; margin: 36px 0;
  border: 1px solid var(--line); border-radius: 6px;
  box-shadow: 0 20px 50px -25px rgba(23, 21, 26, .35);
}
.case__grid { display: grid; grid-template-columns: 240px 1fr; gap: 48px; padding-top: 8px; border-top: 1px solid var(--line); }
.case__label { font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--faint); margin: 28px 0 10px; }
.case__platform { font-weight: 700; }
.case__body p { margin-bottom: 1em; line-height: 1.7; }
.case__cta { text-align: center; padding: 64px 24px 80px; border-top: 1px solid var(--line); }
.case__cta h2 { font-family: var(--serif); margin-bottom: 20px; }
.case__next { display: flex; justify-content: space-between; gap: 16px; margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--line); }
.case__next a { color: var(--red); text-decoration: none; font-weight: 700; }
@media (max-width: 760px) { .case__grid { grid-template-columns: 1fr; gap: 8px; } }