body{
    background:#f8f5f1;
    font-family:'Poppins',sans-serif;
}

.gallery-section{
    padding:80px 0;
    padding-top: 10px;
}

.room-heading{
    background: #f8f8f8;
}

/* Top Text */
.small-text{
    font-size: 13px;
    letter-spacing: 2px;
    color: #c5a47e;
    font-weight: 600;
}

/* Main Heading */
.main-heading{
    font-size: 52px;
    font-family: "Times New Roman", serif;
    font-weight: 600;
    color: #3b2618;
    margin-bottom: 12px;
}

/* Subtitle */
.sub-text{
    font-size: 15px;
    color: #666;
    max-width: 600px;
    margin: auto;
    line-height: 1.7;
}

/* Decorative Lines */
.line{
    width: 90px;
    height: 2px;
    display: inline-block;
    border-radius: 50px;
    background: linear-gradient(
        to right,
        rgba(216,194,168,0),
        rgba(216,194,168,0.9),
        rgba(216,194,168,0)
    );
}

/* Bottom Design */
.bottom-design{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.diamond{
    color: #d8c2a8;
    font-size: 14px;
}


.gallery-filter{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:60px;
}

.filter-btn{

    border:1px solid #d8c3ae;
    background:transparent;
    padding:8px 6px;
    border-radius:50px;
    color:#5b4333;
    text-decoration:none;
    min-width:110px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:0.3s;
    position:relative;
    font-weight:500;
    color:#5b4333 !important;
    font-size: 12px;
}

/* HOVER */

.filter-btn:hover{
    background: #c9a26d;
    color: white;
    transition: .3s ease;
}

/* ACTIVE */

.filter-btn.active{
    background: #c9a26d;
    color: white !important;
    border: 1px solid #c9a26d;
    box-shadow: 0 4px 12px rgba(201,162,109,.25);
}

/* =========================
   GRID
========================= */

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
}

/* =========================
   CARD
========================= */

.gallery-card{
    position:relative;
}

.gallery-btn-main{
    border:none;
    background:transparent;
    width:100%;
    padding:0;
    text-align:left;
}

/* =========================
   IMAGE
========================= */

.gallery-image{
    height:390px;
    border-radius:10px;
    overflow:hidden;
    position:relative;
}

.gallery-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:0.5s;
}

.gallery-card:hover .gallery-image img{
    transform:scale(1.06);
}

/* =========================
   CONTENT BOX
========================= */

.gallery-content{
    background:#fff;
    width:90%;
    margin:auto;
    margin-top:-40px;
    position:relative;
    z-index:10;
    border-radius:10px;
    padding:26px;
    box-shadow:0 10px 30px rgba(0,0,0,0.06);
}

.gallery-content h3{
    font-size:22px;
    color:#2e1c11;
    margin-bottom:10px;
    font-weight:500;
    line-height:1.1;
    font-family:serif;
}

.gallery-content p{
    color:#8d8d8d;
    margin-bottom:20px;
    font-size:15px;
}

/* =========================
   VIEW BUTTON
========================= */

.gallery-view-btn{
    display:flex;
    align-items:center;
    gap:12px;
    color:#5b3a23;
    font-size:15px;
    font-weight:500;
}

.view-icon{
    width:28px;
    height:28px;
    border-radius:50%;
    background:#c89a61;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:12px;
}

/* =========================
   LOAD MORE
========================= */

.gallery-load-more{
    text-align:center;
    margin-top:55px;
}

.gallery-load-more button{
    background:#99633f;
    color:#fff;
    padding:12px 50px;
    border-radius:25px;
    text-decoration:none;
    display:inline-block;
    font-size:18px;
    transition:0.3s;
    border:none;
}

.gallery-load-more button:hover{
    background:#74492c;
}

/* =========================
   IMAGE MODAL
========================= */

.image-modal-wrapper{

    width:100%;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

}

/* IMAGE */

.image-modal-wrapper img{

    width:auto;

    max-width:100%;

    max-height:75vh;

    object-fit:contain;

    border-radius:16px;

    display:block;

    margin:auto;

}

/* MODAL */

#room-images .modal-content{

    border:none;

    border-radius:24px;

    overflow:hidden;

}

/* HEADER */

#room-images .modal-header{

    padding:22px 28px;

}

/* BODY */

#room-images .modal-body{

    padding:20px;

    background:#f8f8f8;

}

/* CLOSE BUTTON */

#room-images .btn-close{

    font-size:14px;

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1400px){

    html,
    body{
        overflow-x:hidden;
    }

    .gallery-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .image-modal-wrapper img{

        max-height:78vh;

    }


}

@media(max-width:992px){

    html,
    body{
        overflow-x:hidden;
    }

    .gallery-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .gallery-top h1{
        font-size:60px;
    }

    #room-images .modal-dialog{

        max-width:92%;

    }

    .image-modal-wrapper img{

        max-height:72vh;

        border-radius:14px;

    }

}

@media(max-width:768px){

    html,
    body{
        overflow-x:hidden;
    }

    .gallery-top h1{
        font-size:42px;
    }

    .gallery-top p{
        font-size:15px;
        padding:0 20px;
    }

    .gallery-image{
        height:300px;
    }

    .gallery-content h3{
        font-size:28px;
    }

    #room-images .modal-dialog{

        margin:20px auto;

        max-width:92%;

    }

    #room-images .modal-content{

        border-radius:20px;

    }

    #room-images .modal-header{

        padding:18px 22px;

    }

    #room-images .modal-title{

        font-size:26px;

    }

    #room-images .modal-body{

        padding:16px;

    }

    .image-modal-wrapper{

        width:100%;

        display:flex;

        align-items:center;

        justify-content:center;

    }

    .image-modal-wrapper img{

        width:100%;

        max-width:100%;

        max-height:72vh;

        object-fit:contain;

        border-radius:14px;

    }


}

@media(max-width:576px){

    html,
    body{
        overflow-x:hidden;
    }

    .container{
        overflow:hidden;
    }

    .room-heading{
        background: #f8f8f8;
        overflow: hidden !important;
    }

    /* Top Text */
    .small-text{
        font-size: 7px;
        letter-spacing: 0.5px;
        color: #c5a47e;
        font-weight: 600;
    }

    /* Main Heading */
    .main-heading{
        font-size: 25px;
        font-family: "Times New Roman", serif;
        font-weight: 600;
        color: #3b2618;
        margin-bottom: 12px;
    }

    /* Subtitle */
    .sub-text{
        font-size: 9px;
        color: #666;
        max-width: 600px;
        margin: auto;
        line-height: 1.7;
    }




    .gallery-grid{
        grid-template-columns:1fr;
        overflow: hidden;
    }

    .gallery-filter{
        gap:10px;
        overflow: hidden;
    }

    .filter-btn{

        min-width:auto;
        height:40px;
        padding:8px 2px;
        font-size:10px;

    }

    .gallery-content{
        width:92%;
        padding:20px;
    }

     #room-images .modal-dialog{

        margin:12px;

    }

    #room-images .modal-content{

        border-radius:18px;

    }

    #room-images .modal-header{

        padding:14px 18px;

    }

    #room-images .modal-title{

        font-size:22px;

    }

    #room-images .modal-body{

        padding:12px;

    }

    .image-modal-wrapper{

        min-height:auto;

    }

    .image-modal-wrapper img{

        width:100%;

        max-width:100%;

        max-height:65vh;

        object-fit:contain;

        border-radius:12px;

    }


}
       

