/* ==========================================================================
   TM design — blocs WordPress standards (contenu libre ajouté dans les pages)
   Site : sélecteurs limités aux conteneurs .tmd-flow (voir inc/blocks.php).
   Éditeur : le même fichier est chargé sans « .tmd-flow » (règles basées sur les
   classes des blocs WordPress uniquement, sans effet sur les blocs TM design).
   ========================================================================== */

/* Titres */
.tmd-flow .wp-block-heading { color: var(--black); font-weight: 800; letter-spacing: -.03em; line-height: 1.1; margin: 0; }
.tmd-flow h1.wp-block-heading { font-size: clamp(2.5rem, 6vw, 5rem); letter-spacing: -.045em; line-height: .98; }
.tmd-flow h2.wp-block-heading { font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.04em; }
.tmd-flow h3.wp-block-heading { font-size: clamp(1.5rem, 2.4vw, 2rem); }
.tmd-flow h4.wp-block-heading { font-size: 1.25rem; letter-spacing: -.02em; }
.tmd-flow :is(h5, h6).wp-block-heading { font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }

/* Listes */
.tmd-flow .wp-block-list { padding-left: 1.3em; margin: 0; list-style: square; }
.tmd-flow ol.wp-block-list { list-style: decimal; }
.tmd-flow .wp-block-list li + li { margin-top: .35em; }
.tmd-flow .wp-block-list li::marker { color: var(--blue); }

/* Images, légendes, galeries */
.tmd-flow .wp-block-image img { height: auto; max-width: 100%; }
.tmd-flow :is(.wp-block-image, .wp-block-gallery, .wp-block-video, .wp-block-embed) figcaption,
.tmd-flow .wp-element-caption { font-size: 14px; color: #757575; margin-top: 10px; text-align: left; }

/* Citations */
.tmd-flow .wp-block-quote { border-left: 4px solid var(--blue); padding: 4px 0 4px clamp(20px, 3vw, 40px); margin: 0; font-size: clamp(1.125rem, 1.6vw, 1.375rem); font-weight: 500; line-height: 1.5; color: var(--black); }
.tmd-flow .wp-block-quote cite { display: block; margin-top: 12px; font-size: 14px; font-weight: 700; font-style: normal; text-transform: uppercase; color: var(--ink); }
.tmd-flow .wp-block-pullquote { border-top: 2px solid var(--black); border-bottom: 2px solid var(--black); padding: clamp(32px, 4vw, 56px) 0; font-size: clamp(1.5rem, 2.5vw, 2.25rem); font-weight: 700; letter-spacing: -.02em; color: var(--black); }

/* Boutons : style « Contour » (le style plein bleu vient de theme.json) */
.tmd-flow .wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; color: var(--blue); border: 2px solid var(--blue); padding: 15px 26px; }
.tmd-flow .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--blue); color: var(--white); }
.tmd-flow .wp-block-button__link { transition: background-color .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease); }

/* Séparateur, tableau, groupe avec fond, détails */
.tmd-flow .wp-block-separator { border: 0; border-top: 1px solid var(--line); opacity: 1; }
.tmd-flow .wp-block-separator.is-style-wide { border-top-width: 2px; border-color: var(--black); }
.tmd-flow .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 16px; }
.tmd-flow .wp-block-table :is(th, td) { padding: 12px 10px; border: 0; border-bottom: 1px solid var(--line); text-align: left; }
.tmd-flow .wp-block-table th { font-size: 13px; font-weight: 700; text-transform: uppercase; color: var(--black); border-bottom-color: var(--black); }
.tmd-flow .wp-block-group.has-background,
.tmd-flow .wp-block-column.has-background { padding: clamp(24px, 4vw, 56px); }
.tmd-flow .wp-block-details summary { font-weight: 700; color: var(--black); cursor: pointer; }
