    #hero-temoignages {
      padding: 120px 0 80px;
    }

    .parcours-timeline {
      position: relative;
      padding-left: 30px;
      margin: 3rem 0;
    }
    
    .parcours-timeline::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 3px;
      background: linear-gradient(180deg, #3498db, #2ecc71);
      border-radius: 3px;
    }
    
    .timeline-step {
      position: relative;
      margin-bottom: 2.5rem;
      padding-left: 30px;
    }
    
    .timeline-step::before {
      content: '';
      position: absolute;
      left: -36px;
      top: 0;
      width: 15px;
      height: 15px;
      border-radius: 50%;
      background: #3498db;
      border: 3px solid white;
      box-shadow: 0 0 0 3px #3498db;
    }
    
    .timeline-step.success::before {
      background: #2ecc71;
      box-shadow: 0 0 0 3px #2ecc71;
    }
    
    .testimonial-card {
      background: white;
      border-radius: 15px;
      padding: 2rem;
      border: 2px solid #e9ecef;
      transition: all 0.3s ease;
      height: 100%;
      position: relative;
    }
    
    .testimonial-card:hover {
      transform: translateY(-10px);
      border-color: #3498db;
      box-shadow: 0 15px 40px rgba(52, 152, 219, 0.15);
    }
    
    .testimonial-avatar {
      width: 100px;
      height: 100px;
      border-radius: 50%;
      object-fit: cover;
      border: 4px solid #3498db;
      margin: 0 auto 1.5rem;
      display: block;
    }
    
    .testimonial-badge {
      position: absolute;
      top: 20px;
      right: 20px;
      padding: 0.5rem 1rem;
      border-radius: 50px;
      font-size: 0.8rem;
      font-weight: 600;
    }
    
    .testimonial-badge.autonome {
      background: #d4edda;
      color: #155724;
    }
    
    .testimonial-badge.famille {
      background: #d1ecf1;
      color: #0c5460;
    }
    
    .testimonial-badge.formation {
      background: #fff3cd;
      color: #856404;
    }
    
    .testimonial-quote {
      position: relative;
      padding: 1.5rem;
      background: #f8f9fa;
      border-radius: 10px;
      margin: 1.5rem 0;
      border-left: 4px solid #3498db;
    }
    
    .testimonial-quote::before {
      content: '"';
      position: absolute;
      top: -10px;
      left: 15px;
      font-size: 3rem;
      color: #3498db;
      font-family: Georgia, serif;
    }
    
    .stats-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #f8f9fa;
      padding: 0.75rem 1.25rem;
      border-radius: 50px;
      margin: 0.3rem;
      font-size: 0.9rem;
      border: 1px solid #e9ecef;
    }
    
    .stats-badge i {
      color: #3498db;
    }
    
    .impact-numbers {
      background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%);
      border-radius: 15px;
      padding: 3rem;
      color: white;
      margin: 3rem 0;
    }
    
    .impact-number {
      font-size: 3rem;
      font-weight: 700;
      margin-bottom: 0.5rem;
      color: #2ecc71;
    }
    
    .impact-label {
      font-size: 1.1rem;
      opacity: 0.9;
    }
    
    .family-reunion-card {
      background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
      border-radius: 15px;
      padding: 2rem;
      border: 2px solid #e9ecef;
      position: relative;
      overflow: hidden;
    }
    
    .family-reunion-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 4px;
      background: linear-gradient(90deg, #2ecc71, #27ae60);
    }
    
    .reunion-icon {
      width: 60px;
      height: 60px;
      background: #2ecc71;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1.5rem;
    }
    
    .reunion-icon i {
      font-size: 1.5rem;
      color: white;
    }
    
    @media (max-width: 768px) {
      .parcours-timeline {
        padding-left: 20px;
      }
      
      .timeline-step::before {
        left: -26px;
      }
      
      .impact-number {
        font-size: 2.5rem;
      }
    }

    /* Styles supplémentaires pour les nouveaux éléments */
    .stat-card {
      padding: 2rem 1rem;
      background: white;
      border-radius: 15px;
      box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    }
    
    .stat-icon {
      font-size: 2.5rem;
      color: #3498db;
      margin-bottom: 1rem;
    }
    
    .stat-number {
      font-size: 2.5rem;
      font-weight: 700;
      color: #2c3e50;
      margin-bottom: 0.5rem;
    }
    
    .stat-label {
      color: #7f8c8d;
      font-size: 0.95rem;
    }
    
    .impact-timeline {
      background: white;
      padding: 2rem;
      border-radius: 15px;
      box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    }
    
    .chart-bar {
      display: flex;
      align-items: center;
      margin-bottom: 15px;
    }
    
    .chart-label {
      min-width: 60px;
      font-weight: 600;
      color: #2c3e50;
    }
    
    .chart-value {
      height: 30px;
      background: linear-gradient(90deg, #3498db, #2980b9);
      border-radius: 15px;
      position: relative;
      overflow: hidden;
    }
    
    .chart-value span {
      position: absolute;
      left: 15px;
      top: 50%;
      transform: translateY(-50%);
      color: white;
      font-size: 0.9rem;
      font-weight: 600;
    }
    
    .story-preview {
      display: flex;
      align-items: center;
      gap: 15px;
      background: rgba(255,255,255,0.1);
      padding: 15px;
      border-radius: 10px;
      margin-top: 10px;
    }
    
    .story-preview i {
      font-size: 2rem;
      color: #2ecc71;
    }
    
    .highlight-item {
      display: flex;
      align-items: flex-start;
      gap: 15px;
      margin-bottom: 15px;
    }
    
    .highlight-item i {
      font-size: 1.5rem;
      margin-top: 3px;
    }
    
    .reinsertion-stats {
      background: #f8f9fa;
      padding: 1.5rem;
      border-radius: 10px;
      margin: 1.5rem 0;
    }
    
    @media (max-width: 768px) {
      .impact-numbers .row > div {
        margin-bottom: 2rem;
      }

      .chart-bar {
        flex-direction: column;
        align-items: flex-start;
      }
      
      .chart-label {
        margin-bottom: 5px;
      }
      
      .chart-value {
        width: 100%;
      }
    }
