/* assets/css/slider-frontend.css */

.aws-slider-container {
    width: 100%;
}

.aws-boxed {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 15px;
}

.aws-full-width {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.aws-slider-container .swiper {
    width: 100%;
    height: auto;
    padding-bottom: 40px;
}

.aws-slider-container .swiper-slide {
    position: relative;
    overflow: hidden;
    background: #f1f1f1;
    height: auto;
    aspect-ratio: var(--aws-aspect-ratio, 16 / 9);
}

.aws-slider-container .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Text Overlay Styles */
.slide-caption-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    padding: 30px;
    box-sizing: border-box;
    pointer-events: none;
}

.slide-caption {
    pointer-events: auto;
    padding: 15px 30px;
    border-radius: 12px;
    line-height: 1.4;
    max-width: 90%;
    margin: 0;
    text-align: center;
    font-size: var(--caption-font-size, 24px);
}

/* Positioning */
.position-top-left { justify-content: flex-start; align-items: flex-start; }
.position-top-center { justify-content: center; align-items: flex-start; }
.position-top-right { justify-content: flex-end; align-items: flex-start; }
.position-middle-left { justify-content: flex-start; align-items: center; }
.position-middle-center { justify-content: center; align-items: center; }
.position-middle-right { justify-content: flex-end; align-items: center; }
.position-bottom-left { justify-content: flex-start; align-items: flex-end; }
.position-bottom-center { justify-content: center; align-items: flex-end; }
.position-bottom-right { justify-content: flex-end; align-items: flex-end; }

/* Animations */
.slide-caption { opacity: 0; transition: opacity 0.8s ease-out 0.3s, transform 0.8s ease-out 0.3s; }
.animation-fade-in { transform: translateY(20px); }
.animation-slide-in-up { transform: translateY(40px); }
.animation-slide-in-left { transform: translateX(-40px); }
.animation-none { opacity: 1; transform: none; transition: none; }
.swiper-slide-active .slide-caption { opacity: 1; transform: translate(0, 0); }
.swiper-slide-active .animation-none { transition: none; }

/* Responsive Text Size */
@media (max-width: 768px) {
    .slide-caption { --caption-font-size: 18px; }
}
@media (max-width: 480px) {
    .slide-caption { --caption-font-size: 14px; padding: 8px 12px; }
}

/* Default Navigation and Pagination Styles */
.aws-slider-container .swiper-button-next,
.aws-slider-container .swiper-button-prev {
    color: #ffffff;
}

.aws-slider-container .swiper-pagination-bullet-active {
    background-color: #ffffff;
}

/*
=================================================================
--- NEW CSS TO HIDE NAVIGATION AND PAGINATION ---
=================================================================
*/

/* If the main container has the 'nav-hidden' class, hide the buttons */
.aws-slider-container.nav-hidden .swiper-button-next,
.aws-slider-container.nav-hidden .swiper-button-prev {
    display: none;
}

/* If the main container has the 'pagination-hidden' class, hide the dots */
.aws-slider-container.pagination-hidden .swiper-pagination {
    display: none;
}

/* Also, remove the bottom padding if the pagination is hidden */
.aws-slider-container.pagination-hidden .swiper {
    padding-bottom: 0;
}