





Hot of the press

Louise-Michel high school students exhibit at the Departmental Council branch in Narbonne
The work on old age by 350 high school students, produced in collaboration with photographer Didier Carluccio, is currently on display in the reception hall of the Departmental Council branch…
Through photography, care home residents have regained their energy
A rather unusual photography exhibition is on display in the corridors of the Mont-Saint-Vincent care home, featuring the residents themselves. These portraits, taken in February, were captured during sessions that significantly boosted the residents’ morale…
Old age in distress in nursing homes
Families and professionals believe that the government’s plan on aging and dependency falls short of France’s demographic shift…
Investigation: Far from the old, far from the heart — Old age erased and forgotten
A recent phenomenon on this scale, advanced old age is not necessarily a ‘shipwreck’: only one in five people over 85 is dependent. Yet, French society overlooks this age group, holding a biased and often negative perception of it…
Didier Carluccio highlights the beauty of seniors
For over twenty years, Didier Carluccio has cast a committed and compassionate eye on old age…
document.addEventListener("DOMContentLoaded", () => {
gsap.registerPlugin(ScrollTrigger);
// -----------
// GSAP Gallery
// Vérifier si la largeur d'écran est supérieure ou égale à 768px
const mediaQuery = window.matchMedia("(min-width: 768px)");
// Fonction pour exécuter les animations GSAP
function setupAnimations() {
if (mediaQuery.matches) {
const galleryColumnLeftItems = gsap.utils.toArray(".gallery__column--left-item");
const galleryColumnRightItems = gsap.utils.toArray(".gallery__column--right-item");
const galleryColumnLeft = document.querySelector(".gallery__column--left");
const galleryColumnRight = document.querySelector(".gallery__column--right");
const galleryColumnLeftHeight = galleryColumnLeft.getBoundingClientRect().height;
const galleryColumnRightHeight = galleryColumnRight.getBoundingClientRect().height;
gsap.to(galleryColumnLeftItems, {
yPercent: 100 * (galleryColumnLeftItems.length - 1) + 2,
ease: "none",
scrollTrigger: {
trigger: ".gallery__column--left",
start: "top top",
end: `+=${galleryColumnLeftHeight}`,
scrub: 0.2,
pin: true,
}
});
gsap.to(galleryColumnRightItems, {
yPercent: -100 * (galleryColumnRightItems.length - 1),
ease: "none",
scrollTrigger: {
trigger: ".gallery__column--right",
start: "top top",
end: `+=${galleryColumnRightHeight}`,
scrub: 0.2,
pin: true,
}
});
}
}
// Exécuter les animations au chargement initial
setupAnimations();
// Rafraîchir ScrollTrigger et réexécuter les animations lors du redimensionnement
window.addEventListener("resize", () => {
ScrollTrigger.refresh();
setupAnimations();
});
// Écouter les changements de la media query
mediaQuery.addEventListener("change", () => {
ScrollTrigger.refresh();
setupAnimations();
});
// ---------
// GSAP Titre
let fontSize = window.getComputedStyle(document.body).getPropertyValue('--font-size-xl');
gsap.set('.home__content', { backgroundColor: "#000" });
gsap.to('.home__content', {
backgroundColor: "#FFF",
scrollTrigger: {
start: '40% 40%',
end: '60%',
toggleActions: 'play none none reverse',
scrub: true,
}
});
// Animation du h1 seulement au-dessus de 768px
ScrollTrigger.matchMedia({
"(min-width: 768px)": function() {
gsap.to('h1', {
fontSize: fontSize,
scrollTrigger: {
trigger: 'h1',
start: 'top 80%',
end: 'bottom 10%',
scrub: true,
}
});
}
});
});