/* SECTION TÉMOIGNAGES */
.testimonials-section {
    padding: 96px 0;
    background-color: var(--color-light-gray);
    position: relative;
    overflow: hidden;
    
    &::before {
        content: '';
        position: absolute;
        width: 500px;
        height: 500px;
        border-radius: var(--border-radius-full);
        background: rgba(93, 143, 159, 0.03);
        top: -250px;
        right: -200px;
        z-index: 1;
    }
    
    &::after {
        content: '';
        position: absolute;
        width: 300px;
        height: 300px;
        border-radius: var(--border-radius-full);
        background: rgba(93, 143, 159, 0.05);
        bottom: -150px;
        left: -100px;
        z-index: 1;
    }
    
    .testimonials-header {
        text-align: center;
        margin-bottom: 64px;
        position: relative;
        z-index: 2;
        
        h2 {
            font-size: var(--font-size-5xl);
            font-weight: 700;
            color: var(--color-text);
            margin-bottom: 16px;
            position: relative;
            display: inline-block;
            
            &::after {
                content: '';
                position: absolute;
                bottom: -10px;
                left: 50%;
                transform: translateX(-50%);
                width: 80px;
                height: 3px;
                background-color: var(--color-primary);
                border-radius: var(--border-radius-sm);
            }
        }
        
        .testimonials-tagline {
            font-size: var(--font-size-xl);
            color: var(--color-text-light);
            max-width: 800px;
            margin: 0 auto;
            line-height: 1.7;
        }
    }
    
    .testimonials-carousel-container {
        position: relative;
        padding: 0 64px;
        z-index: 2;
        
        .testimonial-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 50px;
            height: 50px;
            background-color: var(--color-white);
            border: none;
            border-radius: var(--border-radius-full);
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            cursor: pointer;
            z-index: 10;
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0.9;
            transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
            
            &:hover {
                opacity: 1;
                transform: translateY(-50%) scale(1.05);
                box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
            }
            
            &.hidden {
                opacity: 0;
                pointer-events: none;
            }
            
            svg {
                width: 36px;
                height: 36px;
                color: var(--color-primary);
            }
            
            &.testimonial-prev {
                left: 10px;
            }
            
            &.testimonial-next {
                right: 10px;
            }
        }
        
        .testimonials-carousel {
            display: flex;
            overflow-x: auto;
            gap: 32px;
            padding: var(--spacing-md) 0;
            scroll-snap-type: x mandatory;
            scrollbar-width: none;
            -ms-overflow-style: none;
            align-items: flex-start;
            
            &::-webkit-scrollbar {
                display: none;
            }
            
            .testimonial-item {
                flex: 0 0 450px;
                scroll-snap-align: center;
                height: auto;
                
                .testimonial-card {
                    background-color: var(--color-white);
                    border-radius: var(--border-radius-lg);
                    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
                    padding: 32px 24px;
                    display: flex;
                    flex-direction: column;
                    height: auto;
                    min-height: 200px;
                    transition: transform 0.2s ease, box-shadow 0.2s ease;
                    
                    &:hover {
                        transform: translateY(-5px);
                        box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
                    }
                    
                    .testimonial-content {
                        flex-grow: 0;
                        margin-bottom: 24px;
                        
                        .testimonial-quote {
                            position: relative;
                            padding-left: var(--spacing-md);
                            
                            .quote-icon {
                                position: absolute;
                                top: 0;
                                left: -10px;
                                width: 24px;
                                height: 24px;
                                color: var(--color-primary);
                                opacity: 0.3;
                            }
                            
                            p {
                                font-size: var(--font-size-md);
                                line-height: 1.8;
                                color: var(--color-text-light);
                                font-style: italic;
                                margin: 0;
                            }
                        }
                        
                        .testimonial-rating {
                            margin-top: 16px;
                            
                            .star {
                                font-size: var(--font-size-lg);
                                color: #d1d5db;
                                margin-right: 2px;
                                
                                &.filled {
                                    color: #ffc107;
                                }
                            }
                        }
                    }
                    
                    .testimonial-author {
                        margin-top: auto;
                        display: flex;
                        align-items: center;
                        border-top: 1px solid var(--color-light-gray);
                        padding-top: var(--spacing-md);
                        
                        .author-image {
                            width: 60px;
                            height: 60px;
                            border-radius: var(--border-radius-full);
                            overflow: hidden;
                            margin-right: 16px;
                            flex-shrink: 0;
                            
                            img {
                                width: 100%;
                                height: 100%;
                                object-fit: cover;
                            }
                            
                            .placeholder-image {
                                width: 100%;
                                height: 100%;
                                background-color: var(--color-primary);
                                opacity: 0.2;
                            }
                        }
                        
                        .author-info {
                            flex-grow: 1;
                            
                            h3 {
                                font-size: var(--font-size-md);
                                font-weight: 600;
                                margin: 0 0 4px;
                                color: var(--color-text);
                            }
                            
                            .author-position {
                                font-size: var(--font-size-sm);
                                color: var(--color-primary);
                                margin: 0 0 4px;
                            }
                            
                            .author-date {
                                font-size: var(--font-size-xs);
                                color: var(--color-text-light);
                                margin: 0;
                            }
                        }
                    }
                }
            }
        }
    }
    
    .testimonials-action {
        text-align: center;
        margin-top: var(--spacing-xl);
        position: relative;
        z-index: 2;
    }
    
    /* Responsive */
    @media (max-width: 992px) {
        padding: 80px 0;
        
        .testimonials-header {
            h2 {
                font-size: var(--font-size-4xl);
            }
            
            .testimonials-tagline {
                font-size: var(--font-size-lg);
            }
        }
        
        .testimonials-carousel-container {
            padding: 0 48px;
            

        }
    }
    
    @media (max-width: 768px) {
        padding: 64px 0;
        
        .testimonials-header {
            margin-bottom: var(--spacing-xl);
            
            h2 {
                font-size: var(--font-size-3xl);
            }
            
            .testimonials-tagline {
                font-size: var(--font-size-md);
            }
        }
        
        .testimonials-carousel-container {
            padding: 0 var(--spacing-xl);
            
            
            .testimonials-carousel {
                gap: var(--spacing-md);
                
                .testimonial-item {
                    flex: 0 0 280px;
                    
                    .testimonial-card {
                        padding: 24px var(--spacing-md);
                        
                        .testimonial-content .testimonial-quote p {
                            font-size: var(--font-size-sm);
                        }
                        
                        .testimonial-author {
                            .author-image {
                                width: 50px;
                                height: 50px;
                            }
                            
                            .author-info {
                                h3 {
                                    font-size: var(--font-size-sm);
                                }
                                
                                .author-position {
                                    font-size: var(--font-size-xs);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    
    @media (max-width: 576px) {
        padding: 64px 0;
        
        .testimonials-header {
            h2 {
                font-size: var(--font-size-2xl);
            }
            
            .testimonials-tagline {
                font-size: var(--font-size-sm);
            }
        }
        
        .testimonials-carousel-container {
            padding: 0 32px;
        
            
            .testimonials-carousel .testimonial-item {
                flex: 0 0 260px;
                
                .testimonial-card {
                    .testimonial-content {
                        .testimonial-quote p {
                            font-size: var(--font-size-xs);
                        }
                        
                        .testimonial-rating .star {
                            font-size: var(--font-size-sm);
                        }
                    }
                }
            }
        }
    }
}