/* Real project covers and galleries, in the established ivory/brass style. */
.prime-case-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; margin-block: 24px; }
.prime-case-grid .card { min-width: 0; background: #f0ede5; border-bottom: 1px solid var(--line); padding-bottom: 20px; }
.prime-case-grid .card-photo { display: block; overflow: hidden; }
.prime-case-grid .card-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; object-position: center; }
.prime-review .prime-case-grid .card h3 { font-size: 23px; line-height: 1.2; margin: 18px 18px 10px; }
.prime-case-grid .card h3 a { text-decoration: none; }
.prime-review .prime-case-grid .card-style { margin: 0 18px 10px; color: var(--brass-text); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.prime-case-grid .text-link { margin-inline: 18px; font-size: 13px; }
.project-gallery .grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; align-items: start; }
.project-gallery .card { margin: 0; min-width: 0; }
.project-gallery .card-photo { display: block; background: var(--stone); }
.project-gallery .card-photo img { display: block; width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
.page-case .hero .hero-subtitle { color: var(--brass-text); }
.page-case .hero .hero-lead p { color: var(--ink); }
.project-gallery .card-photo:focus-visible,.prime-case-grid a:focus-visible { outline: 2px solid var(--brass-text); outline-offset: 3px; }
@media(min-width:620px) {
 .prime-case-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .project-gallery .grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
}
@media(min-width:1050px) {
 .prime-case-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .prime-review .prime-case-grid .card h3 { font-size: 21px; }
}
