/* Le blog (29/10/2026, pré-production) : composants/PageBlog.tsx, d'après la proposition A (« Journal ») de la toile
   Claude Design https://claude.ai/artifact/FnqwtKkoomSibjoHRbmLi7, puis la proposition D (« Mosaïque », 5/11/2026). Couleurs de la charte : rouge #8c3c39, rouge foncé
   #5e2624, or #c59b6c, or foncé #8a6638 (surtitres), gris #5c5550 et #736b66, filets #e5e0db, fond doux #f5f2ef ;
   une seule graisse grasse (700) ; Buda pour les titres, Inter pour le texte. */
#content.cx-blog{font-family:Inter,sans-serif;color:#000;background:#fff;font-size:16px;line-height:1.625;overflow-x:clip}
#content.cx-blog :where(h1,h2,h3,p,ul,ol,figure,blockquote){margin:0;padding:0}
#content.cx-blog :where(ul,ol){list-style:none}
#content.cx-blog :where(h1,h2,h3){font-family:Buda,serif;font-weight:700;line-height:1.2;color:#8c3c39;text-wrap:balance}
#content.cx-blog a{color:#8c3c39}
#content.cx-blog :where(a,button,input):focus-visible{outline:2px solid #c59b6c;outline-offset:3px}
#content.cx-blog svg.cx-ph{flex:none}
#content.cx-blog [hidden]{display:none!important}
#content.cx-blog .bl-surtitre{font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8a6638}
#content.cx-blog .bl-gris{color:#5c5550}
#content.cx-blog .bl-meta{font-size:13px;line-height:1.45;color:#736b66}
#content.cx-blog .bl-cadre{max-width:1200px;margin:0 auto;padding-inline:32px;box-sizing:content-box}
#content.cx-blog .bl-colonne{max-width:760px;margin:0 auto;padding-inline:32px;box-sizing:content-box}
#content.cx-blog .bl-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
#content.cx-blog picture{display:block;min-width:0}

