.rich-text { overflow-wrap: anywhere; }
.rich-text > :first-child { margin-top: 0; }
.rich-text > :last-child { margin-bottom: 0; }
.rich-text p { margin-bottom: 1em; }
.rich-text ul, .rich-text ol { padding-left: 1.75em; margin-bottom: 1em; }
.rich-text ul > li { list-style-type: disc; }
.rich-text ol > li { list-style-type: decimal; }
.rich-text blockquote { border-left: 3px solid #33856b; padding-left: 1em; margin: 1em 0; }
.rich-text a { text-decoration: underline; }
.rich-text-list { padding-left: 1.5em; }
.rich-text-list > li { margin-bottom: .5em; }
.cms-richtext > .rich-text > p { font: inherit; color: inherit; }
.cms-layout-block { max-width: 1140px; width: 100%; box-sizing: border-box; margin: 24px auto; padding: 24px; }
.cms-layout-block:has(> img) { display: flex; align-items: flex-start; gap: 24px; }
.cms-layout-block > img { width: min(35%, 360px); height: auto; border-radius: 12px; }
.cms-layout-block > div { min-width: 0; flex: 1; }
@media (max-width: 640px) {
    .cms-layout-block:has(> img) { display: block; }
    .cms-layout-block > img { width: 100%; margin-bottom: 16px; }
}
