/* ===================================================================
   SECTION PARTENAIRES ET CLIENTS - RESPONSIVE COMPLET
   Optimisation de l'affichage des témoignages et logos partenaires
   =================================================================== */

/* ========== RÈGLES GÉNÉRALES ========== */
/* Titres de la section responsive */
.testimonials-section h2,
.partners-section h2 {
  font-size: clamp(1.5rem, 5vw, 3.75rem);
  line-height: 1.2;
}

.testimonials-section p,
.partners-section p {
  font-size: clamp(1rem, 2vw, 1.5rem);
}

/* ========== MOBILE PORTRAIT (320px - 480px) ========== */
@media (max-width: 480px) {
  /* Témoignages */
  .testimonial-card {
    width: 280px !important;
    min-height: 300px !important;
    height: auto !important;
    padding: 1.5rem !important;
  }

  .testimonial-card h4 {
    font-size: 1rem !important;
    margin-bottom: 1rem !important;
  }

  .testimonial-card blockquote {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
  }

  .testimonial-card .w-12.h-12 {
    width: 2.5rem !important;
    height: 2.5rem !important;
  }

  /* Logos partenaires - OPTIMISÉ pour mobile */
  .logos-scroll-container img {

    will-change: transform;
    backface-visibility: hidden;
  }


  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 1.75rem !important;
    margin-bottom: 1.5rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }

  .text-lg.sm\:text-xl.md\:text-2xl {
    font-size: 1rem !important;
  }
}

/* ========== MOBILE LANDSCAPE / TABLET PORTRAIT (481px - 767px) ========== */
@media (min-width: 481px) and (max-width: 767px) {
  /* Témoignages */
  .testimonial-card {
    width: 320px !important;
    min-height: 320px !important;
    height: auto !important;
    padding: 1.75rem !important;
  }

  .testimonial-card h4 {
    font-size: 1.1rem !important;
  }

  .testimonial-card blockquote {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
  }

  /* Logos partenaires - OPTIMISÉ */
  .logos-scroll-container img {
    height: 5rem !important;
    max-width: 8rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }

  .logos-scroll-container .mx-2 {
    margin-left: 0.75rem !important;
    margin-right: 0.75rem !important;
  }

  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 2rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 1.75rem !important;
  }
}

/* ========== TABLET LANDSCAPE (768px - 1023px) ========== */
@media (min-width: 768px) and (max-width: 1023px) {
  /* Témoignages */
  .testimonial-card {
    width: 360px !important;
    min-height: 300px !important;
    height: auto !important;
    padding: 2rem !important;
  }

  .testimonial-card h4 {
    font-size: 1.15rem !important;
  }

  .testimonial-card blockquote {
    font-size: 1rem !important;
    line-height: 1.6 !important;
  }

  /* Logos partenaires - OPTIMISÉ */
  .logos-scroll-container img {
    height: 6rem !important;
    max-width: 10rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }

  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 2.5rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 2rem !important;
  }

  .text-lg.sm\:text-xl.md\:text-2xl {
    font-size: 1.25rem !important;
  }
}

/* ========== LAPTOP SCREENS (1024px - 1439px) ========== */
@media (min-width: 1024px) and (max-width: 1439px) {
  /* Témoignages */
  .testimonial-card {
    width: 400px !important;
    min-height: 280px !important;
    height: auto !important;
    padding: 2rem !important;
  }

  .testimonial-card h4 {
    font-size: 1.2rem !important;
  }

  .testimonial-card blockquote {
    font-size: 1rem !important;
    line-height: 1.6 !important;
  }

  /* Logos partenaires - OPTIMISÉ */
  .logos-scroll-container img {
    height: 8rem !important;
    max-width: 12rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }

  .logos-scroll-container .mx-2 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }

  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 3rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 2.5rem !important;
  }

  .text-lg.sm\:text-xl.md\:text-2xl {
    font-size: 1.5rem !important;
  }
}

