.featured-carousel {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 20px;

    @media only screen and (min-width: 768px) {
        row-gap: 40px;
    }

    .background-image {
        position: absolute;
        display: block;
        top: 0;
        width: 100%;
        height: 100%;
        left: 0;
        right: 0;
        bottom: 0;

        .image {
            position: absolute;
            display: block;
            top: 0;
            width: 100%;
            height: 100%;

                    .img {
            position: absolute;
            display: block;
            top: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
    }

    .swiper-slide {
        padding: 20px;
        min-height: 250px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;

        &:has(.background-image.square-aspect) {
            aspect-ratio: 1 / 1;
            width: 100%;
            min-height: 440px;
            height: auto;
            padding: 0;
        }

        .background-image.square-aspect {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;

            .image {
                position: absolute;
                width: 100%;
                height: 100%;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;

                .img {
                    position: absolute;
                    width: 100%;
                    height: 100%;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    object-fit: cover;
                }
            }
        }
    }

    .content {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 10px;
        z-index: 2;
        align-items: flex-start;

        .badge {
            display: flex;
            padding: 10px 10px 8px;
            justify-content: center;
            align-items: center;
            gap: 10px;
            color: #FFF;
            font-family: "League Spartan";
            font-size: 12px;
            font-style: normal;
            font-weight: 800;
            line-height: 110%; /* 13.2px */
            text-transform: uppercase;
            border-radius: 100px;
            background: #258CCF;
        }

        .headline {
            color: #FFF;
            font-family: "League Spartan";
            font-size: 20px;
            font-style: normal;
            font-weight: 800;
            line-height: 110%; /* 22px */
            text-transform: capitalize;
        }
    }

    .swiper-controls {
        width: 100%;
        display: flex;
        justify-content: space-between;
        z-index: 1;

        .indicator {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 20px;
            width: fit-content;

            .progressbar {
                position: relative;
                width: clamp(6.5rem, calc(8.571vw + 4.786rem), 12.5rem);
                height: 2px;
                flex: 1 0 0;
                background: rgba(255, 255, 255, 0.20);
            }

            .current, .total {
                color: #000;
                font-family: "League Spartan";
                font-size: 14px;
                font-style: normal;
                font-weight: 700;
                line-height: normal;
            }
        }

        .prev,
        .next{
            display: flex;
            fill: #010000;
        }

        [role="button"] {
            cursor: pointer;
        }

        .next {
            transform: rotate(180deg);
        }

        .swiper-button-disabled {
            opacity: .5;
        }
    }
}