/* Testimonials Section */
.testimonials {
    padding: 80px 0;
    background: radial-gradient(ellipse 60% 40% at 50% 50%, rgba(59,130,246,0.08) 0%, transparent 70%);
}

.testimonials-wrapper{
    position:relative;
    overflow:hidden;
}

/* Carousel layout */
.testimonials-grid{
    display:flex;
    transition:transform 0.4s ease;
    will-change:transform;
}

.testimonial-card{
    min-width:100%;
    box-sizing:border-box;
    padding:32px;
    margin-right:24px;

    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:16px;

    transition:border-color .3s ease, transform .3s ease;
}

.testimonial-card:hover{
    border-color:rgba(59,130,246,0.4);
    transform:translateY(-4px);
}

.testimonial-card h4{
    font-size:18px;
    margin-bottom:16px;
}

.testimonial-card p{
    color:rgba(255,255,255,0.7);
    font-size:14px;
    line-height:1.6;
    margin-bottom:24px;
}

.testimonial-author{
    display:flex;
    align-items:center;
    gap:12px;
}

.testimonial-avatar{
    width:48px;
    height:48px;
    border-radius:50%;
    background:linear-gradient(135deg,#3b82f6,#8b5cf6);
}

.testimonial-author span{
    font-size:14px;
    color:rgba(255,255,255,0.6);
}

/* Controls */
.carousel-controls{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    margin-top:30px;
}

.carousel-btn{
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.15);
    background:rgba(255,255,255,0.05);
    color:#fff;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:0.2s;
}

.carousel-btn:hover{
    background:rgba(59,130,246,0.2);
    border-color:rgba(59,130,246,0.4);
}

.carousel-btn:disabled{
    opacity:.3;
    cursor:default;
}

.carousel-dots{
    display:flex;
    gap:8px;
}

.carousel-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(255,255,255,0.2);
    border:none;
    cursor:pointer;
    transition:.2s;
}

.carousel-dot.active{
    background:#3b82f6;
    transform:scale(1.3);
}

/* Desktop: show 3 cards */
@media(min-width:900px){

    .testimonial-card{
        min-width:33.33%;
    }

}

/* Large desktop: show 4 cards */
@media(min-width:1200px){

    .testimonial-card{
        min-width:25%;
    }

}