/* Final case material overrides. Loaded after legacy case styles. */
.case-photo::after { display: none !important; }
.case-stage { grid-template-columns: 66% 34%; min-height: 470px; background: #f5f7fa; }
.case-photo { min-height: 470px; overflow: hidden; background: #f4f6f9; }
.case-media-grid { height: 100%; min-height: 470px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: stretch; padding: 26px 28px; }
.case-media-item { width: 100% !important; height: 100% !important; min-width: 0; display: block; object-fit: contain !important; object-position: top center; background: #fff; border: 1px solid #e4e9ef; box-shadow: 0 8px 18px rgba(20, 40, 70, .12); }
.case-media-logo-wrap { min-height: 470px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; padding: 40px; }
.case-media-logo { width: min(220px, 65%); height: 220px; display: block; object-fit: contain; mix-blend-mode: multiply; }
.case-media-empty { color: #8a929c; font-size: 13px; }
.case-info { min-width: 0; }
.case-qr { display: flex; align-items: center; gap: 12px; margin-top: 22px; color: #7d858e; font-size: 12px; }
.case-qr[hidden] { display: none; }
.case-qr img { width: 74px; height: 74px; display: block; object-fit: contain; background: #fff; border: 1px solid #e4e9ef; }
@media (max-width: 850px) { .case-stage { grid-template-columns: 1fr; } .case-photo, .case-media-logo-wrap { min-height: 360px; } .case-media-grid { min-height: 360px; } }
@media (max-width: 560px) { .case-photo, .case-media-logo-wrap { height: 300px; min-height: 300px; } .case-media-grid { height: 300px; min-height: 300px; gap: 7px; padding: 14px; } .case-media-logo { width: 170px; height: 170px; } .case-media-empty { font-size: 12px; } .case-info { padding: 24px 22px; } }
