/* ════════════════════════════════════════════════════════════════════
   Les 15 CHARTES GRAPHIQUES Tamonlink : couleurs et polices.
   Chaque charte s'applique à n'importe quel thème (Atelier, Minimal, Pop, Nuit).
   Le commerçant les choisit dans l'espace de gestion > Apparence > Charte.
   La charte du client lui-même (« Votre marque ») est dans theme-perso.css.
   Polices : licence SIL Open Font License 1.1, hébergées avec le site.
   Le navigateur ne télécharge que les polices de la charte affichée.
   ════════════════════════════════════════════════════════════════════ */
@font-face { font-family: 'Lora'; src: url('fonts/lora.woff2') format('woff2'); font-weight: 400 700; font-display: swap; }
@font-face { font-family: 'Nunito Sans'; src: url('fonts/nunito-sans.woff2') format('woff2'); font-weight: 200 1000; font-display: swap; }
@font-face { font-family: 'Unbounded'; src: url('fonts/unbounded.woff2') format('woff2'); font-weight: 200 900; font-display: swap; }
@font-face { font-family: 'Manrope'; src: url('fonts/manrope.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'Anton'; src: url('fonts/anton.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Fredoka'; src: url('fonts/fredoka.woff2') format('woff2'); font-weight: 300 700; font-display: swap; }
@font-face { font-family: 'Nunito'; src: url('fonts/nunito.woff2') format('woff2'); font-weight: 200 1000; font-display: swap; }
@font-face { font-family: 'Playfair Display'; src: url('fonts/playfair-display.woff2') format('woff2'); font-weight: 400 900; font-display: swap; }
@font-face { font-family: 'Source Sans 3'; src: url('fonts/source-sans-3.woff2') format('woff2'); font-weight: 200 900; font-display: swap; }
@font-face { font-family: 'Space Grotesk'; src: url('fonts/space-grotesk.woff2') format('woff2'); font-weight: 300 700; font-display: swap; }
@font-face { font-family: 'Courier Prime'; src: url('fonts/courier-prime-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Courier Prime'; src: url('fonts/courier-prime-700.woff2') format('woff2'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'Karla'; src: url('fonts/karla.woff2') format('woff2'); font-weight: 200 800; font-display: swap; }
@font-face { font-family: 'Caveat'; src: url('fonts/caveat.woff2') format('woff2'); font-weight: 400 700; font-display: swap; }
@font-face { font-family: 'Mulish'; src: url('fonts/mulish.woff2') format('woff2'); font-weight: 200 1000; font-display: swap; }
@font-face { font-family: 'Shrikhand'; src: url('fonts/shrikhand.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('fonts/poppins-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('fonts/poppins-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Bebas Neue'; src: url('fonts/bebas-neue.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Barlow'; src: url('fonts/barlow-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Barlow'; src: url('fonts/barlow-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Syne'; src: url('fonts/syne.woff2') format('woff2'); font-weight: 400 800; font-display: swap; }
@font-face { font-family: 'Outfit'; src: url('fonts/outfit.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }

/* 01 · Terracotta — Chaleureux · artisanal · fait main — Artisans, céramique, épicerie fine */
[data-charte='terracotta'] {
  --bg: #f7f0e8; --surface: #fffcf8; --soft: #efe2d3; --text: #2e221b; --muted: #7a6a5d; --line: #e6d8c7;
  --brand: #b5522e; --brand-ink: #ffffff; --accent: #2f5d4a; --accent-ink: #ffffff;
  --font: 'DM Sans', system-ui, sans-serif; --font-title: 'Fraunces', Georgia, serif;
  --title-weight: 560; --title-tracking: -0.02em; --title-case: none; --title-scale: 1;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 02 · Sauge — Naturel · apaisant · bien-être — Bio, cosmétiques, herboristerie, jardin */
[data-charte='sauge'] {
  --bg: #f2f4ee; --surface: #ffffff; --soft: #e1e8da; --text: #24301f; --muted: #66735f; --line: #d6dfcf;
  --brand: #56704f; --brand-ink: #ffffff; --accent: #c39a3b; --accent-ink: #ffffff;
  --font: 'Nunito Sans', system-ui, sans-serif; --font-title: 'Lora', Georgia, serif;
  --title-weight: 600; --title-tracking: -0.01em; --title-case: none; --title-scale: 1;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 03 · Océan — Marin · frais · énergique — Bord de mer, nautisme, sport, Bretagne */
[data-charte='ocean'] {
  --bg: #eef6fb; --surface: #ffffff; --soft: #cfe6f4; --text: #0e2a47; --muted: #48627a; --line: #0e2a47;
  --brand: #0e5aa7; --brand-ink: #ffffff; --accent: #ffb703; --accent-ink: #141210;
  --font: 'Manrope', system-ui, sans-serif; --font-title: 'Unbounded', system-ui, sans-serif;
  --title-weight: 700; --title-tracking: -0.03em; --title-case: none; --title-scale: 0.78;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 04 · Monochrome — Graphique · mode · affirmé — Prêt-à-porter, concept store, streetwear */
[data-charte='monochrome'] {
  --bg: #ffffff; --surface: #ffffff; --soft: #f1f1ef; --text: #0d0d0d; --muted: #6f6f6f; --line: #e4e4e4;
  --brand: #0d0d0d; --brand-ink: #ffffff; --accent: #e63b2e; --accent-ink: #ffffff;
  --font: 'Inter', system-ui, sans-serif; --font-title: 'Anton', system-ui, sans-serif;
  --title-weight: 400; --title-tracking: 0.01em; --title-case: uppercase; --title-scale: 0.9;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 05 · Pastel — Tendre · rond · rassurant — Enfance, puériculture, jouets, cadeaux */
[data-charte='pastel'] {
  --bg: #fff6f2; --surface: #ffffff; --soft: #ffe3dc; --text: #3b2b35; --muted: #85707b; --line: #f6dcd5;
  --brand: #e46f8c; --brand-ink: #ffffff; --accent: #5aa5d6; --accent-ink: #ffffff;
  --font: 'Nunito', system-ui, sans-serif; --font-title: 'Fredoka', system-ui, sans-serif;
  --title-weight: 600; --title-tracking: 0; --title-case: none; --title-scale: 0.95;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 06 · Vitaminé — Pop · audacieux · festif — Associations, jeunesse, événementiel */
[data-charte='vitamine'] {
  --bg: #fff8e7; --surface: #ffffff; --soft: #ffe7a8; --text: #16121f; --muted: #4d4658; --line: #16121f;
  --brand: #6b2ff0; --brand-ink: #ffffff; --accent: #ffcf33; --accent-ink: #141210;
  --font: 'DM Sans', system-ui, sans-serif; --font-title: 'Bricolage Grotesque', system-ui, sans-serif;
  --title-weight: 800; --title-tracking: -0.035em; --title-case: none; --title-scale: 0.95;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 07 · Émeraude — Raffiné · nocturne · précieux — Bijoux, parfum, cadeaux haut de gamme */
[data-charte='emeraude'] {
  --bg: #0f1d19; --surface: #16271f; --soft: #1d3129; --text: #efe9dd; --muted: #a3ac9f; --line: #2b3f36;
  --brand: #d4b483; --brand-ink: #141210; --accent: #8fbfa2; --accent-ink: #141210;
  --font: 'Jost', system-ui, sans-serif; --font-title: 'Cormorant Garamond', Georgia, serif;
  --title-weight: 500; --title-tracking: 0; --title-case: none; --title-scale: 1;
  --ok: #6fbf8e; --warn: #e5866f; color-scheme: dark;
}
/* 08 · Bordeaux — Terroir · classique · gourmand — Vins, gastronomie, fromagerie */
[data-charte='bordeaux'] {
  --bg: #faf6f1; --surface: #ffffff; --soft: #efe4d8; --text: #2a1a1c; --muted: #7a6566; --line: #e8dcd2;
  --brand: #6d1f2c; --brand-ink: #ffffff; --accent: #b8913f; --accent-ink: #ffffff;
  --font: 'Source Sans 3', system-ui, sans-serif; --font-title: 'Playfair Display', Georgia, serif;
  --title-weight: 700; --title-tracking: -0.01em; --title-case: none; --title-scale: 1;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 09 · Néon — Tech · nocturne · électrique — Gaming, high-tech, musique, tatouage */
[data-charte='neon'] {
  --bg: #0b0d17; --surface: #12152a; --soft: #181c36; --text: #e9ecff; --muted: #8c93b8; --line: #262b4d;
  --brand: #00e5c0; --brand-ink: #141210; --accent: #ff3d8b; --accent-ink: #ffffff;
  --font: 'Space Grotesk', system-ui, sans-serif; --font-title: 'Space Grotesk', system-ui, sans-serif;
  --title-weight: 700; --title-tracking: -0.03em; --title-case: none; --title-scale: 1;
  --ok: #6fbf8e; --warn: #e5866f; color-scheme: dark;
}
/* 10 · Kraft — Vintage · brut · authentique — Brocante, friperie, librairie, atelier */
[data-charte='kraft'] {
  --bg: #e8dcc6; --surface: #f3ead9; --soft: #dccdb1; --text: #2b2118; --muted: #6b5a47; --line: #c9b796;
  --brand: #2b2118; --brand-ink: #ffffff; --accent: #c0392b; --accent-ink: #ffffff;
  --font: 'Karla', system-ui, sans-serif; --font-title: 'Courier Prime', Georgia, serif;
  --title-weight: 700; --title-tracking: -0.02em; --title-case: none; --title-scale: 1;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 11 · Bohème — Libre · doux · fait main — Déco, macramé, bougies, mariage */
[data-charte='boheme'] {
  --bg: #f8efe6; --surface: #fffaf5; --soft: #f0dccb; --text: #3d2a22; --muted: #85695b; --line: #ead6c4;
  --brand: #c4704f; --brand-ink: #ffffff; --accent: #6b8f71; --accent-ink: #ffffff;
  --font: 'Mulish', system-ui, sans-serif; --font-title: 'Caveat', system-ui, sans-serif;
  --title-weight: 700; --title-tracking: 0; --title-case: none; --title-scale: 1.15;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 12 · Nordique — Sobre · lumineux · durable — Mobilier, maison, design, papeterie */
[data-charte='nordique'] {
  --bg: #f5f5f2; --surface: #ffffff; --soft: #e7e9e6; --text: #22303c; --muted: #66717c; --line: #dfe2df;
  --brand: #34495e; --brand-ink: #ffffff; --accent: #d9a441; --accent-ink: #141210;
  --font: 'Manrope', system-ui, sans-serif; --font-title: 'Manrope', system-ui, sans-serif;
  --title-weight: 700; --title-tracking: -0.03em; --title-case: none; --title-scale: 1;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 13 · Sorbet — Gourmand · estival · joyeux — Glacier, pâtisserie, plage, food truck */
[data-charte='sorbet'] {
  --bg: #fff3e8; --surface: #ffffff; --soft: #ffd9c7; --text: #3a1d1d; --muted: #8a5f57; --line: #ffd2bf;
  --brand: #ff5d3b; --brand-ink: #ffffff; --accent: #00a99d; --accent-ink: #ffffff;
  --font: 'Poppins', system-ui, sans-serif; --font-title: 'Shrikhand', system-ui, sans-serif;
  --title-weight: 400; --title-tracking: 0; --title-case: none; --title-scale: 0.88;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 14 · Industriel — Robuste · direct · pratique — Outillage, bricolage, auto-moto, BTP */
[data-charte='industriel'] {
  --bg: #f2f2ef; --surface: #ffffff; --soft: #e9e6dd; --text: #1b1b1b; --muted: #555555; --line: #1b1b1b;
  --brand: #ffc400; --brand-ink: #141210; --accent: #1b1b1b; --accent-ink: #ffffff;
  --font: 'Barlow', system-ui, sans-serif; --font-title: 'Bebas Neue', system-ui, sans-serif;
  --title-weight: 400; --title-tracking: 0.02em; --title-case: uppercase; --title-scale: 1.08; --title-accent: #b58300;
  --ok: #2e8a57; --warn: #b5523b; color-scheme: light;
}
/* 15 · Ardoise — Moderne · sombre · chaleureux — Café torréfacteur, barbier, bière artisanale */
[data-charte='ardoise'] {
  --bg: #1b1e23; --surface: #23272e; --soft: #2a2f37; --text: #eef0f2; --muted: #9aa2ad; --line: #343a43;
  --brand: #e8743b; --brand-ink: #ffffff; --accent: #9bc4bc; --accent-ink: #141210;
  --font: 'Outfit', system-ui, sans-serif; --font-title: 'Syne', system-ui, sans-serif;
  --title-weight: 700; --title-tracking: -0.02em; --title-case: none; --title-scale: 0.86;
  --ok: #6fbf8e; --warn: #e5866f; color-scheme: dark;
}
