/*=========================================
    RESET
=========================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}



/*=========================================
    WRAPPER
=========================================*/



/*=========================================
    SIDEBAR
=========================================*/



/*=========================================
    CONTENT
=========================================*/



/*=========================================
    PAGE TITLE
=========================================*/

.page-title{

    text-align:center;

    margin-bottom:30px;

}

.page-title h2{

    font-size:24px;

    font-weight:400;

    color:#666;

}

/*=========================================
    CERTIFICATE GRID
=========================================*/

.certificate-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-bottom:50px;

}

.certificate{

    border:1px solid #ddd;

    background:#fff;

    transition:.3s;

}

.certificate:hover{

    transform:translateY(-5px);

    box-shadow:0 10px 25px rgba(0,0,0,.12);

}

.certificate img{

    width:100%;

    display:block;

}

/*=========================================
    GALLERY
=========================================*/

.gallery{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:45px 35px;

}

.gallery-item img{

    width:100%;

    display:block;

    border-radius:2px;

}

.gallery-item p{

    margin-top:12px;

    font-size:14px;

    color:#777;

    line-height:22px;

}

/*=========================================
    IMAGE HOVER
=========================================*/

.gallery-item{

    transition:.3s;

}

.gallery-item:hover{

    transform:translateY(-6px);

}

.gallery-item img{

    transition:.3s;

}

.gallery-item:hover img{

    box-shadow:0 10px 25px rgba(0,0,0,.18);

}

/*=========================================
    SPACING
=========================================*/

.gallery-item:nth-child(odd){

    margin-right:5px;

}

.gallery-item:nth-child(even){

    margin-left:5px;

}
/*=========================================
    GALLERY SECTION
=========================================*/

.gallery{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:40px 30px;
    margin-bottom:60px;
}

.gallery-item{
    width:100%;
}

.gallery-item img{
    width:100%;
    height:320px;
    object-fit:cover;
    display:block;
    border-radius:4px;
    border:1px solid #ddd;
    transition:all .35s ease;
}

.gallery-item:hover img{
    transform:translateY(-5px);
    box-shadow:0 12px 25px rgba(0,0,0,.18);
}

.gallery-item p{
    margin-top:12px;
    font-size:13px;
    color:#777;
    line-height:20px;
}

/*=========================================
    CERTIFICATE IMAGES
=========================================*/

.certificate{
    overflow:hidden;
    border:1px solid #e5e5e5;
    background:#fff;
}

.certificate img{
    width:100%;
    height:230px;
    object-fit:cover;
    display:block;
    transition:.35s;
}

.certificate:hover img{
    transform:scale(1.03);
}

/*=========================================
    COMMON IMAGE EFFECT
=========================================*/

.gallery img,
.certificate img{
    cursor:pointer;
}

/*=========================================
    LINKS
=========================================*/

a{
    text-decoration:none;
}

/*=========================================
    LIST RESET
=========================================*/

ul{
    list-style:none;
}

/*=========================================
    SMALL SPACING
=========================================*/

section{
    margin-bottom:45px;
}


/*=========================================
      IMAGE EFFECTS
=========================================*/

.gallery-item img,
.certificate img{
    transition:.35s ease;
}

.gallery-item:hover img{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.15);
}

.certificate:hover{
    box-shadow:0 8px 18px rgba(0,0,0,.12);
}

/*=========================================
      SMOOTH TRANSITIONS
=========================================*/

*{
    transition:background .3s,color .3s,border-color .3s;
}

/*=========================================
      TABLET
=========================================*/

@media(max-width:1200px){

    .certificate-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .gallery{
        grid-template-columns:1fr;
    }

    .footer-container{
        grid-template-columns:repeat(2,1fr);
    }

}

/*=========================================
      MOBILE MENU
=========================================*/

@media(max-width:900px){

    .wrapper{
        display:block;
    }

    .sidebar{
        position:relative;
        width:100%;
        border-right:none;
        border-bottom:1px solid #e5e5e5;
    }

    .content{
        margin-left:0;
        width:100%;
        padding:30px 20px;
    }

    .sidebar ul li a{
        padding:14px;
    }

}

/*=========================================
      MOBILE
=========================================*/

@media(max-width:768px){

    .certificate-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .gallery{
        grid-template-columns:1fr;
        gap:25px;
    }

    .gallery-item img{
        height:auto;
    }

    .footer-container{
        grid-template-columns:1fr;
        gap:35px;
        padding:40px 25px;
    }

    .footer-box h3{
        font-size:22px;
    }

    .copyright{
        text-align:center;
        padding:18px;
    }

    .page-title h2{
        font-size:22px;
    }

}

/*=========================================
      SMALL DEVICES
=========================================*/

@media(max-width:480px){

    .logo img{
        width:130px;
    }

    .sidebar ul li a{
        font-size:12px;
        letter-spacing:.8px;
    }

    .page-title h2{
        font-size:20px;
    }

    .footer-box h3{
        font-size:20px;
    }

    .footer-box p,
    .footer-box ul li a{
        font-size:14px;
    }

}
/*==============================
    IMAGE LIGHTBOX
===============================*/

.lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.92);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:99999;
}

.lightbox.active{
    display:flex;
}

.lightbox-content{
    width:90%;
    max-width:1200px;
    text-align:center;
}

.lightbox-content img{
    display:block;
    margin:auto;
    max-width:100%;
    max-height:85vh;
    width:auto;
    height:auto;
    object-fit:contain;
    border-radius:4px;
    box-shadow:0 0 25px rgba(0,0,0,.5);
}
.lightbox-close{
    position:absolute;
    top:20px;
    right:35px;
    color:#fff;
    font-size:42px;
    cursor:pointer;
    z-index:100000;
}

.lightbox-prev,
.lightbox-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    font-size:60px;
    cursor:pointer;
    user-select:none;
    padding:10px 20px;
    transition:.3s;
}

.lightbox-prev{
    left:25px;
}

.lightbox-next{
    right:25px;
}

.lightbox-prev:hover,
.lightbox-next:hover,
.lightbox-close:hover{
    color:#ccc;
}

.lightbox-counter{
    color:#fff;
    margin-top:15px;
    font-size:18px;
}


body.lightbox-open{
    overflow:hidden;
}