/*==================================================
        PREMIUM GALLERY
==================================================*/
/*==================================================
                PREMIUM GALLERY
==================================================*/

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
    margin-bottom:40px;
}

/*==========================
        VIDEO GRID
==========================*/

.video-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;

    max-width:1400px;      /* Reduce overall width */
    margin:40px auto 0;    /* Center the videos */
   
    padding-left: 50px;
    padding-right: 50px;       /* Left & Right padding */
    box-sizing:border-box;
  margin-top: -40px;
}

.video-item{
    overflow:hidden;
    border-radius:20px;
    background:#000;
}

.video-item video{
    display:block;
    width:100%;
    height:320px;          /* Reduce video height */
    object-fit:cover;
    border-radius:20px;
}

/*==========================
      TABLET VIEW
==========================*/

@media (max-width:991px){

    .video-grid{
        grid-template-columns:1fr;
        padding:0 40px;
    }

    .video-item video{
        height:280px;
    }

}

/*==========================
      MOBILE VIEW
==========================*/

@media (max-width:768px){

    .video-grid{
        grid-template-columns:1fr;
        padding:0 20px;
        gap:20px;
    }

    .video-item video{
        height:220px;
    }

}

/*==================================================
        CARD
==================================================*/

.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:28px;

    cursor:pointer;

    background:#fff;

    border:4px solid transparent;

    background-image:
        linear-gradient(#fff,#fff),
        linear-gradient(135deg,#ffffff 0%,#ffffff 45%,#ff8c32 45%,#ff8c32 100%);

    background-origin:border-box;

    background-clip:padding-box,border-box;

    box-shadow:0 20px 60px rgba(0,0,0,.12);

    transition:.45s;

}

.gallery-item img{

    width:100%;

    height:340px;

    object-fit:cover;

    display:block;

    transition:1s;

}

.gallery-item:hover img{

    transform:scale(1.12);

}

/*==================================================
        OVERLAY
==================================================*/

.gallery-overlay{

    position:absolute;

    inset:0;

    display:flex;

    justify-content:center;

    align-items:center;



    opacity:0;

    transition:.45s;

}

.gallery-item:hover .gallery-overlay{

    opacity:1;

}

.gallery-overlay h3{

    color:#fff;

    font-size:24px;

    font-weight:700;

    letter-spacing:1px;

    transform:translateY(30px);

    transition:.45s;

}

.gallery-item:hover .gallery-overlay h3{

    transform:translateY(0);

}

/*==================================================
        HOVER
==================================================*/

.gallery-item:hover{

    transform:translateY(-12px);

    box-shadow:0 35px 80px rgba(0,0,0,.20);

}

/*==================================================
        DESKTOP
==================================================*/

@media(min-width:1440px){

.gallery-grid{

    grid-template-columns:repeat(4,1fr);

}

.gallery-item img{

    height:380px;

}

}

/*==================================================
        LAPTOP
==================================================*/

@media(max-width:1200px){

.gallery-grid{

    grid-template-columns:repeat(3,1fr);

}

.gallery-item img{

    height:320px;

}

}

/*==================================================
        TABLET
==================================================*/

@media(max-width:992px){

.gallery-grid{

    grid-template-columns:repeat(2,1fr);

    gap:22px;

}

.gallery-item img{

    height:280px;

}

.gallery-overlay h3{

    font-size:20px;

}

}

/*==================================================
        MOBILE
==================================================*/

@media(max-width:768px){

.gallery-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.gallery-item img{

    height:260px;

}

.gallery-overlay{

    opacity:1;

    background:linear-gradient(to top,
        rgba(0,0,0,.75),
        transparent);

    justify-content:flex-end;

    align-items:flex-end;

    padding:25px;

}

.gallery-overlay h3{

    transform:none;

    font-size:18px;

}

}

/*==================================================
        SMALL MOBILE
==================================================*/

@media(max-width:576px){

.gallery-item{

    border-radius:22px;

}

.gallery-item img{

    height:230px;

}

.gallery-overlay h3{

    font-size:17px;

}

}