// js/da.jsx — Direction artistique artboard
// Présente palette, typographie, motifs signature
function DAArtboard({ palette, typo, density }) {
return (
{/* Title */}
Direction artistique · v.1
L’esthétique Equilys.
Une rencontre entre l’encre et le circuit, le rituel et la stratégie.
Sobriété éditoriale, géométrie discrète, touche dorée parcimonieuse.
{/* Palette */}
{[
['Bg', 'var(--eq-bg)', PALETTES[palette].bg],
['Surface', 'var(--eq-surface)', PALETTES[palette].surface],
['Surface alt', 'var(--eq-surface-alt)', PALETTES[palette].surfaceAlt],
['Ink', 'var(--eq-ink)', PALETTES[palette].ink],
['Or', 'var(--eq-gold)', PALETTES[palette].gold],
['Or soft', 'var(--eq-gold-soft)', PALETTES[palette].goldSoft],
].map(([label, cssVar, hex]) => (
))}
{/* Typography */}
Display
Équilibre
Cultiver, incarner.
{TYPESETS[typo].display.split(',')[0].replace(/"/g, '')}
Body & Mono
Le coaching Equilys s’adresse autant à votre intuition qu’à
votre stratégie. Le corps, le souffle, le mental et le patrimoine
y travaillent dans la même direction.
ALIGNEMENT · ÉQUILIBRE · PERFORMANCE · PATRIMOINE
DM Sans · JetBrains Mono
{/* Motifs signature */}
{/* Ton + Mots */}
{/* Principes */}
{[
['01', 'Vide narratif', 'Le vide est un message. Marges généreuses, respiration entre blocs.'],
['02', 'Or, parcimonieux', 'Maximum 3 touches dorées par écran. L’or souligne, jamais ne crie.'],
['03', 'Italique = âme', 'L’italique réservé aux mots qui portent le sens (équilibre, maîtrise).'],
['04', 'Géométrie discrète', 'Aucun ombrage agressif. Filets de 0.6–1px, jamais plus de 2.'],
['05', 'Mono comme tag', 'JetBrains Mono UPPERCASE pour les piliers et les labels.'],
['06', 'Photographie épurée', 'Lumière naturelle, monochrome chaud, jamais de stock générique.'],
].map(([num, t, d]) => (
))}
{/* Animations */}
{[
['Ensō tracé', 'Apparition du hero — 1.8s', 'stroke-dasharray, ease-out'],
['Orbites rotatives', 'Cercles pointillés autour de l’ensō', '60 / 100s, infinite'],
['Fade-up sections', '12px ↑, 600ms à l’entrée du viewport', 'cubic-bezier(.2,.7,.3,1)'],
['Or pulse au hover', 'Bouton or — légère respiration', 'scale 1 → 1.02, 400ms'],
].map(([t, w, e]) => (
))}
);
}
function DABlock({ title, caption, children }) {
return (
);
}
function MotifCard({ title, desc, children }) {
return (
{children}
{title}
{desc}
);
}
function ToneList({ title, items, tone }) {
const color = tone === 'gold' ? 'var(--eq-gold)' : 'var(--eq-ink-muted)';
return (
{title}
{items.map(i => (
-
{tone === 'gold' ? '+' : '−'}
{i}
))}
);
}
Object.assign(window, { DAArtboard });