/*==========================================================
                    GALLERY HERO
==========================================================*/

.gallery-hero{

    background:#FFFBF6;

    padding:150px 0 120px;

    min-height:68vh;

    display:flex;

    align-items:center;

}

.gallery-hero-content {
    width: 100%;
    margin: 0;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
}

.gallery-hero-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.gallery-hero-image {
    max-width: 50%;
    height: 20rem;
    display: block;
    margin-left: auto;
    margin-right: 0;
    flex-shrink: 0;
}

@media (max-width: 767.98px) {
    .gallery-hero-image {
        display: none; /* Hide the image on small screens */
    }
}

.gallery-hero .container{

    max-width:1280px;

    margin:auto;

}

.gallery-hero .section-tag{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 18px;

    border:1px solid #E7D5C2;

    border-radius:999px;

    background:#FFFBF6;

    color:#8A5B33;

    font-size:12px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:28px;

}

.gallery-hero h1{

    font-family:"Montserrat", sans-serif;

    font-size:45px;

    line-height:1.08;

    color:#241816;

    max-width:700px;

    margin-bottom:28px;

}

.gallery-hero p{

    font-size:20px;

    line-height:1.7;

    color:#666;

    max-width:620px;

}


/*==========================================================
                        GALLERY
==========================================================*/

.gallery-section{

    background:#FFFFFF;

    padding:70px 0 100px;

}


/*==========================================================
                    GALLERY FILTERS
==========================================================*/

.gallery-filters{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:40px;

    flex-wrap:wrap;

}


.gallery-filter{

    height:40px;

    padding:0 18px;

    border:1px solid #E5DDD5;

    border-radius:999px;

    background:#FFFFFF;

    color:#3A312E;

    font-family:"Montserrat",sans-serif;

    font-size:14px;

    font-weight:500;

    cursor:pointer;

    transition:.3s ease;

}


.gallery-filter:hover{

    border-color:#FDB52A;

    background:#FFF9F0;

}


.gallery-filter.active{

    background:#FDB52A;

    border-color:#FDB52A;

    color:#241816;

}


/*==========================================================
                    GALLERY GRID
==========================================================*/

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:24px;

    align-items:start;

}


/*==========================================================
                    GALLERY ITEM
==========================================================*/

.gallery-item{

    width:100%;

    overflow:hidden;

    border-radius:24px;

    background:#F5F2EE;

    position:relative;

}


.gallery-item img{

    width:100%;

    height:100%;

    display:block;

    object-fit:cover;

    transition:transform .5s ease;

}


/*==========================================================
                    IMAGE HEIGHTS
==========================================================*/

.gallery-item-tall{

    height:300px;

}


.gallery-item-medium{

    height:220px;

}


/*==========================================================
                    HOVER
==========================================================*/

.gallery-item:hover img{

    transform:scale(1.04);

}


/*==========================================================
                    DESKTOP POSITIONING
==========================================================*/

/*
    This creates the staggered / masonry-like
    arrangement shown in your screenshot.
*/


.gallery-item:nth-child(1){

    height:220px;

}


.gallery-item:nth-child(2){

    height:270px;

}


.gallery-item:nth-child(3){

    height:270px;

}


.gallery-item:nth-child(4){

    height:220px;

}


.gallery-item:nth-child(5){

    height:270px;

}


.gallery-item:nth-child(6){

    height:220px;

}


.gallery-item:nth-child(7){

    height:270px;

}


.gallery-item:nth-child(8){

    height:270px;

}


/*==========================================================
                    TABLET
==========================================================*/

@media (max-width:900px){

    .gallery-grid{

        grid-template-columns:repeat(2,1fr);

        gap:18px;

    }

}


/*==========================================================
                    MOBILE
==========================================================*/

@media (max-width:600px){

    .gallery-section{

        padding:50px 0 70px;

    }


    .gallery-filters{

        gap:8px;

        margin-bottom:28px;

    }


    .gallery-filter{

        height:38px;

        padding:0 15px;

        font-size:13px;

    }


    .gallery-grid{

        grid-template-columns:1fr;

        gap:16px;

    }


    .gallery-item,
    .gallery-item-tall,
    .gallery-item-medium{

        height:260px !important;

    }

}



/*==========================================================
                        FOOTER
==========================================================*/

.footer{

    background:#FFFBF6;

    padding:90px 0 0;

    border-top:1px solid #ECECEC;

}

.footer-container{

    display:grid;

    grid-template-columns:1.2fr 2fr;

    gap:80px;

}

/*==========================================================
                    LEFT SIDE
==========================================================*/

.footer-logo{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:28px;

}

.footer-logo img{

    width:62px;

    height:62px;

    border-radius:50%;

}

.footer-logo h3{

    font-family:"Montserrat",sans-serif;

    font-size:24px;

    font-weight:600;

    color:#241816;

    margin-bottom:4px;

}

.footer-logo span{

    font-size:16px;

    color:#8A5B33;

}

.footer-about p{

    font-size:14px;

    line-height:1.8;

    color:#5B5B5B;

    margin-bottom:22px;

}

.footer-social{

    display:flex;

    gap:12px;

    margin-bottom:24px;

}

.footer-social a{

    width:42px;

    height:42px;

    border:1px solid #DDD;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.3s;

}

.footer-social a:hover{

    background:#FDB52A;

    border-color:#FDB52A;

}

.footer-about small{

    display:block;

    margin-top:8px;

    font-size:12px;

    color:#777;

}

/*==========================================================
                    RIGHT SIDE
==========================================================*/

