
/* ===== POPPINS - Police pour les titres ===== */
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* Poppins Italic */
@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('../fonts/Poppins-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* ===== ARISTOTELICA - Police pour le corps de texte ===== */
@font-face {
  font-family: 'Aristotelica';
  src: url('../fonts/Aristotelica Display DemiBold Trial.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aristotelica';
  src: url('../fonts/Aristotelica Display ExtraLight Trial.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aristotelica';
  src: url('../fonts/AristotelicaSmallCaps-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-variant: small-caps;
  font-display: swap;
}

/* Zetafonts Aristotelica variants */
@font-face {
  font-family: 'Aristotelica Text';
  src: url('../fonts/Zetafonts - Aristotelica Text ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aristotelica Display';
  src: url('../fonts/Zetafonts - Aristotelica Display ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aristotelica Icons';
  src: url('../fonts/Zetafonts - Aristotelica Icons DemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Aristotelica Small Caps';
  src: url('../fonts/Zetafonts - Aristotelica Small Caps Hairline.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-variant: small-caps;
  font-display: swap;
}

/* ===== BASEMENT GROTESQUE - Police monospace ===== */
@font-face {
  font-family: 'Basement Grotesque';
  src: url('../fonts/BasementGrotesque-Black_v1.202.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* ===== VARIABLES CSS ===== */
:root {
  /* Polices principales */
  --font-sans-serif: 'Aristotelica Text', 'Aristotelica', 'Arial', sans-serif;
  --font-headings: 'Poppins', sans-serif;
  --font-display: 'Aristotelica Display', 'Poppins', sans-serif;
  --font-monospace: 'Basement Grotesque', monospace;
  --font-small-caps: 'Aristotelica Small Caps', 'Aristotelica', sans-serif;
  
  /* Tailles de police selon votre configuration SCSS */
  --font-size-display: 3rem;    /* 48px */
  --font-size-h1: 2.25rem;      /* 36px */
  --font-size-h2: 1.875rem;     /* 30px */
  --font-size-h3: 1.5rem;       /* 24px */
  --font-size-h4: 1.125rem;     /* 18px */
  --font-size-base: 0.75rem;    /* 12px */
  --font-size-small: 0.625rem;  /* 10px */
}

/* ===== APPLICATION GLOBALE DES POLICES ===== */
body {
  font-family: var(--font-sans-serif) !important;
  font-size: var(--font-size-base) !important;
  font-weight: 200;
}

/* Titres avec Poppins */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-headings) !important;
  font-weight: 600;
}

/* Display avec Aristotelica Display */
.display-1, .display-2, .display-3, .display-4 {
  font-family: var(--font-display) !important;
  font-size: var(--font-size-display) !important;
  font-weight: 600;
}

/* Tailles spécifiques */
h1, .h1 { 
  font-size: var(--font-size-h1) !important; 
  font-weight: 700;
}
h2, .h2 { 
  font-size: var(--font-size-h2) !important; 
  font-weight: 600;
}
h3, .h3 { 
  font-size: var(--font-size-h3) !important; 
  font-weight: 600;
}
h4, .h4 { 
  font-size: var(--font-size-h4) !important; 
  font-weight: 500;
}

/* Code et monospace */
code, pre, .monospace {
  font-family: var(--font-monospace) !important;
  font-weight: 900;
}

small, .small {
  font-size: var(--font-size-small) !important;
}

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

/* Polices spécifiques */
.font-aristotelica {
  font-family: 'Aristotelica Text', 'Arial', sans-serif !important;
}

.font-aristotelica-display {
  font-family: 'Aristotelica Display', sans-serif !important;
}

.font-aristotelica-small-caps {
  font-family: 'Aristotelica Small Caps', sans-serif !important;
  font-variant: small-caps;
}

.font-poppins {
  font-family: 'Poppins', sans-serif !important;
}

.font-basement {
  font-family: 'Basement Grotesque', monospace !important;
}

/* Poids de police Poppins */
.poppins-thin { font-weight: 100 !important; }
.poppins-extralight { font-weight: 200 !important; }
.poppins-light { font-weight: 300 !important; }
.poppins-regular { font-weight: 400 !important; }
.poppins-medium { font-weight: 500 !important; }
.poppins-semibold { font-weight: 600 !important; }
.poppins-bold { font-weight: 700 !important; }
.poppins-extrabold { font-weight: 800 !important; }
.poppins-black { font-weight: 900 !important; }

/* Poids Aristotelica */
.aristotelica-extralight { font-weight: 200 !important; }
.aristotelica-demibold { font-weight: 600 !important; }

/* Tailles personnalisées */
.text-48 { font-size: 3rem !important; }
.text-36 { font-size: 2.25rem !important; }
.text-30 { font-size: 1.875rem !important; }
.text-24 { font-size: 1.5rem !important; }
.text-18 { font-size: 1.125rem !important; }
.text-12 { font-size: 0.75rem !important; }
.text-10 { font-size: 0.625rem !important; }

/* ===== STYLES SPÉCIAUX POUR HESSED ===== */

/* Logo et branding */
.hessed-logo {
  font-family: var(--font-display) !important;
  font-weight: 600;
  letter-spacing: 3px;
}

/* Navigation */
.navbar-brand h1 {
  font-family: var(--font-display) !important;
  font-weight: 600;
  letter-spacing: 2px;
}

.navbar-nav .nav-link {
  font-family: var(--font-headings) !important;
  font-weight: 500;
}

/* Carousel titles */
.carousel-caption h1 {
  font-family: var(--font-display) !important;
  font-weight: 600;
}

.carousel-caption h2 {
  font-family: var(--font-headings) !important;
  font-weight: 400;
}

/* Section titles */
.section-title h4 {
  font-family: var(--font-small-caps) !important;
  font-variant: small-caps;
  font-weight: 600;
}

.section-title h1 {
  font-family: var(--font-display) !important;
  font-weight: 600;
}

/* Cards et contenus */
.card-header h5 {
  font-family: var(--font-headings) !important;
  font-weight: 600;
}

/* Footer */
.footer h4 {
  font-family: var(--font-small-caps) !important;
  font-variant: small-caps;
  font-weight: 600;
}

/* Boutons */
.btn {
  font-family: var(--font-headings) !important;
  font-weight: 600;
}

/* Texte de base optimisé */
p, .text-content {
  font-family: var(--font-sans-serif) !important;
  font-weight: 200;
  line-height: 1.6;
}

/* Classes spéciales pour HESSED */
.hessed-title {
  font-family: var(--font-display) !important;
  font-weight: 600;
  letter-spacing: 2px;
}

.hessed-subtitle {
  font-family: var(--font-small-caps) !important;
  font-variant: small-caps;
  font-weight: 600;
}

.hessed-text {
  font-family: var(--font-sans-serif) !important;
  font-weight: 200;
}

.hessed-emphasis {
  font-family: var(--font-headings) !important;
  font-weight: 500;
}