/* On importe la nouvelle police depuis Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,opsz,wght@0,8..60,200..900;1,8..60,200..900&display=swap');



/*** Navbar ***************************************************************************************************************************************************************************/

#header {
    background-color: #070D33 !important; /* On force le bleu marine pour éviter le gris du template */
    box-shadow: 0 2px 10px rgba(0,0,0,0.3) !important;
    height: 3.5em !important;
    line-height: 3.5em !important;
}

#header h1 a.logo-box {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    height: 100% !important;
    border-bottom: none !important;
    white-space: nowrap !important; /* LA SÉCURITÉ : Interdit formellement le retour à la ligne */
}

.logo-text {
    font-family: 'Montserrat', sans-serif !important;
    color: #F8FAFC !important;
    font-size: 15.5px !important;
    font-weight: 550 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;

    display: inline-block !important;
    margin: 0 !important;
}

.navbar-img {
    height: 28px !important;
    width: 28px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
}

#header nav a:hover {
    color: rgba(248, 250, 252, 0.5) !important;
}


/*************************** Français <=> English ***************************/

/* 1. Style commun (SANS forcer l'affichage global) */
#header nav a.lang-link .lang-fr,
#header nav a.lang-link .lang-en {
    font-family: 'Montserrat', sans-serif !important;
    color: #F8FAFC !important;
    font-size: 15px !important;
    font-weight: 550 !important;
    letter-spacing: 1.5px !important;
    text-decoration: none !important;

    /* Préparation de l'alignement horizontal */
    align-items: center !important;
    gap: 8px !important;

    border-bottom: none !important;
    opacity: 1 !important;
}

/* 2. Activation du moteur d'alignement (Flexbox) UNIQUEMENT sur la langue active */
html[lang="fr"] #header nav a.lang-link .lang-fr,
html[lang="en"] #header nav a.lang-link .lang-en {
    display: inline-flex !important;
}

/* 3. Le drapeau */
.lang-link .flag {
    line-height: 1 !important;
    font-size: 28px !important;
    margin-top: 1px !important; /* Ajustement optique pour un alignement parfait avec le texte */
}


/*************************** Supprimer "Menu" ***************************/

#header nav a[href="#menu"]:before {
    color: #F8FAFC !important;
}

#header nav a[href="#menu"] {
    display: none !important;
}



/*** Header ***************************************************************************************************************************************************************************/

body, #page-wrapper, #banner {
    background-color: #070D33 !important;
    background-image: none !important;
    background-attachment: scroll !important;
}

/* On enlève aussi le voile sombre par défaut du template sur la bannière */
#banner:after {
    display: none !important;
    background-image: none !important;
}

#banner p, .highlight {
    transition-delay: 0.5s !important;
}

body.is-preload #banner ul.actions {
    opacity: 0 !important;
}

#banner ul.actions {
    transition: opacity 0.5s ease 0.8s !important;
}

#banner h2 {
    font-family: 'Montserrat', sans-serif !important;
    color: #EAECEF !important;
    font-weight: 625 !important;
    font-size: 60px !important;


    margin-bottom: 30px !important;
    transition-delay: 0.2s !important;
}

#banner p {
    font-family: 'Public Sans', sans-serif !important;
    color: rgba(234, 236, 239, 0.95) !important;
    font-weight: 250 !important;
    font-size: 30px !important;
    line-height: 50px !important;

    margin-top: 35px !important;
}

.highlight {
    font-family: 'Montserrat', sans-serif !important;
    color: #EAECEF !important;
    font-weight: 600 !important;
    font-size: 25.5px !important;
    letter-spacing: 2px !important;

    display: block !important;
    margin-top: 40px !important;
}

#banner .button.primary {
    /* Entier */
    background-color: #EAECEF !important;
    border: none !important;
    border-radius: 12px !important;
    margin-top : 41px;

    /* Texte */
    font-family: 'Montserrat', sans-serif !important;
    color: #101835 !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    line-height: 1.1 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;

    display: inline-block !important;
    padding: 18px 25px !important;
    height: auto !important;

    /* Animation de base */
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08) !important;
}

#banner .button.primary:hover {
    background-color: #FFFFFF !important;
    color: #101835 !important;

    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12) !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}



