.article-content { text-align: justify; line-height: 1.85; overflow-wrap: anywhere; }
.article-content p, .article-content > div { margin: 0 0 1.25em; }
.article-content h1, .article-content h2, .article-content h3, .article-content h4 { margin: 1.6em 0 .65em; font-weight: 700; line-height: 1.35; }
.article-content h1 { font-size: 2em; }
.article-content h2 { font-size: 1.65em; }
.article-content h3 { font-size: 1.3em; }
.article-content h4 { font-size: 1.1em; }
.article-content ul, .article-content ol { margin: 1.25em auto; padding-left: 2em; text-align: left; }
.article-content ul { list-style: disc outside; }
.article-content ol { list-style: decimal outside; }
.article-content ul ul { list-style-type: circle; }
.article-content ul ul ul { list-style-type: square; }
.article-content ol ol { list-style-type: lower-alpha; }
.article-content li { display: list-item; margin: .45em 0; padding-left: .25em; }
.article-content li > p { margin: 0; }
.article-content li > ul, .article-content li > ol { margin: .5em 0; }
.article-content a { color: #2563eb; text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.article-content a:hover { text-decoration-thickness: 2px; }
.article-content a:focus-visible { outline: 2px solid #2563eb; outline-offset: 3px; }
.article-content blockquote { margin: 1.5em 0; border-left: 4px solid #2563eb; padding: .75em 1.25em; background: #eff6ff; }
.article-content pre { overflow-x: auto; text-align: left; padding: 1em; background: #f1f5f9; white-space: pre; }
.article-content img { max-width: 100%; height: auto; margin: 1.5em auto; border-radius: .75em; }
.article-content figcaption { font-size: .875em; color: #64748b; }
.article-content hr { margin: 2em 0; border-top: 1px solid #cbd5e1; }
