.elementor-377 .elementor-element.elementor-element-79035283{--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:0px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-377 .elementor-element.elementor-element-79035283:not(.elementor-motion-effects-element-type-background), .elementor-377 .elementor-element.elementor-element-79035283 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-377 .elementor-element.elementor-element-2f8c7089{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-377 .elementor-element.elementor-element-76937bd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:20px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-377 .elementor-element.elementor-element-1d864f83{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.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-377 .elementor-element.elementor-element-4585320b{text-align:left;}.elementor-377 .elementor-element.elementor-element-4585320b .elementor-heading-title{font-family:"Cinzel", Sans-serif;font-size:28px;font-weight:700;line-height:34px;color:#000000;}.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-377 .elementor-element.elementor-element-c3ae805{text-align:justify;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-377 .elementor-element.elementor-element-c3ae805 p{margin-block-end:20px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-377 .elementor-element.elementor-element-452f1308 .elementor-button{background-color:#CCA14C;font-family:"Nunito", Sans-serif;font-size:20px;font-weight:700;fill:#F6F6F6;color:#F6F6F6;transition-duration:1s;border-radius:25px 25px 25px 25px;padding:15px 50px 15px 50px;}.elementor-377 .elementor-element.elementor-element-452f1308 .elementor-button:hover, .elementor-377 .elementor-element.elementor-element-452f1308 .elementor-button:focus{background-color:#3B5473;}.elementor-377 .elementor-element.elementor-element-4e6b40ed{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{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-377 .elementor-element.elementor-element-23b88a36{--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:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.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-377 .elementor-element.elementor-element-50c210fb .elementor-toc__header-title{text-align:start;}.elementor-377 .elementor-element.elementor-element-50c210fb .elementor-toc__header{flex-direction:row;}.elementor-377 .elementor-element.elementor-element-50c210fb{--item-text-hover-decoration:underline;}.elementor-377 .elementor-element.elementor-element-5152fdb6{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#000000;}.elementor-377 .elementor-element.elementor-element-5152fdb6 p{margin-block-end:0px;}@media(min-width:768px){.elementor-377 .elementor-element.elementor-element-23b88a36{--content-width:700px;}}@media(max-width:767px){.elementor-377 .elementor-element.elementor-element-79035283{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-377 .elementor-element.elementor-element-2f8c7089{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-377 .elementor-element.elementor-element-76937bd{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-377 .elementor-element.elementor-element-1d864f83{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-377 .elementor-element.elementor-element-4585320b{text-align:left;}.elementor-377 .elementor-element.elementor-element-4585320b .elementor-heading-title{font-size:24px;}.elementor-377 .elementor-element.elementor-element-c3ae805{text-align:justify;}.elementor-377 .elementor-element.elementor-element-5152fdb6{text-align:center;}}/* Start custom CSS for container, class: .elementor-element-4e6b40ed *//* Configuration du conteneur (Desktop par défaut) */
.vague-animee {
    overflow: hidden;
    border-radius: 25px; /* L'arrondi que vous voulez sur PC */
}

/* --- RÈGLE SPÉCIALE MOBILE --- */
/* S'applique uniquement si l'écran fait moins de 767px de large (standard Elementor) */
@media (max-width: 767px) {
    .vague-animee {
        border-radius: 0px; /* On enlève l'arrondi sur mobile */
    }
}

/* L'animation de l'image (Reste inchangée) */
.vague-animee img {
    animation: kenburns 15s ease-in-out infinite alternate;
    transform-origin: center center;
}

/* Définition du mouvement */
@keyframes kenburns {
    0% {
        transform: scale(1) translate(0, 0);
    }
    100% {
        transform: scale(1.15) translate(-20px, -10px); 
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-5152fdb6 *//* =========================================
   1. CONFIGURATION GÉNÉRALE & LECTURE
   ========================================= */
.elementor-377 .elementor-element.elementor-element-5152fdb6 {
    /* 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
   ========================================= */
.elementor-377 .elementor-element.elementor-element-5152fdb6 p {
    margin-bottom: 20px; /* Demande spécifique : écart exact de 20px */
    
    /* Justification propre type "Magazine Juridique" */
    text-align: justify; 
    
    /* Césure automatique (hyphenation) pour éviter les trous dans le texte justifié */
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto; 
}

/* =========================================
   3. TITRES (HIÉRARCHIE)
   ========================================= */

/* H2 : Le séparateur de section principal */
.elementor-377 .elementor-element.elementor-element-5152fdb6 h2 {
    font-family: 'Cinzel', serif;
    color: #001024; 
    font-size: 24px; 
    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-377 .elementor-element.elementor-element-5152fdb6 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-377 .elementor-element.elementor-element-5152fdb6 h3 {
    font-family: 'Cinzel', serif;
    color: #395575; /* Bleu moyen pour la distinction */
    font-size: 20px;
    font-weight: 500;
    margin-top: 40px;
    margin-bottom: 20px;
}

/* H4 : Le point technique ou focus */
.elementor-377 .elementor-element.elementor-element-5152fdb6 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-377 .elementor-element.elementor-element-5152fdb6 ul, .elementor-377 .elementor-element.elementor-element-5152fdb6 ol {
    margin-bottom: 30px;
    padding-left: 20px; 
    list-style: none; /* On supprime les puces moches par défaut */
}

/* Éléments de liste */
.elementor-377 .elementor-element.elementor-element-5152fdb6 ul li, .elementor-377 .elementor-element.elementor-element-5152fdb6 ol li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 25px; /* Espace pour la puce perso */
}

/* Puces carrées Or pour UL */
.elementor-377 .elementor-element.elementor-element-5152fdb6 ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px; /* Alignement optique */
    width: 6px;
    height: 6px;
    background-color: #CBA557;
}

/* Chiffres Bronze pour OL */
.elementor-377 .elementor-element.elementor-element-5152fdb6 ol {
    counter-reset: custom-counter;
}
.elementor-377 .elementor-element.elementor-element-5152fdb6 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-377 .elementor-element.elementor-element-5152fdb6 h2, 
    .elementor-377 .elementor-element.elementor-element-5152fdb6 h3, 
    .elementor-377 .elementor-element.elementor-element-5152fdb6 h4, 
    .elementor-377 .elementor-element.elementor-element-5152fdb6 p, 
    .elementor-377 .elementor-element.elementor-element-5152fdb6 li {
        text-align: left !important;
    }

    /* Gestion spécifique des conteneurs de liste */
    .elementor-377 .elementor-element.elementor-element-5152fdb6 ul, 
    .elementor-377 .elementor-element.elementor-element-5152fdb6 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-377 .elementor-element.elementor-element-5152fdb6 h2::after {
        left: 0 !important;
        margin-left: 0 !important;
    }
    
    /* Ajustement des marges titres pour écran court */
    .elementor-377 .elementor-element.elementor-element-5152fdb6 h2 {
        font-size: 1.6rem; /* Titre un peu plus petit sur mobile */
        margin-top: 40px;
    }
}/* End custom CSS */