.elementor-536 .elementor-element.elementor-element-137d021{--display:flex;--min-height:388px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:-32px;--padding-left:0px;--padding-right:0px;}.elementor-536 .elementor-element.elementor-element-b305cf8{--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;--justify-content:space-around;--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-536 .elementor-element.elementor-element-b305cf8:not(.elementor-motion-effects-element-type-background), .elementor-536 .elementor-element.elementor-element-b305cf8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-536 .elementor-element.elementor-element-21b3d95{--display:flex;--min-height:0px;}.elementor-536 .elementor-element.elementor-element-07f4b43{--display:flex;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}body:not(.rtl) .elementor-536 .elementor-element.elementor-element-d733c8e{left:0px;}body.rtl .elementor-536 .elementor-element.elementor-element-d733c8e{right:0px;}.elementor-536 .elementor-element.elementor-element-d733c8e{top:0px;}.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-536 .elementor-element.elementor-element-7106dee .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:2.8rem;font-weight:700;color:#FFFFFF;}.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-536 .elementor-element.elementor-element-c31914d{color:var( --e-global-color-113838c );}.elementor-536 .elementor-element.elementor-element-07e2fd4{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-536 .elementor-element.elementor-element-07e2fd4:not(.elementor-motion-effects-element-type-background), .elementor-536 .elementor-element.elementor-element-07e2fd4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://dev.webeasepro.com/wp-content/uploads/2025/10/Groupe-89.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-536 .elementor-element.elementor-element-f7959fc{--display:flex;--min-height:0px;--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;--margin-top:0px;--margin-bottom:69px;--margin-left:0px;--margin-right:0px;}.elementor-536 .elementor-element.elementor-element-1cea091{--spacer-size:50px;}.elementor-536 .elementor-element.elementor-element-aa0d631{--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-posts .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-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{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-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-536 .elementor-element.elementor-element-1fa4064{--grid-row-gap:27px;--grid-column-gap:30px;}.elementor-536 .elementor-element.elementor-element-1fa4064.elementor-element{--align-self:center;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.62 * 100% );}.elementor-536 .elementor-element.elementor-element-1fa4064:after{content:"0.62";}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__thumbnail__link{width:100%;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__meta-data span + span:before{content:"•";}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__card{background-color:#FFFCFC;padding-top:0px;padding-bottom:0px;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__text{margin-top:20px;margin-bottom:10px;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__badge{right:0;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__card .elementor-post__badge{border-radius:2px;font-size:11px;margin:20px;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__excerpt{margin-bottom:7px;}.elementor-536 .elementor-element.elementor-element-1fa4064 a.elementor-post__read-more{font-family:"Raleway", Sans-serif;font-size:14px;font-weight:700;text-decoration:none;letter-spacing:0.3px;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__read-more{margin-bottom:10px;}@media(max-width:767px){.elementor-536 .elementor-element.elementor-element-7106dee{text-align:center;}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-536 .elementor-element.elementor-element-1fa4064:after{content:"0.5";}.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__thumbnail__link{width:100%;}}@media(min-width:768px){.elementor-536 .elementor-element.elementor-element-b305cf8{--width:40%;}.elementor-536 .elementor-element.elementor-element-21b3d95{--width:30%;}.elementor-536 .elementor-element.elementor-element-07e2fd4{--width:60%;}}/* Start custom CSS for container, class: .elementor-element-21b3d95 */<canvas id="stardust-canvas" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none;"></canvas>

<script>
let particles = [];
let microparticles = [];

const canvas = document.getElementById('stardust-canvas');
const ctx = canvas.getContext('2d');

canvas.width = canvas.parentElement.offsetWidth;
canvas.height = canvas.parentElement.offsetHeight;

window.addEventListener('resize', () => {
    canvas.width = canvas.parentElement.offsetWidth;
    canvas.height = canvas.parentElement.offsetHeight;
});

class Particle {
    constructor() {
        this.random = Math.random();
        this.random1 = Math.random();
        this.progress = 0;
        this.life = 1000 + (Math.random() * 3000);
        this.x = (canvas.width / 2) + (Math.random() * 100 - Math.random() * 100);
        this.y = canvas.height;
        this.s = 2 + Math.random() * 2;
        this.w = canvas.width;
        this.h = canvas.height;
        this.direction = this.random > 0.5 ? -1 : 1;
        this.radius = 1 + (3 * this.random);
        this.color = "rgba(255, 255, 255, 0.8)";

        this.ID = setInterval(() => {
            microparticles.push(new MicroParticle({ x: this.x, y: this.y }));
        }, this.random * 20);

        setTimeout(() => clearInterval(this.ID), this.life);
    }

    render() {
        ctx.beginPath();
        ctx.arc(this.x, this.y, this.radius, 0, 2 * Math.PI);
        ctx.shadowBlur = 10;
        ctx.shadowColor = "rgba(255, 255, 255, 0.5)";
        ctx.fillStyle = this.color;
        ctx.fill();
        ctx.closePath();
    }

    move() {
        this.x -= (this.direction) * Math.sin(this.progress / ((this.random1 * 430))) * this.s;
        this.y -= Math.cos(this.progress / this.h) * this.s;
        if (this.x < 0 || this.x > this.w - this.radius || this.y < 0) {
            clearInterval(this.ID);
            return false;
        }
        this.render();
        this.progress++;
        return true;
    }
}

class MicroParticle {
    constructor(options) {
        this.random = Math.random();
        this.random1 = Math.random();
        this.random2 = Math.random();
        this.progress = 0;
        this.x = options.x;
        this.y = options.y;
        this.s = 2 + Math.random() * 3;
        this.w = canvas.width;
        this.h = canvas.height;
        this.radius = 1 + this.random * 0.5;
        this.color = "rgba(78, 252, 254, 0.7)";
    }

    render() {
        ctx.beginPath();
        ctx.arc(this.x, this.y, this.radius, 0, 2 * Math.PI);
        ctx.fillStyle = this.color;
        ctx.fill();
        ctx.closePath();
    }

    move() {
        this.x -= Math.sin(this.progress / (100 / (this.random1 - this.random2 * 10))) * this.s;
        this.y += Math.cos(this.progress / this.h) * this.s;
        if (this.x < 0 || this.x > this.w - this.radius || this.y > this.h) return false;
        this.render();
        this.progress++;
        return true;
    }
}

let randomLife = 1000;
setInterval(() => {
    particles.push(new Particle());
    randomLife = 2000 * Math.random();
}, randomLife);

function clear() {
    ctx.clearRect(0, 0, canvas.width, canvas.height); // Juste clear transparent, pas de fond
}

function update() {
    clear();
    particles = particles.filter(p => p.move());
    microparticles = microparticles.filter(mp => mp.move());
    requestAnimationFrame(update);
}

update();
</script>

<style>
/* Assure que le contenu reste visible */
.elementor-container, .elementor-widget-wrap {
    position: relative;
    z-index: 1;
}
</style>/* End custom CSS */
/* Start custom CSS for posts, class: .elementor-element-1fa4064 *//* Carte en flexbox pour pousser bouton en bas */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

/* Image arrondie */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__thumbnail img {
    border-radius: 12px !important;
}

/* Contenu grandit pour pousser le bouton */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__text {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Extrait grandit, bouton reste en bas */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__excerpt {
    flex-grow: 1 !important;
}

/* Enlever le soulignement des titres */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__title a {
    text-decoration: none !important;
}

.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__title a:hover {
    text-decoration: none !important;
}

/* Bouton reste en bas */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__read-more-wrapper {
    margin-top: auto !important;
}

/* Style du bouton avec fond rouge */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-button,
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__read-more {
    background: #E31E24 !important;
    color: #FFFFFF !important;
    border-radius: 25px !important;
    padding: 12px 30px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
}

/* Hover du bouton */
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-button:hover,
.elementor-536 .elementor-element.elementor-element-1fa4064 .elementor-post__read-more:hover {
    background: #c41a1f !important;
    transform: translateY(-2px) !important;
}/* End custom CSS */