/* IMPORT DES POLICES GOOGLE FONTS */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100;200;300;400;500;600;700;800;900&family=Crimson+Text:wght@400;600;700&display=swap');

/* ==========================================
   POLICES GÉNÉRALES
   ========================================== */

/* Police par défaut pour tout le contenu */
body {
    font-family: 'Crimson Text', serif;
    font-weight: 400;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.9);
}

/* ==========================================
   TITRES - ROBOTO SLAB
   ========================================== */

/* Tous les titres utilisent Roboto Slab */
h1, h2, h3, h4, h5, h6,
.hero-title,
.section-title,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
    font-family: 'Roboto Slab', serif;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
}

/* Titre principal - Hero */
.hero-title,
.display-1 {
    font-family: 'Roboto Slab', serif;
    font-weight: 900;
    font-size: clamp(3rem, 6vw, 5rem);
    line-height: 1.1;
    margin-bottom: 25px;
    color: #fff;
    text-shadow: 0 0 30px rgba(26, 188, 156, 0.3);
}

/* Sous-titres principaux */
h1 {
    font-family: 'Roboto Slab', serif;
    font-weight: 800;
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}

h2, .display-3 {
    font-family: 'Roboto Slab', serif;
    font-weight: 700;
    font-size: 2rem;
    line-height: 1.3;
    margin-bottom: 1.25rem;
}

h3 {
    font-family: 'Roboto Slab', serif;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 1rem;
}

h4 {
    font-family: 'Roboto Slab', serif;
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 0.75rem;
}

h5 {
    font-family: 'Roboto Slab', serif;
    font-weight: 500;
    font-size: 1.1rem;
    line-height: 1.4;
    margin-bottom: 0.5rem;
}

h6 {
    font-family: 'Roboto Slab', serif;
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.4;
    margin-bottom: 0.5rem;
}

/* ==========================================
   CONTENU - CRIMSON TEXT
   ========================================== */

/* Tous les paragraphes et contenus */
p, .lead, .text-sample, .hero-subtitle {
    font-family: 'Crimson Text', serif;
    font-weight: 400;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.85);
}

/* Sous-titre hero spécial */
.hero-subtitle, .lead {
    font-family: 'Crimson Text', serif;
    font-weight: 400;
    font-size: 1.3rem;
    line-height: 1.7;
    margin-bottom: 35px;
    color: rgba(255, 255, 255, 0.8);
}

/* Texte normal */
p {
    font-family: 'Crimson Text', serif;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 1.8;
    margin-bottom: 1.5rem;
    color: rgba(255, 255, 255, 0.85);
}

/* Texte en gras dans le contenu */
p strong, .text-light strong, strong {
    font-family: 'Crimson Text', serif;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.95);
}

/* ==========================================
   ÉLÉMENTS SPÉCIAUX
   ========================================== */

/* Badges et étiquettes - Roboto Slab */
.hero-badge, .badge {
    font-family: 'Roboto Slab', serif;
    font-weight: 700;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
}

/* Boutons - Roboto Slab */
.btn, .btn-custom, .button-sample {
    font-family: 'Roboto Slab', serif;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Navigation - Roboto Slab */
.nav-link, .navbar-nav .nav-link {
    font-family: 'Roboto Slab', serif;
    font-weight: 500;
    letter-spacing: 0.5px;
}

/* Cartes de fonctionnalités */
.feature-card h3 {
    font-family: 'Roboto Slab', serif;
    font-weight: 600;
}

.feature-card p {
    font-family: 'Crimson Text', serif;
    font-weight: 400;
    line-height: 1.7;
}

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

/* Forcer Roboto Slab */
.font-title, .roboto-slab {
    font-family: 'Roboto Slab', serif !important;
}

/* Forcer Crimson Text */
.font-content, .crimson-text {
    font-family: 'Crimson Text', serif !important;
}

/* Poids spécifiques pour Roboto Slab */
.roboto-thin { font-family: 'Roboto Slab', serif; font-weight: 100; }
.roboto-light { font-family: 'Roboto Slab', serif; font-weight: 300; }
.roboto-regular { font-family: 'Roboto Slab', serif; font-weight: 400; }
.roboto-medium { font-family: 'Roboto Slab', serif; font-weight: 500; }
.roboto-semibold { font-family: 'Roboto Slab', serif; font-weight: 600; }
.roboto-bold { font-family: 'Roboto Slab', serif; font-weight: 700; }
.roboto-extrabold { font-family: 'Roboto Slab', serif; font-weight: 800; }
.roboto-black { font-family: 'Roboto Slab', serif; font-weight: 900; }

/* Poids spécifiques pour Crimson Text */
.crimson-regular { font-family: 'Crimson Text', serif; font-weight: 400; }
.crimson-semibold { font-family: 'Crimson Text', serif; font-weight: 600; }
.crimson-bold { font-family: 'Crimson Text', serif; font-weight: 700; }

/* ==========================================
   RESPONSIVE
   ========================================== */

@media (max-width: 768px) {
    /* Ajustements titres mobile */
    .hero-title, .display-1 {
        font-size: 2.5rem;
    }
    
    h1 {
        font-size: 2rem;
    }
    
    h2, .display-3 {
        font-size: 1.75rem;
    }
    
    /* Ajustements contenu mobile */
    .hero-subtitle, .lead {
        font-size: 1.1rem;
    }
    
    p {
        font-size: 1rem;
        line-height: 1.7;
    }
}

/* ==========================================
   OVERRIDE BOOTSTRAP AVEC VOS POLICES
   ========================================== */

/* Override des classes Bootstrap */
.text-light { 
    color: rgba(255, 255, 255, 0.9) !important; 
    font-family: 'Crimson Text', serif;
}

.text-muted { 
    color: rgba(255, 255, 255, 0.7) !important; 
    font-family: 'Crimson Text', serif;
}

.text-white { 
    color: #fff !important; 
}

/* Classes Bootstrap pour titres */
.fw-black, .fw-900 {
    font-weight: 900 !important;
    font-family: 'Roboto Slab', serif !important;
}

.fw-bold, .fw-700 {
    font-weight: 700 !important;
    font-family: 'Roboto Slab', serif !important;
}