/* ============================================
   BRAND PARTNERS V4 — Typography
   ============================================ */

/* --- Titres — PP Editorial New --- */

h1 {
  font-family: var(--font-editorial);
  font-size: var(--text-6xl);
  font-weight: var(--weight-regular);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-primary);
}

h2 {
  font-family: var(--font-editorial);
  font-size: var(--text-5xl);
  font-weight: var(--weight-regular);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-primary);
}

h3 {
  font-family: var(--font-editorial);
  font-size: var(--text-4xl);
  font-weight: var(--weight-light);
  line-height: var(--leading-snug);
  color: var(--color-text-primary);
}

h4 {
  font-family: var(--font-editorial);
  font-size: var(--text-3xl);
  font-weight: var(--weight-light);
  line-height: var(--leading-snug);
  color: var(--color-text-primary);
}

/* --- Corps — Inter --- */

p {
  font-family: var(--font-body);
  font-size: var(--text-lg);
  line-height: var(--leading-relaxed);
  color: var(--color-text-secondary);
  max-width: 65ch;
}

.text-large {
  font-size: var(--text-xl);
  line-height: var(--leading-relaxed);
}

.text-small {
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
}

/* --- Labels / Metadata --- */

.label {
  font-family: var(--font-body);
  font-size: var(--text-xs);
  font-weight: var(--weight-medium);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  color: var(--color-text-secondary);
}

.label--accent {
  color: var(--color-accent-primary);
}

/* --- Numérotation de sections --- */

.section-number {
  font-family: var(--font-body);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  color: var(--color-accent-primary);
  letter-spacing: var(--tracking-wide);
}

/* --- Liens & Boutons --- */

a:hover {
  color: var(--color-accent-primary);
  transition: color var(--transition-fast);
}

.btn-primary {
  font-family: var(--font-body);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  color: var(--color-bg-primary);
  background: var(--color-text-primary);
  padding: 1rem 2.5rem;
  text-decoration: none;
  display: inline-block;
  transition: all var(--transition-base);
}

.btn-primary:hover {
  background: var(--color-accent-laterite);
  transform: translateY(-2px);
}

/* --- Italique éditorial --- */

.editorial-italic {
  font-family: var(--font-editorial);
  font-style: italic;
}

/* --- Responsive --- */

@media (max-width: 768px) {
  h1 { font-size: var(--text-4xl); }
  h2 { font-size: var(--text-4xl); } /* Augmenté de 30% (était 3xl) */
  h3 { font-size: var(--text-3xl); } /* Augmenté en proportion (était 2xl) */
  h4 { font-size: var(--text-2xl); } /* Augmenté (était xl) */
  p  { font-size: var(--text-base); }
  .section-number { text-transform: none; }
  
  .btn-primary {
    font-size: var(--text-xs);
    padding: 0.85rem 2rem;
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 480px) {
  h1 { font-size: var(--text-3xl); }
  h2 { font-size: var(--text-3xl); } /* Augmenté de 30% (était 2xl) */
  h3 { font-size: var(--text-2xl); } /* Augmenté en proportion (était xl) */
  h4 { font-size: var(--text-xl); }  /* Augmenté (était lg) */
}
