#productCarousel {
    position: relative;
}
#productCarousel .carousel-inner {
    overflow: hidden;
    border-radius: var(--niche-radius);
}
#productCarousel .carousel-item {
    transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
} /* Two cards visible */
#productCarousel .product-card {
    width: 100%;
    min-height: 510px;
} /* Controls */
.product-carousel-control {
    width: 48px;
    height: 48px;
    top: 50%;
    transform: translateY(-50%);
    margin: 0 14px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.94);
    opacity: 0;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    transition:
        opacity 0.25s ease,
        transform 0.25s ease,
        background 0.25s ease;
}
#productCarousel:hover .product-carousel-control {
    opacity: 1;
}
.product-carousel-control:hover {
    background: #fff;
}
.product-carousel-control:hover {
    transform: translateY(-50%) scale(1.05);
}
.product-carousel-control .carousel-control-prev-icon,
.product-carousel-control .carousel-control-next-icon {
    width: 17px;
    height: 17px; /* Dark arrow */
    filter: invert(1);
} /* Carousel bottom divider */
#productCarousel::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 24px;
    background: var(--niche-line);
} /* ========================================= TABLET / MOBILE ========================================= */
@media (max-width: 767.98px) {
    /* * One card per row on mobile. * Swipe naturally with Bootstrap carousel. */
    #productCarousel .carousel-inner {
        border-radius: 24px;
    }
    #productCarousel .product-card {
        min-height: 470px;
        border-radius: 24px;
    }
    .product-carousel-control {
        width: 42px;
        height: 42px;
        margin: 0 8px;
        opacity: 1;
    }
    .product-carousel-control .carousel-control-prev-icon,
    .product-carousel-control .carousel-control-next-icon {
        width: 14px;
        height: 14px;
    }
}
