/* ============================================================================
   BLOG — NOUVELLE DA BLEUE (fichiers index2.html du blog uniquement)
   ----------------------------------------------------------------------------
   Chargé APRÈS blog.css. On NE réécrit PAS blog.css : le blog et les articles
   utilisent partout les tokens de thème (--accent, --text, --bg, --font-*), il
   suffit donc de REMAPPER ces tokens vers la DA bleue pour tout basculer :
     · plus de NOIR   → fonds clairs (crème/blanc) bord à bord
     · plus de JAUNE  → accent lime #c2f24e / vert #3d6610 remplacé par le bleu
     · plus d'ANCIENNE POLICE → Cormorant/Space Grotesk/Manrope/JetBrains → Plus Jakarta
   Scopé body.tvl-da2 : n'affecte que les pages blog2. Utilise les tokens
   --da2-* définis par hero2.css.
   ============================================================================ */

/* 1. REMAP DES TOKENS DE THÈME ---------------------------------------------
   On vise à la fois le niveau racine (utilisé par les zones sombres de
   l'article) ET .section--light (utilisé par les zones claires + le blog),
   pour que TOUT le blog rende avec la même DA claire. */
body.tvl-da2,
body.tvl-da2 .section--light {
  --bg: #f9f8f3;
  --bg-2: #ffffff;
  --bg-3: #f0efe9;
  --text: #1e2330;
  --text-2: #4a5160;
  --text-muted: #7c8598;
  --text-muted-2: #9aa1b0;
  --accent: #274b8f;                 /* bleu de marque, remplace le lime/vert */
  --line: rgba(30, 35, 48, .10);
  --line-2: rgba(30, 35, 48, .16);
  --font-serif:   "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-sans:    "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono:    "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* Fond de page clair (le body du site est noir par défaut). */
body.tvl-da2[data-page="blog"],
body.tvl-da2[data-page="blog-article"] { background: var(--da2-card); color: var(--text); }

/* 2. ZONES D'ARTICLE — plus de noir : fonds clairs alternés, bord à bord ----
   Les 2 zones « sombres » (corps, clôture) n'avaient pas .section--light et
   prenaient le fond noir du body. On leur donne un fond clair explicite. */
body.tvl-da2 .article__zone { background: transparent; }
body.tvl-da2 .article__zone--hero    { background: var(--da2-card); }     /* crème */
body.tvl-da2 .article__zone--body    { background: #ffffff; }            /* blanc */
body.tvl-da2 .article__zone--faq     { background: var(--da2-card); }     /* crème */
body.tvl-da2 .article__zone--closing { background: var(--da2-field-bg); } /* gris clair */

/* 3. POLICES / TITRES — casse & tracking DA (plus de mono en capitales) ----- */
body.tvl-da2 .blog-crumb,
body.tvl-da2 .article__meta,
body.tvl-da2 .blog-post__tag,
body.tvl-da2 .blog-post__go,
body.tvl-da2 .blog-post__meta,
body.tvl-da2 .blog-cat__go,
body.tvl-da2 .blog-cat__tag,
body.tvl-da2 .blog-cat__num,
body.tvl-da2 .blog-related > h2,
body.tvl-da2 .article__author-box .rr,
body.tvl-da2 .article__tip::before,
body.tvl-da2 .article__faq .faq-q .num,
body.tvl-da2 .section__num { letter-spacing: .02em; }

body.tvl-da2 .blog-title,
body.tvl-da2 .blog-cat-hero h1,
body.tvl-da2 .article__title,
body.tvl-da2 .blog-cat__title,
body.tvl-da2 .blog-post__title { letter-spacing: -.02em; }

/* Le chiffre romain « — » des eyebrows reste discret (pas d'accent criard). */
body.tvl-da2 .section__num .roman { color: var(--da2-blue); }

/* Mot accentué des grands titres en bleu (comme « Valentin » sur a-propos2). */
body.tvl-da2 .blog-title em,
body.tvl-da2 .blog-cat-hero h1 em,
body.tvl-da2 .article__title em { color: var(--da2-blue); font-style: normal; }

/* 4. LEAD d'article : sur fond blanc, garde une encre franche. */
body.tvl-da2 .article__lead { color: var(--text); font-weight: 500; }

/* 5. BLOCKQUOTE : la police serif italique est partie (Jakarta) → on enlève
   l'italique et on renforce le poids pour garder l'emphase. */
body.tvl-da2 .article__body blockquote { font-style: normal; font-weight: 600; color: var(--text); }

/* 6. BOUTON CTA — bleu plein (PAS de jaune), texte blanc. Le .btn du site est
   en lime/mono capitales ; on le repeint DA, scopé aux CTA du blog. */
body.tvl-da2 .article__cta .btn--primary,
body.tvl-da2 .blog-empty .btn--primary {
  background: var(--da2-blue); border-color: var(--da2-blue); color: #fff;
  font-family: var(--da2-font); font-weight: 700; letter-spacing: .3px; text-transform: none;
  border-radius: 100px;
}
body.tvl-da2 .article__cta .btn--primary:hover,
body.tvl-da2 .blog-empty .btn--primary:hover { background: var(--da2-blue-dark); border-color: var(--da2-blue-dark); }
body.tvl-da2 .article__cta .btn--primary .btn__txt,
body.tvl-da2 .article__cta .btn--primary .arrow,
body.tvl-da2 .blog-empty .btn--primary .btn__txt,
body.tvl-da2 .blog-empty .btn--primary .arrow { color: #fff; }

/* Badge « articles à venir » : lisible sur bleu. */
body.tvl-da2 .blog-empty__badge { color: #fff; background: var(--da2-blue); }

/* 7. Encart astuce / auteur / crosslink : bord d'accent bleu (via --accent),
   rien à faire de plus (les tokens font le travail). On soigne juste la
   couverture d'article : ombre douce DA plutôt que bord sec. */
body.tvl-da2 .article__cover img { box-shadow: 0 24px 60px -34px rgba(30, 35, 48, .35); }

/* 8. Focus visible cohérent DA */
body.tvl-da2 .blog a:focus-visible,
body.tvl-da2 .article a:focus-visible,
body.tvl-da2 .article button:focus-visible { outline: 2px solid var(--da2-blue); outline-offset: 3px; border-radius: 6px; }

/* ============================================================================
   BARRE CTA MOBILE FIXE + correctif bannière cookies (repris d'index2/a-propos2)
   Ici (et non en <style> inline) pour que chaque page blog2 n'ait qu'à inclure
   le markup .tvl-cta-bar + son petit script.
   ============================================================================ */
.tvl-cta-bar {
  display: none; position: fixed; left: 0; right: 0; z-index: 950;
  bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  gap: 10px; align-items: stretch; padding: 10px 14px;
  background: #fff; border-radius: 18px;
  box-shadow: 0 -10px 30px -12px rgba(18, 35, 63, .22);
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  transform: translateY(0); opacity: 1; transition: transform .3s ease, opacity .3s ease;
}
.tvl-cta-bar.is-hidden { transform: translateY(12px); opacity: 0; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .tvl-cta-bar { transition: none } }
.tvl-cta-bar__btn {
  display: flex; align-items: center; justify-content: center; gap: 7px;
  min-height: 48px; padding: 0 16px; border-radius: 14px;
  font-size: 13.5px; font-weight: 800; letter-spacing: .2px;
  text-decoration: none; white-space: nowrap; cursor: pointer;
  transition: transform .15s ease, background .15s ease;
}
.tvl-cta-bar__btn:active { transform: scale(.97); }
.tvl-cta-bar__btn:focus-visible { outline: 2px solid #274b8f; outline-offset: 2px; }
/* Primaire en BLEU (pas de jaune sur le blog, demande Valentin). */
.tvl-cta-bar__btn--primary { flex: 1; background: #274b8f; color: #fff; box-shadow: 0 10px 22px -10px rgba(39, 75, 143, .6); }
.tvl-cta-bar__btn--primary:hover { background: #1d3a70; }
.tvl-cta-bar__icon { flex: none; }
.tvl-cta-bar__btn--secondary { flex: 0 0 auto; min-width: 92px; background: transparent; border: 1.5px solid #274b8f; color: #274b8f; }
.tvl-cta-bar__btn--secondary:hover { background: #eef2f9; }
@media (max-width: 900px) {
  .tvl-cta-bar { display: flex; }
  body { padding-bottom: calc(94px + env(safe-area-inset-bottom, 0px)); }
}
/* Regles #tvl-cookie-bar retirees le 31/07/2026 (M3) : elles etaient taillees
   pour l'ancien bandeau NOIR pleine largeur et, a specificite egale, battaient
   hero2.css charge avant. Le bandeau DA2 (carte bleu nuit) vient desormais de
   hero2.css, identique sur les 405 pages. */

/* 8. ECHELLE TYPO DU CORPS D'ARTICLE (2026-08-04, demande Valentin) ---------
   Le corps d'article de blog.css monte a 1.2rem (19.2px) : trop gros en
   lecture longue. On redescend a une taille classique (~17px) et on reduit
   chapo, H2, H3, questions FAQ et CTA dans la meme proportion pour garder la
   hierarchie. Scope body.tvl-da2 : ne touche que les pages blog DA2. */
body.tvl-da2 .article__body {
  font-size: clamp(1rem, 1.05vw, 1.0625rem);
  line-height: 1.72;
}
body.tvl-da2 .article__lead {
  font-size: clamp(1.1rem, 1.35vw, 1.2rem) !important;
  line-height: 1.6;
}
body.tvl-da2 .article__body > h2 {
  font-size: clamp(1.35rem, 2vw, 1.65rem);
}
body.tvl-da2 .article__body > h3 {
  font-size: clamp(1.1rem, 1.4vw, 1.2rem);
}
body.tvl-da2 .article__faq > h2,
body.tvl-da2 .article__cta-title {
  font-size: clamp(1.35rem, 2vw, 1.65rem);
}
body.tvl-da2 .article__faq .faq-q .txt {
  font-size: clamp(1rem, 1.2vw, 1.08rem);
}
body.tvl-da2 .article__cta p {
  font-size: clamp(1.02rem, 1.3vw, 1.12rem);
}
