/* page-news.css */
.filter-btn { padding:7px 18px; border-radius:20px; border:1px solid var(--border); background:white; color:var(--text2); font-size:13px; cursor:pointer; transition:.2s; font-family:inherit; }
.filter-btn:hover, .filter-btn.active { background:var(--blue); color:white; border-color:var(--blue); }
.news-card { background:white; border-radius:16px; border:1px solid var(--border); overflow:hidden; transition:all .3s; text-decoration:none; display:block; }
.news-card:hover { transform:translateY(-5px); box-shadow:0 16px 40px rgba(46,143,212,.12); }
.news-card-img { height:180px; background:linear-gradient(135deg,var(--blue-pale),var(--green-pale)); display:flex; align-items:center; justify-content:center; font-size:52px; }
.news-card-body { padding:20px; }
.news-cat { font-size:11px; color:var(--blue); letter-spacing:2px; font-weight:600; margin-bottom:8px; }
.news-title { font-family:"Noto Serif SC",serif; font-size:16px; font-weight:700; color:var(--text); line-height:1.5; margin-bottom:10px; }
.news-summary { font-size:13px; color:var(--text2); line-height:1.7; margin-bottom:14px; }
.news-meta { display:flex; align-items:center; justify-content:space-between; font-size:12px; color:var(--text3); }
.news-more { color:var(--blue); }
.pg-dot { width:36px; height:36px; border-radius:10px; border:1px solid var(--border); background:white; color:var(--text2); cursor:pointer; font-size:13px; transition:.2s; font-family:inherit; }
.pg-dot:hover, .pg-dot.active { background:var(--blue); color:white; border-color:var(--blue); }
@media(max-width:768px){ #newsArticleGrid{ grid-template-columns:1fr !important; } }
