.elementor-1673 .elementor-element.elementor-element-c44f457{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:75px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1673 .elementor-element.elementor-element-c44f457:not(.elementor-motion-effects-element-type-background), .elementor-1673 .elementor-element.elementor-element-c44f457 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #EBF4FA 0%, #F8F8F8 100%);}.elementor-1673 .elementor-element.elementor-element-4b1687a{--display:flex;--margin-top:75px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-post-title .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-1673 .elementor-element.elementor-element-3f0808a{text-align:center;}.elementor-1673 .elementor-element.elementor-element-3f0808a .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:40px;font-weight:600;color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-icon i{color:#2B3452;font-size:14px;}.elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-icon svg{fill:#2B3452;--e-icon-list-icon-size:14px;}.elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-icon{width:14px;}.elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-text, .elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-text a{color:#F64776;}.elementor-1673 .elementor-element.elementor-element-f30e45f .elementor-icon-list-item{font-family:"Roboto", Sans-serif;font-weight:500;}.elementor-1673 .elementor-element.elementor-element-6797a82{--display:flex;}.elementor-1673 .elementor-element.elementor-element-6e540a6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1673 .elementor-element.elementor-element-74d3e43{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-table-of-contents{--header-color:var( --e-global-color-secondary );--item-text-color:var( --e-global-color-text );--item-text-hover-color:var( --e-global-color-accent );--marker-color:var( --e-global-color-text );}.elementor-widget-table-of-contents .elementor-toc__header, .elementor-widget-table-of-contents .elementor-toc__header-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-table-of-contents .elementor-toc__list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__header-title{text-align:center;}.elementor-1673 .elementor-element.elementor-element-c8049a9{--header-color:#F94776;--nested-list-indent:0.1em;--item-text-hover-color:#F94776;--item-text-hover-decoration:underline;}.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__header{flex-direction:row;}.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list-item{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:400;}.elementor-1673 .elementor-element.elementor-element-c19209b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1673 .elementor-element.elementor-element-6d68fa5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-1673 .elementor-element.elementor-element-74d3e43{--width:33.3333%;}.elementor-1673 .elementor-element.elementor-element-c19209b{--width:66.6666%;}}/* Start custom CSS for table-of-contents, class: .elementor-element-c8049a9 *//* --- 1. NETTOYAGE TOTAL (Suppression des 0 et des puces) --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 ol, .elementor-1673 .elementor-element.elementor-element-c8049a9 ul, .elementor-1673 .elementor-element.elementor-element-c8049a9 li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Cache le marqueur natif */
.elementor-1673 .elementor-element.elementor-element-c8049a9 li::marker {
    content: none !important;
    display: none !important;
}

/* --- 2. CONFIGURATION DU COMPTEUR (1, 1.1...) --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list {
    counter-reset: my-counter;
    padding-left: 0 !important;
}

.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list-item {
    counter-increment: my-counter;
    margin-bottom: 10px !important;
}

/* --- 3. STYLE DU TEXTE & ALIGNEMENT --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list-item a {
    display: flex !important;           /* Alignement côte à côte */
    align-items: flex-start !important; /* Calé en haut */
    text-decoration: none !important;
    color: #546E7A !important;          /* Couleur de BASE (Gris) */
    line-height: 1.4 !important;
    transition: color 0.2s ease !important;
}

/* --- 4. STYLE DU NUMÉRO (Toujours Rose) --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list-item a::before {
    content: counters(my-counter, ".") ". "; 
    color: #FF6B8B !important;          /* Numéro ROSE par défaut */
    font-weight: 800 !important;
    margin-right: 8px !important;
    min-width: 20px;
    flex-shrink: 0 !important;
}

/* --- 5. GESTION DU SURVOL (HOVER) -> ROSE --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list-item a:hover {
    color: #FF6B8B !important; /* Le texte devient ROSE au survol */
}
/* Le numéro reste Rose (pas de changement nécessaire) */

/* --- 6. ÉTAT ACTIF / DÉFILEMENT (ACTIVE) -> ROSE --- */
/* Cible précisément le lien actif ajouté par Elementor */
.elementor-1673 .elementor-element.elementor-element-c8049a9 a.elementor-item-active {
    color: #FF6B8B !important; /* Le texte devient ROSE quand on lit */
    font-weight: 700 !important; /* Gras pour bien le voir */
}

