/* Prose partagée (articles + pages génériques hors refonte).
   Base : bloc .prose de la page Article du design, étendu pour couvrir les blocs Gutenberg
   existants du contenu WP (mark orange, kbd, listes, tables, images, details). */
.prose{max-width:720px;margin:50px auto 0}
.prose>p{font-size:16.5px;line-height:1.74;color:var(--ink-soft);margin:0 0 22px;text-align:justify;overflow-wrap:break-word;hyphens:auto}
.prose .lead-p{font-size:19px;line-height:1.66;color:var(--ink)}
.prose strong,.prose b{color:var(--ink);font-weight:700}
.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:3px}
.prose a:hover{color:var(--orange-deep)}
.prose h2{font-family:var(--sans);font-weight:800;font-size:clamp(25px,2.9vw,33px);line-height:1.16;letter-spacing:-.025em;margin:50px 0 18px;color:var(--ink)}
.prose h3{font-family:var(--sans);font-weight:800;font-size:20px;letter-spacing:-.015em;line-height:1.3;margin:34px 0 12px;color:var(--ink)}
.prose h3 .h3n{color:var(--orange)}
.prose h4{font-family:var(--sans);font-weight:700;font-size:17px;margin:28px 0 10px;color:var(--ink)}

/* listes */
.prose ul,.prose ol{margin:0 0 22px;padding-left:26px}
.prose li{font-size:16.5px;line-height:1.6;color:var(--ink-soft);margin-bottom:10px}
.prose li::marker{color:var(--orange);font-weight:700}
.art-ol{margin:0 0 24px;padding:0;list-style:none;counter-reset:art}
.art-ol li{counter-increment:art;position:relative;padding-left:42px;font-size:16.5px;line-height:1.6;color:var(--ink-soft);margin-bottom:12px}
.art-ol li::before{content:counter(art);position:absolute;left:0;top:-1px;width:27px;height:27px;border-radius:50%;background:var(--orange);color:#fff;font-family:var(--sans);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}

/* mise en avant héritée du contenu existant (mark orange + kbd) */
.prose mark{background:var(--orange-soft);color:var(--ink);padding:.05em .25em;border-radius:4px}
.prose mark[style]{background:var(--orange-soft) !important;color:var(--ink) !important}
.prose kbd{font-family:var(--mono);font-size:.86em;background:var(--cream);border:1px solid var(--line);border-radius:6px;padding:.08em .4em;color:var(--ink)}

/* callout (design) + citation Gutenberg */
.callout,.prose blockquote{background:var(--green-soft);border:1px solid var(--green);border-left:4px solid var(--green-deep);border-radius:10px;padding:18px 22px;margin:28px 0}
.callout .cl-lab{display:block;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--green-deep);margin-bottom:7px}
.callout p,.prose blockquote p{font-size:15.5px;line-height:1.58;color:var(--ink);margin:0;font-weight:600}
.prose blockquote cite{display:block;font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:10px;font-style:normal}

/* images & figures */
.prose img{border-radius:12px;margin:28px auto}
.prose figure{margin:28px 0}
.prose figcaption{font-family:var(--mono);font-size:12px;color:var(--muted);text-align:center;margin-top:10px}
.art-icon{display:block;width:44px;height:auto;margin:34px auto;image-rendering:auto}

/* tables (design .art-table + wp-block-table) */
.art-table-wrap,.prose .wp-block-table{overflow-x:auto;margin:28px 0;background:var(--green-soft);border:1px solid var(--green);border-left:4px solid var(--green-deep);border-radius:10px;padding:4px 24px}
.art-table,.prose .wp-block-table table{width:100%;border-collapse:collapse;min-width:640px;font-size:14px}
.art-table th,.art-table td,.prose .wp-block-table th,.prose .wp-block-table td{padding:13px 16px;text-align:left;vertical-align:top;line-height:1.45;border:0;border-bottom:1px solid rgba(108,76,240,.16)}
.art-table thead th,.prose .wp-block-table thead th{font-family:var(--sans);font-weight:700;color:var(--green-deep);font-size:14.5px;border-bottom:2px solid var(--green-deep)}
.art-table tbody th{font-weight:700;color:var(--ink);white-space:nowrap}
.art-table td.col-hi{font-weight:600;color:var(--ink)}
.art-table tbody tr:last-child th,.art-table tbody tr:last-child td{border-bottom:0}

/* accordéons (details/summary, design + bloc wp:details) */
.prose details{background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:16px 20px;margin-bottom:12px}
.prose details[open]{border-color:var(--ink)}
.prose summary{font-family:var(--sans);font-weight:700;font-size:15.5px;color:var(--ink);cursor:pointer}
.prose details p{margin:12px 0 0;font-size:15px}

/* séparateur */
.prose hr{border:none;border-top:1px solid var(--line);margin:36px 0}

/* Encadrés une cellule (tables Gutenberg 1x1 type « À retenir ») : pas de bordure interne ni surlignage kbd */
.prose .wp-block-table tr:only-child td:only-child{border:0}
.prose .wp-block-table tr:only-child td:only-child kbd{background:transparent;border:0;padding:0}

/* Encadré « callout » : un <p> entièrement composé d'un <kbd> (marqué
   .is-callout par inc/article.php) → même boîte violette que la variante
   table 1x1. Un <kbd> d'amorce suivi de texte reste une pastille crème inline. */
.prose p.is-callout{background:var(--green-soft);border:1px solid var(--green);border-left:4px solid var(--green-deep);border-radius:10px;padding:14px 24px;margin:28px 0}
.prose p.is-callout kbd{background:transparent;border:0;padding:0;border-radius:0;font-size:inherit}

/* Boutons Gutenberg (liens affiliés « Tester… ») : bouton noir plein, texte
   blanc simple. Neutralise le style outline (pilule bordée) + les <kbd>
   internes (pastilles crème) présents dans le contenu. */
.prose .wp-block-buttons{margin:30px 0}
.prose .wp-block-button__link{background:var(--ink);border:0;border-radius:9px!important;padding:14px 26px;font-family:var(--sans);font-weight:700;font-size:15px;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;word-break:normal;overflow-wrap:normal;box-shadow:0 1px 2px rgba(22,19,15,.1),0 8px 18px -10px rgba(22,19,15,.5);transition:transform .16s,box-shadow .16s}
.prose .wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(22,19,15,.55)}
/* Texte toujours blanc, quel que soit l'habillage interne du contenu
   (<strong>, <kbd>… héritent sinon de la couleur encre de .prose). */
.prose .wp-block-button__link,.prose .wp-block-button__link *{color:#fff!important}
.prose .wp-block-button__link kbd{background:transparent;border:0;padding:0;border-radius:0;font-family:inherit;font-size:inherit}

/* Lettrine uniforme sur le 1er paragraphe de chaque article. Harmonise :
   certains articles avaient la lettrine Gutenberg (.has-drop-cap), d'autres
   non. On l'applique à tous et on aligne le style .has-drop-cap sur le même
   rendu (Montserrat gras encre), pour une DA identique partout. */
.single-post .prose > p:first-of-type::first-letter,
.single-post .prose p.has-drop-cap::first-letter{float:left;font-family:var(--sans);font-weight:800;font-size:3.3em;line-height:.7;margin:4px 12px 0 0;color:var(--ink);text-transform:uppercase}
