.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-4)}.gallery-thumb{aspect-ratio:1;overflow:hidden;cursor:pointer;background:var(--color-background-muted);border-radius:3px}.gallery-thumb picture,.gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease,opacity .2s ease}.gallery-thumb:hover picture,.gallery-thumb:hover img,.gallery-thumb:focus-visible picture,.gallery-thumb:focus-visible img{transform:scale(1.04);opacity:.9}.gallery-thumb:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.gallery-lightbox{margin:auto;padding:0;background:transparent;border:none;display:none}.gallery-lightbox[open]{display:flex}.gallery-lightbox::backdrop{background:#000000e0}.gallery-lightbox__close{position:fixed;top:var(--spacing-5);right:max(var(--spacing-horizontal),calc((100vw - var(--max-width)) / 2));width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.75rem;border-radius:3px;color:#fff;cursor:pointer;outline-color:transparent;transition:background .15s ease,outline-color .15s ease;user-select:none}.gallery-lightbox__close:hover,.gallery-lightbox__close:focus-visible{background:#ffffff4d;outline:2px solid rgba(255,255,255,.6);outline-offset:1px}.gallery-lightbox__nav{position:fixed;bottom:var(--spacing-4);z-index:1;font-size:2.5rem;line-height:1;padding:var(--spacing-4) var(--spacing-5);border-radius:3px;color:#fff;cursor:pointer;outline-color:transparent;transition:background .15s ease,outline-color .15s ease;user-select:none;.gallery-icon{display:block;margin-top:-9px}}.gallery-lightbox__nav:not([disabled]):hover,.gallery-lightbox__nav:focus-visible{background:#ffffff4d;outline:2px solid rgba(255,255,255,.6);outline-offset:1px}.gallery-lightbox__nav[disabled]{opacity:.2;cursor:default}.gallery-lightbox__nav--prev{right:calc(var(--spacing-horizontal) + 70px)}.gallery-lightbox__nav--next{right:var(--spacing-horizontal)}.gallery-lightbox__slides{position:relative;max-width:var(--max-width);line-height:0;display:flex;align-items:center;justify-content:center}.gallery-lightbox__slide{animation:fade-in .2s forwards}.gallery-lightbox__slide:not([hidden]){display:block;margin:0}.gallery-lightbox__slide picture,.gallery-lightbox__slide img{display:block;width:100%;height:auto;max-height:calc(100dvh - 10rem);object-fit:contain;margin:0 auto}.gallery-lightbox__spinner{position:fixed;top:50%;left:50%;width:2.5rem;height:2.5rem;transform:translate(-50%,-50%);border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:gallery-spin .7s linear infinite;transform-origin:center}@keyframes gallery-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.gallery-lightbox__caption{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-5) var(--spacing-7);background:#0000008c;color:#fff;font-size:var(--text-small-size);line-height:var(--text-small-line-height);text-align:center}@media(width>=768px){.gallery{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(width>=1360px){.gallery-lightbox__nav{bottom:unset;top:50%;transform:translateY(-50%)}.gallery-lightbox__nav--prev{right:unset;left:max(var(--spacing-horizontal),calc(((100vw - var(--max-width)) / 2) - 70px))}.gallery-lightbox__nav--next{right:max(var(--spacing-horizontal),calc(((100vw - var(--max-width)) / 2) - 70px))}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.gallery-thumb--video{position:relative}.gallery-thumb__video-wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-thumb__video-wrapper video{width:100%;height:100%;object-fit:cover;pointer-events:none}.gallery-thumb__play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:.9;transition:opacity .2s ease,transform .2s ease}.gallery-thumb:hover .gallery-thumb__play-icon,.gallery-thumb:focus-visible .gallery-thumb__play-icon{opacity:1;transform:translate(-50%,-50%) scale(1.1)}.gallery-lightbox__video{display:block;max-width:100%;max-height:calc(100dvh - 10rem);width:auto;height:auto}
