* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: Arial, sans-serif;
}

.slider-container {
    position: relative;
    max-width: 75%; /* Set the slider to 75% width on desktop */
    height: 75vh;   /* Full height at 75% of viewport */
    margin: 0 auto; /* Center the slider horizontally */
    overflow: hidden;
}

.slides {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.slide {
    min-width: 100%;
    height: 100%;
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Show full image without zooming */
}

/* Navigation buttons */
.prev, .next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
    z-index: 10;
    font-size: 18px;
}

.prev {
    left: 10px;
}

.next {
    right: 10px;
}

/* Dots (indicators) */
.dots {
    text-align: center;
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

.dots span {
    display: inline-block;
    height: 12px;
    width: 12px;
    margin: 5px;
    background-color: rgba(128, 128, 128, 0.7); /* Grey color with opacity */
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.dots span.active {
    background-color: rgba(128, 128, 128, 1); /* Solid grey for active */
}

/* Mobile adjustments */
@media only screen and (max-width: 768px) {
    .slider-container {
        max-width: 100%; /* Full width on mobile */
        height: 60vh;
    }

    .slide {
        height: 60vh; /* Adjust height for mobile screens */
    }

    .slide img {
        object-fit: contain; /* Make sure images are fully visible */
    }

    .prev, .next {
        top: calc(50% - 20px); /* Center arrows more tightly on mobile */
        font-size: 24px;
        padding: 15px;
    }

    .dots {
        display: block; /* Ensure dots are visible on mobile */
    }

    .dots span {
        height: 12px;
        width: 12px; /* Make the dots larger for mobile */
    }
}

@media only screen and (max-width: 480px) {
    .slide {
        height: 60vh; /* Further reduce height on very small screens */
    }

    .dots {
        bottom: 10px; /* Move dots slightly up */
    }

    .prev, .next {
        font-size: 20px;
        padding: 12px;
    }
}