Les logos flottent maintenant directement sur le fond de la page au lieu
d'être encadrés dans une carte, pour un rendu "trusted by" plus épuré.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Complète la fonctionnalité logo_banners (déjà en place côté PHP/BDD) : bandeau
défilant en boucle infinie avec bords en dégradé, logos en niveaux de gris qui
reprennent leur couleur au survol, sens de défilement inversé entre les deux
bandeaux, et grille dédiée dans le panel admin.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
L'input file étant imbriqué dans la zone cliquable, input.click() déclenchait
un évènement click qui remontait (bubble) jusqu'à la zone et relançait
input.click() une seconde fois. Ajout d'un garde-fou sur e.target.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Le conteneur (php:8.2-apache) utilisait les limites par défaut de PHP (8 Mo),
ce qui rejetait silencieusement les requêtes contenant un PDF plus lourd et
provoquait en cascade des erreurs "headers already sent". Le Dockerfile généré
par scriptsite.sh doit copier ce fichier dans /usr/local/etc/php/conf.d/.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- Vraie structure HTML5 (doctype, head, meta viewport) via le header commun
- CSS réécrit avec variables, police Inter, header sticky, menu burger mobile
- Thème clair/sombre avec bouton dans la navbar (mémorisé en localStorage)
- Hero sur l'accueil, page compétences en cartes alignée sur le CV (+ Ansible)
- Correction des balises body/main dupliquées sur contact, login et cgu
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>