.portfolio-cover { position: absolute; inset: 0; overflow: hidden; background: #151614; }
.portfolio-cover img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.07); transform-origin: 50% 50%; transition: transform .7s cubic-bezier(.65,0,.32,1); }
.case-tile-media { height: var(--case-media-height); aspect-ratio: auto; }
.case-filter-empty { padding: 40px 0; color: var(--paper); max-width: 60ch; }
.case-filter-empty button { display: inline; margin-left: 10px; border: 0; padding: 12px 0; background: transparent; color: var(--acid); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.case-card:hover .portfolio-cover img, .case-card:focus-visible .portfolio-cover img, .case-tile:hover .portfolio-cover img, .case-tile:focus-visible .portfolio-cover img { transform: scale(1); }
.case-card:focus-visible, .case-tile:focus-visible { outline: 2px solid currentColor; outline-offset: 6px; }
.case-tile .case-tag { background: #f1efe9; color: #080908; border: 0; box-shadow: 0 2px 12px rgba(0,0,0,.08); }
.work .case-card .case-card-tag { background: transparent; color: #f1efe9; border: 1px solid rgba(241,239,233,.8); box-shadow: none; }
@media (max-width: 980px) { .case-tile-media { height: auto; aspect-ratio: 4 / 3; } }
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) { .portfolio-cover img, .case-card:hover .portfolio-cover img, .case-card:focus-visible .portfolio-cover img, .case-tile:hover .portfolio-cover img, .case-tile:focus-visible .portfolio-cover img { transform: none; transition: none; } }
