.case-nav { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.case-nav nav { display: flex; align-items: center; gap: 28px; }
.case-nav .text-link { font-size: .8125rem; }
.case-study-hero { background: var(--wine); color: var(--white); padding-block: 80px; }
.case-study-intro { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr); gap: 88px; align-items: center; }
.case-study-context { font-size: .875rem; color: #ffc0d8; font-weight: 700; margin-bottom: 24px; }
.case-study-intro h1 { max-width: 16ch; font-size: clamp(2.25rem, 4.4vw, 4rem); }
.case-study-lead { color: #f0d4e2; margin-top: 28px; max-width: 48ch; font-size: 1.125rem; }
.case-study-facts { margin: 0; padding: 28px; background: #651d3e; border-radius: 14px; }
.case-study-facts > div + div { margin-top: 24px; }
.case-study-facts dt { font-size: .75rem; color: #ffc0d8; margin-bottom: 6px; }
.case-study-facts dd { margin: 0; font-size: .9375rem; font-weight: 600; }
.case-study-route { padding-block: 40px; }
.case-study-route > p { color: var(--muted); font-size: .8125rem; margin-bottom: 20px; }
.case-study-route ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0; padding: 0; list-style: none; counter-reset: route; }
.case-study-route li { counter-increment: route; padding: 20px; border-radius: 10px; background: var(--blush); font-weight: 700; font-size: .875rem; }
.case-study-route li::before { content: counter(route, decimal-leading-zero); display: block; color: var(--action); font-size: .75rem; margin-bottom: 12px; }
.case-study-body { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, .8fr); gap: 88px; padding-block: 40px 96px; align-items: start; }
.case-study-body article section + section { margin-top: 48px; }
.case-study-body article h2 { font-size: 1.75rem; margin-bottom: 22px; }
.case-study-body article p { color: var(--muted); max-width: 65ch; }
.case-study-learning { background: #e6f2ef; padding: 32px; border-radius: 14px; }
.case-study-learning h2 { font-size: 1.75rem; margin-bottom: 24px; }
.case-study-learning > p { font-size: .9375rem; }
.case-study-note { color: var(--muted); font-size: .75rem; }
.case-study-learning .case-study-note { margin-top: 24px; }
.case-study-learning .text-link { margin-top: 20px; font-size: .8125rem; }
@media(max-width:900px) {
 .case-study-intro, .case-study-body { gap: 40px; }
 .case-study-route ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .case-study-intro h1 { font-size: clamp(2.25rem, 5vw, 3.5rem); }
}
@media(max-width:640px) {
 .case-nav { min-height: 80px; flex-wrap: wrap; padding-block: 12px; gap: 12px; }
 .case-nav nav { flex-wrap: wrap; gap: 12px; }
 .case-study-hero { padding-block: 48px; }
 .case-study-intro, .case-study-body { grid-template-columns: minmax(0, 1fr); gap: 32px; }
 .case-study-lead { font-size: 1rem; }
 .case-study-facts, .case-study-learning { padding: 24px; }
 .case-study-route ol { gap: 12px; }
 .case-study-route li { padding: 16px; font-size: .8125rem; }
 .case-study-body { padding-block: 16px 64px; }
}
