/* Gallery overview uses the same spacing and controls as Downloads. */
.gallery-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.gallery-page main{flex:1}
.gallery-page .gallery-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-bottom:22px;font-size:16px;font-weight:600;color:#087fa6}
.gallery-page .gallery-back:hover{text-decoration:underline;text-underline-offset:4px}
.gallery-page .gallery-page-heading{font-size:clamp(2rem,3.4vw,3rem);font-weight:500;line-height:1.16;letter-spacing:-1.4px;margin:0 0 36px}
.gallery-page nav a[aria-current=page]{color:#087fa6}
.gallery-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.gallery-overview .gallery-sample{display:block;min-width:0;color:inherit;text-decoration:none;cursor:zoom-in}
.gallery-overview figure{display:flex;flex-direction:column;height:100%;margin:0;border:1px solid var(--line);background:#fff;overflow:hidden}
.gallery-overview img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#f7f8fa}
.gallery-overview figcaption{display:flex;align-items:center;flex:1;min-height:80px;padding:16px 20px;font-size:16px;line-height:1.5;font-weight:600}
.gallery-overview .gallery-sample:hover figure{border-color:var(--teal)}
.gallery-overview .gallery-sample:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:900px){.gallery-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gallery-overview{grid-template-columns:1fr;gap:24px}.gallery-page .gallery-page-heading{letter-spacing:-1px}}
