.photo-gallery-card { margin: 0 0 28px; background: var(--site-accent-soft,#f7f7f7); }
.photo-gallery-card > a { display: block; }
.photo-gallery-card img { display: block; width: 100%; height: auto; }
.photo-gallery-card figcaption { padding: 16px; line-height: 1.45; overflow-wrap: anywhere; text-align: left; }
.photo-gallery-card h3 { font-size: 18px; line-height: 1.4; margin: 0 0 4px; }
.photo-gallery-card p { margin: 4px 0 0; }
.photo-gallery-credit { font-size: 12px; }
.photo-gallery-card a:focus-visible, .photo-related a:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
.photo-related { padding-top: 24px; padding-bottom: 32px; }
.photo-related h2 { font-size: 25px; margin-bottom: 20px; }
.photo-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-bottom: 24px; }
.photo-related-grid a { min-width: 0; text-align: center; }
.photo-related-grid img { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
.photo-related-grid span { display: block; margin-top: 10px; }
@media(max-width: 767px) { .photo-related-grid { grid-template-columns: minmax(0,1fr); } }
