/* --- ANIMATIONS DES TITRES DE PAGES --- */

/* 1. La base commune */
.reveal-top, .reveal-bottom {
    opacity: 0;
    animation-duration: 0.9s;
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    animation-fill-mode: forwards;
}

/* 2. H1 : Arrivée du HAUT */
.reveal-top {
    animation-name: animRevealTop;
}

/* 3. H2 : Arrivée du BAS + Petit délai */
.reveal-bottom {
    animation-name: animRevealBottom;
    animation-delay: 0.2s; /* Arrive 0.2s après le H1 */
}

/* 4. Les Keyframes */
@keyframes animRevealTop {
    from {
        opacity: 0;
        transform: translateY(-50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes animRevealBottom {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* --- RESET CENTRAGE TITRES ANIMÉS --- */

.reveal-top, .reveal-bottom {
    /* On supprime les marges qui décalent le centrage Flexbox */
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    
    /* On s'assure que l'élément est bien considéré comme un bloc */
    display: inline-block; 
    width: 100%;
}

/* Correction de la hauteur de ligne pour un centrage optique parfait */
.reveal-top h1, 
.reveal-bottom h2,
h1.reveal-top,
h2.reveal-bottom {

    margin: 0 !important;
}