.main-product-gallery .gallery-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
}

@media only screen and (max-width: 768px) {
    .main-product-gallery .gallery-box {
        gap: 10px;
    }
}

.main-product-gallery .gallery-box .gallery-item {
    width: calc(100% / 4 - 12px);
    height: 250px;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

@media only screen and (max-width: 1350px) {
    .main-product-gallery .gallery-box .gallery-item {
        width: calc(100% / 4 - 12px);
        padding: 0 0 calc(100% / 4 - 12px) 0;
        height: 0px;
    }
}

@media only screen and (max-width: 1024px) {
    .main-product-gallery .gallery-box .gallery-item {
        width: calc(100% / 3 - 10px);
        padding: 0 0 calc(100% / 3 - 10px) 0;
    }
}

@media only screen and (max-width: 768px) {
    .main-product-gallery .gallery-box .gallery-item {
        width: calc(100% / 2 - 8px);
        padding: 0 0 calc(100% / 2 - 8px) 0;
    }
}

.main-product-gallery .gallery-box .gallery-item a {
    line-height: 0;
}

@media only screen and (max-width: 1350px) {
    .main-product-gallery .gallery-box .gallery-item a {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }
}

.main-product-gallery .gallery-box .gallery-item picture,
.main-product-gallery .gallery-box .gallery-item img,
.main-product-gallery .gallery-box .gallery-item source {
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    transition: transform .5s ease;
    transform: translate(-50%, -50%);
    transform-origin: 0 0;
}

.main-product-gallery .gallery-box .gallery-item:hover img,
.main-product-gallery .gallery-box .gallery-item:hover source {
    transform: scale(1.2) translate(-50%, -50%);
    transform-origin: 0 0;
}
