/* Blog : listes (/blog/, catégories) et articles.
   Valeurs relevées sur le site actuel : modèles Elementor post-634.css (blog), post-5641.css (catégories),
   post-5613.css (article) et cartes de boucle 5548, 5565, 334, 5586 (styles en ligne des pages).
   Les corps d'articles ont leur propre feuille : blog-contenu.css (générée). */

/* ========== Cartes d'articles ========== */
.blog-grille { display: grid; gap: 30px 40px; }
.blog-grille--deux { grid-template-columns: repeat(2, 1fr); }
.blog-grille--trois-a, .blog-grille--trois-b, .blog-grille--ressources { grid-template-columns: repeat(3, 1fr); }
.blog-grille--trois-b { align-items: end; grid-auto-rows: 1fr; }
.blog-grille--trois-b .blog-grille__case { width: 300px; }
.blog-grille--trois-b .blog-grille__case:last-child { width: 650px; }
.blog-grille--ressources { gap: 30px; grid-auto-rows: 1fr; }
.blog-grille--ressources .blog-grille__case { width: 350px; }
.blog-grille--ressources .blog-grille__case:first-child { width: 550px; }
.blog-grille--ressources .blog-carte, .blog-grille--trois-b .blog-carte { height: 100%; }

/* la carte déborde de sa case de ses 5 px de marge, comme sur le site actuel */
.blog-carte { position: relative; display: flex; flex-direction: column; width: 100%; margin: 5px; border-radius: 12px;
  box-shadow: var(--ombre-douce); background: #fff; }
.blog-carte * { word-break: break-word; }
.blog-carte__dedans { display: flex; flex-direction: column; flex-grow: 1; width: 100%; margin: 0 auto; padding-bottom: 30px; }
.blog-carte__image { display: block; }
.blog-carte__image img { display: block; width: 100%; height: 300px; object-fit: cover; border-radius: 12px 12px 0 0; }
.blog-carte__titre { margin: 15px 30px 10px; font-family: var(--serif); font-size: 26px; font-weight: 500; line-height: 1; color: var(--marine); }
.blog-carte__date { margin: 0 30px; font-family: var(--open); font-size: 16px; font-weight: 600; line-height: 24px; color: var(--violet); }
.blog-carte__plus { position: absolute; right: 30px; bottom: 21px; z-index: 1; display: flex; padding: 9px; border-radius: 50%;
  background: rgba(0, 85, 209, .51); color: #fff; transition: background-color .3s; }
.blog-carte__plus:hover { background: var(--violet); }
.blog-carte__plus svg { width: 18px; height: 18px; }

.blog-carte--large { min-height: 400px; }
.blog-carte--large .blog-carte__dedans { justify-content: flex-end; }
.blog-carte--large .blog-carte__titre, .blog-carte--ebook .blog-carte__titre { min-height: 55px; }
.blog-carte--haute { min-height: 600px; }
.blog-carte--haute .blog-carte__image img { height: 400px; }
.blog-carte--ressource .blog-carte__image img { height: 235px; }
.blog-carte--ressource .blog-carte__date { color: var(--orange); }
.blog-carte--ressource .blog-carte__plus { background: rgba(0, 85, 209, .51); }
.blog-carte--ressource .blog-carte__plus:hover { background: var(--orange); }
.blog-carte--ebook .blog-carte__dedans { justify-content: space-between; }
.blog-carte--ebook .blog-carte__image img { height: 250px; object-position: top center; }
.blog-carte--ebook .blog-carte__date { color: var(--rose); }
/* dans les ressources (fond rose) : dates et « + » roses */
.blog-ressources .blog-carte__date { color: var(--rose); }
.blog-ressources .blog-carte__plus { background: rgba(0, 85, 209, .51); }
.blog-ressources .blog-carte__plus:hover { background: var(--rose); }

/* ========== Blog : « à la une » (carrousel) ========== */
.blog-une { display: flex; flex-direction: column; min-height: 85vh; padding: 2% 4% 0; }
.blog-une__surtitre { font-family: var(--serif); font-size: 24px; line-height: 50px; text-transform: uppercase; color: var(--marine); }
.blog-une__titre { width: 590px; max-width: 100%; margin-bottom: 20px; font-family: var(--serif); font-size: 48px; font-weight: 500; line-height: 50px; color: var(--marine); }
.blog-une__carrousel .carrousel__piste { gap: 10px; scroll-behavior: smooth; }
.blog-une__diapo { display: flex; flex: 0 0 100%; min-width: 0; }
.blog-une__carte { position: relative; display: flex; flex: 1; min-width: 0; gap: 0 40px; max-width: min(100%, 1400px); min-height: 500px; padding: 10px; }
.blog-une__carte::before { content: ""; position: absolute; inset: 0; background: url("/medias/2024/12/mask_blog.webp") center / contain no-repeat; }
.blog-une__image { position: relative; flex: 0 1 auto; min-width: 0; margin-left: 125px; text-align: center; }
.blog-une__image img { display: inline-block; width: 900px; max-width: 100%; height: 500px; object-fit: cover; vertical-align: middle; clip-path: circle(closest-side); }
.blog-une__textes { position: relative; display: flex; flex-direction: column; flex: 0 1 100%; min-width: 0; gap: 20px; align-self: center; }
.blog-une__nom { width: 80%; max-width: 100%; font-family: var(--serif); font-size: 32px; font-weight: 500; line-height: 1; color: #fff; }
.blog-une__extrait { width: 80%; max-width: 100%; font-family: var(--open); font-size: 16px; line-height: 1.5; color: #fff; }
.blog-une__lire { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; border-radius: 12px; background: var(--orange);
  font-family: var(--poppins); font-size: 14px; font-weight: 500; line-height: 24px; text-transform: uppercase; color: #fff; transition: background-color .3s; }
.blog-une__lire:hover { background: var(--bleu); color: #fff; }
.blog-une__lire svg { width: 14px; height: 14px; }
.blog-une__carrousel .carrousel__fleche { top: calc(100% + 14.8px); transform: none; color: var(--rose); }
.blog-une__carrousel .carrousel__fleche:hover { color: var(--violet); }
.blog-une__carrousel .carrousel__fleche svg { width: 60px; height: 60px; }
.blog-une__carrousel .carrousel__fleche--prec { left: calc(50% - 60px); }
.blog-une__carrousel .carrousel__fleche--suiv { left: 50%; right: auto; }

/* ========== Blog : « Pour aller plus loin » ========== */
.blog-suite { position: relative; display: flex; flex-direction: column; justify-content: center; min-height: 100vh; padding: 0 2%; }
.blog-suite::before { content: ""; position: absolute; inset: 0; background: url("/medias/2024/12/logo-inedee-dark.png") top right no-repeat; opacity: .3; pointer-events: none; }
.blog-suite__dedans { position: relative; display: flex; flex-direction: column; gap: 40px; width: 100%; max-width: 1336px; margin: 0 auto; }
.blog-suite__titre { width: 45%; font-family: var(--serif); font-size: 60px; font-weight: 400; line-height: 64px; letter-spacing: -.01em; color: var(--marine); }
.blog-suite__titre strong { font-weight: 700; }

/* « Charger » : grille paginée */
.blog-paginee__bouton { margin-top: 10px; text-align: center; }
.blog-paginee__bouton button { display: inline-flex; align-items: center; gap: 10px; padding: 10px 20px 8px; border: 0; border-radius: 6px;
  background: linear-gradient(90deg, var(--violet) 10%, var(--rose) 100%); cursor: pointer;
  font-family: var(--poppins); font-size: 14px; font-weight: 500; line-height: 14px; text-transform: uppercase; color: var(--gris); }
.blog-paginee__bouton button:hover, .blog-paginee__bouton button:focus { background: var(--rose); }
.blog-paginee__bouton svg { width: 14px; height: 14px; fill: #fff; }
.blog-paginee__message { display: none; margin-top: 10px; text-align: center; }
.blog-paginee.fin .blog-paginee__bouton { display: none; }
.blog-paginee.fin .blog-paginee__message { display: block; }
.blog-paginee.charge .blog-paginee__bouton button { cursor: default; }
.blog-paginee__rien { padding: 30px 0; }   /* grille vide (page au-delà des articles) : message vide d'Elementor */
/* catégories : espacement par défaut d'Elementor (30 px) */
.blog-liste .blog-paginee__bouton, .blog-liste .blog-paginee__message { margin-top: 30px; }

/* Prendre rendez-vous (bloc commun rdv-expert), en rose sur le blog */
.page-blog .rdv { display: flex; flex-direction: column; justify-content: center; min-height: 40vh; padding: 10px; }
.page-blog .rdv__inner { padding: 0; }
.page-blog .rdv__capsule { width: 50%; background: var(--rose); }
.page-blog .rdv__titre { flex: 0 1 45%; }
.page-blog .rdv form { flex: 0 1 55%; align-items: center; }
.page-blog .rdv input { flex: 0 0 77%; min-height: 40px; }
.page-blog .rdv button { flex: 0 0 20%; min-width: min-content; margin-left: -30px; align-self: stretch; }
.page-blog .rdv button:hover { background: var(--violet); }

/* ========== Ressources (fond rose) ========== */
.blog-ressources { display: flex; flex-direction: column; min-height: 95vh; padding: 0 2%; background: rgba(0, 85, 209, .09); }
.blog-ressources__dedans { display: flex; flex-direction: column; justify-content: center; gap: 40px; flex-grow: 1; width: 100%; max-width: 1336px; margin: 0 auto; padding-top: 6%; }
.blog-ressources--article .blog-ressources__dedans { padding-top: 2%; }
.blog-ressources__titre { width: 50%; font-family: var(--serif); font-size: 60px; font-weight: 500; line-height: 64px; letter-spacing: -.01em; color: var(--marine); }
.blog-ressources__plus { display: flex; justify-content: flex-end; align-items: flex-end; width: 95%; }
.blog-ressources__plus span { width: 855px; max-width: 100%; font-family: var(--serif); font-size: 32px; font-weight: 500; line-height: 50px; letter-spacing: -.01em; text-align: end; color: var(--marine); }
.blog-ressources__plus svg { flex: 0 0 auto; width: 40px; height: 40px; margin-bottom: 6px; color: var(--rose); transform: rotate(135deg); transition: color .3s; }
.blog-ressources__plus:hover svg { color: var(--marine); }

/* ========== Catégories ========== */
.blog-categorie { position: relative; display: flex; min-height: 45vh; }
.blog-categorie__textes { display: flex; flex-direction: column; justify-content: center; width: 100%; padding: 0 6%; text-align: center; }
.blog-categorie__surtitre { font-family: var(--serif); font-size: 24px; line-height: 50px; text-transform: uppercase; color: var(--marine); }
.blog-categorie__surtitre a:hover { color: var(--rose); }
.blog-categorie__titre { margin-bottom: 20px; font-family: var(--serif); font-size: 48px; font-weight: 500; line-height: 64px; color: var(--marine); }
.blog-liste { padding: 0 4%; background: rgba(0, 85, 209, .1); }
.blog-liste__dedans { max-width: 1280px; margin: 0 auto; padding: 4% 0; }

/* ========== Article ========== */
.article-tete { position: relative; display: flex; min-height: 50vh; }
.article-tete__dedans { display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 1280px; margin: 0 auto; }
.article-tete__textes { display: flex; flex-direction: column; justify-content: center; flex: 0 0 50%; }
.article-ariane { display: flex; flex-wrap: wrap; margin: 0 -2.5px 10px; font-family: var(--open); font-size: 12px; line-height: 14px; color: var(--gris); }
.article-ariane li { display: flex; align-items: center; margin: 0 2.5px; }
.article-ariane li > a { display: flex; align-items: center; }
.article-ariane a { color: var(--violet); }
.article-ariane svg { flex: 0 0 auto; width: 12px; height: 12px; margin: 0 1.5px; fill: var(--gris); }
.article-ariane svg + span { padding-left: 5px; }
.article-tete__date { font-family: var(--poppins); font-size: 14px; line-height: 1; color: var(--violet); }
.article-tete__titre { align-self: flex-start; margin-bottom: 20px; font-family: var(--serif); font-size: 50px; font-weight: 500; line-height: 1.15; color: var(--encre); }
.article-tete__image { flex: 0 0 100%; }
.article-tete__image img { display: block; width: 44.215%; height: 300px; object-fit: cover; object-position: center right; border-radius: 12px; }

.article-corps { margin: 60px 0; padding: 0 10px; }
.article-corps__dedans { display: flex; gap: 0 50px; max-width: 1280px; margin: 0 auto; padding: 10px 0; }
.article-corps__principal { display: flex; flex-direction: column; gap: 20px; flex: 0 1 65%; min-width: 0; min-height: 30px; }
.article-corps__cote { display: flex; flex-direction: column; flex: 0 0 26.284%; padding: 10px; }

/* corps de l'article (widget « contenu » du modèle) : Poppins, couleur principale ; variables du kit Elementor */
.blog-corps { --e-global-color-primary: var(--encre); --e-global-color-secondary: #0055D1; --e-global-color-text: var(--encre); --e-global-color-accent: var(--action);
  --e-global-color-1f41417: var(--papier); --e-global-color-a5b6afd: var(--texte); --e-global-color-945b465: var(--action); --e-global-color-eea47fb: var(--action); --e-global-color-8ce719e: #C3E4FF;
  --e-global-typography-primary-font-family: var(--serif); --e-global-typography-primary-font-weight: 500;
  --e-global-typography-secondary-font-family: var(--sans); --e-global-typography-secondary-font-weight: 600;
  --e-global-typography-text-font-family: var(--sans); --e-global-typography-text-font-weight: 400;
  --e-global-typography-accent-font-family: var(--sans); --e-global-typography-accent-font-weight: 600;
  min-width: 0; font-family: var(--poppins); font-weight: 400; color: var(--marine); }

/* articles écrits depuis la bascule : corps sans enveloppe Elementor (les anciens articles ne sont pas visés) */
.blog-corps > .wp-block-list { margin-bottom: 1em; }
.blog-corps > .wp-block-table { margin: 24px 0; }
.blog-corps > .wp-block-quote { margin: 24px 0; }

/* FAQ des articles écrits depuis la bascule (contenu/blog/articles.json « faq ») : accordéons de la FAQ (faq.css) */
.article-faq { display: flex; flex-direction: column; gap: 20px; margin: 20px 0 40px; padding: 30px; border-radius: 12px; background: rgba(14, 14, 63, .06); }
.article-faq__titre { font-family: var(--serif); font-size: 30px; font-weight: 500; line-height: 1.25; color: var(--marine); }
.article-faq .faq-acc__question { font-size: 18px; }

/* auteur */
.article-auteur { display: flex; gap: 20px; min-height: 30px; padding: 25px 50px; border-radius: 12px; box-shadow: var(--ombre-douce);
  background: linear-gradient(35deg, #fff 40%, var(--gris-clair) 100%); }
.article-auteur__visuel { display: flex; flex-direction: column; gap: 20px; flex: 0 1 25%; min-height: 30px; padding: 10px; }
.article-auteur__photo { display: block; width: 100%; height: auto; border-radius: 100%; box-shadow: var(--ombre-douce); }
.article-auteur__icone { text-align: center; }
.article-auteur__lien { display: inline-block; font-size: 25px; line-height: 1; color: var(--gris); }
.article-auteur__lien svg { width: 1em; height: 1em; }
.article-auteur__textes { display: flex; flex-direction: column; gap: 20px; flex: 0 1 100%; min-width: 0; min-height: 30px; padding: 10px; }
.article-auteur__nom { font-family: var(--poppins); font-size: 18px; font-weight: 500; line-height: 1; color: var(--marine); }
.article-auteur__fonction { display: flex; align-items: center; width: 60%; padding: 5px 15px; border-radius: 12px; background: var(--gris-clair);
  font-family: var(--open); font-size: 12px; line-height: 18px; color: var(--marine); }
.article-auteur__fonction svg { flex: 0 0 auto; width: 7px; height: 7px; margin-right: 1.75px; fill: var(--marine); }
.article-auteur__fonction span { padding-left: 5px; }
.article-auteur__bio { font-family: var(--open); font-size: 14px; line-height: 21px; color: var(--marine); }

/* table des matières (construite par blog.js) */
.article-sommaire { position: sticky; top: 100px; z-index: 90; overflow: hidden; border: 5px solid var(--gris-clair); border-radius: 12px;
  box-shadow: var(--ombre-douce); font-family: var(--open); font-size: 16px; line-height: 24px; color: var(--gris); }
.article-sommaire__tete { display: flex; align-items: center; padding: 20px; border-bottom: 1px solid var(--gris-clair);
  font-family: var(--poppins); font-weight: 600; }
.article-sommaire__titre { flex-grow: 1; font-family: var(--poppins); font-size: 18px; font-weight: 600; line-height: 27px; color: var(--violet); }
.article-sommaire__corps { overflow-y: auto; padding: 20px; }
.article-sommaire ul { margin: 0; padding: 0; list-style: none; }
.article-sommaire li { margin-bottom: .5em; }
.article-sommaire li ul { margin-top: .5em; margin-left: 1em; }
.article-sommaire__ligne { display: flex; align-items: baseline; }
.article-sommaire__ligne svg { width: .5em; height: .5em; margin-right: 8px; fill: var(--marine); }
.article-sommaire__ligne a { color: var(--marine); }
.article-sommaire__ligne a:hover { color: var(--violet); text-decoration: underline; }
.article-sommaire__ligne a.actif { color: inherit; }

/* ========== Écrans moyens (≤ 1366 px, « laptop » d'Elementor) ========== */
@media (max-width: 1366px) {
  .blog-une__image { margin: 40px 0 0 10px; }
  .blog-une__image img { width: 100%; height: 400px; }
  .blog-carte--haute { min-height: 300px; }
  .blog-carte--haute .blog-carte__image img { height: 300px; }
  .blog-ressources--article .blog-grille--ressources { grid-template-columns: repeat(2, 1fr); }
  .article-tete { padding: 20px; }
  .article-corps { padding: 0 20px; }
  .article-corps__dedans { padding: 20px 0; }
}
@media (min-width: 1367px) {
  .blog-grille--trois-a .blog-grille__case { width: 300px; }
  .blog-grille--trois-a .blog-grille__case:first-child { width: 650px; }
  .blog-grille--trois-b { margin-top: -180px; }
}
@media (min-width: 1025px) {
  /* la table des matières collante descend jusqu'au bas de sa colonne (marge basse comprise), comme Elementor */
  .article-corps__cote { padding-bottom: 0; }
}
@media (min-width: 768px) {
  .blog-carte--haute .blog-carte__dedans { max-width: 300px; }
  .blog-carte--ressource .blog-carte__dedans { max-width: 350px; }
}
@media (min-width: 768px) and (max-width: 1366px) {
  .page-blog .rdv__capsule { width: 60%; }
}
@media (max-width: 1200px) and (min-width: 1025px) {
  .blog-une__diapo { flex-basis: calc((100% - 20px) / 3); }
}
@media (max-width: 1200px) {
  .blog-ressources__titre { width: 80%; }
}
@media (min-width: 768px) and (max-width: 1200px) {
  .page-blog .rdv__capsule { width: 80%; }
  .article-tete__textes { flex-basis: 484.567px; }
}

/* ========== Tablette (≤ 1024 px) ========== */
@media (max-width: 1024px) {
  .blog-grille--trois-a, .blog-grille--trois-b, .blog-grille--ressources { grid-template-columns: repeat(2, 1fr); }
  .blog-liste .blog-grille--deux { grid-template-columns: 1fr; }
  .blog-ressources--article .blog-grille__case:first-child { grid-column: span 2; }
  .blog-grille--ressources .blog-carte--ressource { margin: 0; }
  .article-tete__titre { font-size: 42px; }
  .article-tete__image img { object-position: center center; }
  .article-corps__dedans { flex-direction: column-reverse; }
  .article-corps__principal, .article-corps__cote { flex-basis: auto; width: 100%; }
  .blog-corps { margin-top: 40px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .page-blog .rdv__capsule { width: 95%; }
}

/* ========== Téléphone (≤ 767 px) ========== */
@media (max-width: 767px) {
  .blog-grille, .blog-grille--deux, .blog-grille--trois-a, .blog-grille--trois-b, .blog-grille--ressources,
  .blog-ressources--article .blog-grille--ressources, .blog-liste .blog-grille--deux { grid-template-columns: 1fr; }
  .blog-ressources--article .blog-grille__case:first-child { grid-column: auto; }
  .blog-carte--ebook { max-width: 97%; }

  .blog-une__carte { flex-wrap: wrap; align-items: center; padding: 0; }
  .blog-une__carte::before { background-image: url("/medias/2024/12/mask_blog_mobile.webp"); }
  .blog-une__image { flex-basis: 100%; margin: -50px 0 0; }
  .blog-une__image img { width: 90%; height: 415px; }
  .blog-une__textes { flex-basis: 100%; justify-content: center; align-items: center; gap: 5px; margin-top: -70px; padding: 10px 35px 0; }
  .blog-une__nom { width: 1000px; font-size: 26px; }
  .blog-une__extrait { width: 1000px; font-size: 15px; }

  .blog-suite { margin-top: 70px; }
  .blog-suite__titre { width: 100%; }

  .page-blog .rdv__capsule { flex-wrap: wrap; width: 100%; }
  .page-blog .rdv__titre { flex: 0 1 80%; margin: 0 20px 0 40px; text-align: left; }
  .page-blog .rdv form { flex: 0 1 90%; flex-direction: row; flex-wrap: wrap; align-items: center; }
  .page-blog .rdv input { flex: 0 0 100%; }
  .page-blog .rdv button { flex: 0 0 auto; margin: 0 0 0 -30px; min-height: 40px; align-self: auto; }

  .blog-ressources__titre { width: 94%; font-size: 40px; line-height: 1.2em; }
  .blog-ressources__plus { flex-wrap: wrap; width: 100%; }

  .blog-categorie__textes { padding: 5%; }
  .blog-categorie__titre { font-size: 40px; line-height: 1.2em; }

  .article-tete { flex-wrap: wrap; }
  .article-tete__dedans { flex-wrap: wrap; }
  .article-tete__textes { flex-basis: 100%; padding: 5%; }
  .article-tete__titre { font-size: 40px; line-height: 1.2em; }
  .article-tete__image { margin-bottom: 40px; }
  .article-tete__image img { width: 100%; }
  .article-sommaire { position: relative; top: auto; }
  .article-auteur { flex-wrap: wrap; padding: 25px; }
  .article-auteur__visuel, .article-auteur__textes { flex-basis: 100%; }
  .article-auteur__photo { align-self: center; }
  .article-auteur__fonction { width: 100%; }
}

/* ========== Charte d'octobre 2026 : surcharges (une, rendez-vous, ressources) ========== */
.blog-une { min-height: 0; padding: clamp(32px, 5vw, 64px) max(var(--gouttiere), calc((100% - var(--conteneur)) / 2)) 72px; }
.blog-une__surtitre { font-family: var(--sans); font-size: 13px; font-weight: 600; line-height: 16px; letter-spacing: .12em; color: var(--texte); }
.blog-une__titre { width: auto; margin: 12px 0 28px; font-size: clamp(38px, 5vw, 56px); line-height: 1.05; }
.blog-une__carte { gap: 0; max-width: none; min-height: 0; padding: 0; overflow: hidden; border-radius: var(--rayon); background: var(--encre); }
.blog-une__carte::before { display: none; }
.blog-une__image { flex: 0 0 50%; margin: 0; }
.blog-une__image img { width: 100%; height: 100%; min-height: 380px; clip-path: none; object-fit: cover; }
/* schéma ("image_entiere" dans contenu/blog/articles.json) : montré en entier sur le gris de son fond, sans recadrage qui couperait ses textes */
.blog-une__image--entiere { background: #F1F2F4; }
.blog-une__image--entiere img { object-fit: contain; }
.blog-une__textes { gap: 18px; padding: clamp(24px, 4vw, 48px); }
.blog-une__nom { width: auto; font-size: clamp(26px, 3vw, 36px); line-height: 1.15; }
.blog-une__extrait { width: auto; color: var(--ciel); }
.blog-une__lire { border-radius: var(--rayon-btn); background: #fff; color: var(--encre); font-weight: 600; }
.blog-une__lire:hover { background: var(--brume); color: var(--encre); }
.blog-une__carrousel .carrousel__fleche { top: calc(100% + 16px); color: var(--encre); }
.blog-une__carrousel .carrousel__fleche svg { width: 20px; height: 20px; }
.blog-une__carrousel .carrousel__fleche--prec { left: calc(50% - 52px); }
.blog-une__carrousel .carrousel__fleche--suiv { left: calc(50% + 8px); }
.blog-suite::before { display: none; }
.page-blog .rdv { display: block; min-height: 0; padding: 0; }
.page-blog .rdv__inner { padding-block: clamp(40px, 5vw, 64px); }
.page-blog .rdv__capsule { width: auto; background: var(--encre); }
.page-blog .rdv__titre { flex: none; }
.page-blog .rdv form { flex: 1 1 340px; align-items: stretch; }
.page-blog .rdv input { flex: 1; min-height: 46px; }
.page-blog .rdv button { flex: none; min-width: 0; margin-left: 0; }
.page-blog .rdv button:hover { background: var(--brume); }
.blog-ressources { min-height: 0; padding: clamp(56px, 7vw, 96px) var(--gouttiere); background: var(--papier); border-top: 1px solid var(--trait); }
.blog-ressources__dedans { gap: 32px; max-width: var(--conteneur); padding-top: 0; }
.blog-ressources__titre { width: auto; max-width: 18ch; font-size: clamp(30px, 3.6vw, 42px); line-height: 1.12; }
.blog-ressources__plus { width: auto; }
.blog-ressources__plus span { width: auto; font-family: var(--sans); font-size: 16px; font-weight: 600; line-height: 1.4; color: var(--action); }
.blog-ressources__plus svg { width: 18px; height: 18px; margin-bottom: 0; color: var(--action); transform: none; }
/* le « + » reste le lien de la carte (seul lien des modèles « ressource » et « e-book ») : il couvre toute la carte, sans pastille */
.blog-carte__plus, .blog-ressources .blog-carte__plus { position: absolute; inset: 0; z-index: 1; display: block; padding: 0; border-radius: inherit; background: none; color: transparent; }
.blog-carte__plus:hover, .blog-ressources .blog-carte__plus:hover { background: none; }
.blog-carte__plus svg { display: none; }
.blog-carte { border: 1px solid var(--trait); box-shadow: none; transition: border-color .2s; }
.blog-carte:hover { border-color: var(--encre); }
.blog-carte__titre { font-family: var(--sans); font-size: 18px; font-weight: 600; line-height: 1.35; }
.blog-carte__date, .blog-ressources .blog-carte__date { color: var(--texte); }
@media (max-width: 767px) {
  .blog-une__carte { flex-direction: column; }
  .blog-une__image img { min-height: 220px; }
}

/* Rubriques du blog : Tous les articles, News, Expertise, Divers */
.blog-rubriques { display: flex; flex-wrap: wrap; gap: 8px; margin: -8px 0 28px; }
.blog-rubriques a { padding: 7px 14px; border: 1px solid var(--trait); border-radius: var(--rayon-btn); background: var(--fond); font-size: 14px; font-weight: 600; line-height: 20px; color: var(--encre); }
.blog-rubriques a:hover { border-color: var(--encre); }
.blog-rubriques a[aria-current="page"] { border-color: var(--encre); background: var(--encre); color: #fff; }
.blog-categorie .blog-rubriques { justify-content: center; margin: 20px 0 0; }

/* ========== Charte d'octobre 2026 : grilles fluides, « Charger », articles (revue du 26/10/2026) ========== */
/* grilles : la mosaïque d'Elementor reste (une grande carte, deux hautes), mais en colonnes proportionnelles,
   sans largeur fixe ni marge négative, dans le conteneur de 1200 px */
.blog-suite { min-height: 0; padding: clamp(56px, 7vw, 96px) var(--gouttiere); }
.blog-suite__dedans { gap: 32px; max-width: var(--conteneur); }
.blog-suite__titre { width: auto; font-size: clamp(34px, 4vw, 48px); line-height: 1.1; }
.blog-grille { gap: 24px; }
.blog-grille .blog-grille__case, .blog-grille .blog-grille__case:first-child, .blog-grille .blog-grille__case:last-child { width: auto; min-width: 0; }
.blog-grille--trois-a { grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)); }
.blog-grille--trois-b { grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(0, 2fr); margin-top: 0; align-items: stretch; }
.blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); }
.blog-ressources--article .blog-grille__case:first-child { grid-column: auto; }
.blog-carte { height: 100%; margin: 0; }
.blog-carte__image img, .blog-carte--ressource .blog-carte__image img { height: 220px; }
.blog-carte--haute { min-height: 0; }
.blog-carte--haute .blog-carte__image img { height: 300px; }
.blog-carte--large { min-height: 0; }
/* grande carte de la mosaïque : l'image remplit la hauteur prise sur ses voisines (plus de blanc au-dessus) */
.blog-carte--large .blog-carte__dedans { justify-content: flex-start; }
.blog-carte--large .blog-carte__image { display: flex; flex: 1 1 auto; }
.blog-carte--large .blog-carte__image img { height: auto; min-height: 220px; flex: 1; }
.blog-une__lire { text-transform: none; }
.blog-carte--haute .blog-carte__dedans, .blog-carte--ressource .blog-carte__dedans { max-width: none; }
.blog-carte__dedans { padding-bottom: 24px; }
.blog-carte__titre { margin: 16px 24px 10px; }
.blog-carte__date { margin: 0 24px; font-family: var(--sans); font-size: 14px; font-weight: 500; }
.blog-ressources__plus { align-self: flex-end; gap: 8px; }
.blog-ressources__plus svg { transform: rotate(180deg); }
.blog-liste { background: var(--papier); }
.blog-categorie { min-height: 0; padding-block: clamp(40px, 6vw, 72px); }
.blog-categorie__surtitre { font-family: var(--sans); font-size: 13px; font-weight: 600; line-height: 16px; letter-spacing: .12em; color: var(--texte); }
.blog-categorie__titre { line-height: 1.1; color: var(--encre); }

/* « Charger » : bouton de la charte (l'ancien dégradé violet-rose devenu bleu plein laissait le texte gris illisible) */
.blog-paginee__bouton button { padding: 12px 20px; border-radius: var(--rayon-btn); background: var(--action);
  font-family: var(--sans); font-size: 15px; font-weight: 600; line-height: 20px; text-transform: none; color: #fff; }
.blog-paginee__bouton button:hover, .blog-paginee__bouton button:focus { background: var(--action-survol); }

/* article : en-tête, sommaire, corps (texte un peu plus grand : lignes de 812 px), tableaux, boutons Elementor */
.article-tete { min-height: 0; padding-block: clamp(32px, 5vw, 64px) 0; }
.article-corps { margin-top: clamp(32px, 4vw, 48px); }
.article-tete__date { font-family: var(--sans); color: var(--texte); }
.article-ariane a { color: var(--action); }
.article-sommaire { border: 1px solid var(--trait); box-shadow: none; }
.article-sommaire__titre { font-family: var(--sans); color: var(--encre); }
.article-sommaire__ligne a:hover { color: var(--action); }
/* suivi de lecture (blog.js) : la section en cours en bleu d'action, puce comprise ; les autres en texte courant */
.article-sommaire__ligne a { color: var(--texte); transition: color .15s; }
.article-sommaire__ligne svg { fill: var(--trait); transition: fill .15s; }
.article-sommaire__ligne:has(a.actif) svg { fill: var(--action); }
.article-sommaire__ligne a.actif { color: var(--action); }   /* pas de gras : il fait passer certaines entrées à la ligne */
/* collé en haut, le sommaire tient dans l'écran : sa liste défile seule (et suit la section lue) au lieu de sortir par le bas */
.article-sommaire { display: flex; flex-direction: column; max-height: calc(100vh - 124px); }
.article-sommaire__corps { min-height: 0; }
@media (max-width: 1366px) { .article-sommaire { max-height: none; } }
.blog-corps { font-size: 17px; line-height: 1.65; }
/* H2 en Newsreader comme partout (titres Elementor des anciens articles, style en ligne noir et gras des récents) */
.blog-corps h2, .blog-corps h2.has-black-color, .blog-corps h2[style] { font-family: var(--serif) !important; font-weight: 500 !important; color: var(--encre) !important; }
.blog-corps table { border-collapse: collapse; }
.blog-corps th, .blog-corps td { border: 1px solid var(--trait) !important; background: none !important; }
.blog-corps thead th, .blog-corps tr:first-child th { background: var(--papier) !important; color: var(--encre); }
.blog-corps .wp-block-table { overflow-x: auto; }
/* boutons Elementor des anciens articles (aplats violet et orange, majuscules, styles par élément) */
.blog-corps .elementor-button { border: 0 !important; border-radius: var(--rayon-btn) !important; background: var(--action) !important;
  font-family: var(--sans) !important; font-weight: 600 !important; text-transform: none !important; color: #fff !important; }
.blog-corps .elementor-button:hover { background: var(--action-survol) !important; }
.article-faq { background: var(--papier); border: 1px solid var(--trait); }
/* encadré « Mise à jour » en tête d'un article dont un fait a changé depuis sa publication */
.blog-corps .article-maj { margin: 0 0 28px; padding: 16px 20px; border: 1px solid var(--trait); border-radius: var(--rayon); background: var(--papier); font-size: 16px; color: var(--encre); }
.article-faq__titre { color: var(--encre); }
/* encadré « Dans Inedee » : les pages produit liées à l'article (contenu/blog/fonctionnalites-liees.json) */
.article-liens { margin: 0 0 40px; padding: 24px 28px; border: 1px solid var(--trait); border-radius: var(--rayon); background: var(--papier); }
.article-liens__titre { margin: 0 0 12px; font-family: var(--sans); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--texte); }
.article-liens__liste { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.article-liens__liste .lien-fleche { font-size: 16px; }
.article-auteur { background: var(--fond); border: 1px solid var(--trait); box-shadow: none; }

@media (max-width: 1024px) {
  .blog-grille--trois-a, .blog-grille--trois-b, .blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  /* la grande carte prend la rangée entière */
  .blog-grille--trois-a .blog-grille__case:first-child, .blog-grille--trois-b .blog-grille__case:last-child,
  .blog-grille--ressources .blog-grille__case:first-child { grid-column: 1 / -1; }
  .article-sommaire__corps { max-height: 40vh; }
}
@media (max-width: 767px) {
  .blog-grille--trois-a, .blog-grille--trois-b, .blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: minmax(0, 1fr); }
  .blog-carte--haute .blog-carte__image img { height: 220px; }
  /* « à la une » : en colonne sans retour à la ligne (le texte partait dans une 2e colonne, masquée) */
  .blog-une__carte { flex-wrap: nowrap; }
  .blog-une__image { flex: none; margin: 0; }
  .blog-une__image img { width: 100%; height: 220px; min-height: 0; }
  .blog-une__textes { flex: none; align-items: flex-start; gap: 12px; margin-top: 0; padding: 24px 20px; }
  .blog-une__nom { font-size: 24px; }
  .blog-suite { margin-top: 0; }
  .blog-corps { font-size: 16px; }
  .blog-corps table { display: block; overflow-x: auto; }
  .article-auteur__photo { max-width: 120px; }
}

/* ========== Listes du blog (29/10/2026, PL : « des petits blocs tous de la même taille ») ==========
   en-tête commun au blog et aux rubriques, puis une grille de cartes égales, trois par ligne ; les ressources aussi */
.blog-tete { padding-block: clamp(32px, 5vw, 64px) 8px; }
.blog-tete__surtitre { margin: 0; font-family: var(--sans); font-size: 13px; font-weight: 600; line-height: 16px; letter-spacing: .12em; text-transform: uppercase; color: var(--texte); }
.blog-tete__surtitre a:hover { color: var(--action); }
.blog-tete__titre { margin: 12px 0 28px; font-size: clamp(38px, 5vw, 56px); line-height: 1.05; color: var(--encre); }
.blog-tete .blog-rubriques { margin: 0; }
.blog-liste { padding: clamp(32px, 4vw, 48px) 0 clamp(56px, 7vw, 96px); background: var(--fond); }
.blog-liste .blog-paginee__bouton, .blog-liste .blog-paginee__message { margin-top: 32px; }
.blog-grille--egale, .blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.blog-grille--ressources .blog-grille__case:first-child { grid-column: auto; }
.blog-carte--egal .blog-carte__dedans { padding-bottom: 20px; }
.blog-carte--egal .blog-carte__image, .blog-grille--ressources .blog-carte__image { aspect-ratio: 16 / 9; overflow: hidden; border-radius: 11px 11px 0 0; background: var(--brume); }
.blog-carte--egal .blog-carte__image img, .blog-grille--ressources .blog-carte__image img { width: 100%; height: 100%; border-radius: 0; object-fit: cover; }
.blog-carte__image--entiere { background: #F1F2F4 !important; }
.blog-carte__image--entiere img { object-fit: contain !important; }
.blog-carte--egal .blog-carte__titre, .blog-grille--ressources .blog-carte__titre { display: -webkit-box; margin: 16px 20px 8px; overflow: hidden; font-size: 17px; line-height: 1.35;
  -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; min-height: calc(3 * 1.35em); }
.blog-carte--egal .blog-carte__date, .blog-grille--ressources .blog-carte__date { margin: auto 20px 0; }
.blog-carte--egal .blog-carte__titre a:hover { color: var(--action); }
.blog-carte__extrait { display: -webkit-box; min-height: calc(3 * 1.5em); margin: 0 20px 16px; overflow: hidden; font-size: 15px; line-height: 1.5; color: var(--texte);
  -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
@media (max-width: 1024px) {
  .blog-grille--egale, .blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .blog-grille--ressources .blog-grille__case:first-child { grid-column: auto; }
}
@media (max-width: 600px) {
  .blog-grille--egale, .blog-grille--ressources, .blog-ressources--article .blog-grille--ressources { grid-template-columns: minmax(0, 1fr); }
}
