.vmp-gallery .vmp-gallery-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:20px !important;
}

.vmp-gallery .vmp-gallery-item{
    overflow:hidden;
    border-radius:20px;
}

.vmp-gallery .vmp-gallery-item img{
    width:100% !important;
    height:260px !important;
    object-fit:cover !important;
    display:block;
}

.vmp-gallery .vmp-hidden{
    display:none !important;
}

.vmp-gallery.expanded .vmp-hidden{
    display:block !important;
}

.vmp-toggle-gallery{
    display:flex;
    justify-content:center;
    align-items:center;
    margin:30px auto;
    padding:16px 40px;
    border-radius:999px;
    cursor:pointer;
    border:1px solid #ddd;
    background:#fff;
    font-weight:700;
}

.vmp-gallery-meta{
    text-align:center;
    margin-top:20px;
}

.vmp-gallery-meta .location{
    display:block;
    font-weight:700;
}

.vmp-gallery-meta .speaker{
    display:block;
    margin-top:5px;
}

@media(max-width:849px){

    .vmp-gallery .vmp-gallery-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

}
.pswp{
    z-index:999999 !important;
}

.pswp__bg{
    background:#000 !important;
}

.pswp__img{
    opacity:1 !important;
}
.pswp__img{
    opacity:1 !important;
    visibility:visible !important;
    display:block !important;
    filter:none !important;
    max-width:none !important;
}

.pswp__zoom-wrap{
    opacity:1 !important;
    visibility:visible !important;
}

.pswp__item{
    opacity:1 !important;
    visibility:visible !important;
}
.vmp-pswp-caption{
    position:absolute;
    left:50%;
    bottom:25px;
    transform:translateX(-50%);
    background:#0f0f0f;
    border:1px solid rgba(255,255,255,.15);
    border-radius:18px;
    padding:12px 30px;
    min-width:260px;
    text-align:center;
    z-index:999999;
    box-shadow:0 8px 30px rgba(0,0,0,.4);
}

.vmp-caption-location{
    color:#f4a623;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.8px;
}

.vmp-caption-speaker{
    color:#fff;
    font-size:18px;
    font-weight:700;
    margin-top:4px;
}
.pswp__button--close{
    width:58px !important;
    height:58px !important;

    border-radius:50%;

    background:rgba(255,255,255,.12) !important;

    right:20px !important;
    top:20px !important;
}
.pswp__button--arrow--prev{
    left:25px !important;
}

.pswp__button--arrow--next{
    right:25px !important;
}

.pswp__button--arrow--prev,
.pswp__button--arrow--next{

    width:58px !important;
    height:58px !important;

    border-radius:50%;

    background:rgba(255,255,255,.12) !important;
}
.vmp-gallery-item a{
    position:relative;
    display:block;
    overflow:hidden;
    border-radius:24px;
}

.vmp-item-caption{
    position:absolute;
    left:0;
    right:0;
    bottom:0;

    padding:14px;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.85),
        rgba(0,0,0,0)
    );
}

.vmp-item-location{
    color:#f5a623;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
}

.vmp-item-speaker{
    color:#fff;
    font-size:14px;
    font-weight:700;
    margin-top:3px;
}
.vmp-gallery-item img{
    transition:all .4s ease;
}

.vmp-gallery-item:hover img{
    transform:scale(1.06);
}
.vmp-gallery-item{
    position:relative;
    border-radius:24px;
    overflow:hidden;
}

.vmp-gallery-item::after{

    content:'';

    position:absolute;

    inset:0;

    border:2px solid transparent;

    border-radius:24px;

    transition:.3s;

    pointer-events:none;

}

.vmp-gallery-item:hover::after{

    border-color:#f47a1f;
    box-shadow:
    0 0 0 1px #f47a1f,
    0 0 25px rgba(216,155,43,.45);

}
.vmp-zoom-icon{

    position:absolute;

    top:12px;
    right:12px;

    width:40px;
    height:40px;

    border-radius:50%;

    background:#d89b2b;

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

    font-size:18px;

    opacity:0;

    transform:translateY(-10px);

    transition:.3s;
}

.vmp-gallery-item:hover .vmp-zoom-icon{

    opacity:1;

    transform:translateY(0);

}
.vmp-item-caption{
    transition:.3s;
}

.vmp-gallery-item:hover .vmp-item-caption{

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

}
.vmp-toggle-gallery{

    border-radius:999px;

    min-width:380px;

    height:50px;

    background:#1a2d57;

    color:#fff;

    border:1px solid rgba(216,155,43,.35);

    transition:.3s;

}

.vmp-toggle-gallery:hover{
  background: #f47a1f;
    box-shadow:0 0 20px #f47a1f;

}