.gallery{z-index:20;color:#fff;-webkit-backdrop-filter:blur(6px);background:#14100ce6;grid-template-rows:auto 1fr auto;animation:.25s cubic-bezier(.2,.7,.2,1) fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.gallery-top{font-family:var(--display,"Playfair Display", serif);align-items:center;gap:16px;padding:14px 20px;font-size:20px;display:flex}.gallery-logo{border-radius:50%;width:44px;height:44px;box-shadow:0 2px 12px #00000059}.gallery-count{letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-family:Jost,sans-serif;font-size:12px}.gallery-close{color:#fff;background:#ffffff1f;border:0;border-radius:50%;width:40px;height:40px;margin-left:auto;font-size:26px;line-height:1}.gallery-stage{cursor:zoom-in;justify-content:center;align-items:center;min-height:0;margin:0;padding:0 72px;display:flex;position:relative;overflow:hidden}.gallery-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:6px;max-width:100%;max-height:100%;transition:transform .35s cubic-bezier(.2,.7,.2,1);box-shadow:0 20px 60px #0006}.gallery-stage.zoomed{cursor:zoom-out}.gallery-stage.zoomed img{transition:transform .35s cubic-bezier(.2,.7,.2,1),transform-origin 50ms linear;transform:scale(2.4)}.gallery-stage figcaption{letter-spacing:.1em;opacity:.55;pointer-events:none;font-size:11px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.gallery-nav{color:#fff;z-index:2;background:#ffffff24;border:0;border-radius:50%;width:48px;height:48px;font-size:30px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav:hover,.gallery-close:hover{background:#ffffff42}.gallery-nav.prev{left:14px}.gallery-nav.next{right:14px}.gallery-strip{scrollbar-width:none;justify-content:center;gap:8px;padding:12px 16px 18px;display:flex;overflow-x:auto}.gallery-strip::-webkit-scrollbar{display:none}.gallery-strip button{opacity:.55;background:0 0;border:2px solid #0000;border-radius:10px;flex-shrink:0;width:64px;height:64px;padding:0;transition:opacity .2s,border-color .2s;overflow:hidden}.gallery-strip button.on{opacity:1;border-color:#fff}.gallery-strip img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=760px){.gallery-top{gap:10px;padding:10px 12px;font-size:16px}.gallery-logo{width:34px;height:34px}.gallery-stage{padding:0 8px}.gallery-nav{width:40px;height:40px;font-size:24px}.gallery-strip button{width:52px;height:52px}}