/*** Présentation *********************************************************************************************************************************************************************/

#one .content h2 {
    font-family: 'Montserrat', sans-serif !important;
    color: #101835 !important;
    font-weight: 700 !important;
    font-size: 31px !important;
    line-height: 1.6 !important;
    text-align: left !important;
    text-transform: uppercase;

    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: antialiased !important;
}

#one .content p {
    font-family: 'Source Serif 4', serif !important;
    color: #334155 !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 25px !important;
    line-height: 1.8 !important;
    text-align: left !important;

    max-width: 770px !important; /* Limite la largeur pour le confort visuel */
    margin-left: 0 !important;   /* Garde l'alignement à gauche par rapport au titre */
    margin-right: auto !important;
}

#one .content p.lang-en {
    line-height: 1.9 !important;
}

#one .content p strong,
#one .content p b {
    color: inherit !important;
    font-weight: 600 !important;
}

#one .image img {
    display: block !important;
    width: 100% !important;
    max-width: 305px !important;
    height: auto !important;
    margin-left: auto !important;
    border-radius: 50% !important;

    filter: grayscale(100%) contrast(1.1) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    transition: all 0.3s ease-in-out !important;
}

#one .image img:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12) !important;
}



/*** 3 Blocs **************************************************************************************************************************************************************************/

/*************************** Background Color (code color in SVG) ***************************/

.wrapper.style2 {
    background-color: #070D33 !important;
    background-image: none !important;
}

.wrapper.style2:before,
.wrapper.style2:after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpolygon points='0,100 100,0 100,100' style='fill:%23070D33%3B' /%3E%3C/svg%3E") !important;
    box-shadow: inset 0 -1px 0 0 #070D33, 0 1px 0 0 #070D33 !important;
}

#two .inner {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 100px !important;
}

#two .features {
    width: 100% !important;
    margin: -4.5em 0 0 0 !important;

    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    gap: 100px !important;
}


/**********************************************************/
/* --- 1. L'ADN DE TES BLOCS ET LA COULEUR DE SECOURS --- */
#two .features article {
    background-color: #18204A !important; /* Le Plan B */

    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    padding: 2.5em 2em 0.5em 2em !important;
    margin: 0 !important;
    border-radius: 8px !important;

    position: relative !important;
    z-index: 10 !important;
    will-change: transform, backdrop-filter;
    transform: translateZ(0);

    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
}

/* --- 2. L'EFFET VERRE DÉPOLI (Isolé proprement) --- */
@supports (backdrop-filter: blur(15px)) or (-webkit-backdrop-filter: blur(15px)) {
    #two .features article {
        background-color: rgba(255, 255, 255, 0.08) !important;
        backdrop-filter: blur(15px) !important;
        -webkit-backdrop-filter: blur(15px) !important;
    }
}
/**********************************************************/


#two .features article h3,
#two .features article h3 a {
    font-family: 'Montserrat', sans-serif !important;
    color: #EAECEF !important;
    font-size: 20.9px !important;
    font-weight: 650 !important;
    letter-spacing: 1px !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

#two .features article p {
    font-family: 'Public Sans', sans-serif !important;
    color: #EAECEF !important;
    font-weight: 300 !important;
    font-size: 19.5px !important;
    line-height: 1.8 !important;

    opacity: 0.95 !important;
    text-align: center !important;
}



/*** Références ***********************************************************************************************************************************************************************/

/*************************** Trait diagonal (background) ***************************/

#three.wrapper.style3 {
    background-color: #E1E9F0 !important;
    background-image: none !important;
}

.wrapper.style3:before,
.wrapper.style3:after {
    /* Mise à jour du SVG avec %23E1E9F0 */
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpolygon points='0,100 100,0 100,100' style='fill:%23E1E9F0%3B' /%3E%3C/svg%3E") !important;
    box-shadow: inset 0 -1px 0 0 #E1E9F0, 0 1px 0 0 #E1E9F0 !important;
}


/*************************** Le mot "Références" ***************************/

#three.wrapper.style3 h2.major {
    font-family: 'Montserrat', sans-serif !important;
    color: #101835 !important;
    font-weight: 700 !important;
    font-size: 27px !important;
    letter-spacing: 3.5px !important;
    text-transform: uppercase !important;

    padding-bottom: 1.5em !important;
}


