/* =========================================================
   Infinite scroll loader (GIF)
   ========================================================= */

/* Loader container */
.projets_infinite_loader {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 0;

    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

.projets_infinite_loader.is_active {
    opacity: 1;
    pointer-events: auto;
}

/* GIF itself */
.projets_infinite_loader_gif {
    display: block;
    width: 144px;
    height: auto;
}

/* Sentinel (IntersectionObserver trigger) */
.projets_infinite_sentinel {
    width: 100%;
    height: 1px;
}