/* Shared Consense case-cover system: fixed composition on both listing pages. */
.case-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.case-card{display:flex;flex-direction:column;min-width:0;height:100%;color:var(--theme-fg);text-decoration:none;border:1px solid #CCCDCC;background:var(--theme-canvas);font-family:'Helvetica Neue',Helvetica,Inter,Arial,sans-serif}
.case-card .case-cover{display:grid;grid-template-rows:auto 1fr auto;aspect-ratio:4/3;box-sizing:border-box;padding:clamp(22px,3vw,36px);background:#2B2E31;color:#F0F1EF}
.case-cover-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.case-cover-top img{display:block;width:32px;height:32px}
.case-card .case-number,.case-card .case-category{font:11px/1.5 'DM Mono',ui-monospace,monospace;letter-spacing:.07em;text-transform:uppercase;color:#F0F1EF}
.case-card .case-title{align-self:center;margin:20px 0!important;color:#F0F1EF!important;font-family:'Helvetica Neue',Helvetica,Inter,Arial,sans-serif!important;font-size:clamp(28px,3.5vw,44px)!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.032em!important;text-wrap:initial!important}
.case-card .case-category{border-top:1px solid #66696B;padding-top:14px;letter-spacing:.025em}
.case-card .case-summary{display:flex;flex-direction:column;flex:1;padding:24px}
.case-card .case-summary p{font-size:15px;line-height:1.55;color:var(--theme-fg);margin:0 0 24px;max-width:44ch}
.case-card .case-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;font-size:15px;font-weight:500;min-height:24px}
.case-card .case-cta span{font-size:22px;transition:transform .18s ease}
.case-card:hover{color:var(--theme-fg);border-color:#2B2E31}.case-card:hover .case-cta span{transform:translateX(4px)}
.case-card:focus-visible{outline:2px solid #2B2E31;outline-offset:5px}.case-card:focus-visible .case-cta{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.case-collection{grid-template-columns:minmax(0,1fr);gap:24px}.case-card .case-cover{padding:24px}.case-card .case-title{font-size:clamp(26px,7.6vw,44px)!important}.case-card .case-summary{padding:22px}.case-card .case-category{font-size:10px}.case-cover-top img{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){.case-card .case-cta span{transition:none}}
