/* galeria: taśma zdjęć 3:4 w jednym rzędzie; gdy zdjęcia nie mieszczą się w szerokości, taśma sama powoli płynie (js/gallery.js) */
.gal{--g:clamp(.6rem,1.2vw,1rem);--w:clamp(13rem,21vw,19rem);display:block;overflow:hidden;position:relative}
.gal-track{display:flex;gap:var(--g);width:max-content}
.gal figure{position:relative;margin:0;flex:0 0 var(--w);width:var(--w);aspect-ratio:3/4;overflow:hidden;border-radius:.3rem;background:#cfdae0}
.gal button{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.gal figure:hover img,.gal button:focus-visible img{transform:scale(1.05)}
.gal figcaption{position:absolute;left:.7rem;bottom:.7rem;right:.7rem;width:fit-content;max-width:calc(100% - 1.4rem);padding:.35rem .8rem;border-radius:99px;background:#0f1a20a8;color:#fff;font:500 .8rem/1.3 var(--fb);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #ffffff3d;pointer-events:none}
.gal.run .gal-track{will-change:transform;backface-visibility:hidden;animation:galrun var(--dur,40s) linear infinite}
.gal.run:hover .gal-track,.gal.run:focus-within .gal-track{animation-play-state:paused}
@keyframes galrun{to{transform:translateX(calc(-1 * var(--shift)))}}
@media(max-width:860px){.gal{--w:min(62vw,15rem)}}
@media(prefers-reduced-motion:reduce){.gal.run .gal-track{will-change:transform;backface-visibility:hidden;animation:none}.gal{overflow-x:auto}.gal img{transition:none}}
.lb{border:0;padding:0;background:none;max-width:100vw;max-height:100vh;width:100%;height:100%;color:#fff}
.lb::backdrop{background:#0a1218e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lb[open]{display:grid;place-items:center;animation:lbin .3s both}@keyframes lbin{from{opacity:0}}
.lb figure{margin:0;display:grid;gap:.8rem;justify-items:center;max-width:min(92vw,70rem)}
.lb img{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:1rem;box-shadow:0 30px 80px #000a}
.lb figcaption{font:500 .95rem var(--fb);color:#e6eef2}
.lb button{position:absolute;display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;border:1px solid #ffffff44;background:#ffffff1f;color:#fff;font:300 1.6rem/1 var(--fh);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lb button:hover{background:#fff;color:#17222a}.lb .x{top:1rem;right:1rem}.lb .pv2{left:1rem;top:50%}.lb .nx{right:1rem;top:50%}
@media(prefers-reduced-motion:reduce){.lb[open]{animation:none}}