/* Force le numéro actif en Rose (au cas où) */
.elementor-1673 .elementor-element.elementor-element-c8049a9 a.elementor-item-active::before {
    color: #FF6B8B !important; 
}

/* --- 7. INDENTATION --- */
.elementor-1673 .elementor-element.elementor-element-c8049a9 .elementor-toc__list .elementor-toc__list {
    margin-top: 8px !important;
    padding-left: 15px !important;
    border-left: 2px solid #f0f0f0; 
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-6d68fa5 *//* STYLE TABLEAU BLINDÉ (Correction Bords & Alignement) */

.elementor-1673 .elementor-element.elementor-element-6d68fa5 table {
    width: 100%;
    /* 'separate' est indispensable pour que border-radius fonctionne correctement */
    border-collapse: separate !important; 
    border-spacing: 0 !important;
    margin: 25px 0;
    font-size: 0.95em;
    font-family: sans-serif;
    /* Bordure extérieure fine */
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    overflow: hidden !important; /* Coupe tout ce qui dépasse des coins */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    background-color: #fff;
}

/* En-tête (Première ligne) */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 thead tr {
    background-color: #2E86C1 !important;
    color: #ffffff !important;
}

/* Cellules d'en-tête */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 th {
    padding: 15px !important;
    text-align: center !important;
    font-weight: 700 !important;
    border: none !important; /* On retire les bordures individuelles du header pour éviter les décalages */
    border-bottom: 1px solid #2573a7 !important; /* Juste une ligne de séparation en bas */
}

/* Cellules de données */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 td {
    padding: 12px 15px !important;
    text-align: center !important;
    border: none !important; /* Reset des bordures du thème */
    border-bottom: 1px solid #e0e0e0 !important; /* Ligne fine en bas */
    border-right: 1px solid #f0f0f0 !important; /* Ligne très légère à droite */
    vertical-align: middle !important;
}

/* Enlever la bordure droite de la dernière colonne (pour l'alignement parfait) */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 td:last-child, .elementor-1673 .elementor-element.elementor-element-6d68fa5 th:last-child {
    border-right: none !important;
}

/* Enlever la bordure du bas de la dernière ligne (pour ne pas doubler avec le cadre) */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 tbody tr:last-child td {
    border-bottom: none !important;
}

/* Une ligne sur deux en gris très clair */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 tbody tr:nth-of-type(even) {
    background-color: #fafafa !important;
}

/* Effet au survol */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 tbody tr:hover {
    background-color: #f1f7fc !important;
    transition: background-color 0.2s ease;
}
/* CORRECTION INTELLIGENTE DES SÉPARATEURS ET ESPACEMENTS */

/* --- 1. STYLE DE BASE (Pour tous les traits) --- */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 hr, .elementor-1673 .elementor-element.elementor-element-6d68fa5 .wp-block-separator {
    background-color: #FF6B8B !important; /* Votre Rose */
    border: none !important;
    opacity: 1 !important;
    margin-top: 10px !important;
    margin-bottom: 30px !important;
    margin-left: 0 !important; /* Force l'alignement à gauche */
    margin-right: auto !important;
}

/* --- 2. LES PETITS SÉPARATEURS (Sous-parties) --- */
/* Cible les séparateurs par défaut (ceux qui ne sont pas "large") */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 .wp-block-separator:not(.is-style-wide) {
    height: 3px !important;      /* Épaisseur */
    width: 100px !important;     /* Largeur fixe petite */
    max-width: 100px !important;
}

/* --- 3. LES GRANDS SÉPARATEURS (Grandes parties) --- */
/* Cible spécifiquement le bloc "Ligne large" de WordPress */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 .wp-block-separator.is-style-wide {
    height: 2px !important;      /* Un peu plus fin car plus long (élégant) */
    width: 100% !important;      /* Prend toute la largeur */
    max-width: 100% !important;
}

/* --- 4. NETTOYAGE DU TEXTE --- */
/* Supprime les sauts de ligne vides inutiles */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 p:empty {
    display: none;
}

/* Ajoute de l'espace automatique au-dessus des titres */
.elementor-1673 .elementor-element.elementor-element-6d68fa5 h2, .elementor-1673 .elementor-element.elementor-element-6d68fa5 h3 {
    margin-top: 50px !important;
    margin-bottom: 20px !important;
}/* End custom CSS */