.wsd-image-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px, rgba(0, 0, 0, 0.3) 0px 2px 4px, rgba(0, 0, 0, 0.25) 0px 4px 8px, rgba(0, 0, 0, 0.2) 0px 8px 16px, rgba(0, 0, 0, 0.15) 0px 16px 32px;
    border-radius: 15px;
}

.wsd-image-slider .wsd-custom-slider {
    position: relative;
    width: 100%;
}

.wsd-image-slider .slide {
    display: none; /* Hide all slides by default */
    text-align: center;
}

.wsd-image-slider .slide img {
    width: 100%; /* Stretch the image to the full width of the container */
    height: auto; /* Maintain aspect ratio */
    object-fit: cover; /* Ensures the image fills the container without distortion */
    display: block;
    margin: 0 auto;
}

.wsd-image-slider .slide h3 {
    margin: 10px 0;
    font-size: 1.5rem;
}

/* Navigation arrows */
.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 10px;
    z-index: 10;
    opacity: 0.5;
}

.slider-arrow.prev {
    padding: 0px;
    background: none;
    left: 2em;
    height: 100%;
}

.slider-arrow.next {
    padding: 0px;
    background: none;
    right: 2em;
    height: 100%;
}

.slider-arrow.next:hover{
    background: linear-gradient(to right, #0000 0%, #0002, 60%, #0006 100%);
    right: 0;
    padding-right: 2em;
    padding-left: 4em;
    opacity: 1;
}

.slider-arrow.prev:hover{
    background: linear-gradient(to left, #0000 0%, #0002, 60%, #0006 100%);
    left: 0;
    padding-right: 4em;
    padding-left: 2em;
    opacity: 1;
}

.slider-arrow svg{
    width: 30px;
    height: auto;
}

.nav-dots {
    display: grid; /* Grid layout dynamically updated by JS */
    gap: 10px; /* Spacing between dots */
    margin-top: 15px;
    justify-content: center;
    align-items: center;
    margin-top: -13.5em !important;
    z-index: 10;
    position: relative;
    background: hsl(203, 5%, 25%, 0.4);
    padding: 1em 2em;
}

.nav-dots .dot {
    width: 100% !important;
    height: auto;
    border-radius: 0px;
    padding: 5px !important;
    overflow: hidden;
    cursor: pointer;
    border: none;
    background-size: cover; /* Use background image scaling */
    background-position: center;
    background-repeat: no-repeat;
    transition: border 0.3s ease, transform 0.3s ease;
    min-height: 120px;
    border-radius: 15px;
}

.nav-dots .dot img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: 138px;
    display: none;
}

.nav-dots .dot.active {
    border: 3px solid var(--active-dot-border-color, #000);
    transform: scale(1.05);
}

@media(min-width: 501px) and (max-width: 900px){
    .nav-dots .dot{
        min-height: 75px !important;
    }
    .wsd-image-slider .slide img{
        transform: translateY(-20%);
    }
}

@media(max-width: 500px){
    .wsd-image-slider .slider-arrow.prev{
        left: 1em !important;
    }
    .wsd-image-slider .slider-arrow.next{
        right: 1em !important;
    }
    .wsd-image-slider .nav-dots{
        display: none !important;
    }
    .wsd-image-slider {
        position: relative;
        width: 100%;
        display: block;
        overflow: unset;
        box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 2px, rgba(0, 0, 0, 0.3) 0px 2px 4px, rgba(0, 0, 0, 0.25) 0px 4px 8px, rgba(0, 0, 0, 0.2) 0px 8px 16px, rgba(0, 0, 0, 0.15) 0px 16px 32px;
        border-radius: 15px;
        border-collapse: separate;
    }
}