/* Long-form typography for blog articles and trust pages (no Tailwind "prose" plugin in the build). */

.content-body { color: #334155; font-size: 1.0625rem; line-height: 1.75; }
.content-body > * + * { margin-top: 1.1em; }
.content-body h2 { color: #0f172a; font-size: 1.5rem; line-height: 1.3; font-weight: 700; margin-top: 2.2em; scroll-margin-top: 5rem; }
.content-body h3 { color: #0f172a; font-size: 1.2rem; line-height: 1.4; font-weight: 600; margin-top: 1.8em; }
.content-body h2 + *, .content-body h3 + * { margin-top: 0.6em; }
.content-body a { color: #2563eb; text-decoration: underline; text-underline-offset: 2px; }
.content-body a:hover { color: #1d4ed8; }
.content-body strong { color: #0f172a; font-weight: 600; }
.content-body ul, .content-body ol { padding-left: 1.4em; }
.content-body ul { list-style: disc; }
.content-body ol { list-style: decimal; }
.content-body li + li { margin-top: 0.4em; }
.content-body li::marker { color: #94a3b8; }
.content-body blockquote { border-left: 4px solid #3b82f6; background: #eff6ff; padding: 0.9em 1.2em; border-radius: 0 0.75rem 0.75rem 0; color: #1e3a8a; }
.content-body .table-wrap { overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 0.75rem; }
.content-body table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.content-body th, .content-body td { padding: 0.65em 0.9em; text-align: left; border-bottom: 1px solid #e2e8f0; vertical-align: top; }
.content-body thead th { background: #f8fafc; color: #0f172a; font-weight: 600; }
.content-body tbody tr:last-child td { border-bottom: 0; }

.sponsored-note { border: 1px solid #fde68a; background: #fffbeb; color: #92400e; border-radius: 0.75rem; padding: 0.75rem 1rem; font-size: 0.9rem; }

.article-card-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.article-card-excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.page-aside { position: sticky; top: 6rem; align-self: start; }
.content-body > table { display: block; overflow-x: auto; }
.content-img, figure img, article img { height: auto; }
