/* Carrusel */
.carousel {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: auto;
    border-radius: 10px;

    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.2));
}

.carousel_track {
    display: flex;
    transition: transform 0.5s ease;
}

.carousel_slide {
    min-width: 100%;
}

.carousel_slide img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.carousel_btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5);
    color: white;
    border: none;
    font-size: 24px;
    padding: 10px;
    cursor: pointer;
}

.prev { left: 10px; }
.next { right: 10px; }

/* Botones Animados */
.button-container {
    display: block;
    width: 100%;
    max-width: 280px;
    margin: auto;
    margin-bottom: 20px;
}

.img-wipe {
    position: relative;
    width: 100%;
    aspect-ratio: 280 / 70;
    border-radius: 25px;
    overflow: hidden;
    cursor: pointer;
}

.img-wipe img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
        
.img-top {
    clip-path: inset(0 0 0 100%);
    transition: clip-path 0.3s cubic-bezier(.4,0,.2,1);
}

.img-wipe:hover .img-top {
    clip-path: inset(0 0 0 0);
}

@media (max-width: 768px) {
    .carousel {
        width: 90%;
    }

    .carousel_slide img {
        width: 100%;
        height: auto;
    }

    .carousel_btn {
        display: none;
    }

    .img-wipe img {
        width: 90%;
        height: 90%;
    }
}