/* ========== LARGE DESKTOP (1440px - 1919px) ========== */
@media (min-width: 1440px) and (max-width: 1919px) {
  /* Témoignages */
  .testimonial-card {
    width: 450px !important;
    min-height: 300px !important;
    height: auto !important;
    padding: 2.5rem !important;
  }

  .testimonial-card h4 {
    font-size: 1.35rem !important;
  }

  .testimonial-card blockquote {
    font-size: 1.1rem !important;
    line-height: 1.7 !important;
  }

  .testimonial-card .w-12.h-12 {
    width: 3.5rem !important;
    height: 3.5rem !important;
  }

  /* Logos partenaires - OPTIMISÉ */
  .logos-scroll-container img {
    height: 10rem !important;
    max-width: 16rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }

  .logos-scroll-container .mx-2 {
    margin-left: 2rem !important;
    margin-right: 2rem !important;
  }

  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 3.5rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 3rem !important;
  }

  .text-lg.sm\:text-xl.md\:text-2xl {
    font-size: 1.75rem !important;
  }
}

/* ========== ULTRA WIDE / 4K (1920px+) ========== */
@media (min-width: 1920px) {
  /* Témoignages */
  .testimonial-card {
    width: 500px !important;
    min-height: 320px !important;
    height: auto !important;
    padding: 3rem !important;
  }

  .testimonial-card h4 {
    font-size: 1.5rem !important;
  }

  .testimonial-card blockquote {
    font-size: 1.25rem !important;
    line-height: 1.8 !important;
  }

  .testimonial-card .w-12.h-12 {
    width: 4rem !important;
    height: 4rem !important;
  }

  /* Logos partenaires - OPTIMISÉ */
  .logos-scroll-container img {
    height: 12rem !important;
    max-width: 18rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }

  .logos-scroll-container .mx-2 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }

  /* Titres */
  .text-3xl.sm\:text-4xl.md\:text-5xl.lg\:text-6xl {
    font-size: 4rem !important;
  }

  .text-2xl.md\:text-3xl.lg\:text-5xl {
    font-size: 3.5rem !important;
  }

  .text-lg.sm\:text-xl.md\:text-2xl {
    font-size: 2rem !important;
  }
}

/* ========== ÉCRANS COURTS (hauteur limitée) ========== */
@media (max-height: 800px) {
  .testimonials-scroll-container,
  .logos-scroll-container {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
}

@media (max-height: 600px) {
  .testimonial-card {
    min-height: 250px !important;
    padding: 1.5rem !important;
  }

  .testimonial-card h4 {
    font-size: 1rem !important;
    margin-bottom: 0.75rem !important;
  }

  .testimonial-card blockquote {
    font-size: 0.9rem !important;
  }
}

/* ========== ORIENTATION PAYSAGE SUR MOBILE ========== */
@media (max-width: 1023px) and (orientation: landscape) and (max-height: 500px) {
  .testimonial-card {
    width: 300px !important;
    min-height: 200px !important;
    padding: 1rem !important;
  }

  .testimonial-card h4 {
    font-size: 0.95rem !important;
    margin-bottom: 0.5rem !important;
  }

  .testimonial-card blockquote {
    font-size: 0.85rem !important;
    line-height: 1.4 !important;
  }

  .testimonial-card .w-12.h-12 {
    width: 2rem !important;
    height: 2rem !important;
    margin-bottom: 0.5rem !important;
  }

  .logos-scroll-container img {
    height: 4.5rem !important;
    max-width: 8rem !important;
    will-change: transform;
    backface-visibility: hidden;
  }
}

/* ========== AMÉLIORATION DE L'ESPACEMENT ========== */
/* Espacement entre les sections sur tous les écrans */
.py-16.sm\:py-20 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

@media (min-width: 640px) {
  .py-16.sm\:py-20 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
}

@media (min-width: 1024px) {
  .py-16.sm\:py-20 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}

@media (min-width: 1440px) {
  .py-16.sm\:py-20 {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
}

/* ========== AMÉLIORATION DES ANIMATIONS ========== */
/* Optimisation témoignages uniquement */
@media (min-width: 1920px) {
  .animate-scroll-right {
    animation-duration: 100s !important;
  }
}

/* Accélérer sur petits écrans pour témoignages */
@media (max-width: 768px) {
  .animate-scroll-right {
    animation-duration: 40s !important;
  }
}

/* Amélioration des performances générales */
.logos-scroll-container,
.testimonials-scroll-container {
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

/* Optimisation GPU pour tous les logos */
.logos-scroll-container img,
.testimonials-scroll-container .testimonial-card {
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}
