body.gallery-open {
    overflow:hidden;
}

.gallery-overlay {
    position:fixed;
    z-index:9999;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px;
    background:rgba(2,11,26,.92);
    backdrop-filter:blur(8px);
}

.YC--works--gallery-popup {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:min(1180px,100%);
    height:min(820px,calc(100vh - 56px));
}

.gallery-overlay-close {
    position:absolute;
    z-index:4;
    top:12px;
    inset-inline-end:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.55);
    border-radius:50%;
    background:rgba(2,11,26,.5);
    color:#fff;
    font-size:20px;
    cursor:pointer;
}

.gallery-overlay-close:focus-visible {
    outline:3px solid color-mix(in srgb,var(--uicolor) 70%,#fff);
    outline-offset:3px;
}

.gallery-container,
.gallery-overlay .owl-stage-outer,
.gallery-overlay .owl-stage,
.gallery-overlay .owl-item {
    width:100%;
    height:100%;
}

.gallery-container {
    overflow:hidden;
    opacity:0;
}

.gallery-item {
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    padding:24px 82px;
}

.gallery-item img {
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    border-radius:var(--miniradius);
}

.gallery-overlay .owl-dots {
    position:absolute;
    z-index:3;
    bottom:12px;
    left:50%;
    display:flex;
    gap:7px;
    transform:translateX(-50%);
}

.gallery-overlay .owl-dot {
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(255,255,255,.35) !important;
}

.gallery-overlay .owl-dot.active {
    width:24px;
    border-radius:10px;
    background:#fff !important;
}

@media only screen and (max-width:720px) {
    .gallery-overlay {
        padding:0;
    }

    .YC--works--gallery-popup {
        width:100%;
        height:100dvh;
    }

    .gallery-overlay-close {
        top:16px;
        inset-inline-end:16px;
        width:44px;
        height:44px;
    }

    .gallery-item {
        padding:76px 14px 64px;
    }

    .gallery-item img {
        border-radius:10px;
    }
}
