/**
 * Polices Charte Graphique InterChanvre
 * FinalSix pour les titres, Poppins pour le texte courant
 *
 * @author EcoWeb InterChanvre
 * @version 2.0
 * @date 2026-03-03
 */

/* ============================================================================
   FINALSIX - Police principale pour les titres (identique à interchanvre.org)
   ============================================================================ */

@font-face {
  font-family: 'FinalSix';
  src: url('../fonts/FinalSix-300.woff2') format('woff2'),
       url('../fonts/FinalSix-300.woff') format('woff'),
       url('../fonts/FinalSix-300.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'FinalSix';
  src: url('../fonts/FinalSix-500.woff2') format('woff2'),
       url('../fonts/FinalSix-500.woff') format('woff'),
       url('../fonts/FinalSix-500.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'FinalSix';
  src: url('../fonts/FinalSix-800.woff2') format('woff2'),
       url('../fonts/FinalSix-800.woff') format('woff'),
       url('../fonts/FinalSix-800.otf') format('opentype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* ============================================================================
   POPPINS - Police pour le texte courant (identique à interchanvre.org)
   ============================================================================ */

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-400.woff2') format('woff2'),
       url('../fonts/Poppins-400.woff') format('woff'),
       url('../fonts/Poppins-400.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-500.woff2') format('woff2'),
       url('../fonts/Poppins-500.woff') format('woff'),
       url('../fonts/Poppins-500.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* ============================================================================
   VARIABLES CSS - POLICES CHARTE GRAPHIQUE INTERCHANVRE
   ============================================================================ */

:root {
  /* Polices principales selon la charte graphique interchanvre.org */
  --font-title: 'FinalSix', Georgia, 'Times New Roman', serif;
  --font-body: 'Poppins', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;

  /* Hiérarchie typographique */
  --font-heading-primary: var(--font-title);    /* H1, H2 - Gros titres */
  --font-heading-secondary: var(--font-body);   /* H3, H4, H5, H6 - Sous-titres */
  --font-text: var(--font-body);                /* Paragraphes, texte courant */
  --font-ui: var(--font-body);                  /* Interface, formulaires */

  /* Tailles de police */
  --font-size-title-xl: 2.5rem;     /* 40px - Titres principaux */
  --font-size-title-lg: 2rem;       /* 32px - Sous-titres majeurs */
  --font-size-title-md: 1.5rem;     /* 24px - Titres de section */
  --font-size-title-sm: 1.25rem;    /* 20px - Sous-titres */
  --font-size-body-lg: 1.125rem;    /* 18px - Texte important */
  --font-size-body: 1rem;           /* 16px - Texte normal */
  --font-size-body-sm: 0.875rem;    /* 14px - Texte secondaire */

  /* Poids de police */
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 800;

  /* Hauteur de ligne optimisée */
  --line-height-tight: 1.2;         /* Titres */
  --line-height-normal: 1.6;        /* Texte courant */
  --line-height-loose: 1.8;         /* Texte aéré */
}

/* ============================================================================
   CLASSES UTILITAIRES TYPOGRAPHIQUES
   ============================================================================ */

.font-title {
  font-family: var(--font-title) !important;
}

.font-body {
  font-family: var(--font-body) !important;
}

.title-primary {
  font-family: var(--font-heading-primary);
  font-size: var(--font-size-title-xl);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-tight);
}

.title-secondary {
  font-family: var(--font-heading-primary);
  font-size: var(--font-size-title-lg);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-tight);
}

.title-section {
  font-family: var(--font-heading-secondary);
  font-size: var(--font-size-title-md);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
}

.title-subsection {
  font-family: var(--font-heading-secondary);
  font-size: var(--font-size-title-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-normal);
}

.text-body {
  font-family: var(--font-text);
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-normal);
}

.text-important {
  font-family: var(--font-text);
  font-size: var(--font-size-body-lg);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-normal);
}

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