.mf-testimonials-wrapper { position: relative; width: 100%; padding: 10px 0; background: transparent !important; }

.mf-testimonials-slider { 
    width: 100%; 
    max-width: 100vw; 
    overflow: hidden !important; 
    padding: 10px 10px 0 10px !important;
    box-sizing: border-box !important; 
}

.swiper-slide { 
    height: auto !important; 
    padding: 0 !important; 
    display: flex; 
    align-items: stretch; 
    box-sizing: border-box; 
}

.mf-testimonial-card { 
    background: #ffffff; border-radius: 4px; padding: 25px; 
    box-shadow: 0 8px 25px rgba(0,0,0,0.08); 
    width: 100%; 
    display: flex; flex-direction: column; cursor: default; 
    margin: 0 0 35px 0 !important; 
}

.mf-testimonial-header { display: flex; align-items: center; gap: 15px; margin-bottom: 15px; flex-shrink: 0; }
.mf-quote-icon { color: #ccc; width: 35px; height: 35px; flex-shrink: 0; }
.mf-testimonial-name { font-weight: 700; font-size: 1.1em; color: #333; }

/* Valutazione a stelle */
.mf-testimonial-rating { color: #f1c40f; font-size: 1.1em; margin-top: 4px; display: flex; gap: 2px; }
.mf-star { opacity: 0.25; }
.mf-star.filled { opacity: 1; }

/* Il contenitore che si allunga automaticamente */
.mf-content-wrapper {
    flex-grow: 1;
    position: relative;
    min-height: 160px;
    margin-bottom: 5px;
}

/* La sfumatura */
.mf-content-wrapper::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% - 12px); 
    height: 25px;
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
    pointer-events: none; 
    border-radius: 0 0 4px 4px;
    z-index: 5 !important;
}

/* Il box del testo si adatta perfettamente allo spazio */
.mf-testimonial-content { 
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow-y: auto !important; 
    padding-right: 12px; 
}

.mf-testimonial-content::-webkit-scrollbar { width: 6px !important; }
.mf-testimonial-content::-webkit-scrollbar-track { background: #f9f9f9 !important; border-radius: 10px; }
.mf-testimonial-content::-webkit-scrollbar-thumb { background: #ccc !important; border-radius: 10px; transition: background 0.3s ease !important; cursor: pointer !important; }
.mf-testimonial-content:hover::-webkit-scrollbar-thumb { background: #b01d23 !important; }

.mf-testimonial-text { font-size: 1.02em; line-height: 1.6; font-style: italic; color: #555; }

.mf-testimonial-author { display: flex; align-items: center; padding-top: 15px; border-top: 1px solid #f3f3f3; margin-top: auto; flex-shrink: 0;}
.mf-testimonial-avatar img { border-radius: 50%; width: 42px; height: 42px; object-fit: cover; }

/* FIX CONTROLLI E PALLINI DINAMICI (GABBIA) */
.testi-controls-container {
    display: flex !important; 
    align-items: center !important; 
    justify-content: center !important;
    gap: 20px !important; 
    margin-top: 10px !important; 
    padding: 10px 0 !important;
    width: 100% !important;
}

.testi-nav-arrow {
    background: transparent !important; border: none !important; color: #aaa !important; cursor: pointer !important;
    padding: 0 !important; display: flex !important; align-items: center !important; transition: color 0.2s !important;
    flex-shrink: 0 !important;
}
.testi-nav-arrow:hover { color: #b01d23 !important; }
.testi-nav-arrow svg { width: 28px !important; height: 28px !important; display: block !important; }

.testi-pagination-wrapper {
    position: relative !important; 
    width: 80px !important; 
    height: 16px !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.testi-pagination.swiper-pagination-bullets-dynamic { 
    position: absolute !important;
    bottom: auto !important; 
    left: 50% !important; 
    top: 50% !important; 
    margin-top: -6px !important; 
}

.testi-pagination .swiper-pagination-bullet {
    width: 12px !important; 
    height: 12px !important; 
    border-radius: 50% !important; 
    background-color: #ccc !important; 
    opacity: 1 !important;
    display: inline-block !important; 
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
}

.testi-pagination .swiper-pagination-bullet-active-main { 
    background-color: #b01d23 !important; 
}