/* Blog et article, système de design version 2 (13 octobre 2026).
   FICHIER GÉNÉRÉ par site/outils/_appliques/integrer_blog.py à partir des maquettes validées. Ne pas le modifier à la main.
   Le socle (variables, .lar, titres, boutons, étiquettes, appel) vient de accueil.css, chargée avant. */
.g-sec{padding-top:88px}
.g-cat{font:600 12.5px/1.3 var(--mono);color:var(--bleu)}
.g-meta{font:400 12.5px/1.5 var(--mono);color:var(--gris-texte)}
a.g-carte,.g-une,.g-rangs a,.g-rub-l a{color:inherit;text-decoration:none}

/* l'ouverture du blog : le titre, la recherche à sa droite, les rubriques dessous */
.g-ouv{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px 56px;align-items:end;padding-top:64px}
.g-ouv .a-h1{font-size:clamp(38px,4.6vw,60px);margin-bottom:14px}
.g-ouv .a-chapo{margin-top:0}
.g-form label{display:block;font:600 15px/1.3 var(--texte);margin-bottom:7px}
.g-form div{display:flex;gap:10px}
.g-form input{flex:1;min-width:0;min-height:50px;padding:0 14px;border:2px solid var(--encre);background:#fff;font:400 16.5px/1 var(--texte);border-radius:0;color:var(--encre)}
.g-form .c-bt{border:0;cursor:pointer}
.g-filtres{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;border-top:2px solid var(--encre);padding-top:18px}
.g-filtres a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;font:600 15px/1 var(--texte);color:var(--encre);text-decoration:none;box-shadow:inset 0 0 0 2px var(--encre)}
.g-filtres i{font:400 12.5px/1 var(--mono);font-style:normal;color:var(--gris-texte)}
.g-filtres a.on{background:var(--encre);color:#fff}
.g-filtres a.on i{color:#fff}
.g-liste-s{padding-top:40px}
.g-pag{display:flex;flex-wrap:wrap;gap:8px;margin-top:40px;font:600 15px/1 var(--texte)}
.g-pag>*{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;color:var(--encre);text-decoration:none}
.g-pag a{box-shadow:inset 0 0 0 2px var(--encre)}
.g-pag b{background:var(--encre);color:#fff}

/* A. la grille */
.g-grille{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}
.g-carte{display:grid;gap:10px;align-content:start}
.g-carte img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:2px solid var(--encre);margin-bottom:6px}
.g-carte h3{font:800 22px/1.18 var(--titre);letter-spacing:-.025em;margin:0;text-wrap:balance}

/* B. à la une, puis une liste */
.g-une{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:40px;align-items:center;padding-bottom:36px;border-bottom:2px solid var(--encre)}
.g-une img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:2px solid var(--encre)}
.g-une .g-cat{display:flex;align-items:center;gap:12px}
.g-une h2{font:800 clamp(28px,3.4vw,44px)/1.06 var(--titre);letter-spacing:-.04em;margin:16px 0 12px;text-wrap:balance}
.g-une-c{font-size:18px;line-height:1.5;color:var(--gris-texte);margin-bottom:14px}
.g-rangs{list-style:none;margin:0;padding:0}
.g-rangs a{display:grid;grid-template-columns:190px minmax(0,1fr) 150px;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--filet)}
.g-rangs h3{font:800 22px/1.2 var(--titre);letter-spacing:-.025em;margin:0 0 4px}
.g-rangs div p{font-size:15.5px;line-height:1.5;color:var(--gris-texte)}
.g-rangs .g-meta{text-align:right}

/* C. par rubrique */
.g-liste-s--c{padding-top:48px}
.g-rub{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:48px;border-top:2px solid var(--encre);padding:26px 0 40px}
.g-rub-t h2{font:800 32px/1.08 var(--titre);letter-spacing:-.035em;margin:0 0 8px}
.g-rub-t p{font-size:16px;line-height:1.5;color:var(--gris-texte);margin-bottom:16px;max-width:22em}
.g-rub-t .c-bt--l{font-size:15.5px;color:var(--encre)}
.g-rub-l{list-style:none;margin:0;padding:0}
.g-rub-l a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:16px 0;border-top:1px solid var(--filet)}
.g-rub-l li:first-child a{border-top:0;padding-top:4px}
.g-rub-l h3{font:700 20px/1.25 var(--titre);letter-spacing:-.02em;margin:0}

/* la newsletter, en panneau */
.g-lettre{background:var(--creme);padding:24px 28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end}
.g-lettre-t{font:700 22px/1.2 var(--titre);letter-spacing:-.02em;margin-bottom:4px}
.g-lettre p:not(.g-lettre-t){font-size:15.5px;color:var(--gris-texte)}

