/* =====================================================
   DPEP Typography Harmony V6
   Uniformise les familles et la hiérarchie générale.
   Objectif prudent : harmoniser sans casser les maquettes existantes.
   ===================================================== */

:root {
    --dpep-type-body: 16px;
    --dpep-type-small: 14px;
    --dpep-type-h1: clamp(2.2rem, 3.4vw, 3.7rem);
    --dpep-type-h2: clamp(1.8rem, 2.6vw, 2.8rem);
    --dpep-type-h3: clamp(1.35rem, 2vw, 2rem);
    --dpep-type-h4: clamp(1.15rem, 1.4vw, 1.4rem);
}

body.dpep-typography-harmony-v7,
body.dpep-typography-harmony-v7 p,
body.dpep-typography-harmony-v7 li,
body.dpep-typography-harmony-v7 input,
body.dpep-typography-harmony-v7 textarea,
body.dpep-typography-harmony-v7 select,
body.dpep-typography-harmony-v7 button,
body.dpep-typography-harmony-v7 .btn,
body.dpep-typography-harmony-v7 .form-control,
body.dpep-typography-harmony-v7 .bootstrap-select > .dropdown-toggle,
body.dpep-typography-harmony-v7 .dropdown-menu,
body.dpep-typography-harmony-v7 label,
body.dpep-typography-harmony-v7 .widget,
body.dpep-typography-harmony-v7 .page-template .elementor-widget-container {
    font-family: var(--dpep-sans, 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
}

body.dpep-typography-harmony-v7 {
    font-size: var(--dpep-type-body);
    line-height: 1.65;
    color: var(--dpep-text, #2C2C2C);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body.dpep-typography-harmony-v7 h1,
body.dpep-typography-harmony-v7 h2,
body.dpep-typography-harmony-v7 h3,
body.dpep-typography-harmony-v7 h4,
body.dpep-typography-harmony-v7 h5,
body.dpep-typography-harmony-v7 h6,
body.dpep-typography-harmony-v7 .page-title,
body.dpep-typography-harmony-v7 .main-title,
body.dpep-typography-harmony-v7 .block-title-wrap h2,
body.dpep-typography-harmony-v7 .block-title-wrap h3 {
    font-family: var(--dpep-serif, 'Playfair Display', Georgia, serif);
    color: var(--dpep-accent, #1F4E79);
    letter-spacing: -0.015em;
    line-height: 1.15;
}

body.dpep-typography-harmony-v7 h1 { font-size: var(--dpep-type-h1); }
body.dpep-typography-harmony-v7 h2 { font-size: var(--dpep-type-h2); }
body.dpep-typography-harmony-v7 h3 { font-size: var(--dpep-type-h3); }
body.dpep-typography-harmony-v7 h4 { font-size: var(--dpep-type-h4); }

body.dpep-typography-harmony-v7 .form-group label,
body.dpep-typography-harmony-v7 .control-label,
body.dpep-typography-harmony-v7 .form-label,
body.dpep-typography-harmony-v7 label {
    font-size: 14px;
    font-weight: 700;
    color: #314454;
    line-height: 1.35;
}

body.dpep-typography-harmony-v7 .btn,
body.dpep-typography-harmony-v7 button,
body.dpep-typography-harmony-v7 .main-nav a,
body.dpep-typography-harmony-v7 .dropdown-menu a,
body.dpep-typography-harmony-v7 .bootstrap-select > .dropdown-toggle {
    font-size: 15px;
    line-height: 1.25;
}

body.dpep-typography-harmony-v7 small,
body.dpep-typography-harmony-v7 .small,
body.dpep-typography-harmony-v7 .form-text,
body.dpep-typography-harmony-v7 .text-muted {
    font-size: var(--dpep-type-small);
    line-height: 1.55;
}

/* Nettoyage des occurrences historiques en Arial sur le dashboard et certains blocs */
body.dpep-typography-harmony-v7 .dashboard-wrap,
body.dpep-typography-harmony-v7 .dashboard-content,
body.dpep-typography-harmony-v7 .dashboard-sidebar,
body.dpep-typography-harmony-v7 .dashboard-table,
body.dpep-typography-harmony-v7 .page-template-template-dashboard-user .dashboard-content {
    font-family: var(--dpep-sans, 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif) !important;
}
