body.tufa-gallery{background:#151410;color:#f2ede4}
.gallery-page{min-height:100svh;font-family:Montserrat,Arial,sans-serif}
.gallery-accessible-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.gallery-collection{padding:24px;scroll-margin-top:24px}
.gallery-editorial-grid{column-count:3;column-gap:18px}
.gallery-photo{display:inline-block;vertical-align:top;width:100%;margin:0 0 18px;min-width:0;break-inside:avoid}
.gallery-photo-link{display:block;overflow:hidden;background:#211f19}
.gallery-photo img{display:block;width:100%;height:auto;object-fit:contain;transition:filter .3s ease}
.gallery-photo-link:hover img{filter:brightness(1.07)}
.gallery-empty{text-align:center;padding:80px 24px;color:#a79f90;font-size:14px}
.gallery-lightbox{background:#151410;color:#f2ede4;border:1px solid #b69a6350;padding:56px 20px 20px;width:min(1200px,94vw);max-height:94svh}
.gallery-lightbox::backdrop{background:#000e}
.gallery-lightbox figure{margin:0}
.gallery-lightbox img{display:block;width:100%;max-height:calc(94svh - 80px);object-fit:contain}
.gallery-lightbox-close{position:absolute;right:12px;top:6px;border:0;background:transparent;color:#e4d4b7;font-size:30px;min-width:44px;min-height:44px;cursor:pointer}
.gallery-page a:focus-visible,.gallery-lightbox button:focus-visible{outline:2px solid #d3bb8e;outline-offset:3px}
@media(max-width:1100px){.gallery-editorial-grid{column-count:2}}
@media(max-width:600px){.gallery-collection{padding:12px}.gallery-editorial-grid{column-count:1}.gallery-photo{margin-bottom:12px}.gallery-lightbox{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:56px 10px 10px}.gallery-lightbox img{max-height:calc(100dvh - 90px)}}
@media(prefers-reduced-motion:reduce){.gallery-photo img{transition:none}}

/* Photos remain the only visible gallery content. */
.gallery-page{overflow-x:clip}
.gallery-photo-link{position:relative}
.gallery-motion .gallery-photo>.gallery-photo-link{opacity:0;transform:translate3d(var(--gallery-shift,0px),28px,0);clip-path:inset(5% 3%);transition:opacity .75s ease,transform 1.15s cubic-bezier(.16,1,.3,1),clip-path 1.2s cubic-bezier(.16,1,.3,1)}
.gallery-motion .gallery-photo.gallery-in-view>.gallery-photo-link{opacity:1;transform:none;clip-path:inset(0);transition-delay:var(--gallery-delay,0ms)}
.gallery-photo-link::after{content:"";position:absolute;inset:12px;border:1px solid #f1dfba80;opacity:0;transform:scale(.98);transition:opacity .4s,transform .6s cubic-bezier(.16,1,.3,1);pointer-events:none}
.gallery-photo img{transition:filter .5s ease}
@media(hover:hover) and (pointer:fine){.gallery-photo-link:hover::after{opacity:1;transform:none}.gallery-photo-link:hover img{filter:brightness(1.08) saturate(1.04)}}
.gallery-photo-link:focus-visible::after{opacity:1;transform:none}
.gallery-modal-open{overflow:hidden}
.gallery-lightbox[open]{animation:gallery-lightbox-enter .4s cubic-bezier(.16,1,.3,1) both}
.gallery-lightbox[open]::backdrop{animation:gallery-backdrop-enter .35s ease both}
.gallery-lightbox img{opacity:1;transform:none;transition:opacity .4s ease,transform .55s cubic-bezier(.16,1,.3,1)}
.gallery-lightbox.gallery-loading img{opacity:0;transform:translateY(10px)}
.gallery-lightbox.gallery-closing{animation:gallery-lightbox-leave .18s ease both}
.gallery-lightbox.gallery-closing::backdrop{animation:gallery-backdrop-leave .18s ease both}
.gallery-lightbox-close{transition:color .25s,transform .3s}
.gallery-lightbox-close:hover{color:#fff;transform:rotate(90deg)}
@keyframes gallery-lightbox-enter{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@keyframes gallery-lightbox-leave{from{opacity:1;transform:none}to{opacity:0;transform:translateY(10px) scale(.985)}}
@keyframes gallery-backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes gallery-backdrop-leave{from{opacity:1}to{opacity:0}}
@media(max-width:600px){.gallery-motion .gallery-photo>.gallery-photo-link{transform:translateY(22px);transition-delay:0ms}.gallery-motion .gallery-photo.gallery-in-view>.gallery-photo-link{transform:none}}
@media(prefers-reduced-motion:reduce){.gallery-page *,.gallery-page *::after,.gallery-lightbox,.gallery-lightbox::backdrop,.gallery-lightbox *{animation:none!important;transition:none!important}.gallery-motion .gallery-photo>.gallery-photo-link{opacity:1;transform:none;clip-path:none}.gallery-lightbox-close:hover{transform:none}}
@media print{.gallery-motion .gallery-photo>.gallery-photo-link{opacity:1;transform:none;clip-path:none}}
