.gallery-section{

    padding:100px 0;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

}

.gallery-item{

    overflow:hidden;

    border-radius:18px;

    cursor:pointer;

    position:relative;

    box-shadow:0 10px 30px rgba(0,0,0,.15);

}

.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.4s;

}

.gallery-item:hover img{

    transform:scale(1.08);

}

.large{

    grid-column:span 2;

    grid-row:span 2;

}

.tall{

    grid-row:span 2;

}

.wide{

    grid-column:span 2;

}

@media(max-width:991px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

.large{

grid-column:span 2;

}

.wide{

grid-column:span 2;

}

}

@media(max-width:768px){

.gallery-grid{

grid-template-columns:1fr;

grid-auto-rows:250px;

}

.large,
.wide,
.tall{

grid-column:span 1;

grid-row:span 1;

}

}

.lightbox{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.9);

    display:none;

    justify-content:center;

    align-items:center;

    z-index:9999;

}

.lightbox img{

    max-width:90%;

    max-height:90%;

    border-radius:10px;

}

.close{

    position:absolute;

    top:20px;

    right:35px;

    color:#fff;

    font-size:45px;

    cursor:pointer;

}