.swiper-container-main {
    margin-bottom: 10px;
    border: 1px solid #e7e7e7;
}
.swiper {
    width: 100%;
    min-width: 300px;
    height: auto;

}
.gallery-thumbs .swiper-wrapper {

    justify-content: center;

}


.swiper-slide-img {
    height: auto;
    width: 100%;
   
    /* move next and prev buttons off img */
    min-height: 353px;
    overflow: hidden;

}

.swiper-slide-img:hover {
    cursor: pointer;
}
.swiper-slide-thumbs {

    border: 0px solid #e7e7e7;
}
.gallery-thumbs .swiper-slide img:hover,
.swiper-slide img:hover {
    cursor: pointer;
    

}

.swiper-pagination {
    background-color: #d8d8d8;
    padding: 2px;
}

.swiper-button-prev {
    position: absolute;
    transform: translateX(-40%);
    color: black;
}

.swiper-button-prev:focus {
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.swiper-button-next {
    position: absolute;
    transform: translateX(40%);
    color: black;
    font-weight: 900;
}

.swiper-button-next:focus {
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.swiper-pagination {
    background: linear-gradient(to bottom right, #c2c2f0, #8585e0);
    border-radius: 10px;
}
.swiper-slide .pro-title {
    background-color: rgba(255, 255, 255, 0.5);
    text-align: center;
    position: absolute;
    top: 1px;
    width: 100%;
    padding: 5px;
}

.swiper-slide .pro-thumb-title {
    background-color: rgba(255, 255, 255, 0.5);
    text-align: center;
    position: relative;
    bottom: 1px;
    width: 100%;
    padding: 2px;
}


/*active pagination*/
.swiper-pagination .swiper-pagination-bullet-active {
    background-color: rgb(255, 255, 255);
}

/*other pagination*/
.swiper-pagination .swiper-pagination-bullet {
    height: 15px;
    width: 15px;
}

.swiper-pagination .swiper-pagination-bullet:hover {
    transform: scale(1.2);
    transition: all 0.5s;
}

.swiper-pagination .swiper-pagination-bullet:focus {
    outline: none;
    background-color: rgb(255, 255, 255);
    -webkit-tap-highlight-color: rgb(248, 248, 248);
}

.minimum-height {
    min-height: 257px;

    
}

/* ................................................ thumbs .......................................................... */

.gallery-thumbs {
    padding: 0;
    margin-top: 0;
    margin-bottom: 40px;
}

.gallery-thumbs .swiper-slide {
    width: 25%;
    opacity: 0.8;
}

.gallery-thumbs .swiper-slide-thumb-active {
    opacity: 1;
}

.gallery-thumbs .swiper-slide img {
    width: 100%;
    height: 70px;
    min-height: 40px;
    object-fit: cover;
}



/* ................................................ modal .......................................................... */
.modal {
    display: none;
    position: fixed;
    z-index: 2;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100vw;
}

.modal-content {
    background-color: rgb(0, 0, 0);
    padding: 0;
    height: 100%;
    width: 100%;
    min-width: 300px;
    animation-name: modalOpen;
    animation-duration: 1s;
}

.closeBtn {
    position: absolute;
    /* removed from normal flow of doc, positioned relative to its nearest ancestor (modal content)*/
    z-index: 4;
    color: white;
    right: 5px;
    font-size: 30px;
}

.closeBtn:hover,
.closeBtn:focus {
    color: rgb(114, 114, 114);
    text-decoration: none;
    cursor: pointer;
}

@keyframes modalOpen {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

/* ............................................. modal swiper gallery ....................................................... */
/* used ids higher specificity to override gallery styles */

#swiper-container-modal {
    z-index: 3;
    width: 100%;
    height: 100%;
    overflow: hidden;
    padding: 0;
    border: 0;
}

#swiper-pagination-modal {
    display: none;
    /* if pagination not included in modal... index.html pagination buttons dnt change (black for active slide)*/
}

#swiper-button-next-modal {
    transform: translateX(-40%);
    color: white;
}

#swiper-button-prev-modal {
    transform: translateX(40%);
    color: white;
}

.swiper-slide-modal {
    height: 100vh;
}

.swiper-lazy-modal {
    object-fit: contain;
    border: 0;
}

/* ............................................. responsiveness ....................................................... */
@media all and (max-width: 520px) {
    .swiper {
        width: calc(100vw - 30px);
    }

    .swiper-button-next:after {
        font-size: 20px !important;
        transform: translateX(60%);
    }



    .swiper-button-prev:after {
        font-size: 20px !important;
        transform: translateX(-60%);
    }

    #swiper-button-next-modal {
        font-size: 20px !important;
        transform: translateX(20%);
    }

    #swiper-button-prev-modal {
        font-size: 20px !important;
        transform: translateX(-20%);
    }

    .swiper-pagination {
        padding: 4px;
    }

    .swiper-slide-img {
        width: calc(100vw-28px);
        height: auto;
        /*border: 16px solid #d8d8d8;
         move next and prev buttons off img */
        min-height: calc((0.5338 * 100vw) + 48.476px);
    }

    .swiper-pagination .swiper-pagination-bullet {
        height: 12px;
        width: 12px;
    }

    .gallery-thumbs .swiper-slide img {
        height: 14vw;
    }

}


@media all and (max-width: 360px) {
    .swiper-slide-img {
        border: 1px solid #d8d8d8;
    }
}