/* Article detail: reference layout, scoped away from category and home cards. */
body.portal-site .portal-article { border: 1px solid #e7e7ec; border-radius: 10px; box-shadow: 0 2px 8px rgba(30,35,45,.08); background: #fafafc; }
body.portal-site .portal-article > .panel-body { padding: 24px; color: #30343b; font: 17px/1.8 'Roboto',Arial,sans-serif; }
body.portal-site .portal-article .portal-article__title { margin: 4px 0 26px; color: #262b31; text-align: center; text-transform: uppercase; font: 700 32px/1.3 'Roboto Condensed','Roboto',Arial,sans-serif; overflow-wrap: anywhere; }
body.portal-site .portal-article__metadata { display: flex; align-items: center; gap: 20px; margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid #e1e3e6; color: #828282; font: italic 14px/1.75 'Roboto',Arial,sans-serif; }
body.portal-site .portal-article__publication { flex: 1; min-width: 0; }
body.portal-site .portal-article__publication a { color: #a63425; font-weight: 700; }
body.portal-site .portal-article__publication a:hover { color: #c0222c; text-decoration: underline; }
body.portal-site .portal-article__views { flex: none; padding-left: 18px; border-left: 1px solid #e1e3e6; white-space: nowrap; color: #6b6f74; font-style: normal; }
body.portal-site .portal-article__views i { margin-right: 5px; }
body.portal-site .portal-article .portal-article__tools { margin: -10px 0 18px; text-align: right; }
body.portal-site .portal-article__tools ul { margin: 0; }
body.portal-site .portal-article__tools a { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; min-height: 36px; border-radius: 4px; color: #777; }
body.portal-site .portal-article__tools a:hover { background: #fff2f2; color: #b92230; }
body.portal-site .portal-article .hometext { margin-bottom: 22px; font: 600 17px/1.85 'Roboto',Arial,sans-serif; text-align: justify; }
body.portal-site .portal-article .portal-article__lead-image { float: none; display: block; width: 100%; max-width: 100%; margin: 0 auto 24px; text-align: center; }
body.portal-site .portal-article__lead-image > div { width: 100%; max-width: 100%; }
body.portal-site .portal-article__lead-image img { display: block; width: 100%; max-width: 100%; height: auto; margin: 0 auto; padding: 0; border: 0; border-radius: 0; }
/* Match the reference caption, including older centered italic paragraphs. */
body.portal-site .portal-article figcaption,
body.portal-site .portal-article #news-bodyhtml :is(figure:has(img) + p, figure:has(img) + p + p):is([style*="text-align:center"], [style*="text-align: center"]):has(i, em) {
    display: block; margin: 5px 0 !important; padding: 0; background: transparent; border: 0;
    color: #666 !important; font: italic 700 14px/21px 'Roboto',Arial,sans-serif !important;
    text-align: center !important; text-indent: 0 !important;
}
body.portal-site .portal-article figcaption *,
body.portal-site .portal-article #news-bodyhtml :is(figure:has(img) + p, figure:has(img) + p + p):is([style*="text-align:center"], [style*="text-align: center"]):has(i, em) * {
    color: inherit !important; font: inherit !important;
}
body.portal-site .portal-article #news-bodyhtml figure:has(img):has(+ p:is([style*="text-align:center"], [style*="text-align: center"])) { margin-bottom: 0; }
body.portal-site .portal-article #news-bodyhtml { color: #333; font: 17px/1.85 'Roboto',Arial,sans-serif; overflow-wrap: anywhere; }
body.portal-site .portal-article #news-bodyhtml p { margin-bottom: 18px; }
body.portal-site .portal-article #news-bodyhtml figure:has(img) { display: block; float: none !important; width: 100% !important; max-width: 100%; margin: 20px 0; }
body.portal-site .portal-article #news-bodyhtml img { display: block; float: none !important; width: 100% !important; max-width: 100%; height: auto !important; margin-left: auto; margin-right: auto; }
body.portal-site .portal-article #news-bodyhtml iframe, body.portal-site .portal-article #news-bodyhtml video { max-width: 100%; }
body.portal-site .portal-article #news-bodyhtml table { max-width: 100%; }
@media (max-width: 767px) {
    body.portal-site .portal-article > .panel-body { padding: 16px 14px 20px; font-size: 16px; }
    body.portal-site .portal-article .portal-article__title { font-size: 25px; line-height: 1.35; margin-bottom: 18px; }
    body.portal-site .portal-article__metadata { gap: 12px; margin-bottom: 18px; padding-bottom: 15px; font-size: 13px; }
    body.portal-site .portal-article__views { padding-left: 10px; }
    body.portal-site .portal-article .hometext, body.portal-site .portal-article #news-bodyhtml { font-size: 16px; line-height: 1.8; }
}
