/* Content added through the CMS stays inside the original page columns. */
.article-body img, .article-body video { max-width: 100%; height: auto; }
.article-body figure { margin: 2em 0; }
.article-body figcaption { font-size: .875em; margin-top: .7em; }
.cms-align-center { text-align: center; }
.cms-align-right { text-align: right; }
.article-body pre, .cms-table { max-width: 100%; overflow-x: auto; }
.cms-table table { border-collapse: collapse; }
.cms-table td, .cms-table th { padding: .65em; border: 1px solid currentColor; }
.cms-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 16px; }
.cms-empty { padding: 2em 0; }
.cms-preview { position: relative; z-index: 6; padding: 12px 20px; color: #fff; background: #111; font: 500 14px/1.6 sans-serif; text-align: center; }
