.elysian-gallery{width:100%;margin:0 auto;color:inherit}
.elysian-gallery [hidden]{display:none!important}
.elysian-gallery__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin:5px 0 12px}
.elysian-gallery__filters button{appearance:none;border:0;border-radius:0;background:#070412;color:#fff;padding:10px 20px;font:inherit;line-height:1.4;cursor:pointer;min-height:44px}
.elysian-gallery__filters button:hover,.elysian-gallery__filters button[aria-pressed=true]{background:#ff0;color:#070412}
.elysian-gallery a:focus-visible,.elysian-gallery button:focus-visible{outline:3px solid #1473bd;outline-offset:3px}
.elysian-gallery__category-title{font-size:1.1rem;margin:18px 0 12px}
.elysian-gallery.is-ready .elysian-gallery__category-title{display:none}
.elysian-gallery__grid{display:flex;flex-wrap:wrap;gap:3px;align-items:flex-start}
.elysian-gallery__grid:after{content:"";flex:999 1 0}
.elysian-gallery__item{margin:0!important;min-width:0;flex:var(--image-ratio,1.5) 1 calc(var(--image-ratio,1.5)*150px);background:#f0f0f0;overflow:hidden}
.elysian-gallery__link{display:block;position:relative;line-height:0;overflow:hidden}
.elysian-gallery__item img{display:block;width:100%;height:auto;max-width:100%;aspect-ratio:var(--image-ratio,1.5);object-fit:cover;transition:filter .15s}
.elysian-gallery__link:hover img{filter:brightness(.8)}
.elysian-gallery__item figcaption{padding:8px;font-size:14px;line-height:1.4}
.elysian-gallery--sponsors .elysian-gallery__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(228px,100%),228px));gap:20px;justify-content:center}
.elysian-gallery--sponsors .elysian-gallery__grid:after{display:none}
.elysian-gallery--sponsors .elysian-gallery__item{border:1px solid #ccc;background:transparent}
.elysian-gallery--sponsors .elysian-gallery__item img{height:115px;aspect-ratio:auto;object-fit:contain;background:#fff}
.elysian-gallery .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
body.elysian-lightbox-open{overflow:hidden}
dialog.elysian-lightbox{box-sizing:border-box;border:0;padding:0;margin:0;width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;background:rgba(0,0,0,.97);color:#fff;overflow:hidden}
.elysian-lightbox::backdrop{background:#000}
.elysian-lightbox[open]{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center}
.elysian-lightbox button{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;border:1px solid #666;border-radius:0;background:#171717;color:#fff;padding:10px;cursor:pointer}
.elysian-lightbox button:hover{background:#ff0;color:#070412}
.elysian-lightbox__toolbar{position:absolute;top:12px;right:12px;display:flex;gap:8px;z-index:2}
.elysian-lightbox__prev{grid-column:1;grid-row:1;justify-self:center;z-index:2}
.elysian-lightbox__next{grid-column:3;grid-row:1;justify-self:center;z-index:2}
.elysian-lightbox__figure{grid-column:2;grid-row:1;margin:70px 0 50px;min-width:0;text-align:center}
.elysian-lightbox__image-wrap{max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);overflow:hidden;display:flex;align-items:center;justify-content:center;touch-action:pan-y}
.elysian-lightbox__image-wrap img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);object-fit:contain}
.elysian-lightbox__figure figcaption{font-size:15px;line-height:1.4;padding:12px 8px 0;color:#fff}
.elysian-lightbox__figure figcaption:empty{display:none}
.elysian-gallery .elysian-lightbox__count{position:absolute;bottom:10px;left:0;right:0;text-align:center;margin:0;color:#fff;font-size:14px}
.elysian-lightbox.is-zoomed .elysian-lightbox__image-wrap{overflow:auto;display:block;touch-action:auto}
.elysian-lightbox.is-zoomed .elysian-lightbox__image-wrap img{max-width:none;max-height:none;margin:auto}
@media(max-width:600px){.elysian-gallery__filters{justify-content:stretch}.elysian-gallery__filters button{flex:1 1 100%;padding:10px 12px;font-size:14px}.elysian-gallery__item{flex-basis:calc(var(--image-ratio,1.5)*115px)}.elysian-lightbox[open]{grid-template-columns:48px minmax(0,1fr) 48px}.elysian-lightbox__toolbar{top:8px;right:8px}.elysian-lightbox__figure{margin-top:68px}.elysian-lightbox__image-wrap img{max-height:calc(100dvh - 160px)}}
@media(prefers-reduced-motion:reduce){.elysian-gallery__item img{transition:none}}
