.ww-gallery-section{
 
padding:80px 0;
 
}
 
.ww-gallery-grid{
 
display:grid;
 
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
 
gap:20px;
 
}
 
.ww-gallery-item{
 
display:block;
 
overflow:hidden;
 
border-radius:18px;
 
}
 
.ww-gallery-item img{
 
width:100%;
 
height:260px;
 
object-fit:cover;
 
transition:.35s;
 
display:block;
 
}
 
.ww-gallery-item:hover img{
 
transform:scale(1.06);
 
}

#ww-gallery-preview{
display:flex;
flex-wrap:wrap;
gap:10px;
margin:15px 0;
}
 
#ww-gallery-preview img{
width:100px;
height:100px;
object-fit:cover;
border-radius:10px;
box-shadow:0 3px 12px rgba(0,0,0,.15);
}
.ww-gallery-item{position:relative;}
.ww-gallery-caption{
    position:absolute;
    left:0;right:0;bottom:0;
    padding:10px 14px;
    background:linear-gradient(transparent,rgba(0,0,0,.65));
    color:#fff;
    font-size:13px;
    opacity:0;
    transition:.25s;
}
.ww-gallery-item:hover .ww-gallery-caption{opacity:1;}

.ww-lightbox{
    display:none;
    position:fixed;inset:0;
    background:rgba(10,10,15,.92);
    z-index:9999;
    align-items:center;
    justify-content:center;
    flex-direction:column;
}
.ww-lightbox.is-open{display:flex;}
.ww-lightbox img{max-width:88vw;max-height:78vh;object-fit:contain;border-radius:6px;}
.ww-lightbox-caption{color:#eee;margin-top:14px;font-size:14px;max-width:80vw;text-align:center;}
.ww-lightbox-close{position:absolute;top:20px;right:24px;background:none;border:0;color:#fff;font-size:34px;cursor:pointer;line-height:1;}
.ww-lightbox-prev,.ww-lightbox-next{
    position:absolute;top:50%;transform:translateY(-50%);
    background:rgba(255,255,255,.12);border:0;color:#fff;
    font-size:20px;width:44px;height:44px;border-radius:50%;cursor:pointer;
}
.ww-lightbox-prev{left:18px;}
.ww-lightbox-next{right:18px;}
.ww-lightbox-prev:hover,.ww-lightbox-next:hover,.ww-lightbox-close:hover{background:rgba(255,255,255,.25);}
@media(max-width:640px){
    .ww-lightbox-prev,.ww-lightbox-next{width:38px;height:38px;font-size:16px;}
}