/*************************** Contenu ***************************/

#three.wrapper.style3,
#three.wrapper.style3 .inner,
#three.wrapper.style3 h2,
#three.wrapper.style3 h3,
#three.wrapper.style3 p {
    text-align: left !important;
}

.references-container {
    background-color: transparent !important;
    margin-top: 2.5em !important;
}

.ref-item h3 {
    font-family: 'Montserrat', sans-serif !important;
    color: #101835 !important;
    font-weight: 700 !important;
    font-size: 25px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase;

    margin-bottom: 0.8em !important;
}

.ref-item p {
    font-family: 'Public Sans', sans-serif !important;
    color: #334155 !important;
    font-weight: 450 !important;
    font-size: 18.5px !important;
    line-height: 1.8 !important;
    text-align: left !important; /* L'alignement est forcé à gauche ici pour éviter tout conflit */

    margin-bottom: 0 !important;

    text-wrap: pretty !important;
}

.ref-item {
    background-color: #F8FAFC !important;

    padding: 2.5em 3em !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 30px rgba(7, 13, 51, 0.08) !important;

    /* GESTION DE LA BOÎTE ET CENTRAGE VERTICAL */
    margin-bottom: 2.5em !important;
    width: 100% !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important; /* La ligne cruciale qui était perdue */

    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* On s'assure que le dernier bloc n'ajoute pas de marge inutile en bas */
.ref-item:last-child {
    margin-bottom: 0 !important;
}

.ref-item:hover {
    background-color: #FFFFFF !important;
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 45px rgba(7, 13, 51, 0.12) !important;
}


/*************************** Bouton ***************************/

#three .actions {
    display: flex !important;
    justify-content: flex-start !important;

    padding: 18px 25px 18px 0 !important;

    margin-top: 2em !important;
    margin-bottom: 6em !important;
    position: relative !important;
    z-index: 10 !important;
}

#three .actions li {
    padding-left: 1em !important;
    margin-left: 0 !important;
}

.actions a.button {
    background-color: #F8FAFC !important;
    font-family: 'Montserrat', sans-serif !important;
    color: #101835 !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    line-height: 1.1 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;

    display: inline-block !important; /* Ajouté */
    padding: 18px 25px !important; /* Ajouté pour être identique */
    height: auto !important;

    border: none !important;
    border-radius: 12px !important;

    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08) !important;
}

.actions a.button:hover {
    background-color: #FFFFFF !important;
    color: #101835 !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12) !important;
}


/* --- CORRECTION PROPRE POUR LES BOUTONS LINKEDIN --- */
/* On force le masquage de l'anglais si le HTML est en français */
html[lang="fr"] .actions a.button.lang-en {
    display: none !important;
}

/* On force le masquage du français si le HTML est en anglais */
html[lang="en"] .actions a.button.lang-fr {
    display: none !important;
}



/*** Footer ***************************************************************************************************************************************************************************/

#footer {
    /* 1. LA COULEUR ET L'IMAGE (On tue les restes du template) */
    background-color: #070D33 !important;
    background-image: none !important;

    /* 2. LE BLINDAGE (C'est ça qui manque sur ta capture !) */
    position: relative !important;
    z-index: 100 !important;

    /* 3. L'ESPACEMENT */
    padding: 3em 0 1.5em 0 !important;
    margin-top: 0 !important;
}

#footer .inner {
    padding: 0 !important;
    /* On s'assure que l'intérieur n'hérite pas de fonds bizarres */
    background: transparent !important;
}

/* TITRE "CONTACTEZ-MOI" */
#footer h2 {
    font-family: 'Montserrat', sans-serif !important;
    color: #EAECEF !important;
    font-weight: 700 !important;
    font-size: 27px !important;
    letter-spacing: 2px !important;

    border-bottom: none !important;
    margin-bottom: 1.2em !important;
    padding-bottom: 0 !important;
}

/* COORDONNÉES DE CONTACT */
ul.contact {
    margin: 0 0 2.5em 0 !important;
}

ul.contact li {
    margin: 0.6em 0 0 0 !important;
}

