/* Parallax styles */
.wp-block-cover.has-parallax .wp-block-cover__image-background {
    background-attachment: fixed !important;
    background-size: cover !important;
    background-position: center center !important;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.wp-block-cover.has-parallax {
    position: relative;
    overflow: hidden;
}

.wp-block-group.alignfull.elpta-parallax {
    position: relative;
    background-size: cover !important;
    background-position: center center !important;
    background-attachment: fixed !important;
    overflow: hidden;
}

/* Text animation styles */
.wp-block-cover h2.elpta-animate-text,
.wp-block-cover h3.elpta-animate-text,
.wp-block-cover p.elpta-animate-text,
.wp-block-group.alignfull h2.elpta-animate-text,
.wp-block-group.alignfull h3.elpta-animate-text,
.wp-block-group.alignfull p.elpta-animate-text {
    opacity: 0 !important;
    transform: translateY(50px) !important;
    transition: opacity 1s ease-out, transform 1s ease-out !important;
}

.wp-block-cover h2.elpta-animate-text.visible,
.wp-block-cover h3.elpta-animate-text.visible,
.wp-block-cover p.elpta-animate-text.visible,
.wp-block-group.alignfull h2.elpta-animate-text.visible,
.wp-block-group.alignfull h3.elpta-animate-text.visible,
.wp-block-group.alignfull p.elpta-animate-text.visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Carousel styles */
.elpta-carousel.swiper {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.elpta-carousel .swiper-wrapper {
    width: 100%;
    height: 100%;
}

.elpta-carousel .swiper-slide {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.elpta-carousel .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.elpta-carousel .swiper-slide-caption {
    position: absolute; 
    bottom: 20px;
    left: 20px;
    right: 20px;
    background: rgba(0, 0, 0, 0.2); /* Light grey with slight transparency */
    color: #fff; /* White text */
    padding: 15px; /* Increased padding for larger text */
    border-radius: 5px;
    text-align: left;
}

.elpta-carousel .swiper-slide-caption strong {
    display: block;
    font-size: 2em; /* Larger title (was 1.2em) */
    margin-bottom: 8px; /* Slightly more spacing */
}

.elpta-carousel .swiper-slide-caption {
    font-size: 1.5em; /* Larger description (default was ~1em) */
}

.elpta-carousel .swiper-button-next,
.elpta-carousel .swiper-button-prev {
    color: #fff;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
}

.elpta-carousel .swiper-pagination {
    bottom: 10px;
}

.elpta-carousel .swiper-pagination-bullet {
    background: #fff;
    opacity: 0.7;
}

.elpta-carousel .swiper-pagination-bullet-active {
    opacity: 1;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .wp-block-cover.has-parallax .wp-block-cover__image-background,
    .wp-block-group.alignfull.elpta-parallax {
        background-attachment: scroll !important;
    }
    .elpta-carousel .swiper-slide-caption {
        padding: 10px;
    }
    .elpta-carousel .swiper-slide-caption strong {
        font-size: 1.5em; /* Slightly smaller title on mobile */
    }
    .elpta-carousel .swiper-slide-caption {
        font-size: 1.2em; /* Slightly smaller description on mobile */
    }
}