/* 新闻列表与详情页。结构:焦点稿 + 卡片墙 + 文章页;配色沿用 xrobo.css 的变量。 */
.news-wall{margin-top:36px}
.news-feature{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);background:var(--ink2);color:var(--paper)}
.news-feature-cover{aspect-ratio:16/9;background:var(--paper2);overflow:hidden}
.news-feature-cover img{display:block;width:100%;height:100%;object-fit:cover}
.news-feature-body{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:clamp(28px,4vw,56px)}
.news-feature h2{margin:0;font-size:clamp(24px,2.6vw,38px);line-height:1.28;font-weight:320;letter-spacing:-.02em}
.news-feature p{margin:0;font-size:16px;line-height:1.8;opacity:.72;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.news-feature-more{align-self:flex-start;margin-top:6px;padding-bottom:6px;border-bottom:1px solid rgba(240,237,231,.5);font-size:14px}
.news-feature:hover .news-feature-more{border-bottom-color:var(--paper)}
.news-feature[hidden],.news-card[hidden]{display:none}

.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 32px;margin-top:56px}
.news-card{display:flex;flex-direction:column;color:inherit}
.news-card-cover{aspect-ratio:16/9;background:var(--paper2);overflow:hidden}
.news-card-cover img{display:block;width:100%;height:100%;object-fit:cover}
.news-card-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;letter-spacing:.04em;opacity:.6}
.news-card .news-card-meta{margin-top:18px}
.news-card h3{margin:12px 0 0;font-size:21px;line-height:1.36;font-weight:400;letter-spacing:-.01em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.news-card p{margin:12px 0 0;font-size:15px;line-height:1.75;opacity:.66;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.news-card:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.news-card:focus-visible,.news-feature:focus-visible,.news-article-source a:focus-visible{outline:2px solid var(--copper);outline-offset:4px}

.news-article-hero .news-article-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:30px;font-size:13px;letter-spacing:.04em;opacity:.7}
.news-article-hero .h1.article-title{max-width:1040px;margin:20px 0 0;font-size:clamp(30px,3.6vw,52px);line-height:1.22}
.news-article .news-article-image{display:block;width:100%;height:auto;margin:36px 0}
.news-article .news-article-lead-image{margin-top:0}
.news-article .news-article-heading{margin:48px 0 16px;font-size:24px;line-height:1.4;font-weight:420;letter-spacing:-.01em}
.news-article .body+.body{margin-top:18px}
.news-article-source{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:52px;padding-top:22px;border-top:1px solid var(--line);font-size:14px}
.news-article-source span{opacity:.6}
.news-article-source a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}

.news-related .h3{font-size:22px;line-height:1.36;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

@media(max-width:980px){
 .news-feature{grid-template-columns:1fr}
 .news-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px;margin-top:44px}
}
@media(max-width:620px){
 .news-grid{grid-template-columns:1fr}
 .news-article .news-article-heading{font-size:21px}
}