#footer a {
    font-family: 'Montserrat', sans-serif !important;
    color: rgba(234, 236, 239, 0.95) !important;
    font-weight: 400 !important;
    font-size: 21px !important;
    letter-spacing: 1px !important;

    border-bottom: none !important;
}

/* BLOC JURIDIQUE */
#footer .copyright,
#footer .copyright + ul,
#footer .copyright + div,
#footer .inner > :last-child {
    border-top: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 1. Le conteneur (la ligne de texte) */
#footer .copyright li {
    font-family: 'Source Sans Pro', sans-serif !important;
    color: rgba(255, 255, 255, 0.3) !important;
    font-size: 15.5px !important;
    font-weight: 450 !important;

    display: inline-block !important; /* Pour que les li se suivent horizontalement */

    /* On tue les traits ici pour la ligne */
    border: none !important;
    border-left: none !important;

    /* Espace entre les groupes (ex: entre le SIRET et le Design) */
    padding: 0 1.5em 0 0 !important;
}

/* 2. Les liens à l'intérieur de la ligne (HTML5 UP, N.W.T) */
#footer .copyright li a {
    display: inline !important;  /* Ils se comportent comme des mots normaux */
    color: inherit !important;   /* Garde le gris clair du parent */
    border-bottom: none !important;

    /* 🔥 LA SÉCURITÉ : On force la taille et la police pour ignorer les autres règles */
    font-size: 15.5px !important;
    font-family: 'Source Sans Pro', sans-serif !important;
    color: rgba(255, 255, 255, 0.3) !important;
    font-weight: 450 !important;

    /* ON SUPPRIME TOUT ESPACE PAR DÉFAUT ICI */
    padding: 0 !important;
    margin: 0 !important;
}

/* 3. Le premier élément */
#footer .copyright li:first-child {
    border-left: none !important;
    padding-left: 0 !important;
}




/**************************************************************************************************************************************************************************************/

@media screen and (max-width: 736px) {

/*** Navbar ***************************************************************************************************************************************************************************/

    #banner p {
        transition-delay: 0.3s !important;
    }

    .highlight {
        transition-delay: 0.4s !important;
    }

    #banner ul.actions {
        transition: opacity 0.2s ease 0.5s !important;
    }

    #header h1 a.logo-box {
        gap: 10px !important;
    }

    .navbar-img {
        height: 24px !important;
        width: 24px !important;
    }

    .logo-text {
        font-family: 'Montserrat', sans-serif !important;
        color: #F8FAFC !important;
        font-size: 13px !important;
        letter-spacing: 1px !important;
    }

    #header nav a:hover {
        color: rgba(248, 250, 252, 0.5) !important;
    }



/*** Header ***************************************************************************************************************************************************************************/

    #banner {
        background-color: #070D33 !important;
        background-image: none !important; /* Indispensable pour éviter le bug sur mobile */
        padding: 5em 2em 4.25em 2em !important;
    }

    #banner:after {
        background-color: #070D33 !important;
        display: none !important; /* On tue le voile ici aussi */
    }

    #banner h2 {
        font-family: 'Montserrat', sans-serif !important;
        color: #EAECEF !important;
        font-size: 27px !important;
    }

    #banner p {
        font-family: 'Public Sans', sans-serif !important;
        color: rgba(234, 236, 239, 0.95) !important;
        font-size: 16.5px !important;
        line-height: 1.4 !important;
    }

    #banner .sub-line {
        display: block !important;
        margin-top: 12px !important;
    }

    .mobile-only {
        display: block !important;
    }

    .highlight {
        font-family: 'Montserrat', sans-serif !important;
        color: #EAECEF !important;
        font-weight: 650 !important;
        font-size: 16px !important;

        margin-bottom: -2em !important;
    }