/* Boutons : icône à gauche ; au survol, le bouton se vide (règle du design system). */
#content.cx-blog .bl-bouton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-sizing:border-box;padding:10px 20px;border-radius:4px;border:0;font:700 16px/1.2 Inter,sans-serif;text-decoration:none;cursor:pointer;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
#content.cx-blog .bl-bouton-plein{background:#8c3c39;color:#fff}
#content.cx-blog .bl-bouton-blanc{background:#fff;color:#8c3c39}
#content.cx-blog .bl-bouton:disabled{opacity:.7;cursor:wait}
@media (hover:hover){#content.cx-blog .bl-bouton-plein:hover{background:transparent;color:#8c3c39;box-shadow:inset 0 0 0 2px #8c3c39,var(--ombre-1);transform:translateY(-2px)}
#content.cx-blog .bl-bouton-blanc:hover{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #fff;transform:translateY(-2px)}}
@media (prefers-reduced-motion:reduce){#content.cx-blog .bl-bouton{transition:none}#content.cx-blog .bl-bouton:hover{transform:none}}

/* L'accueil du blog (proposition D) : titre, l'article à la une en grand avec sa carte blanche, sur fond doux. */
#content.cx-blog .bl-tete{background:#f5f2ef}
#content.cx-blog .bl-tete>.bl-cadre{padding-block:40px 56px;display:flex;flex-direction:column;gap:24px}
#content.cx-blog .bl-tete-ligne{display:flex;flex-wrap:wrap;gap:8px 32px;align-items:flex-end;justify-content:space-between}
#content.cx-blog .bl-tete-titre{display:flex;flex-direction:column;gap:8px;min-width:0}
#content.cx-blog .bl-tete h1{font-weight:300;font-size:40px;line-height:1.15;color:#000}
#content.cx-blog .bl-tete-ligne>p{font-size:15px;line-height:1.6}
#content.cx-blog .bl-hero{position:relative;display:block;text-decoration:none;color:#000}
#content.cx-blog .bl-hero-photo{aspect-ratio:auto;height:500px;border-radius:8px}
#content.cx-blog .bl-hero-carte{position:absolute;left:32px;bottom:32px;width:500px;max-width:calc(100% - 64px);box-sizing:border-box;padding:28px;background:#fff;border-radius:8px;display:flex;flex-direction:column;gap:12px}
#content.cx-blog .bl-hero-titre,#content.cx-blog .bl-hero-carte h1{font-family:Buda,serif;font-weight:700;font-size:34px;line-height:1.12;color:#8c3c39;text-wrap:balance}
#content.cx-blog .bl-hero-carte>.bl-gris{font-size:15px;line-height:1.6}
#content.cx-blog .bl-credit{position:absolute;right:16px;bottom:12px;font-size:12px;line-height:1.4;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}
#content.cx-blog .bl-lire{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#8c3c39}
#content.cx-blog .bl-etiquette{align-self:flex-start;display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:4px;font-size:12px;line-height:1.2;font-weight:700;letter-spacing:0;text-transform:none}
#content.cx-blog .bl-carte-ligne{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}

/* « Tous les articles » : les rubriques en boutons à coins de 4 px, les cartes deux par ligne. */
#content.cx-blog .bl-tous{padding-block:48px 72px;display:flex;flex-direction:column;gap:32px}
#content.cx-blog .bl-tous-tete{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
#content.cx-blog .bl-tous-tete h2,#content.cx-blog .bl-suite h2{font-size:28px;color:#000}
#content.cx-blog .bl-filtres{display:flex;flex-wrap:wrap;gap:8px}
#content.cx-blog .bl-filtre{display:inline-flex;align-items:center;min-height:36px;box-sizing:border-box;padding:0 12px;border-radius:4px;border:1px solid #e5e0db;background:#fff;color:#000;font:400 14px/1.2 Inter,sans-serif;cursor:pointer;transition:border-color .18s ease}
#content.cx-blog .bl-filtre[aria-pressed="true"]{background:#8c3c39;border-color:#8c3c39;color:#fff;font-weight:700}
@media (hover:hover){#content.cx-blog .bl-filtre[aria-pressed="false"]:hover{border-color:#8c3c39}}
#content.cx-blog .bl-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 40px}
#content.cx-blog .bl-grille-serree{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
#content.cx-blog .bl-carte{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:#000;min-width:0}
#content.cx-blog .bl-carte .bl-photo{aspect-ratio:16/10;margin-bottom:4px}
#content.cx-blog .bl-carte h3{font-family:Inter,sans-serif;font-size:22px;line-height:1.3;color:#000}
#content.cx-blog .bl-grille-serree .bl-carte h3{font-size:18px}
@media (hover:hover){#content.cx-blog .bl-carte:hover h3,#content.cx-blog .bl-hero:hover .bl-hero-titre{text-decoration:underline;text-decoration-color:#c59b6c;text-underline-offset:4px}}

/* La page d'un article : le même haut que l'accueil, puis le texte en colonne. */
#content.cx-blog .bl-article-tete{padding-block:24px 56px!important;gap:20px!important}
#content.cx-blog .bl-ariane{font-size:13px;line-height:1.45;color:#736b66}
#content.cx-blog .bl-hero-carte h1{font-size:40px;line-height:1.1}
#content.cx-blog .bl-article-tete .bl-hero-photo{height:520px}
#content.cx-blog .bl-article-tete .bl-hero-carte{width:540px;padding:32px;gap:14px}
#content.cx-blog .bl-chapeau{font-size:17px;line-height:1.6;color:#5c5550}
#content.cx-blog .bl-corps{padding-block:48px 72px;display:flex;flex-direction:column;gap:20px}
#content.cx-blog .bl-corps>h2{font-size:30px;margin-top:16px}
#content.cx-blog .bl-corps>p{font-size:18px;line-height:1.67}
#content.cx-blog .bl-citation{background:#f5f2ef;border-radius:8px;padding:28px;display:flex;flex-direction:column;gap:8px;margin-block:8px}
#content.cx-blog .bl-citation>p{font-family:Buda,serif;font-weight:300;font-size:28px;line-height:1.25}
#content.cx-blog .bl-encadre{border:1px solid #e5e0db;border-radius:8px;padding:28px;display:flex;flex-direction:column;gap:14px;margin-block:8px}
#content.cx-blog .bl-encadre h3{font-size:24px;line-height:1.25;color:#000}
#content.cx-blog .bl-encadre ol{display:flex;flex-direction:column;gap:14px}
#content.cx-blog .bl-encadre li{display:flex;gap:16px;align-items:flex-start}
#content.cx-blog .bl-numero{flex:none;min-width:18px;font-family:Buda,serif;font-weight:700;font-size:28px;line-height:1;color:#8a6638}
#content.cx-blog .bl-sources{margin-top:8px;padding-top:24px;border-top:2px solid #c59b6c;display:flex;flex-direction:column;gap:8px}
#content.cx-blog .bl-sources ul{display:flex;flex-direction:column;gap:8px}
#content.cx-blog .bl-sources li{overflow-wrap:anywhere}
#content.cx-blog .bl-formation{margin-top:16px;background:#f5f2ef;border-radius:8px;padding:28px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
#content.cx-blog .bl-formation>div{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:8px}
#content.cx-blog .bl-formation h2{font-size:24px;color:#000}
#content.cx-blog .bl-suite-zone{background:#f5f2ef}
#content.cx-blog .bl-suite{padding-block:56px 64px;display:flex;flex-direction:column;gap:24px}

/* Le bandeau rouge de la newsletter. */
#content.cx-blog .bl-nl{background:#8c3c39;color:#fff;padding:48px max(32px,calc(50% - 568px));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 48px;align-items:center}
#content.cx-blog .bl-nl-texte{display:flex;flex-direction:column;gap:8px}
#content.cx-blog .bl-nl h2{font-size:28px;color:#fff}
#content.cx-blog .bl-surtitre-clair{color:#e4c9a6}
#content.cx-blog .bl-nl a{color:#fff}
#content.cx-blog .bl-nl-form{display:flex;flex-direction:column;gap:12px}
#content.cx-blog .bl-nl-ligne{display:flex;gap:8px;align-items:flex-end}
#content.cx-blog .bl-nl-champ{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}
#content.cx-blog .bl-nl-champ input{min-height:44px;box-sizing:border-box;padding:10px 14px;border:0;border-radius:4px;font:400 16px/1.2 Inter,sans-serif;color:#000;background:#fff;width:100%}
#content.cx-blog .bl-nl-accord{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45}
#content.cx-blog .bl-nl-accord input{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:#c59b6c}
#content.cx-blog .bl-nl-piege{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#content.cx-blog .bl-nl-erreur{font-size:14px;font-weight:700;color:#fff;background:#5e2624;padding:8px 12px;border-radius:4px}
#content.cx-blog .bl-nl-merci{background:#5e2624;border-radius:4px;padding:20px 24px}

/* Tablette. */
@media (max-width:1099px){
#content.cx-blog .bl-grille-serree{gap:20px}
#content.cx-blog .bl-hero-photo,#content.cx-blog .bl-article-tete .bl-hero-photo{height:420px}
#content.cx-blog .bl-nl{grid-template-columns:1fr}
}

/* Téléphone : une colonne, marges de 16 px. */
@media (max-width:767px){
#content.cx-blog .bl-cadre,#content.cx-blog .bl-colonne{padding-inline:16px}
#content.cx-blog .bl-tete>.bl-cadre{padding-block:24px 28px;gap:16px}
#content.cx-blog .bl-tete h1{font-size:32px}
#content.cx-blog .bl-tete-ligne>p{display:none}
#content.cx-blog .bl-hero-photo,#content.cx-blog .bl-article-tete .bl-hero-photo{height:240px;border-radius:8px 8px 0 0}
#content.cx-blog .bl-hero-carte,#content.cx-blog .bl-article-tete .bl-hero-carte{position:static;width:auto;max-width:none;padding:20px 18px;border-radius:0 0 8px 8px;gap:10px}
#content.cx-blog .bl-hero-titre{font-size:26px}
#content.cx-blog .bl-hero-carte h1{font-size:30px}
#content.cx-blog .bl-credit{top:212px;bottom:auto}
#content.cx-blog .bl-article-tete{padding-block:16px 28px!important;gap:12px!important}
#content.cx-blog .bl-tous{padding-block:28px 40px;gap:20px}
#content.cx-blog .bl-tous-tete{flex-direction:column;align-items:flex-start;gap:16px}
#content.cx-blog .bl-tous-tete h2,#content.cx-blog .bl-suite h2{font-size:24px}
#content.cx-blog .bl-filtre{min-height:40px}
#content.cx-blog .bl-long{display:none}
#content.cx-blog .bl-grille,#content.cx-blog .bl-grille-serree{grid-template-columns:1fr;gap:28px}
#content.cx-blog .bl-carte h3{font-size:18px}
#content.cx-blog .bl-grille:not(.bl-grille-serree) .bl-carte .bl-gris{display:none}
#content.cx-blog .bl-chapeau{font-size:16px}
#content.cx-blog .bl-corps{padding-block:8px 40px;gap:18px}
#content.cx-blog .bl-corps>p{font-size:16px;line-height:1.625}
#content.cx-blog .bl-corps>h2{font-size:26px;margin-top:4px}
#content.cx-blog .bl-formation h2,#content.cx-blog .bl-nl h2{font-size:24px}
#content.cx-blog .bl-citation{padding:20px}
#content.cx-blog .bl-citation>p{font-size:24px}
#content.cx-blog .bl-encadre{padding:20px}
#content.cx-blog .bl-formation{padding:20px}
#content.cx-blog .bl-formation>div{flex-basis:100%}
#content.cx-blog .bl-formation .bl-bouton{width:100%}
#content.cx-blog .bl-suite{padding-block:32px 40px}
#content.cx-blog .bl-nl{padding:32px 16px}
#content.cx-blog .bl-nl-ligne{flex-direction:column;align-items:stretch}
}