/* ---------- l'article ---------- */
.t-tete{max-width:860px;padding-top:56px;display:grid;gap:14px}
.t-h1{font:800 clamp(34px,4.4vw,56px)/1.04 var(--titre);letter-spacing:-.045em;margin:0;text-wrap:balance}
.t-chapo{font:400 20px/1.5 var(--texte);color:var(--gris-texte);max-width:34em}
.t-image{display:block;width:100%;border:2px solid var(--encre);margin:32px 0}
.t-corps{max-width:720px;font-size:18px;line-height:1.65}
.t-corps p{margin:0 0 20px}
.t-corps h2{font:800 32px/1.12 var(--titre);letter-spacing:-.035em;margin:48px 0 16px;text-wrap:balance}
.t-corps h3{font:700 23px/1.2 var(--titre);letter-spacing:-.02em;margin:32px 0 10px}
.t-corps a{color:var(--bleu);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.t-coupe{font:400 13px/1.5 var(--mono);color:var(--gris-texte);border-top:1px solid var(--filet);padding-top:14px}
.t-un .t-image{max-width:860px}
.t-ensuite{border-top:2px solid var(--encre)}
.t-ensuite li:first-child a{padding-top:16px}

/* 2. le sommaire reste à gauche */
.t-deux{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start;margin-top:8px}
.t-som{position:sticky;top:100px;margin-top:32px;border-top:2px solid var(--encre);padding-top:14px}
.t-som p{font:600 13px/1 var(--mono);color:var(--gris-texte);margin-bottom:10px}
.t-som ol{list-style:none;margin:0;padding:0}
.t-som a{display:block;padding:8px 0 8px 14px;border-left:4px solid transparent;font:500 15.5px/1.35 var(--texte);color:var(--gris-texte);text-decoration:none}
.t-som .ici a{color:var(--encre);font-weight:700;border-left-color:var(--bleu)}

/* 3. le diagnostic reste à droite */
.t-deux--d{grid-template-columns:minmax(0,1fr) 320px}
.t-cote{position:sticky;top:100px;margin-top:32px;background:var(--creme);padding:24px;display:grid;gap:12px;justify-items:start}
.t-cote-t{font:800 24px/1.15 var(--titre);letter-spacing:-.03em}
.t-cote p:not(.t-cote-t):not(.g-meta){font-size:15.5px;line-height:1.5}

@media (max-width:900px){
  .g-sec{padding-top:64px}
  .g-ouv{grid-template-columns:1fr;padding-top:36px}
  .g-form div{flex-direction:column}
  .g-grille{grid-template-columns:1fr;gap:32px}
  .g-une{grid-template-columns:1fr;gap:20px}
  .g-rangs a{grid-template-columns:1fr;gap:6px}
  .g-rangs .g-meta{text-align:left}
  .g-rangs .g-meta br{display:none}
  .g-rub{grid-template-columns:1fr;gap:16px;padding:22px 0 30px}
  .g-rub-l a{grid-template-columns:1fr;gap:4px}
  .g-lettre{grid-template-columns:1fr;gap:18px;padding:20px}
  .t-tete{padding-top:32px}
  .t-chapo{font-size:18px}
  .t-corps{font-size:17px}
  .t-corps h2{font-size:26px}
  .t-deux,.t-deux--d{grid-template-columns:1fr;gap:0}
  .t-som,.t-cote{position:static}
  .t-som{margin-top:24px}
  .t-cote{margin:8px 0 0}
}

/* ce que le socle de l'accueil ne porte pas, et ce que le thème impose */
.blg h1,.blg h2,.blg h3{color:var(--encre);text-transform:none}
.blg .g-rangs,.blg .g-rub-l,.blg .t-som ol{list-style:none;padding-left:0;margin:0}
.blg .g-rangs li,.blg .g-rub-l li,.blg .t-som li{margin-bottom:0}
.blg a.c-bt--l,.blg a.c-bt--l:visited{color:var(--encre);padding:0;min-height:0;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;background:none}
.blg .c-bt--s{background:#fff;color:var(--encre);border:2px solid var(--encre);box-shadow:none}
.blg button.c-bt{border-radius:0;cursor:pointer;font-family:var(--titre)}
.blg button.c-bt--s:hover{background:var(--encre);color:#fff}
.blg .g-form input{box-shadow:none;border-radius:0}
.blg .c-bt:focus-visible,.blg input:focus-visible,.blg a:focus-visible{outline:3px solid var(--bleu);outline-offset:3px}
.blg .g-filtres a{box-shadow:none;border:2px solid var(--encre)}
.blg .g-compte{font-size:17px;margin-bottom:8px}
.blg .g-compte a{color:var(--bleu)}
.blg .g-rangs li:first-child a{padding-top:8px}
/* la pagination de WordPress */
.blg .g-pag{display:block;margin-top:40px}
.blg .g-pag .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;margin:0 6px 8px 0;font:600 15px/1 var(--texte);color:var(--encre);text-decoration:none;border:2px solid var(--encre);box-shadow:none;background:#fff}
.blg .g-pag .page-numbers.current{background:var(--encre);color:#fff}
.blg .g-pag .page-numbers.dots{border-color:transparent}
/* l'article : le contenu garde les réglages de .fm-content, on ne fixe que sa place et ses intertitres */
.blg .t-col{min-width:0}
.blg .t-image{border:2px solid var(--encre);margin:32px 0}
.blg .t-image img{display:block;width:100%;height:auto;margin:0;border:0}
.blg .t-corps{margin-inline:0;max-width:720px}
.blg .t-corps h2{scroll-margin-top:100px;font-family:var(--titre);font-weight:800;letter-spacing:-.035em}
.blg .t-corps h3{font-family:var(--titre);letter-spacing:-.02em}
.blg .t-corps img{max-width:100%;height:auto}
.blg .t-corps table{display:block;max-width:100%;overflow-x:auto}
.blg .t-un{max-width:860px}
.blg .t-ensuite{border-top:2px solid var(--encre)}
/* un long sommaire défile dans sa colonne au lieu de sortir de l'écran */
.blg .t-som{max-height:calc(100vh - 124px);overflow-y:auto}
@media (max-width:900px){
  .blg .t-deux{display:block}
  .blg .t-som{margin-bottom:8px;max-height:none;overflow:visible}
}

/* archives et recherche : une ouverture simple, sur une colonne */
.blg .g-ouv--liste{display:block}
.blg .g-ouv--liste .a-chapo a,.blg .g-liste-s .a-chapo a{color:var(--bleu);text-decoration:underline;text-underline-offset:4px}
