/* Cases navigation uses the existing site's colors and typography. */
.case-hub { margin: 0 0 40px; }
.case-hub h2 { font: 650 clamp(1.35rem, 2vw, 1.75rem)/1.3 var(--ui); letter-spacing: -.025em; margin: 0 0 12px; }
.case-hub p { color: var(--muted); max-width: 76ch; }
.case-hub a { text-decoration: underline; text-underline-offset: 3px; }
.case-hub section { scroll-margin-top: 24px; }
.case-jumps { display: flex; flex-wrap: wrap; gap: 8px 24px; padding: 0 0 24px; }
.case-jumps a { display: inline-flex; align-items: center; min-height: 44px; }
.case-model-list { list-style: none; padding: 0; margin: 20px 0 32px; border-top: 1px solid var(--line); }
.case-model-list li { display: grid; grid-template-columns: minmax(180px, 1fr) 2fr; gap: 12px 24px; border-bottom: 1px solid var(--line); padding: 14px 0; align-items: center; }
.case-model-list span { font-weight: 600; }
.case-model-list a { display: flex; align-items: center; min-height: 44px; }
.case-browse-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.case-browse-grid section { padding: 24px; background: var(--surface); border-radius: 16px; }
.case-browse-grid ul { list-style: none; margin: 0; padding: 0; }
.case-browse-grid li + li { margin-top: 12px; }
.case-browse-grid a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }
.case-browse-grid p { margin: 0; font-size: .9375rem; }
.case-method { margin-top: 24px; font-size: .9375rem; }
@media (max-width: 640px) { .case-model-list li, .case-browse-grid { grid-template-columns: 1fr; } .case-model-list li { gap: 0; } .case-browse-grid section { padding: 20px; } }
