/*====================================================
PAGE HEADER
====================================================*/

.gallery-header{

    position:relative;

    height:320px;

    overflow:hidden;

}

.gallery-header img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center;

    transform:scale(1.02);

}

.gallery-header .overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        90deg,
        rgba(10,33,75,.92),
        rgba(10,33,75,.55),
        rgba(10,33,75,.15)
    );

}

.gallery-header h1{

    position:absolute;

    left:70px;

    bottom:120px;

    transform:none;

    color:#fff;

    width:auto;

    max-width:700px;

    text-align:left;

    font-size:4rem;

    font-weight:800;

    text-transform:uppercase;

    letter-spacing:.5px;

    line-height:1.2;

    z-index:5;

    text-shadow:0 3px 12px rgba(0,0,0,.35);

}

/*==================================
Gallery Section
==================================*/

.gallery-section{
    padding:70px 0;
    background:#f5f7fb;
}

.page-heading{

    text-align:center;
    font-size:50px;
    font-weight:700;
    color:#4A1F74;
    margin-bottom:55px;
    letter-spacing:.5px;
    position:relative;

}

.page-heading::after{

    content:"";
    display:block;
    width:150px;
    height:4px;
    margin:16px auto 0;
    background:linear-gradient(90deg,#F59E0B,#4A1F74);
    border-radius:50px;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.gallery-item{

    overflow:hidden;

    background:#fff;

    cursor:pointer;

}

.gallery-item img{

    width:100%;

    height:270px;

    object-fit:cover;

    transition:.4s;

    display:block;

}

.gallery-item:hover img{

    transform:scale(1.08);

}

/*=====================
Lightbox
=====================*/

.lightbox{

    display:none;

    position:fixed;

    z-index:99999;

    inset:0;

    background:rgba(0,0,0,.92);

}

.lightbox img{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    max-width:82%;

    max-height:85%;

    box-shadow:0 15px 40px rgba(0,0,0,.5);

}

.close{

    position:absolute;

    right:35px;

    top:20px;

    color:#fff;

    font-size:48px;

    cursor:pointer;

}

.prev,
.next{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    color:#fff;

    font-size:55px;

    cursor:pointer;

    padding:20px;

    user-select:none;

}

.prev{

    left:20px;

}

.next{

    right:20px;

}

.prev:hover,
.next:hover,
.close:hover{

    color:#d4af37;

}

/*==================================
PHOTO SLIDER
==================================*/

.gallery-slider-section{

    margin:0 0;

}

.gallery-slider{

    position:relative;

    width:100%;

    height:1000px;

    overflow:hidden;

    border-radius:10px;

    box-shadow:0 10px 25px rgba(0,0,0,.15);

}

.gallery-slider .slides{

    position:relative;

    width:100%;

    height:100%;

}

.gallery-slider img{

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center;

    opacity:0;

    transition:opacity .6s ease-in-out;

}

.gallery-slider img.active{

    opacity:1;

}

.slider-btn{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:55px;

    height:55px;

    border:none;

    background:rgba(0,0,0,.45);

    color:#fff;

    font-size:30px;

    cursor:pointer;

    z-index:100;

    transition:.3s;

}

.prev-btn{

    left:20px;

}

.next-btn{

    right:20px;

}

.slider-btn:hover{

    background:#0f4c81;

}

@media (max-width:992px){

    .gallery-slider{

        height:450px;

    }

}

@media (max-width:768px){

    .gallery-slider{

        height:320px;

    }

    .slider-btn{

        width:45px;

        height:45px;

        font-size:24px;

    }

}

@media (max-width:576px){

    .gallery-slider{

        height:240px;

    }

}

/*=====================
Responsive
=====================*/

@media(max-width:992px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:576px){

.gallery-grid{

grid-template-columns:1fr;

}

.gallery-item img{

height:230px;

}

}