/*************************** Bouton !!!!!! ***************************/

    #banner ul.actions li a.button.primary {
        background-color: #EAECEF !important;
        font-family: 'Montserrat', sans-serif !important;
        color: #101835 !important;
        font-size: 13px !important;
        font-weight: 750 !important;
        letter-spacing: 1px !important;

        padding: 7px 15px !important;
        height: auto !important;
        width: auto !important;
        display: inline-block !important;

        border-radius: 12px !important;
        box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08) !important;
    }

    #banner ul.actions {
        justify-content: flex-start !important; /* Force l'alignement à gauche */
        text-align: left !important;
        display: flex !important;

        padding: 0 !important;
        margin-left: 0 !important;
    }

    /* On s'assure que chaque élément de liste est bien calé à gauche */
    #banner ul.actions li {
        padding: 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }

    #banner ul.actions li a.button.primary:hover {
        background-color: #FFFFFF !important;
        color: #101835 !important;

        transform: translateY(-5px) !important;
        box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12) !important;
        transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
    }



/*** Présentation *********************************************************************************************************************************************************************/

    /* L'IMAGE : On la centre et on réduit sa taille */
    #one .image {
        display: block !important;
        width: 180px !important;
        margin: 0 auto 2em auto !important;
    }

    #one .image img {
        max-width: 180px !important;
        margin: 0 auto !important;
    }

    #one .content h2 {
        font-family: 'Montserrat', sans-serif !important;
        color: #101835 !important;
        font-weight: 650 !important;
        font-size: 19.5px !important;
        letter-spacing: -0.025em !important;
        line-height: 1.4 !important;
        text-align: center !important;
        word-spacing: 0.08em !important;

        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
        text-rendering: optimizeLegibility !important;
    }

    #one .content p {
        font-family: 'Source Serif 4', serif !important;
        color: #334155 !important;
        font-size: 17.5px !important;
        line-height: 1.6 !important;

        text-align: justify !important;
        -webkit-hyphens: auto !important;
        -ms-hyphens: auto !important;
        hyphens: auto !important;

        padding: 0 !important;
        width: 100% !important;
        margin-bottom: 50px !important;

        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;

        text-rendering: optimizeLegibility !important;
    }

    #one.wrapper {
        padding: 2.5em 1em!important;
    }



/*** 3 Blocs **************************************************************************************************************************************************************************/

    #two .inner {
        padding: 0 2.5em 2em 2.5em !important;
    }

    #two .features {
        flex-direction: column !important;
        gap: 2em !important;
        margin: -2.5em 0 0 0 !important;
    }

    #two .features article {
        width: 100% !important;
        padding: 2em 1em 0 1em !important;

    /* ON DÉTRUIT LA HAUTEUR FORCÉE DU TEMPLATE */
        min-height: 0 !important;
        height: auto !important;
        display: block !important;
        margin: 0 !important;
    }

    #two .features article h3,
    #two .features article h3 a {
        font-family: 'Montserrat', sans-serif !important;
        color: #EAECEF !important;
        font-size: 18.3px !important;
        line-height: 1.4 !important;
        text-align: center !important;
        word-spacing: 0.08em !important;

        margin-bottom: 1em !important;

        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
        text-rendering: optimizeLegibility !important;
        text-wrap: balance !important;
    }

    #two .features article p {
        font-family: 'Public Sans', sans-serif !important;
        color: #EAECEF !important;
        font-size: 16px !important;
        line-height: 1.6 !important;

        max-width: 100% !important;
        margin: 1em 0 1.5em 0 !important;

        * 🔥 LE TEXTE PLEIN SANS TROUS À DROITE */
        text-align: justify !important;
        text-justify: inter-word !important;

        /* AUTORISE LES TIRETS DE COUPURE */
        -webkit-hyphens: auto !important;
        hyphens: auto !important;

        text-wrap: balance !important;
        -moz-osx-font-smoothing: grayscale !important;
    }



