.gallery-thumb{display:block;width:100%;border:0;padding:0;margin:0;background:transparent;border-radius:24px;cursor:pointer;overflow:hidden;text-align:left}
.gallery-thumb img{display:block;width:100%;height:auto;transition:transform .2s ease,filter .2s ease}
.gallery-thumb:hover img{transform:scale(1.025);filter:saturate(1.06)}
.gallery-thumb:focus-visible{outline:4px solid var(--cta,#ffc928);outline-offset:4px}
.gallery-lightbox[hidden]{display:none!important}
.gallery-lightbox{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:clamp(16px,3vw,40px);background:rgba(8,18,38,.86)}
.gallery-lightbox__backdrop{position:absolute;inset:0}
.gallery-lightbox__panel{position:relative;z-index:1;width:min(1180px,96vw);height:min(820px,90vh);display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr;gap:12px;align-items:center}
.gallery-lightbox__panel figure{grid-column:1/4;grid-row:2;margin:0;height:100%;display:grid;grid-template-rows:1fr auto;place-items:center;gap:12px}
.gallery-lightbox__panel img{max-width:100%;max-height:calc(90vh - 100px);object-fit:contain;border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.gallery-lightbox__counter{color:#fff;font-weight:600;text-align:center;min-height:1.5rem}
.gallery-lightbox__close,.gallery-lightbox__nav{border:0;border-radius:999px;background:#fff;color:#10284f;box-shadow:0 16px 40px rgba(0,0,0,.25);cursor:pointer;font-family:inherit;font-weight:700}
.gallery-lightbox__close{grid-column:3;grid-row:1;justify-self:end;width:48px;height:48px;font-size:32px;line-height:1}
.gallery-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:44px;line-height:1;z-index:2}
.gallery-lightbox__prev{left:0}.gallery-lightbox__next{right:0}
.gallery-lightbox__close:hover,.gallery-lightbox__nav:hover{background:var(--cta,#ffc928);color:#10284f}
.gallery-lightbox__close:focus-visible,.gallery-lightbox__nav:focus-visible{outline:4px solid #fff;outline-offset:4px}
.has-gallery-lightbox{overflow:hidden}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (prefers-reduced-motion:reduce){.gallery-thumb img{transition:none}}
@media (max-width:700px){.gallery-lightbox{padding:12px}.gallery-lightbox__panel{height:92vh}.gallery-lightbox__nav{width:44px;height:44px;font-size:36px}.gallery-lightbox__prev{left:4px}.gallery-lightbox__next{right:4px}.gallery-lightbox__panel img{max-height:calc(92vh - 96px)}}
