.events-showcase-page.gallery-page .event-hero { min-height: 450px; }
.gallery-page .gallery-library-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 24px; }
.gallery-page .gallery-library-heading h3 { color: var(--secondary); font-size: 24px; }
.gallery-page .gallery-library-heading > span { color: var(--muted); font-size: 14px; }
.gallery-page .public-gallery-grid { columns: 3; column-gap: 24px; }
.gallery-page .public-gallery-card { display: block; position: relative; break-inside: avoid; overflow: hidden; margin-bottom: 24px; border-radius: var(--radius); background: var(--primary-dark); box-shadow: var(--shadow); cursor: zoom-in; }
.gallery-page .public-gallery-card img { display: block; width: 100%; height: auto; transition: transform .35s ease; }
.gallery-page .public-gallery-caption { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; color: #fff; font-weight: 600; overflow-wrap: anywhere; }
.gallery-page .public-gallery-caption i { color: var(--accent); }
.gallery-page .public-gallery-card:hover img { transform: scale(1.025); }
.gallery-page a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
.gallery-page .event-tab { overflow-wrap: anywhere; max-width: 100%; }
@media (max-width: 991px) { .gallery-page .public-gallery-grid { columns: 2; } }
@media (max-width: 575px) {
    .gallery-page .public-gallery-grid { columns: 1; }
    .gallery-page .gallery-library-heading { flex-direction: column; gap: 4px; }
    .events-showcase-page.gallery-page .event-hero-grid { padding: 64px 20px; }
}
@media (prefers-reduced-motion: reduce) { .gallery-page .public-gallery-card img { transition: none; } }
