.media-gallery { margin: 1.5rem 0; }
.media-gallery h2 { margin: 0 0 .75rem; font-size: 1.15rem; }
.media-gallery__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: .8rem; }
.media-gallery figure { margin: 0; min-width: 0; }
.media-gallery a { display: block; border-radius: 14px; overflow: hidden; background: #e8eee5; }
.media-gallery a:focus-visible { outline: 3px solid #375c44; outline-offset: 3px; }
.media-gallery img { display: block; width: 100%; height: 180px; object-fit: contain; }
.media-gallery figcaption { margin-top: .35rem; font-size: .8rem; overflow-wrap: anywhere; }
