Pass de modernisation visuelle : remplacement de TOUS les emojis Unicode dans les templates marketing/legal/billing/auth par des SVG inline (style heroicons) ou par du texte propre, pour un look SaaS pro à la Linear/Vercel/Stripe. Mapping principal : - ✓ / ✗ / ⚠ → SVG check / x / triangle (text-brand-b3 / red / amber) - → / ← / ↗ → SVG arrow-right / arrow-left / arrow-up-right - 🍁 / 🏛️ / ⚖️ / 🔓 → SVG map-pin / building / scale / code-brackets - 🎙️ / 👥 / 📝 / 💬 / 📄 / 🔌 → 6 SVG bento icons (microphone, users, doc, chat, export, plug) - ✉️ / ☎️ / 📬 → SVG envelope / phone / map-pin - ↺ → SVG refresh-counter-clockwise - ★ → SVG star (RECOMMANDÉ badge) - 🎯/🏢/📺/🤝/📰 → SVG target / office / play / handshake / news (raccourcis contact) - ⚖️/📊/🏛️ (testimonials) → SVG scale / bar-chart / building - ✦ (default bento icon) → SVG sparkle inline Tous les SVG utilisent stroke="currentColor" pour héritage Tailwind text-*. Les SVG informationnels du tableau comparatif portent un aria-label sémantique (Conforme/Non conforme/Partiel) ; les SVG décoratifs portent aria-hidden. Tests : - 18/18 legal pages passent (test_legal_pages.py) - test_comparatif_check_marks_consistently_mean_good ajusté pour asserter sur les aria-label SVG plutôt que les caractères ✓/✗ - 4 échecs pré-existants non liés (manque /blog dans nav, SOC 2 hedge dans conformite.html, gitea.innova-ai.ca url) — confirmés présents avant ce commit Fichiers modifiés (14) : - templates/macros/{bento,pricing_card}.html (sources de vérité) - templates/marketing/{base,_footer,landing,fonctionnalites,tarifs,conformite,contact}.html - templates/legal/{_layout,index}.html - templates/billing/{cancel,success}.html - tests/test_marketing_landing_template.py (assert sur aria-label) Audit final : 0 emoji restant dans les fichiers in-scope ; 0 emoji dans le HTML rendu de toutes les pages marketing/legal vérifiées. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
62 lines
3.5 KiB
HTML
62 lines
3.5 KiB
HTML
<footer class="bg-brand-navy2 text-white py-16 mt-20" aria-labelledby="footer-heading">
|
|
<h2 id="footer-heading" class="sr-only">Navigation du pied de page</h2>
|
|
<div class="max-w-[1200px] mx-auto px-6">
|
|
<div class="grid md:grid-cols-4 gap-8 mb-12">
|
|
|
|
{# Column 1 — Brand + contact #}
|
|
<div>
|
|
<a href="/" class="font-black text-xl grad-text" aria-label="DictIA — page d'accueil">DictIA</a>
|
|
<p class="text-sm text-white/70 mt-3">Transcription IA conforme Loi 25, conçue au Québec.</p>
|
|
<address class="not-italic text-xs text-white/70 mt-4 leading-relaxed">
|
|
77 ch. de la Seigneurie<br>
|
|
Inverness QC G0S 1K0<br>
|
|
<a href="tel:+15819968471" class="hover:text-white">(581) 996-8471</a><br>
|
|
<a href="mailto:info@dictia.ca" class="hover:text-white">info@dictia.ca</a>
|
|
</address>
|
|
</div>
|
|
|
|
{# Column 2 — Produit #}
|
|
<nav aria-label="Produit">
|
|
<p class="eyebrow text-white/70 mb-4">Produit</p>
|
|
<ul class="space-y-2 text-sm text-white/70">
|
|
<li><a href="/fonctionnalites" class="hover:text-white">Fonctionnalités</a></li>
|
|
<li><a href="/tarifs" class="hover:text-white">Tarifs</a></li>
|
|
</ul>
|
|
</nav>
|
|
|
|
{# Column 3 — Légal #}
|
|
<nav aria-label="Légal">
|
|
<p class="eyebrow text-white/70 mb-4">Légal</p>
|
|
<ul class="space-y-2 text-sm text-white/70">
|
|
<li><a href="/conformite" class="hover:text-white">Conformité</a></li>
|
|
<li><a href="/legal/conditions" class="hover:text-white">Conditions d'utilisation</a></li>
|
|
<li><a href="/legal/confidentialite" class="hover:text-white">Confidentialité (Loi 25)</a></li>
|
|
<li><a href="/legal/cookies" class="hover:text-white">Cookies</a></li>
|
|
<li><a href="/legal/remboursement" class="hover:text-white">Remboursement</a></li>
|
|
<li><a href="/legal/accessibilite" class="hover:text-white">Accessibilité</a></li>
|
|
<li><a href="/legal/mentions" class="hover:text-white">Mentions légales</a></li>
|
|
<li><a href="https://gitea.dictia.ca/Innova-AI/dictia-public" target="_blank" rel="noopener" class="inline-flex items-center gap-1.5 hover:text-white">Code source AGPL<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="w-3.5 h-3.5" aria-hidden="true"><path d="M7 17l9.2-9.2M17 17V8h-9"/></svg><span class="sr-only">(s'ouvre dans un nouvel onglet)</span></a></li>
|
|
</ul>
|
|
</nav>
|
|
|
|
{# Column 4 — Compte #}
|
|
<nav aria-label="Compte">
|
|
<p class="eyebrow text-white/70 mb-4">Compte</p>
|
|
<ul class="space-y-2 text-sm text-white/70">
|
|
<li><a href="/login" class="hover:text-white">Connexion</a></li>
|
|
<li><a href="/signup" class="hover:text-white">Créer un compte</a></li>
|
|
<li><a href="/contact" class="hover:text-white">Contact</a></li>
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
|
|
<div class="pt-8 border-t border-white/[0.045] flex flex-col md:flex-row justify-between items-center gap-4 text-xs text-white/70">
|
|
<p>© 2026 DictIA Inc. · AGPL v3 · Fait au Québec</p>
|
|
<div class="flex gap-4">
|
|
<a href="https://www.linkedin.com/company/dictiaqc" rel="noopener" target="_blank" class="hover:text-white">LinkedIn</a>
|
|
<a href="https://www.facebook.com/dictiaqc" rel="noopener" target="_blank" class="hover:text-white">Facebook</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</footer>
|