/* Section: free WYSIWYG content (page pool). Full-bleed: the block width is a
   % of the full page width (CSS vars from the template, per breakpoint), not
   of the 1300px grid. The gutter stays so text never touches the edge. */

.section.content-section { padding-block: var(--space-2xl); padding-inline: var(--gutter); }

.content-section__block { width: var(--cnt-w-d, 100%); max-width: 100%; }
.content-section__block--pos-left { margin-right: auto; }
.content-section__block--pos-center { margin-inline: auto; }
.content-section__block--pos-right { margin-left: auto; }

/* ---- WYSIWYG typography (mirrors the article richtext defaults) ---- */
.content-section__block { font-size: var(--fs-body-m); line-height: var(--lh-body-m); color: var(--color-grey-900); }
.content-section__block p { margin: 0 0 var(--space-l); }
.content-section__block > *:last-child { margin-bottom: 0; }
.content-section__block h2 {
  margin: var(--space-l) 0 var(--space-s);
  font: 400 var(--fs-h-l) / var(--lh-h-l) var(--font-heading);
  letter-spacing: var(--ls-h-l);
  color: var(--color-grey-900);
}
.content-section__block h3 {
  margin: var(--space-l) 0 var(--space-s);
  font: 400 28px / 40px var(--font-heading);
  letter-spacing: -1px;
  color: var(--color-grey-900);
}
.content-section__block h2:first-child,
.content-section__block h3:first-child { margin-top: 0; }
/* Restore markers killed by the global `ul, ol { list-style: none }` reset. */
.content-section__block ul,
.content-section__block ol { margin: 0 0 var(--space-l); padding-left: var(--space-l); }
.content-section__block ul { list-style: disc; }
.content-section__block ol { list-style: decimal; }
.content-section__block img { max-width: 100%; height: auto; border-radius: var(--radius-s); }
.content-section__block strong,
.content-section__block b { font-weight: 700; }

@media (max-width: 1024px) {
  .content-section__block { width: var(--cnt-w-t, 100%); }
}
@media (max-width: 600px) {
  .content-section__block { width: var(--cnt-w-m, 100%); }
  .content-section__block h2 { font-size: var(--fs-h-m); line-height: var(--lh-h-m); letter-spacing: var(--ls-h-m); }
}
