/* Installation-photo collections only. Keep shared brand, mobile and editor rules intact. */
.photo-authentic { font-weight: 650; line-height: 1.6; }
.section-header .photo-authentic { margin: 20px auto 0; max-width: 680px; }
.page-header .photo-authentic { max-width: 760px; margin: 24px auto 16px; }
.page-header--photo .photo-authentic { color: #f8fafc; }
.page-header--photo .eyebrow, .page-header--photo .display-1 .italic-accent { color: #8cc7ff; }
.page-header--photo .ph__scrim { background: linear-gradient(90deg,rgba(8,28,51,.94),rgba(8,28,51,.82)); }
.growth-heading .photo-authentic { margin-top: 18px; }
.gallery-grid.photo-showcase { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: auto; gap: 24px; align-items: start; }
.photo-showcase .gallery-item { grid-column: auto; grid-row: auto; min-width: 0; background: var(--navy); }
.photo-showcase .gallery-item img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; background: var(--navy); }
.photo-showcase .gallery-item:hover img { transform: none; }
.photo-showcase .photo-open { display: block; }
.photo-showcase .photo-open:focus-visible { outline: 4px solid var(--gold); outline-offset: -4px; }
.photo-showcase .gallery-item-tag { position: static; display: block; padding: 14px 16px 16px; margin: 0; min-height: 64px; font-size: 13px; line-height: 1.5; letter-spacing: .015em; text-transform: none; border-radius: 0; background: var(--navy); }
@media (max-width: 1000px) { .gallery-grid.photo-showcase { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 600px) { .gallery-grid.photo-showcase { grid-template-columns: minmax(0, 1fr); gap: 22px; } .photo-showcase .gallery-item-tag { min-height: 0; } }
