.media-hero{

    padding:130px 0 80px;

    text-align:center;

    background:
    linear-gradient(
        180deg,
        #f8fcff,
        #eef9ff
    );
}

.media-hero h1{

    font-size:60px;

    font-weight:800;

    color:#071B34;

    margin:20px 0;
}

.media-hero p{

    max-width:750px;

    margin:auto;

    color:#64748b;

    line-height:1.9;
}

.media-filter-section{

    padding:20px 0 50px;
}

.media-filters{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:15px;
}

.media-filters a{

    padding:12px 24px;

    border-radius:40px;

    text-decoration:none;

    background:white;

    color:#071B34;

    font-weight:700;

    box-shadow:
    0 10px 30px rgba(0,0,0,.05);

    transition:.3s;
}

.media-filters a.active,
.media-filters a:hover{

    background:
    linear-gradient(
        135deg,
        #2DC7FF,
        #0095D9
    );

    color:white;
}

.media-gallery{

    padding-bottom:120px;
}

.gallery-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fill,minmax(320px,1fr));

    gap:25px;
}

.gallery-item{

    position:relative;

    height:280px;

    overflow:hidden;

    border-radius:24px;

    cursor:pointer;
}

.gallery-item img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.6s;
}


.gallery-overlay{

    position:absolute;

    inset:0;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:25px;

    background:
    linear-gradient(
        to top,
        rgba(7,27,52,.95),
        transparent
    );

    opacity:0;

    transition:.4s;
}

.gallery-overlay h4{

    color:white;

    margin:0;

    font-size:20px;

    font-weight:700;
}

.gallery-item:hover img{

    transform:scale(1.1);
}

.gallery-item:hover .gallery-overlay{

    opacity:1;
}

.video-item .gallery-overlay{

    justify-content:center;
    align-items:center;
}

.video-item i{

    color:white;

    font-size:70px;

    margin-bottom:20px;
}

#lightbox{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.95);

    display:none;

    justify-content:center;
    align-items:center;

    z-index:99999;
}

#lightbox img,
#lightbox iframe{

    max-width:90%;
    max-height:85vh;

    border-radius:20px;
}

#closeLightbox{

    position:absolute;

    top:30px;
    right:40px;

    color:white;

    font-size:45px;

    cursor:pointer;
}

@media(max-width:991px){

    .gallery-grid{
        column-count:2;
    }
}

@media(max-width:576px){

    .gallery-grid{
        column-count:1;
    }

    .media-hero h1{
        font-size:40px;
    }
}

#galleryViewer{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.97);

    z-index:999999;

    display:none;

    align-items:center;
    justify-content:center;
}

.viewer-content{

    width:90%;
    height:90vh;

    display:flex;
    align-items:center;
    justify-content:center;
}

.viewer-content img{

    max-width:100%;
    max-height:90vh;

    border-radius:20px;
}

.viewer-content iframe{

    width:1000px;
    max-width:100%;

    height:600px;

    border:none;

    border-radius:20px;
}

.viewer-close,
.viewer-prev,
.viewer-next{

    position:absolute;

    color:white;

    cursor:pointer;

    z-index:20;
}

.viewer-close{

    top:25px;
    right:40px;

    font-size:40px;
}

.viewer-prev{

    left:30px;
    top:50%;

    transform:translateY(-50%);

    font-size:45px;
}

.viewer-next{

    right:30px;
    top:50%;

    transform:translateY(-50%);

    font-size:45px;
}

.viewer-counter{

    position:absolute;

    top:30px;
    left:50%;

    transform:translateX(-50%);

    color:white;

    font-weight:700;
}