

.certificate-card{
    border:1px solid #dcdcdc;
    border-radius:14px;
    padding:10px;
    overflow:hidden;
    transition:.35s;
}

.certificate-card:hover{
    border-color:#0d6efd;
    transform:translateY(-6px);
}

.certificate-img{
    width:100%;
    height:600px;
    object-fit:contain;
    cursor:pointer;
    transition:.3s;
}

.certificate-card:hover .certificate-img{
    transform:scale(1.03);
}

/* Gallery */

.modal-content{
    background:#111;
    border:none;
    justify-content:center;
    align-items:center;
}

#modalImage{
    width:auto;
    max-width:92%;
    max-height:88vh;
    object-fit:contain;
}

.gallery-close{
    position:absolute;
    top:20px;
    right:25px;
    width:48px;
    height:48px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.15);
    color:#fff;
    font-size:22px;
    backdrop-filter:blur(10px);
    z-index:100;
    transition:.3s;
}

.gallery-close:hover{
    background:#fff;
    color:#000;
}

.gallery-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:55px;
    height:55px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.15);
    color:#fff;
    font-size:30px;
    backdrop-filter:blur(10px);
    transition:.3s;
    z-index:100;
}

.gallery-prev{
    left:25px;
}

.gallery-next{
    right:25px;
}

.gallery-btn:hover{
    background:#fff;
    color:#000;
}






.custom-banner-slider{
    width:100%;
    overflow:hidden;
}

.banner-slider{
    position:relative;
    width:100%;
    overflow:hidden;
}

.banner-track{
    display:flex;
    width:100%;
    transition:transform .5s ease;
}

.banner-slide{
    min-width:100%;
    flex:0 0 100%;
}

.banner-slide img{
    width:100%;
    display:block;
}

/* ===== Navigation ===== */

.nav-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:45px;
    height:45px;
    border:none;
    border-radius:50%;
    background:rgba(0,0,0,.6);
    color:#fff;
    font-size:24px;
    cursor:pointer;

    z-index:2;

    display:flex;
    align-items:center;
    justify-content:center;

    opacity:0;
    visibility:hidden;
    transition:.3s;
}

.prev{
    left:15px;
}

.next{
    right:15px;
}

/* ===== Dots ===== */

.dots{
    position:absolute;
    bottom:15px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:8px;

    z-index:2;

    opacity:0;
    visibility:hidden;
    transition:.3s;
}

.dot{
    width:12px;
    height:12px;
    border-radius:50%;
    background:rgba(255,255,255,.5);
    cursor:pointer;
}

.dot.active{
    background:#fff;
}

/* Show controls after JS loads */

.banner-slider.loaded .nav-btn,
.banner-slider.loaded .dots{
    opacity:1;
    visibility:visible;
}

/* Mobile */

.mobile-banner{
    display:none;
}

@media(max-width:767px){

    .desktop-banner{
        display:none;
    }

    .mobile-banner{
        display:block;
    }

    .nav-btn{
        width:36px;
        height:36px;
        font-size:18px;
    }

    .dot{
        width:10px;
        height:10px;
    }
}





