/* --- RESET MONDIAL ULTRA STRICT --- */
html, body {
    margin: 0 !important;
    padding: 0 !important;
}

/* Bloque tout zoom interne / rendu variable */
html {
    font-size: 100% !important;  /* 1rem = 16px constant */
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;

    /* Neutralise DPI scaling sur la composition CSS */
    transform: none !important;
    zoom: 1 !important;  
}

/* Imposer la police, taille, line-height globales */
body {
    font-family: 'Roboto', sans-serif !important;
    font-size: 1rem !important;      /* 16px EXACTEMENT */
    line-height: 1.6 !important;
    background-color: #121212 !important;
    color: #e0e0e0 !important;

    padding-top: 100px !important;
}

/* Neutralise tout héritage aléatoire */
*, *::before, *::after {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    box-sizing: border-box !important;
    margin: 0;
    padding: 0;
}

/* Titres uniformisés partout */
h1, h2, h3, h4 {
    font-weight: 700 !important;
    font-size: 1.6rem !important;    /* identique partout */
    margin-bottom: 1rem !important;
    color: white !important;
}

/* Inputs, buttons, tables normalisés */
input, textarea, button, select, table, th, td {
    font-size: 1rem !important;
    font-family: inherit !important;
}

/* Enlève tout style navigateur */
button {
    appearance: none !important;
}

table {
    border-collapse: collapse !important;
}

a {
    color: #E94A25;
    text-decoration: none !important;
}
a:hover {
    text-decoration: underline;
}

.top-nav a.active {
    text-decoration: underline !important;
    text-underline-offset: 6px;
}