/*** Références************************************************************************************************************************************************************************/

    #three.wrapper.style3 h2.major {
        font-family: 'Montserrat', sans-serif !important;
        color: #101835 !important;
        font-size: 24px !important;

        padding-bottom: 0.5em !important;

        text-wrap: wrap !important;
    }

    .references-container {
        /* 🔥 C'est lui qui contrôle l'espace avec le titre au-dessus */
        margin-top: 2em !important;
        padding-top: 0 !important;
        }


    #three .box,
    #three .features article {
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15) !important;
        border: none !important;
        border-radius: 8px !important;
        padding: 0em 2em 2.5em 2.5em !important;
    }

    .ref-item {
        background-color: #F8FAFC !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        display: block !important;

        padding: 2em 1.1em !important;
        margin-bottom: 2em !important;

        border-radius: 8px !important;
        box-shadow: 0 10px 30px rgba(7, 13, 51, 0.08) !important;
    }

    .ref-item h3 {
        font-family: 'Montserrat', sans-serif !important;
        color: #101835 !important;
        font-size: 18.5px !important;
        line-height: 1.3 !important;
        word-spacing: 0.08em !important;
        text-align: left !important;

        margin: 0.3em -1em 1em 0.5em !important;
        padding: 0 !important;

        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
        text-rendering: optimizeLegibility !important;
    }

    .ref-item p {
        font-family: 'Public Sans', sans-serif !important;
        color: #334155 !important;
        font-size: 16px !important;
        line-height: 1.6 !important;

        max-width: 100% !important;
        margin: 0 0.2em 0 0.9em !important;

        text-align: justify !important;
        text-justify: inter-word !important;

        /* AUTORISE LES TIRETS DE COUPURE */
        -webkit-hyphens: none !important;
        hyphens: none !important;

        text-wrap: wrap !important;
        -webkit-font-smoothing: antialiased !important;
        -moz-osx-font-smoothing: grayscale !important;
        text-rendering: optimizeLegibility !important;
    }

/*************************** Bouton !!!!!! ***************************/

    #three .actions {
        display: flex !important;
        justify-content: flex-start !important; /* Aligné à gauche comme en haut */
        padding: 0 !important;
        margin-top: 2em !important;
        margin-left: 0 !important;
        width: 100% !important;
    }

    #three .actions a.button {
        background-color: #F8FAFC !important;
        font-family: 'Montserrat', sans-serif !important;
        color: #101835 !important;

        font-size: 13px !important;
        font-weight: 750 !important;
        letter-spacing: 1px !important;
        line-height: 1 !important;

        width: auto !important;
        height: auto !important;

        padding: 7px 15px !important;

        border-radius: 12px !important;
        box-shadow: 0 7px 18px rgba(0, 0, 0, 0.08) !important;

        text-align: left !important;
        white-space: normal !important;
    }


/*** Footer ***************************************************************************************************************************************************************************/

    #footer {
        /* 1. LA COULEUR : Sécurité contre le bug gris de Chrome */
        background-color: #070D33 !important;
        background-image: none !important;

        /* 2. LE BLINDAGE : Empêche le gris du dessus de recouvrir le bleu */
        position: relative !important;
        z-index: 100 !important;

        /* 3. L'ESPACEMENT MOBILE : Plus compact pour le pouce */
        padding: 2.5em 1.5em 1.5em 1.5em !important;
        margin-top: 0 !important;
    }

    #footer h2 {
        font-family: 'Montserrat', sans-serif !important;
        color: #EAECEF !important;
        font-size: 21px !important
    }

    #footer a {
        font-family: 'Montserrat', sans-serif !important;
        color: rgba(234, 236, 239, 0.95) !important;
        font-size: 17px !important;
    }

    /* --- NETTOYAGE RADICAL DU BLOC JURIDIQUE (MOBILE) --- */

    /* 1. Le conteneur (LE SNIPER : avec .inner et ul) */
    #footer .inner ul.copyright li {
        font-family: 'Source Sans Pro', sans-serif !important;
        color: rgba(255, 255, 255, 0.3) !important;

        /* 🔥 LA VRAIE RÉDUCTION EST ICI 🔥 */
        font-size: 12px !important;
        line-height: 1.4 !important;
        font-weight: 350 !important;

        display: block !important;
        text-align: left !important;

        border: none !important;
        border-left: none !important;

        padding-left: 0 !important;
        margin: 0.5em 0 !important;
    }

    /* 2. Les liens à l'intérieur (Sniper aussi) */
    #footer .inner ul.copyright li a {
        display: inline !important;
        color: inherit !important;
        border-bottom: none !important;

        /* 🔥 RÉDUCTION FORCÉE DES LIENS 🔥 */
        font-family: 'Source Sans Pro', sans-serif !important;
        color: rgba(255, 255, 255, 0.3) !important;
        font-weight: 350 !important;
        font-size: 12px !important;

        padding: 0 !important;
        margin: 0 !important;
    }
}
