
.quote-section { padding: var(--spacing-v) 0; }
.quote-grid {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 48px;
  align-items: start;
  max-width: 900px;
}

.quote-portrait {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: var(--color-light);
  overflow: hidden;
  flex-shrink: 0;
}

.quote-body {}
.quote-mark {
  font-family: var(--font-heading);
  font-size: 64px;
  line-height: 0.5;
  color: var(--color-accent);
  margin-bottom: 16px;
  display: block;
}

.quote-text {
  font-family: var(--font-heading);
  font-size: clamp(18px, 2.5vw, 26px);
  font-style: italic;
  font-weight: 300;
  line-height: 1.55;
  color: var(--color-primary);
  margin-bottom: 24px;
}

.quote-author-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-primary);
  margin-bottom: 4px;
}

.quote-author-role {
  font-size: 13px;
  color: var(--color-text);
}


/* ── Extracted from HTML ── */

/* ─── Histoire — section éditoriale ─── */
    .histoire-section {
      padding: var(--spacing-v) 0;
      border-bottom: 1px solid var(--color-light);
    }
    
    .histoire-grid {
      display: grid;
      grid-template-columns: 5fr 7fr;
      gap: 80px;
      align-items: start;
    }
    
    .histoire-img {
      aspect-ratio: 3/4;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      border-radius: var(--radius-sm);
      position: sticky;
      top: 100px;
    }
    
    .histoire-content { padding-top: 8px; }
    .histoire-intro {
      font-family: var(--font-heading);
      font-size: clamp(20px, 2.5vw, 28px);
      font-weight: 400;
      line-height: 1.45;
      color: var(--color-primary);
      margin-bottom: 40px;
      padding-bottom: 40px;
      border-bottom: 1px solid var(--color-light);
    }
    
    .histoire-body p {
      font-size: 15px;
      line-height: 1.85;
      color: var(--color-text);
      margin-bottom: 20px;
    }
    
    .histoire-body p:last-child { margin-bottom: 0; }
    .histoire-body strong { color: var(--color-primary); font-weight: 500; }
    .histoire-sign {
      margin-top: 48px;
      padding-top: 32px;
      border-top: 1px solid var(--color-light);
      display: flex;
      align-items: center;
      gap: 16px;
    }
    
    .histoire-sign__portrait {
      width: 48px; height: 48px;
      border-radius: 50%;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      flex-shrink: 0;
    }
    
    .histoire-sign__name {
      font-family: var(--font-heading);
      font-size: 17px;
      font-weight: 400;
      color: var(--color-primary);
    }
    
    .histoire-sign__role {
      font-size: 12px;
      color: var(--color-mid);
      letter-spacing: 0.04em;
    }

    /* ─── Méthode collaborative ─── */
    .methode-section {
      padding: var(--spacing-v) 0;
      background: var(--color-secondary);
    }
    
    .methode-header {
      max-width: 640px;
      margin-bottom: 64px;
    }
    
    .methode-steps {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2px;
    }
    
    .methode-step {
      background: var(--color-white);
      padding: 40px 32px;
    }
    
    .methode-step__num {
      font-family: var(--font-heading);
      font-size: 48px;
      font-weight: 300;
      color: var(--color-accent);
      line-height: 1;
      margin-bottom: 24px;
    }
    
    .methode-step__title {
      font-size: 15px;
      font-weight: 600;
      color: var(--color-primary);
      margin-bottom: 12px;
      letter-spacing: -0.01em;
    }
    
    .methode-step__text {
      font-size: 13px;
      line-height: 1.7;
      color: var(--color-text);
    }
    
    .methode-note {
      margin-top: 2px;
      background: var(--color-dark);
      padding: 32px;
      display: flex;
      align-items: center;
      gap: 24px;
    }
    
    .methode-note__text {
      font-family: var(--font-heading);
      font-size: clamp(16px, 2vw, 20px);
      font-weight: 400;
      color: rgba(255,255,255,0.85);
      line-height: 1.5;
      max-width: 680px;
    }
    
    .methode-note__accent { color: var(--color-accent); }

    /* ─── Équipe ─── */
    .equipe-section {
      padding: var(--spacing-v) 0;
      border-bottom: 1px solid var(--color-light);
    }
    
    .equipe-header {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: end;
      margin-bottom: 64px;
    }
    
    .equipe-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 24px;
    }
    
    .membre-card { }
    .membre-card__img {
      aspect-ratio: 3/4;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      background-color: var(--color-light);
      margin-bottom: 20px;
      border-radius: var(--radius-sm);
      overflow: hidden;
    }
    
    .membre-card__name {
      font-family: var(--font-heading);
      font-size: 18px;
      font-weight: 400;
      color: var(--color-primary);
      margin-bottom: 2px;
    }
    
    .membre-card__role {
      font-size: 11px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-accent);
      margin-bottom: 12px;
    }
    
    .membre-card__bio {
      font-size: 13px;
      line-height: 1.65;
      color: var(--color-text);
    }

    /* ─── Artisans ─── */
    .artisans-section {
      padding: var(--spacing-v) 0;
      background: var(--color-secondary);
    }
    
    .artisans-grid {
      display: grid;
      grid-template-columns: 5fr 7fr;
      gap: 80px;
      align-items: start;
    }
    
    .artisans-img {
      aspect-ratio: 4/3;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      border-radius: var(--radius-sm);
    }
    
    .artisans-content { }
    .artisans-intro {
      font-size: 15px;
      line-height: 1.8;
      color: var(--color-text);
      margin-bottom: 40px;
      max-width: 480px;
    }
    
    .artisans-list {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0;
    }
    
    .artisan-item {
      padding: 20px 0;
      border-bottom: 1px solid var(--color-light);
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
    
    .artisan-item:nth-child(odd) { padding-right: 32px; }
    .artisan-item:nth-child(even) { padding-left: 32px; border-left: 1px solid var(--color-light); }
    .artisan-item__metier {
      font-size: 13px;
      font-weight: 600;
      color: var(--color-primary);
      letter-spacing: 0.01em;
    }
    
    .artisan-item__detail {
      font-size: 12px;
      color: var(--color-mid);
    }
    
    .artisans-note {
      margin-top: 32px;
      font-size: 13px;
      color: var(--color-text);
      font-style: italic;
      line-height: 1.65;
    }

    /* ─── Témoignages ─── */
    .temoignages-section {
      padding: var(--spacing-v) 0;
    }
    
    .temoignages-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
    }
    
    .temoignage-card {
      padding: 48px 40px;
      background: var(--color-secondary);
    }
    
    .temoignage-card:nth-child(2) { background: var(--color-dark); }
    .temoignage-mark {
      font-family: var(--font-heading);
      font-size: 64px;
      line-height: 1;
      color: var(--color-accent);
      margin-bottom: 20px;
    }
    
    .temoignage-text {
      font-family: var(--font-heading);
      font-size: clamp(16px, 1.8vw, 20px);
      font-weight: 400;
      line-height: 1.5;
      color: var(--color-primary);
      margin-bottom: 32px;
    }
    
    .temoignage-card:nth-child(2) .temoignage-text { color: var(--color-white); }
    .temoignage-card:nth-child(2) .temoignage-mark { color: var(--color-accent); }
    .temoignage-author {
      font-size: 13px;
      font-weight: 500;
      color: var(--color-primary);
      margin-bottom: 2px;
    }
    
    .temoignage-card:nth-child(2) .temoignage-author { color: rgba(255,255,255,0.7); }
    .temoignage-projet {
      font-size: 12px;
      color: var(--color-mid);
      letter-spacing: 0.04em;
    }

    /* ─── Timeline ─── */
    .timeline-section {
      padding: var(--spacing-v) 0;
      background: var(--color-secondary);
      border-top: 1px solid var(--color-light);
    }
    
    .timeline-header { margin-bottom: 64px; }
    .timeline {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 0;
      border-top: 1px solid var(--color-light);
    }
    
    .timeline-item {
      padding: 32px 32px 0 0;
      border-right: 1px solid var(--color-light);
      position: relative;
    }
    
    .timeline-item:last-child { border-right: none; }
    .timeline-item::before {
      content: '';
      position: absolute;
      top: -5px; left: 0;
      width: 9px; height: 9px;
      border-radius: 50%;
      background: var(--color-accent);
    }
    
    .timeline-year {
      font-family: var(--font-heading);
      font-size: 32px;
      font-weight: 300;
      color: var(--color-primary);
      margin-bottom: 12px;
    }
    
    .timeline-event {
      font-size: 13px;
      line-height: 1.65;
      color: var(--color-text);
    }
    
    .timeline-event strong { color: var(--color-primary); display: block; font-size: 14px; margin-bottom: 4px; }

    /* ─── Responsive ─── */
    @media (max-width: 1024px) {
      .histoire-grid,
      .artisans-grid { grid-template-columns: 1fr; }
      .histoire-img { position: relative; top: 0; aspect-ratio: 16/9; }
      .methode-steps { grid-template-columns: 1fr 1fr; }
      .equipe-grid { grid-template-columns: 1fr 1fr; }
      .equipe-header { grid-template-columns: 1fr; gap: 24px; }
      .timeline { grid-template-columns: 1fr 1fr; }
      .timeline-item { padding-bottom: 32px; border-bottom: 1px solid var(--color-light); }
    }
    
    @media (max-width: 768px) {
      .methode-steps { grid-template-columns: 1fr; }
      .temoignages-grid { grid-template-columns: 1fr; margin-top: 40px; }
      .artisans-list { grid-template-columns: 1fr; }
      .artisan-item:nth-child(even) { padding-left: 0; border-left: none; }
      .timeline { grid-template-columns: 1fr; }
    }
