body.article-page { background: #fff; color: #292e32; }
body.article-page.portal-inner .wrap.article-wrap { width: min(960px, calc(100% - 40px)); margin-inline: auto; padding: 28px 0 56px; }
.article-breadcrumb { display: flex; gap: 12px; color: #59636b; font-size: 14px; margin-bottom: 28px; }
.article-breadcrumb a:hover, .article-back:hover { text-decoration: underline; }
.news-article { border: 0; background: transparent; padding: 0; overflow-wrap: anywhere; }
.article-heading { margin-bottom: 26px; }
.article-category { color: #496574; font-size: 13px; font-weight: 700; margin: 0 0 12px; }
body.article-page h1 { font-size: 36px; line-height: 1.2; color: #252d33; margin: 0 0 18px; }
.article-summary { font-size: 19px; line-height: 1.55; color: #525e66; margin: 0 0 20px; }
.article-meta { font-size: 13px; color: #5b646a; padding: 14px 0; border-top: 1px solid #e0e5e8; border-bottom: 1px solid #e0e5e8; }
.article-reading { display: flow-root; }
.article-cover { float:left; width:42%; margin:0 26px 18px 0; max-width:400px; }
.article-cover img { display: block; width: 100%; max-height: 340px; object-fit: contain; }
.article-body { max-width: none; margin:0; font-size: 17px; line-height: 1.75; }
.article-body p { margin: 0 0 20px; }
.article-body img { display: block; width: auto; max-width: 100%; height: auto; max-height: 300px; object-fit: contain; margin: 20px auto; }
.article-body a { overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
.article-body a[data-article-photo] { display: block; width: fit-content; max-width: 100%; margin-inline: auto; }
[data-article-photo] { cursor: zoom-in; }
.article-gallery, .attachments { margin: 28px auto 0; max-width: 960px; clear:both; }
.article-gallery h2, .attachments h2 { font-size: 22px; margin-bottom: 16px; }
.article-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 12px; }
.article-gallery-grid img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 4px; }
.article-back { display: inline-block; margin-top: 32px; color: #0754ae; font-weight: 700; }
.pdf-viewer, .attachment-pdf { margin: 22px 0; border: 1px solid #dbe3ee; }
.pdf-viewer-bar, .attachment-pdf-bar { display: flex; justify-content: space-between; gap: 14px; align-items: center; padding: 12px 14px; border-bottom: 1px solid #dbe3ee; flex-wrap: wrap; }
.article-body iframe, .attachment-pdf iframe { width: 100%; min-height: 600px; border: 0; }
.attachment-link { display: block; padding: 12px 0; border-bottom: 1px solid #e0e5e8; }
.article-lightbox { border: 0; padding: 64px 72px; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; background: transparent; color: white; overflow: auto; }
.article-lightbox[open] { display: grid; place-items: center; }
.article-lightbox::backdrop { background: rgba(0,0,0,.9); }
.article-lightbox figure { margin: 0; min-width: 0; max-width: 100%; pointer-events: none; }
.article-lightbox figure img { display: block; max-width: 100%; max-height: calc(100dvh - 190px); object-fit: contain; margin: auto; pointer-events: auto; }
.article-lightbox figcaption { max-width: 760px; margin: 14px auto 0; font-size: 14px; text-align: center; overflow-wrap: anywhere; }
.article-lightbox button { position: absolute; border: 1px solid #747474; border-radius: 4px; width: 44px; height: 44px; padding: 0; background: #292929; color: white; font-size: 28px; cursor: pointer; }
.article-lightbox button:hover { background: #484848; }
.article-lightbox button:focus-visible, [data-article-photo]:focus-visible { outline: 3px solid #5dbbff; outline-offset: 4px; }
.article-lightbox button[hidden] { display: none; }
.photo-close { top: 16px; right: 16px; }
.photo-prev { left: 16px; top: calc(50% - 22px); }
.photo-next { right: 16px; top: calc(50% - 22px); }
.photo-status { position: absolute; bottom: 12px; left: 64px; right: 64px; text-align: center; font-size: 14px; }
body.photo-viewer-open { overflow: hidden; }
@media (max-width: 600px) {
    body.article-page h1 { font-size: 27px; }
    .article-summary { font-size: 17px; }
    .article-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .article-cover img { max-height: 260px; }
    .article-cover { float:none; width:100%; max-width:400px; margin:0 auto 18px; }
    .article-lightbox { padding: 70px 12px 100px; }
    .article-lightbox figure img { max-height: calc(100dvh - 240px); }
    .photo-prev, .photo-next { top: auto; bottom: 48px; }
    .photo-prev { left: calc(50% - 60px); }
    .photo-next { right: calc(50% - 60px); }
}
.article-body table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:20px 0; font-size:14px; line-height:1.5; background:#fff; }
.article-body table td, .article-body table th { padding:10px 12px; border:1px solid #d7e0e5; vertical-align:top; min-width:110px; }
.article-body table td:first-child { min-width:220px; }
.article-body table tr:nth-child(even) { background:#f3f7f5; }
.article-body table th, .article-body table td[colspan] { background:#e7f0eb; color:var(--theme-heading,#173e2b); font-weight:700; }
.article-main-content { min-width:0; }
body.article-editorial.portal-inner .wrap.article-wrap { width:100%; padding:0 0 56px; }
.article-editorial .article-heading { position:relative; isolation:isolate; margin:0; background:#eef1f3; padding:56px 0 48px; }
.article-editorial .article-heading-inner,.article-editorial .article-content-layout { width:min(1200px,calc(100% - 48px)); margin-inline:auto; }
.article-editorial .article-heading-photo { min-height:480px; display:flex; align-items:flex-end; background:#272d30; }
.article-editorial .article-heading-photo { padding:24px 0; }
.article-editorial .article-heading-photo .article-heading-inner { min-height:432px; display:flex; flex-direction:column; gap:64px; }
.article-editorial .article-heading-photo .article-breadcrumb { margin:0; flex-wrap:wrap; }
.article-editorial .article-heading-photo .article-heading-details { margin-top:auto; }
.article-hero-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; object-position:center; }
.article-heading-photo::before { content:''; position:absolute; inset:0; z-index:-1; background:rgba(0,0,0,.62); }
body.article-editorial h1 { font-size:44px; line-height:1.16; max-width:1050px; text-wrap:pretty; }
body.article-page h1.article-long-title { font-size:30px; line-height:1.25; }
body.article-editorial .article-heading-photo h1 { max-width:none; font-size:36px; line-height:1.14; text-wrap:wrap; }
body.article-editorial .article-heading-photo h1.article-long-title { font-size:28px; }
.article-editorial .article-summary { max-width:960px; font-size:21px; }
body.article-editorial .article-heading-photo :is(h1,p,a,span,time,button) { color:#fff; }
.article-editorial .article-meta { display:inline-block; padding:0; border:0; margin:0 0 20px; }
.article-share { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.article-share button { display:inline-flex; align-items:center; gap:8px; min-height:42px; padding:10px 14px; border:1px solid #b7c2c9; border-radius:4px; background:transparent; color:inherit; font:inherit; font-size:14px; cursor:pointer; }
.article-share button:hover { background:#ffffff26; }
.article-share button:focus-visible { outline:3px solid #59b8ff; outline-offset:3px; }
.article-share svg { width:18px; height:18px; }
.article-share-status { font-size:14px; }
.article-editorial .article-content-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:56px; padding-top:40px; }
.article-editorial .article-content-layout:not(:has(.article-related)) { grid-template-columns:minmax(0,860px); justify-content:center; }
.article-editorial .article-related { border-left:1px solid #dce2e5; padding-left:24px; min-width:0; }
.article-editorial .article-related h2 { font-size:20px; margin:0 0 12px; }
.article-related a { display:block; padding:18px 0; border-bottom:1px solid #dce2e5; color:#343e45; }
.article-related a:hover strong { text-decoration:underline; }
.article-related time { display:block; font-size:12px; color:#626e76; margin-bottom:6px; }
.article-related strong { font-size:16px; line-height:1.45; font-weight:600; }
@media(max-width:900px) {
    .article-editorial .article-content-layout { grid-template-columns:minmax(0,1fr); gap:36px; }
    .article-editorial .article-related { border-left:0; border-top:1px solid #dce2e5; padding:24px 0 0; }
    body.article-editorial h1 { font-size:34px; }
    body.article-editorial .article-heading-photo h1 { font-size:30px; }
}
@media(max-width:600px) {
    .article-editorial .article-heading { padding:32px 0; }
    .article-editorial .article-heading-photo { min-height:380px; }
    .article-editorial .article-heading-photo { padding:24px 0; }
    .article-editorial .article-heading-photo .article-heading-inner { min-height:332px; gap:48px; }
    .article-editorial .article-heading-inner,.article-editorial .article-content-layout { width:calc(100% - 32px); }
    body.article-editorial h1 { font-size:28px; }
    body.article-page h1.article-long-title { font-size:24px; }
    body.article-editorial .article-heading-photo h1 { font-size:26px; }
    body.article-editorial .article-heading-photo h1.article-long-title { font-size:24px; }
    .article-editorial .article-summary { font-size:18px; }
}
