.rich-content { overflow-wrap: anywhere; line-height: 1.7; }
.rich-content p, .rich-content ul, .rich-content ol, .rich-content blockquote { margin: 0 0 1rem; }
.rich-content h2, .rich-content h3, .rich-content h4 { margin: 1.3rem 0 .7rem; line-height: 1.3; }
.rich-content h2 { font-size: 1.4rem; }
.rich-content h3 { font-size: 1.2rem; }
.rich-content h4 { font-size: 1.05rem; }
.rich-content ul, .rich-content ol { padding-left: 1.7rem; }
.rich-content blockquote { border-left: 3px solid #3694aa; padding: .4rem 1rem; background: #f3f8fa; }
.rich-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; margin: 1rem 0; }
.rich-content th, .rich-content td { border: 1px solid #ccdce4; padding: .5rem .7rem; min-width: 70px; }
.rich-content a { overflow-wrap: anywhere; }
.rich-content .rte-size-sm { font-size: .85em; }
.rich-content .rte-size-lg { font-size: 1.2em; }
.rich-content .rte-size-xl { font-size: 1.5em; }
.rich-content .rte-color-red { color: #a72323; }
.rich-content .rte-color-blue { color: #155b9e; }
.rich-content .rte-color-green { color: #176b40; }
.rich-content .rte-color-muted { color: #657b88; }
.rich-content .rte-align-center { text-align: center; }
.rich-content .rte-align-right { text-align: right; }
.rich-content .rte-align-justify { text-align: justify; }
