.project-card--case { cursor:pointer; }
.project-card--case .project-card__cover img { height:auto; aspect-ratio:3/4; object-fit:contain; }
.project-card--case[data-project-cover-landscape] .project-card__cover img { aspect-ratio:4/3; }
.service-case-catalog .project-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),380px)); align-items:start; }
.project-card--case h3 a { color:inherit; text-decoration:none; }
.project-card--case h3 a:hover,.project-card--case h3 a:focus-visible { text-decoration:underline; }
.project-card--case .project-files[hidden] { display:none; }
.project-viewer__stage { position:relative; }
.project-viewer__stage .project-viewer__preview { grid-area:1/1; }
.project-viewer__stage .project-viewer__loading { position:absolute; left:12px; right:12px; bottom:10px; margin:0; padding:9px 12px; border-radius:8px; color:#fff; background:#202020e8; font:400 13px/1.5 Arial,sans-serif; text-align:center; }
.project-viewer__loading button,.project-viewer__loading a { display:inline-block; margin-left:12px; color:#fff; text-decoration:underline; }
.project-viewer__loading button { padding:5px 10px; cursor:pointer; }
.project-viewer--case .project-viewer__header { position:sticky; top:-20px; z-index:1; padding:12px 0; background:#142019; }
.project-viewer--case .project-viewer__header h2 { max-width:850px; }
.project-viewer--case .project-viewer__header button { flex:none; }
.project-viewer--case .project-viewer__stage img { height:min(57dvh,580px); width:100%; object-fit:contain; touch-action:pan-y; }
.project-viewer--case .project-viewer__thumbs button { min-width:44px; }
.project-viewer--case .project-viewer__thumbs button[aria-current="true"] { color:#182521; background:#f98508; border-color:#f98508; }
.project-case__copy { display:grid; gap:24px; padding-top:28px; color:#e3eae5; font:400 16px/1.65 Arial,sans-serif; }
.project-case__copy h3 { margin:0 0 10px; color:#fff; font-size:21px; }
.project-case__copy p,.project-case__copy ul,.project-case__copy dl { margin:0; }
.project-case__copy ul { padding-left:22px; }
.project-case__copy li + li { margin-top:6px; }
.project-case__copy dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:18px; padding:12px 0; border-bottom:1px solid #526057; }
.project-case__copy dt { font-weight:700; }
.project-case__copy dd { margin:0; overflow-wrap:anywhere; }
.project-case__copy .btn { justify-self:start; margin:0 0 6px; }
@media(max-width:600px) {
    .project-viewer--case .project-viewer__header { top:-12px; gap:10px; }
    .project-viewer--case .project-viewer__stage img { height:49dvh; }
    .project-case__copy { font-size:15px; gap:22px; }
    .project-case__copy dl > div { grid-template-columns:minmax(0,1fr); gap:3px; }
    .project-case__copy .btn { width:100%; white-space:normal; text-align:center; box-sizing:border-box; }
}
