Add full trilingual EN/FR/NB support across all pages and data

- Convert all data files (site, profile, norway, jazz, projects, cv) to Record<LocaleCode, string> fields
- Update all page templates to use LocaleCopy component for locale-aware rendering
- Fix CSS specificity conflict: .locale-copy .locale-copy__text (spec 20) now beats container span rules (spec 11)
- Update LocaleSwitcher, BaseLayout, and SectionCard for locale prop types
- Design system overhaul: Special Elite font, burgundy #8f2218, DG seal favicon

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-17 23:23:14 +02:00
parent ffb368670c
commit 2a06888fd6
21 changed files with 1377 additions and 848 deletions
+12
View File
@@ -8,6 +8,18 @@ import BaseLayout from "../layouts/BaseLayout.astro";
description="A live writing desk fed from the PHP archive: Boris Vian, Vernon Sullivan weather, jazz syntax, and pataphysical essays."
>
<main class="writing-page">
<section class="container writing-feature" style="margin-bottom: 0; padding-bottom: 0;">
<article class="panel jazz-article" style="margin-bottom: var(--space-md, 1.5rem);">
<div class="capsule__kicker">
<span>Latest piece</span>
<span>May 2026</span>
</div>
<h2 style="margin-top: 0.5rem;">L'Homme Impossible</h2>
<p style="font-style: italic; margin-bottom: 0.75rem;">A Guide to Boris Vian and the Collège de 'Pataphysique</p>
<p>He was a trained engineer who played trumpet in a cellar with Miles Davis, wrote ten novels before his fortieth birthday, and became a Transcendent Satrap of an institution dedicated to deliberate uselessness.</p>
<a class="button button--dark" href="/articles/boris-vian-2026/">Read the introduction</a>
</article>
</section>
<WritingIssue client:load />
</main>
</BaseLayout>