Navigation clavier, gestion des paires de portraits, inserts en slides
autonomes avec auto-déclenchement, gestion des extrémités.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Cartouches absolues sur les premières slides (titre en h1, crédits en h2),
positions top/left aléatoires via rand(). Logique de données dans le controller.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Méthode schedule() sur le modèle : plage globale du/le sur toutes les dates.
Affichage des crédits principaux et du schedule dans main-infos. Layout article
en grille 2/1 pour présentation + infos.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remplace opacity par translateY(-200%) pour cohérence avec le scroll.
Supprime opacity de la transition. Correction margin-top big à 9.5rem.
Nav alimentée dynamiquement depuis Kirby. Personnages wrappés dans un lien home.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Classe .small sur le header force l'état compact (personnages petits, logo
masqué). L'ouverture du menu déclenche .big qui prend le dessus. Le scroll
handler est court-circuité quand small est actif. margin-top déplacé dans
chaque contexte de page plutôt qu'en global.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Logo wrappé dans un lien home. Filtres affichés uniquement sur events.
Background beige remontée en global. Casse des labels en minuscules.
z-index header, ajustements margin et padding.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Chargement conditionnel de Swiper (CDN UMD) sur le template event.
Srcset dédié sans crop, 6 largeurs jusqu'à 3200w, toujours WebP.
Première slide en eager, suivantes en lazy.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Extrait le style onglet-bas en classes réutilisables (.bottom-tab,
.bottom-tab--invert) dans _generic.scss. Appliqué aux boutons de filtre
et à l'étiquette infos des cartes événement.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Boutons de filtre actifs via data-target sur les boutons et data-company sur
les cartes. Clic sur un filtre actif réaffiche tout. Étiquette infos stylée
sous chaque carte, ajustements de mise en page de la grille.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Noms de variables et fonctions explicites (sans abréviation), fonctions
unitaires, paths SVG construits via template literals avec constantes nommées.
Découpage en assets/js/characters/jump.js et pupilTracking.js, importés dans
script.js. Clamp de la rotation des pieds pour éviter le bounce à l'atterrissage.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remplace le ressort principal par une cinématique gravité constante (900 SVG/s²) pour un décollage vif et une chute naturelle
- L'animation de saut se déclenche en boucle au mouseenter et s'arrête au mouseleave (atterrissage propre en cours de vol)
- Extrait la logique d'animation dans characters.js, script.js garde uniquement le scroll
- SVG : groupe #right-character-body pour dissocier corps/tête des jambes lors de la compression
- CSS : overflow visible sur le SVG pour le débordement pendant le saut
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>