.footer-links{

    display:grid;

    grid-template-columns:1fr 1fr 1fr 1.35fr;

    gap:45px;

}

.footer-links h4{

    font-size:12px;

    letter-spacing:3px;

    color:#8A5B33;

    margin-bottom:24px;

}

.footer-links a{

    display:block;

    font-size:13px;

    color:#2B2B2B;

    margin-bottom:14px;

    transition:.3s;

}

.footer-links a:hover{

    color:#D98A2B;

}

/*==========================================================
                    CONTACT COLUMN
==========================================================*/

.footer-contact{

    display:flex;

    flex-direction:column;

}

.footer-contact p{

    font-size:13px;

    line-height:1.8;

    color:#5B5B5B;

    margin-bottom:12px;

}


/*==========================================================
                    FOOTER DONATE
==========================================================*/

.footer-donate{

    margin-top:24px;

}

.footer-donate .donate-btn{

    width:220px;

    height:52px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    margin:0 auto;

}

/*==========================================================
                    BOTTOM
==========================================================*/

.footer-bottom{

    margin-top:45px;

    padding:24px 0;

    border-top:1px solid #E5E5E5;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.footer-bottom p{

    font-size:11px;

    color:#666;

}

/*==========================================================
                GALLERY PAGE RESPONSIVE
==========================================================*/


/*==========================================================
                        TABLET
                    651px - 1000px
==========================================================*/

@media (max-width:1000px){

    /*------------------------------------------------------
                        CONTAINER
    ------------------------------------------------------*/

    .container{

        width:90%;

    }


    /*------------------------------------------------------
                    GALLERY HERO
    ------------------------------------------------------*/

    .gallery-hero{

        padding:110px 0 90px;

        min-height:auto;

    }


    .gallery-hero .container{

        width:90%;

    }


    .gallery-hero h1{

        font-size:52px;

        line-height:1.05;

        max-width:750px;

    }


    .gallery-hero p{

        font-size:17px;

        line-height:1.7;

        max-width:650px;

    }


    /*------------------------------------------------------
                    GALLERY SECTION
    ------------------------------------------------------*/

    .gallery-section{

        padding:60px 0 90px;

    }


    /*------------------------------------------------------
                    GALLERY GRID
    ------------------------------------------------------*/

    .gallery-grid{

        grid-template-columns:repeat(2,1fr);

        gap:22px;

    }


    /*------------------------------------------------------
                    GALLERY ITEM
    ------------------------------------------------------*/

    .gallery-item{

        width:100%;

    }


    .gallery-item img{

        width:100%;

        height:260px;

        object-fit:cover;

    }


    /*------------------------------------------------------
                    FOOTER
    ------------------------------------------------------*/

    .footer-container{

        grid-template-columns:1fr;

        gap:50px;

    }


    .footer-links{

        grid-template-columns:repeat(2,1fr);

        gap:35px;

    }

}


/*==========================================================
                        MOBILE
                      650px BELOW
==========================================================*/

@media (max-width:650px){


    /*------------------------------------------------------
                        GLOBAL
    ------------------------------------------------------*/

    .container{

        width:90%;

    }


    /*------------------------------------------------------
                    GALLERY HERO
    ------------------------------------------------------*/

    .gallery-hero{

        padding:60px 0 70px;

        min-height:auto;

    }


    .gallery-hero .container{

        width:90%;

    }


    .gallery-hero .section-tag{

        font-size:10px;

        letter-spacing:2px;

        padding:7px 15px;

        margin-bottom:20px;

    }


    .gallery-hero h1{

        font-size:40px;

        line-height:1.05;

        max-width:100%;

        margin-bottom:22px;

    }


    .gallery-hero p{

        font-size:15px;

        line-height:1.7;

        max-width:100%;

    }


    /*------------------------------------------------------
                    GALLERY SECTION
    ------------------------------------------------------*/

    .gallery-section{

        padding:45px 0 70px;

    }


    /*------------------------------------------------------
                    GALLERY HEADING
    ------------------------------------------------------*/

    .gallery-section h2{

        font-size:32px;

        line-height:1.15;

        margin-bottom:25px;

    }


    /*------------------------------------------------------
                    GALLERY GRID
    ------------------------------------------------------*/

    .gallery-grid{

        grid-template-columns:1fr;

        gap:18px;

    }


    /*------------------------------------------------------
                    GALLERY ITEM
    ------------------------------------------------------*/

    .gallery-item{

        width:100%;

        border-radius:22px;

        overflow:hidden;

    }


    .gallery-item img{

        width:100%;

        height:260px;

        object-fit:cover;

    }


    /*------------------------------------------------------
                    GALLERY CAPTION
    ------------------------------------------------------*/

    .gallery-item-content{

        padding:18px;

    }


    .gallery-item h3{

        font-size:20px;

        line-height:1.3;

    }


    .gallery-item p{

        font-size:13px;

        line-height:1.7;

    }


    /*------------------------------------------------------
                    FOOTER
    ------------------------------------------------------*/

    .footer{

        padding:60px 0 0;

    }


    .footer-container{

        display:flex;

        flex-direction:column;

        gap:40px;

    }


    .footer-links{

        display:grid;

        grid-template-columns:1fr 1fr;

        gap:30px 20px;

    }


    .footer-links h4{

        font-size:11px;

        letter-spacing:2px;

    }


    .footer-links a{

        font-size:12px;

    }


    .footer-bottom{

        flex-direction:column;

        align-items:flex-start;

        gap:10px;

    }

}


