/*==================================
        RSSS GALLERY
==================================*/

.rsss-gallery-page{
    background:#f8fbff;
    padding-bottom:80px;
}

/*================ HERO ================*/

.rsss-gallery-hero{
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
    text-align:center;
    padding:90px 20px 140px;
    position:relative;
    overflow:hidden;
}

.rsss-gallery-hero::before{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    top:-180px;
    right:-120px;
}

.rsss-gallery-hero::after{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    background:rgba(255,255,255,.05);
    left:-80px;
    bottom:-120px;
}

.rsss-gallery-tag{
    display:inline-block;
    padding:8px 18px;
    border-radius:30px;
    background:rgba(255,255,255,.15);
    border:1px solid rgba(255,255,255,.25);
    letter-spacing:2px;
    font-size:13px;
    font-weight:600;
    margin-bottom:20px;
}

.rsss-gallery-hero h1{
    font-size:52px;
    margin-bottom:20px;
}

.rsss-gallery-hero p{
    max-width:700px;
    margin:auto;
    font-size:18px;
    line-height:1.8;
    opacity:.95;
}
/*================ GRID ================*/

.rsss-gallery-grid{

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:30px;
    margin-top:-90px;
    position:relative;
    z-index:10;

}

.rsss-gallery-card{

    position:relative;
    overflow:hidden;
    border-radius:22px;
    background:#fff;
    box-shadow:0 20px 45px rgba(0,0,0,.08);
    transition:.35s;

}

.rsss-gallery-card:hover{

    transform:translateY(-8px);

}

.rsss-gallery-card img{

    width:100%;
    height:260px;
    object-fit:cover;
    display:block;
    transition:.5s;

}

.rsss-gallery-card:hover img{

    transform:scale(1.08);

}

.rsss-gallery-overlay{

    position:absolute;
    inset:0;
    background:rgba(15,23,42,.65);

    display:flex;
    justify-content:center;
    align-items:center;

    opacity:0;
    transition:.35s;

}

.rsss-gallery-card:hover .rsss-gallery-overlay{

    opacity:1;

}

.rsss-gallery-overlay button{

    background:#2563eb;
    color:#fff;
    border:none;
    padding:14px 28px;
    border-radius:12px;
    cursor:pointer;
    font-weight:600;
    transition:.3s;

}

.rsss-gallery-overlay button:hover{

    background:#1d4ed8;

}
/*================ POPUP ================*/

.popup{

    position:fixed;
    inset:0;

    background:rgba(0,0,0,.85);

    display:none;

    justify-content:center;
    align-items:center;

    z-index:9999;

    backdrop-filter:blur(6px);

}

.popup img{

    max-width:85%;
    max-height:85%;
    border-radius:20px;
    box-shadow:0 25px 60px rgba(0,0,0,.45);

}

.popup span{

    position:absolute;
    top:25px;
    right:35px;

    color:#fff;
    font-size:45px;
    cursor:pointer;

}

@media(max-width:768px){

.rsss-gallery-hero{

padding:70px 20px 110px;

}

.rsss-gallery-hero h1{

font-size:36px;

}

.rsss-gallery-grid{

grid-template-columns:1fr;

margin-top:-60px;

}

}