.carousel {
    position: relative;
    overflow: hidden;
    width: var(--size-full);
    height: var(--size-full);
    border: 1px solid var(--neutral-3);
    border-radius: var(--rounding-2);
    box-shadow: 0 0 var(--size-3) 0 var(--black-opacity-10);
}

.carousel-track {
    width: var(--size-full);
    height: var(--size-full);
    overflow: hidden;
}

.carousel-slide {
    min-width: var(--size-full);
    height: var(--size-full);
    padding: var(--space-1);
    backface-visibility: hidden;
    transform-style: preserve-3d;
    will-change: transform;
}

.carousel-slide-link {
    overflow: hidden;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: var(--rounding-1);
}

.carousel-slide-link img {
    width: var(--size-full);
    height: var(--size-full);
    object-fit: cover;
}

.carousel-slide-link h3 {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: var(--space-5);
    font-size: calc(var(--font-size-7) * 1.5);
    color: var(--neutral-1);
    background-color: var(--white-opacity-10);
    border: 0;
    backdrop-filter: blur(10px);
}

.carousel .slide-button[data-direction="left"] {
    margin-left: var(--space-4);
}

.carousel .slide-button[data-direction="right"] {
    margin-right: var(--space-4);
}

.slider-indicator-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    gap: var(--space-2);
    width: var(--size-fit);
    height: var(--size-fit);
    margin-bottom: var(--space-3);
    transform: translateX(-50%);
}

.slider-indicator {
    width: var(--size-1);
    height: var(--size-1);
    border: 1px solid var(--neutral-3);
    border-radius: var(--rounding-ellipse);
    cursor: pointer;
    transition: var(--time-2);
    scale: 0.9;
    backdrop-filter: blur(10px);
}

.slider-indicator:hover {
    scale: 0.8;
}

.slider-indicator.active {
    background-color: var(--white-opacity-30);
    backdrop-filter: blur(10px);
    scale: 0.8;
}