.elementor-520 .elementor-element.elementor-element-ccfa184{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-520 .elementor-element.elementor-element-0ef9ec7{--display:flex;}.elementor-520 .elementor-element.elementor-element-1922ba4{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-520 .elementor-element.elementor-element-4bb55b7{text-align:center;}.elementor-520 .elementor-element.elementor-element-4bb55b7 .elementor-heading-title{font-family:"Cinzel", Sans-serif;font-size:40px;font-weight:700;color:#000000;}.elementor-520 .elementor-element.elementor-element-93cf018{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-520 .elementor-element.elementor-element-9befce5{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-520 .elementor-element.elementor-element-9befce5 p{margin-block-end:0px;}@media(max-width:767px){.elementor-520 .elementor-element.elementor-element-9befce5{text-align:center;}}@media(min-width:768px){.elementor-520 .elementor-element.elementor-element-93cf018{--width:700px;}}/* Start custom CSS for container, class: .elementor-element-93cf018 *//* =========================================
   1. CONFIGURATION GÉNÉRALE & LECTURE
   ========================================= */
.elementor-520 .elementor-element.elementor-element-93cf018 {
    /* Largeur optimale pour l'œil (environ 70-80 caractères) */
    max-width: 800px; 
    margin: 0 auto; 
    
    /* Typographie de base */
    font-family: 'Inter', sans-serif;
    color: #001024; /* Bleu nuit profond (plus reposant que le noir pur) */
    font-size: 1.125rem; /* ~18px */
    line-height: 1.7; /* Interlignage aéré pour le confort */
    font-weight: 300;
}

/* =========================================
   2. PARAGRAPHES
   ========================================= */
/* --- Paragraphes (Force le respect de l'espace) --- */
.elementor-520 .elementor-element.elementor-element-93cf018 p {
    /* FORCE l'affichage en bloc avec une marge externe */
    display: block !important;
    
    /* C'est ici que se joue l'espacement : 20px imposé */
    margin-bottom: 20px !important;
    margin-top: 0 !important; /* On nettoie le haut pour éviter les doubles espaces */
    
    /* Le reste du style de lecture */
    text-align: justify; 
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto; 
    line-height: 1.6 !important; /* Assure une hauteur de ligne confortable */
}

/* Petit détail de finition : on enlève la marge sous le tout dernier paragraphe 
   pour qu'il ne pousse pas le bas de la section inutilement */
.elementor-520 .elementor-element.elementor-element-93cf018 p:last-child {
    margin-bottom: 0 !important;
}

/* =========================================
   3. TITRES (HIÉRARCHIE)
   ========================================= */

/* H2 : Le séparateur de section principal */
.elementor-520 .elementor-element.elementor-element-93cf018 h2 {
    font-family: 'Cinzel', serif;
    color: #001024; 
    font-size: 2rem; 
    font-weight: 600;
    
    /* Espacement vertical (Rythme) */
    margin-top: 60px; 
    margin-bottom: 25px;
    
    /* Soulignement partiel "Signature" */
    position: relative;
    padding-bottom: 15px;
    border-bottom: 1px solid #FCE7BD; /* Ligne pâle */
}

/* Accent Or sur le H2 */
.elementor-520 .elementor-element.elementor-element-93cf018 h2::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 60px; 
    height: 3px;
    background-color: #CBA557; /* Or Squillaci */
}

/* H3 : Le sous-titre d'argumentation */
.elementor-520 .elementor-element.elementor-element-93cf018 h3 {
    font-family: 'Cinzel', serif;
    color: #395575; /* Bleu moyen pour la distinction */
    font-size: 1.5rem;
    font-weight: 500;
    margin-top: 40px;
    margin-bottom: 20px;
}

/* H4 : Le point technique ou focus */
.elementor-520 .elementor-element.elementor-element-93cf018 h4 {
    font-family: 'Inter', sans-serif; /* Retour à la font technique */
    color: #BE7E3B; /* Bronze */
    font-size: 1.1rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 600;
    margin-top: 30px;
    margin-bottom: 15px;
}

/* =========================================
   4. LISTES (ÉLÉGANCE)
   ========================================= */

/* Reset des listes */
.elementor-520 .elementor-element.elementor-element-93cf018 ul, .elementor-520 .elementor-element.elementor-element-93cf018 ol {
    margin-bottom: 30px;
    padding-left: 20px; 
    list-style: none; /* On supprime les puces moches par défaut */
}

/* Éléments de liste */
.elementor-520 .elementor-element.elementor-element-93cf018 ul li, .elementor-520 .elementor-element.elementor-element-93cf018 ol li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 25px; /* Espace pour la puce perso */
}

/* Puces carrées Or pour UL */
.elementor-520 .elementor-element.elementor-element-93cf018 ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px; /* Alignement optique */
    width: 6px;
    height: 6px;
    background-color: #CBA557;
}

/* Chiffres Bronze pour OL */
.elementor-520 .elementor-element.elementor-element-93cf018 ol {
    counter-reset: custom-counter;
}
.elementor-520 .elementor-element.elementor-element-93cf018 ol li::before {
    counter-increment: custom-counter;
    content: counter(custom-counter) ".";
    position: absolute;
    left: 0;
    color: #BE7E3B; 
    font-family: 'Cinzel', serif;
    font-weight: 700;
}

/* =========================================
   5. MOBILE (RESPONSIVE UX)
   ========================================= */
@media (max-width: 767px) {
    /* Force l'alignement gauche sur TOUS les éléments */
    .elementor-520 .elementor-element.elementor-element-93cf018 h2, 
    .elementor-520 .elementor-element.elementor-element-93cf018 h3, 
    .elementor-520 .elementor-element.elementor-element-93cf018 h4, 
    .elementor-520 .elementor-element.elementor-element-93cf018 p, 
    .elementor-520 .elementor-element.elementor-element-93cf018 li {
        text-align: left !important;
    }

    /* Gestion spécifique des conteneurs de liste */
    .elementor-520 .elementor-element.elementor-element-93cf018 ul, 
    .elementor-520 .elementor-element.elementor-element-93cf018 ol {
        text-align: left !important;
        padding-left: 20px !important; /* On garde un petit retrait pour la clarté */
    }

    /* Ajustement de l'accent doré sous le titre pour qu'il reste à gauche */
    .elementor-520 .elementor-element.elementor-element-93cf018 h2::after {
        left: 0 !important;
        margin-left: 0 !important;
    }
    
    /* Ajustement des marges titres pour écran court */
    .elementor-520 .elementor-element.elementor-element-93cf018 h2 {
        font-size: 1.6rem; /* Titre un peu plus petit sur mobile */
        margin-top: 40px;
    }
}/* End custom CSS */