/* Case pages only: leave the approved homepage case module unchanged. */
.case-library .filter-bar{align-items:start}
.case-library .filter-tabs{flex:1}
.case-library .search-field{min-width:250px}
.case-load-more{text-align:center;margin-top:38px}
.case-load-more:has(button[hidden]){display:none}
.site-page #cases .case-card{display:flex;flex-direction:column}
.site-page #cases .case-tags{min-height:27px}
.site-page #cases .case-image-button{flex-shrink:0}
.site-page #cases .case-copy{flex:1;display:flex;flex-direction:column}
.site-page #cases .case-outcome{color:#6d59a8;font-size:12px;line-height:1.8;margin:9px 0 18px}
.site-page #cases .case-detail-link{margin-top:auto;padding-top:8px}
.case-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0 0 55px;padding:28px 30px;background:#f4f8fc;border:1px solid #dce7f0;border-radius:15px}
.case-meta-grid>div{min-width:0}
.case-meta-grid dt{font-size:11px;color:#8093a7;margin-bottom:11px}
.case-meta-grid dd{margin:0;font-size:15px;line-height:1.8;color:var(--ink)}
.case-meta-grid>div:last-child dd{color:#7860ab}
.case-detail-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:start}
.case-story{min-width:0}
.case-story>article{position:relative;padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid var(--line)}
.case-story>article:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}
.case-story>article>.glyph{position:absolute;width:25px;height:25px;top:6px;left:0}
.case-story h2{padding-left:40px;font-size:23px;margin:0 0 22px}
.case-story p{font-size:14px;line-height:2}
.case-story .check-list{font-size:14px;line-height:1.9;margin:0;gap:14px}
.case-focus-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.case-focus-tags span{background:#edf7ff;color:var(--primary);font-size:11px;padding:4px 12px;border-radius:18px}
.case-story .compare-table{min-width:410px;font-size:12px}
.case-story .compare-table th,.case-story .compare-table td{padding:15px 16px}
.case-story .compare-table td:last-child{color:#7860ab}
.case-outcome-band{padding:20px 24px;background:#f4f0fc;border:1px solid #ded7ef;border-radius:10px;font-size:18px;line-height:1.8;color:#7860ab}
.case-record-source{display:inline-block;font-size:11px;color:var(--primary);margin-top:22px}
.case-detail-layout .case-evidence{position:sticky;top:105px;padding:25px;background:#f4f8fc}
.case-detail-layout .case-evidence>button{max-width:270px}
.case-related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.case-related-links article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:29px;display:flex;align-items:start;flex-direction:column}
.case-related-links h3{font-size:20px;line-height:1.7;margin:17px 0 12px}
.case-related-links p{font-size:12px;color:#7860ab;margin-bottom:24px}
.case-related-links .text-link{font-size:12px;margin-top:auto}
.case-next-actions{display:flex;gap:35px;flex-wrap:wrap;margin-top:33px}
.case-viewer-nav{align-items:center}
#case-position{order:1;color:#8497aa;font-size:11px;white-space:nowrap}
.case-viewer-nav [data-case-step="1"]{order:2}
@media(max-width:1100px){.case-library .filter-bar{display:block}.case-library .search-field{margin-top:20px;max-width:380px}.case-detail-layout{gap:38px}.case-meta-grid{gap:20px;padding:24px}.case-related-links article{padding:23px}}
@media(max-width:700px){.case-meta-grid{grid-template-columns:1fr 1fr;gap:24px 20px;padding:24px;margin-bottom:35px}.case-meta-grid dd{font-size:13px}.case-detail-layout{grid-template-columns:1fr;gap:35px}.case-story h2{font-size:22px}.case-story>article{margin-bottom:28px;padding-bottom:28px}.case-story p,.case-story .check-list{font-size:13px}.case-detail-layout .case-evidence{position:static;padding:25px}.case-detail-layout .case-evidence>button{max-width:250px}.case-related-links{grid-template-columns:1fr;gap:18px}.case-related-links h3{font-size:19px}.case-related-links article{padding:25px}.case-next-actions{gap:15px}.case-library .search-field{max-width:none}.case-load-more{margin-top:28px}.case-viewer-nav{gap:5px;padding-inline:15px}}
