/**
 * Reviews Carousel Component
 * Desktop-only carousel for reviews section
 * Maintains existing card design, adds pagination arrows
 */

/* Carousel wrapper - desktop only */
@media (min-width: 769px) {
    .reviews-carousel-wrapper {
        position: relative;
        margin-top: var(--space-10);
        padding: 0 80px; /* Space for arrows */
        overflow: visible; /* Allow arrows to be visible outside */
    }

    /* Hide default grid on desktop, show carousel */
    .reviews-grid.has-carousel {
        display: none;
    }

    .reviews-carousel {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--space-8);
        transition: opacity 0.3s ease;
    }

    .reviews-carousel.transitioning {
        opacity: 0.5;
    }

    /* Navigation Arrows */
    .reviews-nav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: rgba(255, 255, 255, 0.95);
        border: 2px solid rgba(59, 130, 246, 0.3);
        width: 48px;
        height: 48px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.3s ease;
        z-index: 10;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    .reviews-nav:hover {
        background: #3b82f6;
        border-color: #3b82f6;
        transform: translateY(-50%) scale(1.1);
        box-shadow: 0 6px 20px rgba(59, 130, 246, 0.3);
    }

    .reviews-nav:hover svg {
        stroke: white;
    }

    .reviews-nav:active {
        transform: translateY(-50%) scale(0.95);
    }

    .reviews-nav.disabled {
        opacity: 0.3;
        cursor: not-allowed;
        pointer-events: none;
    }

    .reviews-nav-prev {
        left: -60px;
    }

    .reviews-nav-next {
        right: -60px;
    }

    .reviews-nav svg {
        width: 24px;
        height: 24px;
        stroke: #3b82f6;
        stroke-width: 2.5;
        transition: stroke 0.3s ease;
    }

    /* Pagination Dots */
    .reviews-pagination {
        display: flex;
        justify-content: center;
        gap: 12px;
        margin-top: var(--space-8);
    }

    .reviews-pagination-dot {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background: rgba(59, 130, 246, 0.2);
        cursor: pointer;
        transition: all 0.3s ease;
        border: 2px solid transparent;
    }

    .reviews-pagination-dot:hover {
        background: rgba(59, 130, 246, 0.4);
        transform: scale(1.2);
    }

    .reviews-pagination-dot.active {
        background: #3b82f6;
        width: 32px;
        border-radius: 5px;
    }

    /* Adjust container to accommodate arrows */
    .reviews .container {
        position: relative;
    }
}

/* Mobile - show standard grid */
@media (max-width: 768px) {
    .reviews-carousel-wrapper {
        display: none !important;
    }

    .reviews-grid.has-carousel {
        display: grid !important;
    }
}

/* Laptop/smaller desktop - reduce arrow offset */
@media (min-width: 769px) and (max-width: 1200px) {
    .reviews-nav-prev {
        left: -40px;
    }

    .reviews-nav-next {
        right: -40px;
    }
}
