feat: passe expérience — motion system niveau Awwwards (DOM/SVG, zéro WebGL)

- IntroLoader : cérémonie d'entrée (flag-bar, monogramme, titrage), 1re visite, skippable
- Lenis au layout (ticker GSAP, imports dynamiques) + ancres interceptées
- Hero : titrage oversized en masques, filets drapeau en parallaxe, sortie scrubée (scroll-driven CSS)
- Reveal syncopé gwoka (use:reveal) sur 83 éléments, flag chips, icônes pop
- Marquee kréyòl (tagline + valeurs), pause au survol
- Hover craft : boutons à balayage or, nav soulignée + section active, pochettes DJANGOKAM en wipe clip-path + tilt 3D (use:tilt) avec reflet or
- Gate unique prefers-reduced-motion partout ; contenu complet sans JS
- Lighthouse mobile 91/100/100/100 — JS initial 69 Ko gzip (budget 170 Ko)
This commit is contained in:
sucupira
2026-07-21 12:42:02 -04:00
parent 30858926fa
commit a6f359559b
27 changed files with 1018 additions and 66 deletions
+5 -2
View File
@@ -1,7 +1,9 @@
<script lang="ts">
import FlagChip from '$lib/components/motion/FlagChip.svelte';
import KineticText from '$lib/components/motion/KineticText.svelte';
import ResponsiveImage from '$lib/components/ResponsiveImage.svelte';
import type { Bundle, Locale } from '$lib/i18n';
import { reveal } from '$lib/motion/reveal';
import joukawouve from '$lib/assets/images/joukawouve.png?format=avif;webp;png&w=320;640&as=picture';
import akv from '$lib/assets/images/akv.png?format=avif;webp;png&w=320;640&as=picture';
@@ -18,6 +20,7 @@
<section id="partenaires" class="section">
<div class="container">
<FlagChip />
<h2 class="section-title">
<KineticText as="span" text={t.partners.section_title} />&#32;
<span class="accent-text"
@@ -27,8 +30,8 @@
<p class="section-subtitle">{t.partners.section_subtitle}</p>
<div class="partners-grid">
{#each t.partners.items as partner (partner.name)}
<div class="partner-card">
{#each t.partners.items as partner, i (partner.name)}
<div class="partner-card" use:reveal={i}>
<div class="partner-logo-container">
<ResponsiveImage
picture={LOGOS[partner.logo]}