.luxury-gallery-section{

padding:50px 0;

background:#fffdf8;

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

grid-auto-rows:250px;

gap:18px;

}

.gallery-item{

position:relative;

overflow:hidden;

border-radius:22px;

display:block;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.6s;

}

.large{

grid-column:span 2;

grid-row:span 2;

}

.tall{

grid-row:span 2;

}

.wide{

grid-column:span 2;

}

.gallery-overlay{

position:absolute;

inset:0;

background:linear-gradient(to top,rgba(46,11,19,.92),rgba(46,11,19,.15));

display:flex;

flex-direction:column;

justify-content:flex-end;

padding:25px;

opacity:0;

transition:.45s;

}

.gallery-overlay span{

color:#fff;

font-size:20px;

font-weight:600;

}

.gallery-overlay i{

width:55px;

height:55px;

background:#d4af37;

color:#4b1220;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

margin-top:15px;

font-size:20px;

transform:scale(.5);

transition:.4s;

}

.gallery-item:hover img{

transform:scale(1.12);

}

.gallery-item:hover .gallery-overlay{

opacity:1;

}

.gallery-item:hover .gallery-overlay i{

transform:scale(1);

}

@media(max-width:991px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

grid-auto-rows:220px;

}

}

@media(max-width:576px){

.gallery-grid{

grid-template-columns:1fr;

}

.large,

.tall,

.wide{

grid-column:auto;

grid-row:auto;

}

}