/* parts-leaf-editorial : ex-bloc <style> de leaf-editorial.php, source de vérité depuis le 09/09/2026 (plan poids-html-blueprint-light, lot 2). Tokens : var(--color-*) uniquement. */
    /* Robustesse leaf-editorial (plan 2026-07-12, C2/C3/C4/C5).
       min-width:0 : sans lui, un <table> large force le grid item au-delà
       du viewport mobile et overflow-x:hidden rogne le contenu (C2). */
    .exp-editorial-text { min-width: 0; }
    h3.exp-editorial-subtitle { margin: 0 0 20px; }
    .exp-editorial-text h3:not(.exp-editorial-subtitle) {
      font-family: var(--font-display);
      font-size: var(--text-lg);
      font-weight: var(--font-bold);
      color: var(--color-bleu);
      margin: 1.4em 0 0.6em;
    }
    /* Bloc pleine largeur (table ou FAQ) : sort du layout photo + card. */
    .exp-editorial-block.exp-editorial-block--full,
    .exp-editorial-block.exp-editorial-block--full:nth-child(even) {
      grid-template-columns: 1fr;
    }
    .exp-editorial-block.exp-editorial-block--full .exp-editorial-text {
      margin-left: 0;
      margin-right: 0;
      max-width: none;
    }
    /* Card sans photo : centrée et contrainte (portée depuis secteurs). */
    .exp-editorial-block:not(.exp-editorial-block--full):not(:has(.exp-editorial-image)) .exp-editorial-text {
      max-width: 760px;
      margin-inline: auto;
    }
    /* FAQ accordéon natif. */
    .exp-editorial-faq details {
      border-bottom: 1px solid var(--color-gray-medium);
    }
    .exp-editorial-faq details:first-of-type {
      border-top: 1px solid var(--color-gray-medium);
    }
    .exp-editorial-faq summary {
      cursor: pointer;
      padding: 18px 32px 18px 0;
      position: relative;
      font-family: var(--font-display);
      font-size: var(--text-lg);
      font-weight: var(--font-medium);
      color: var(--color-bleu);
      list-style: none;
    }
    .exp-editorial-faq summary::-webkit-details-marker { display: none; }
    .exp-editorial-faq summary::after {
      content: '+';
      position: absolute;
      right: 4px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 24px;
      line-height: 1;
      color: var(--color-orange);
    }
    .exp-editorial-faq details[open] summary::after { content: '\2212'; }
    .exp-editorial-faq .exp-faq-answer { padding: 0 0 20px; }
