/* VNX shared article reading rules. Deploy these exact bytes to every connected CMS.
   Applies to article text and media only; headings, cards, tables and navigation retain their theme. */
:root {
    --vnx-article-font-size: 20px;
    --vnx-article-line-height: 1.75;
    --vnx-article-media-gap: 32px;
}
@media (max-width: 768px) {
    :root {
        --vnx-article-font-size: 18px;
        --vnx-article-line-height: 1.7;
        --vnx-article-media-gap: 24px;
    }
}
.city-brand-mrpl .article-page-container .article-body,
.article-container .article-content,
article.news-view .post-content,
#site-article-preview .sp-page article {
    font-size: var(--vnx-article-font-size);
    line-height: var(--vnx-article-line-height);
}
:is(.city-brand-mrpl .article-page-container .article-body, .article-container .article-content, article.news-view .post-content, #site-article-preview .sp-page article) :is(p, li) {
    font-size: inherit;
    line-height: inherit;
}
.city-brand-mrpl .article-page-container .article-main-image-wrap,
.article-container .article-img-box,
article.news-view .main_image,
:is(.city-brand-mrpl .article-page-container .article-body, .article-container .article-content, article.news-view .post-content, #site-article-preview .sp-page article) figure,
:is(.city-brand-mrpl .article-page-container .article-body, .article-container .article-content, article.news-view .post-content) p:has(> img:only-child) {
    margin-bottom: var(--vnx-article-media-gap);
}
/* A first paragraph must not add a second gap after the cover. */
:is(.city-brand-mrpl .article-page-container .article-body, .article-container .article-content, article.news-view .post-content) > p:first-child {
    margin-top: 0;
}
/* The narrow preview uses mobile rules independently of the editor viewport. */
#site-article-preview[data-width="mobile"] {
    --vnx-article-font-size: 18px;
    --vnx-article-line-height: 1.7;
    --vnx-article-media-gap: 24px;
}
