/* 新闻列表和文章版式 */
.home-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.news-card{min-width:0}
.news-card .image-wrap{overflow:hidden;background:#e0e7ea;aspect-ratio:16/10}
.news-card img{height:100%;transition:transform .65s var(--ease);filter:saturate(.6)}
.news-card a:hover img{transform:scale(1.035)}
.news-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:20px 0 12px}
.news-meta .category{color:var(--accent)}
.news-card h3{font-size:21px;font-weight:550;line-height:1.5}
.news-card .summary{font-size:14px;color:var(--muted);margin-top:15px}
.news-card .read-more{display:inline-block;font-size:14px;border-bottom:1px solid var(--line);padding:12px 0 5px;margin-top:5px}
.news-feature{display:grid;grid-template-columns:1.2fr 1fr;background:var(--surface);border:1px solid var(--line);margin-bottom:60px}
.news-feature .image-wrap{position:relative;min-height:300px;overflow:hidden}
.news-feature img{position:absolute;inset:0;width:100%;height:100%;filter:saturate(.6);transition:transform .6s}
.news-feature>a:hover img{transform:scale(1.035)}
.feature-copy{padding:30px 36px;display:flex;flex-direction:column;justify-content:center}
.feature-copy .eyebrow{align-self:flex-end;margin:0 0 12px;font-size:11px}
.feature-copy .news-meta{margin:0 0 12px}
.feature-copy h2{font-size:clamp(22px,2vw,30px);font-weight:550;line-height:1.45}
.feature-copy p:not(.eyebrow){font-size:14px;line-height:1.7;color:var(--muted);margin-top:14px}
.feature-copy .text-link{align-self:flex-end;margin-top:16px}
.filters{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.filter-buttons{display:flex;gap:10px;flex-wrap:wrap}
.filter-buttons button{background:transparent;border:1px solid var(--line);padding:9px 18px;font-size:14px}
.filter-buttons button[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}
.search{display:flex;align-items:center;gap:8px;font-size:14px}
.search input{background:var(--surface);border:1px solid var(--line);color:var(--text);padding:10px 12px;width:230px;font-size:14px}
.result-count{font-size:13px;color:var(--muted);margin-bottom:24px}
.empty-state{padding:70px 20px;text-align:center;border:1px dashed var(--line);grid-column:1/-1}
.empty-state h2{font-size:23px}
.empty-state p{margin-top:14px;color:var(--muted)}
.empty-state button{margin-top:24px}
.article-heading{max-width:960px;margin:auto}
.article-heading h1{font-size:clamp(30px,4vw,44px);line-height:1.45}
.article-heading .news-meta{margin-top:30px}
.article-shell{padding:60px var(--pad) 90px;display:grid;grid-template-columns:minmax(0,800px);justify-content:center;gap:70px;max-width:1300px;margin:auto}
.article-body{min-width:0}
.article-cover{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin-bottom:10px}
.image-caption{font-size:12px;color:var(--muted);margin-bottom:35px}
.article-body section{margin-bottom:38px;scroll-margin-top:115px}
.article-body h2{font-size:25px;margin-bottom:18px}
.article-body section p{font-size:18px;line-height:2;color:var(--text)}
.article-body .lead{font-size:18px;line-height:2;color:var(--text);margin-bottom:34px}
.article-body section p+p{margin-top:20px}
.article-body figure{margin:26px 0 38px}
.article-body figure img{width:auto;max-width:100%;height:auto;max-height:min(70vh,720px);margin-inline:auto;aspect-ratio:auto;object-fit:contain;border-radius:2px;filter:saturate(.85)}
.article-body figure figcaption{font-size:12px;color:var(--muted);margin-top:10px;text-align:center}
@media(min-width:761px){.article-cover{width:auto;max-width:100%;max-height:500px;aspect-ratio:auto;object-fit:contain;margin-inline:auto}.image-caption{text-align:center}.article-body figure img{max-height:500px}}
.article-about{border-top:1px solid var(--line);margin-top:45px;padding-top:30px;font-size:14px;color:var(--text);line-height:1.95}
.article-about dl{margin:0}
.article-about dt{font-weight:600;color:var(--text);margin-top:20px}
.article-about dt:first-child{margin-top:0}
.article-about dd{margin:6px 0 0}
.article-end{border-top:1px solid var(--line);padding-top:30px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:1050px){.article-shell{gap:35px;grid-template-columns:minmax(0,1fr)}}
@media(max-width:1050px){.home-news-grid{gap:20px}}
@media(max-width:1050px){.news-feature{grid-template-columns:1fr 1fr}}
@media(max-width:1050px){.feature-copy{padding:25px}}
@media(max-width:760px){.home-news-grid{grid-template-columns:1fr;gap:38px}}
@media(max-width:760px){.news-card .image-wrap{aspect-ratio:16/9}}
@media(max-width:760px){.news-feature{grid-template-columns:1fr}}
@media(max-width:760px){.news-feature .image-wrap{min-height:0;aspect-ratio:16/9}}
@media(max-width:760px){.feature-copy{padding:25px}}
@media(max-width:760px){.filters{align-items:stretch;gap:18px}}
@media(max-width:760px){.filter-buttons{gap:8px}}
@media(max-width:760px){.filter-buttons button{font-size:13px;padding:8px 13px}}
@media(max-width:760px){.search{width:100%}}
@media(max-width:760px){.search input{flex:1;width:0}}
@media(max-width:760px){.article-shell{padding-top:35px;grid-template-columns:1fr;gap:20px}}
@media(max-width:760px){.article-heading h1{font-size:30px}}
@media(max-width:760px){.article-body h2{font-size:23px}}
@media print{.article-shell{display:block;padding:20px}}
.news-empty{grid-column:1/-1;padding:30px 0;color:var(--muted);border-top:1px solid var(--line)}
.news-card img,.news-feature img,.article-cover,.article-body figure img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}
.article-body section h3{font-size:20px;margin:26px 0 14px}.article-body section ul,.article-body section ol{padding-left:1.5em;line-height:2}.article-body section blockquote{border-left:3px solid var(--accent);padding-left:1em;margin:24px 0}.article-body section table{display:block;overflow-x:auto;border-collapse:collapse}.article-body section th,.article-body section td{border:1px solid var(--line);padding:8px 12px}
