/* Editorial extension of the established Xijun dark blue system. */
.news-page{background:var(--bg);color:var(--text)}
.news-page [hidden]{display:none!important}
.news-main{width:min(calc(100% - 2 * var(--gutter)),var(--page-width));margin:0 auto;padding:176px 0 100px;min-height:75vh}
.news-intro{padding-bottom:42px;max-width:760px}
.news-kicker{color:var(--blue);font-size:14px;letter-spacing:.12em;margin:0 0 24px}
.news-intro h1{font-size:clamp(38px,4.5vw,64px);line-height:1.35;letter-spacing:.035em;font-weight:500;margin:0 0 24px;text-align:left}
.news-lead{max-width:34em;color:var(--muted);font-size:17px;line-height:1.9;margin:0}
.preview-note{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 28px;padding:15px 20px;background:#a6caff09;border-left:2px solid #a6caff70;color:var(--muted);font-size:13px;line-height:1.8}
.preview-note strong{font-weight:500;color:var(--blue)}
.news-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);margin-bottom:36px;padding-bottom:16px}
.news-filters{display:flex;gap:32px;flex-wrap:wrap}
.news-filters button{font:inherit;background:none;color:var(--muted);border:0;padding:12px 0;cursor:pointer;position:relative;min-height:44px}
.news-filters button[aria-pressed=true]{color:var(--text)}
.news-filters button[aria-pressed=true]::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--blue)}
.news-toolbar>p{margin:0;font-size:13px;color:var(--muted)}
.news-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,4vw,62px);align-items:center;padding:8px 0 48px}
.news-cover{display:block;overflow:hidden;background:#0a101a;aspect-ratio:1.58}
.news-cover img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;transition:transform .5s ease}
.news-feature:hover .news-cover img{transform:scale(1.025)}
.news-meta{display:flex;gap:10px 20px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:12px;line-height:1.7}
.news-meta>span:first-child{color:var(--blue)}
.draft-label{border:1px solid var(--line);padding:1px 7px}
.news-item h2{font-size:clamp(23px,2.2vw,32px);line-height:1.6;font-weight:500;letter-spacing:.015em;margin:18px 0 16px;max-width:20em}
.news-item h2 a{color:var(--text);transition:color .2s}
.news-item h2 a:hover{color:var(--blue)}
.news-item h2,.article-heading h1{text-wrap:balance}
.news-item-copy>p{color:var(--muted);font-size:15px;line-height:1.95;max-width:35em;margin:0}
.news-read{display:inline-flex;gap:24px;align-items:center;min-height:44px;color:var(--blue);font-size:14px;margin-top:22px}
.news-read span{font-size:20px}
.news-row{border-top:1px solid var(--line);padding:34px 0}
.news-row .news-item-copy{display:grid;grid-template-columns:230px minmax(0,1fr) 120px;column-gap:32px;align-items:start}
.news-row .news-meta{grid-row:1/3;flex-direction:column;align-items:flex-start;padding-top:7px}
.news-row h2{margin:0 0 12px;font-size:24px;grid-column:2}
.news-row .news-item-copy>p{grid-column:2;max-width:40em}
.news-row .news-read{grid-column:3;grid-row:1/3;justify-self:end;margin:0}
.news-empty{padding:60px 0;color:var(--muted);line-height:1.9}
.news-empty h2{color:var(--text);font-size:26px;font-weight:500}
.news-empty a{display:inline-block;min-height:44px;color:var(--blue);margin-top:12px}
.news-crumbs{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--muted);margin-bottom:30px}
.news-crumbs a{display:inline-flex;align-items:center;min-height:44px}
.article-heading{max-width:900px;padding:26px 0 52px}
.article-heading h1{font-size:clamp(30px,3.3vw,48px);line-height:1.5;font-weight:500;letter-spacing:.02em;margin:22px 0;text-align:left}
.article-summary{color:var(--muted);font-size:18px;line-height:1.9;max-width:38em;margin:0}
.article-layout{display:grid;grid-template-columns:230px minmax(0,760px);gap:clamp(36px,6vw,100px);border-top:1px solid var(--line);padding-top:44px;align-items:start}
.article-aside{position:sticky;top:32px;font-size:14px}
.article-aside nav{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.article-aside nav p{color:var(--text);font-size:13px;margin:0 0 16px}
.article-aside nav a{display:flex;align-items:center;min-height:44px;color:var(--muted);line-height:1.7;padding:7px 0}
.article-aside nav a:hover{color:var(--blue)}
#copy-link{font:inherit;font-size:13px;color:var(--blue);background:none;border:1px solid var(--line);padding:10px 18px;min-height:44px;cursor:pointer;margin-top:26px}
#copy-status{max-width:20em;line-height:1.7;color:var(--muted);font-size:12px;min-height:1.7em;margin-top:10px}
.article-body{min-width:0}
.article-cover{margin:0 0 42px}
.article-cover img{display:block;width:100%;height:auto;aspect-ratio:2;object-fit:cover;object-position:50% 42%}
.article-cover figcaption{color:var(--muted);font-size:12px;margin-top:12px}
.article-body section{padding:0;margin:0 0 42px;scroll-margin-top:32px}
.article-body h2{font-size:24px;line-height:1.6;letter-spacing:.01em;font-weight:500;margin:0 0 22px}
.article-body p{color:#c5cedb;font-size:17px;line-height:2.05;margin:0 0 20px;letter-spacing:.015em}
.article-contact{margin-top:48px;padding:26px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}
.article-contact p{margin:0;font-size:17px;color:var(--text)}
.article-contact a{display:inline-flex;min-height:44px;align-items:center;font-size:14px;color:var(--blue)}
.article-related{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:38px;padding-top:30px}
.article-related a{display:flex;flex-direction:column;gap:14px;align-items:flex-start;line-height:1.7}
.article-related span{font-size:12px;color:var(--muted)}
.article-related strong{font-size:17px;font-weight:400;color:var(--text)}
.back-to-news{display:inline-flex;min-height:44px;align-items:center;color:var(--blue);font-size:14px;margin-top:38px}
@media(max-width:1000px){.news-row .news-item-copy{grid-template-columns:170px minmax(0,1fr)}.news-row .news-read{grid-column:2;grid-row:auto;justify-self:start;margin-top:12px}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:36px}}
@media(max-width:700px){.news-main{padding-top:158px;padding-bottom:64px}.news-intro{padding-bottom:30px}.news-intro h1{font-size:38px}.news-lead{font-size:15px}.news-feature{grid-template-columns:1fr;gap:24px;padding-bottom:32px}.news-toolbar{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:26px}.news-filters{gap:28px}.news-row .news-item-copy{display:block}.news-row .news-meta{flex-direction:row;margin-bottom:16px}.news-row h2{font-size:23px}.news-row .news-read{margin-top:14px}.news-item-copy>p{font-size:15px}.news-meta{gap:8px 14px}.preview-note{padding:12px 15px;gap:4px}.preview-note strong{flex-basis:100%}.article-heading{padding:12px 0 30px}.article-summary{font-size:16px}.article-layout{display:flex;flex-direction:column;gap:28px;padding-top:28px}.article-aside{position:static;width:100%}.article-aside nav{padding-bottom:18px;border-bottom:1px solid var(--line)}.article-aside nav p{margin-bottom:8px}.article-aside nav a{min-height:44px}.article-body p{font-size:16px;line-height:2}.article-body h2{font-size:22px}.article-related{grid-template-columns:1fr;gap:26px}.news-crumbs{margin-bottom:18px}.article-cover{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.news-cover img{transition:none}.news-feature:hover .news-cover img{transform:none}}
.article-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin:28px 0}.article-columns.ratio-left{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.article-columns.ratio-right{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.article-columns>div{min-width:0}.article-image{margin:28px auto;max-width:560px}.article-image.image-wide{max-width:none}.article-image img{display:block;width:100%;height:auto}.article-image figcaption{font-size:13px;color:var(--muted);line-height:1.8;margin-top:10px}.article-text-block p{white-space:pre-line;overflow-wrap:anywhere}.article-text-block h2{overflow-wrap:anywhere}
@media(max-width:700px){.article-columns,.article-columns.ratio-left,.article-columns.ratio-right{grid-template-columns:1fr;gap:12px}}
