/* news.css - Auto extracted */

:root {
  --ac: #4f7df9; --ac-bg: rgba(79,125,249,0.08); --ac-glow: rgba(79,125,249,0.25);
  --pu: #7c3aed; --gn: #22c55e; --or: #f97316; --pk: #ec4899; --cy: #06b6d4;
  --dark: #0f172a; --text: #334155; --text-light: #64748b;
  --white: #fff; --bg: #f8fafc; --border: #e2e8f0;
  --gradient:linear-gradient(135deg, #36c958, #009688);
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; }
body { font-family: 'Noto Sans SC', sans-serif; color: var(--text); background: var(--white); line-height: 1.7; }

@keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }
.anim { opacity:0; }
.anim.visible { animation: fadeUp 0.5s ease forwards; }
.delay-1 { animation-delay: 0.05s; } .delay-2 { animation-delay: 0.1s; } .delay-3 { animation-delay: 0.15s; }
.delay-4 { animation-delay: 0.2s; } .delay-5 { animation-delay: 0.25s; }

/* 导航 */
.nav { position:fixed; top:0; left:0; right:0; z-index:1000; padding:0 48px; height:72px; display:flex; align-items:center; justify-content:space-between; background:rgba(255,255,255,0.95); backdrop-filter:blur(20px); box-shadow:0 2px 20px rgba(0,0,0,0.06); }
.nav-logo img { height:32px; }
.nav-links { display:flex; gap:28px; }
.nav-links a { text-decoration:none; color:var(--text); font-weight:500; font-size:14px; transition:color 0.3s; }
.nav-links a:hover, .nav-links a.active { color:var(--ac); }
.nav-cta { padding:8px 20px; background:var(--gradient); color:var(--white)!important; border-radius:6px; font-weight:500; text-decoration:none; font-size:13px; }
@media(max-width:768px){ .nav{padding:0 16px} }

/* Banner */

        /* ========== 主容器 ym-banner-one ========== */
        .ym-banner-one {
            position: relative;
            width: 100%;
            min-height: 280px;
            margin: 0;
            background: #f8f9fc;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
           /* box-shadow: 0 1px 3px rgba(0,0,0,0.03), 0 4px 12px rgba(0,0,0,0.04);*/
            transition: box-shadow 0.3s ease;
            margin-top: 3%;
        }

        /* 网格背景子元素 */
        .ym-banner-one__grid {
            position: absolute;
            inset: 0;
            z-index: 0;
            background-image:
                linear-gradient(rgba(0, 0, 0, 0.03) 1px, transparent 1px),
                linear-gradient(90deg, rgba(0, 0, 0, 0.03) 1px, transparent 1px);
            background-size: 40px 40px;
            pointer-events: none;
        }

        /* 光晕基础类 */
        .ym-banner-one__glow {
            position: absolute;
            border-radius: 50%;
            pointer-events: none;
            z-index: 1;
            opacity: 0.12;
        }

        /* 光晕变体 1 */
        .ym-banner-one__glow--g1 {
            width: 240px;
            height: 240px;
            background: #4f6ef6;
            top: -40px;
            left: 10%;
            filter: blur(60px);
        }

        /* 光晕变体 2 */
        .ym-banner-one__glow--g2 {
            width: 200px;
            height: 200px;
            background: #b084cc;
            bottom: -50px;
            right: 15%;
            filter: blur(60px);
        }

        /* 内容容器（保留原有 anim / visible 状态类用于动画控制） */
        .ym-banner-one__cnt {
            position: relative;
            z-index: 2;
            text-align: center;
            padding: 3rem 2rem;
            opacity: 0;
            transform: translateY(18px);
            transition: opacity 0.7s cubic-bezier(0.23, 1, 0.32, 1),
                        transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
        }

        /* 可见状态：与 .anim.visible 组合（如需修改类名请同步替换） */
        .ym-banner-one__cnt.anim.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* 主标题 */
        .ym-banner-one__title {
            font-size: clamp(2.8rem, 7vw, 3.4rem);
            font-weight: 600;
            letter-spacing: -0.03em;
            color: #1a1a2e;
            margin-bottom: 0.8rem;
            line-height: 1.15;
        }

        .ym-banner-one__title span {
            background:linear-gradient(135deg, #36c958, #009688);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-weight: 700;
            margin-left: 0.1em;
        }

        /* 辅助描述 */
        .ym-banner-one__desc {
            font-size: 1.00rem;
            font-weight: 400;
            color: #5b6078;
            letter-spacing: 0.03em;
            max-width: 500px;
            margin: 0 auto;
            line-height: 1.6;
        }

        /* 底部装饰线（伪元素保持简洁） */
        .ym-banner-one::after {
            content: '';
            position: absolute;
            bottom: 28px;
            left: 50%;
            transform: translateX(-50%);
            width: 80px;
            height: 2px;
            background: linear-gradient(90deg, #cbd5e1, #94a3b8, #cbd5e1);
            border-radius: 2px;
            z-index: 3;
            opacity: 0.5;
        }

        /* 响应式 */
        @media (max-width: 600px) {
            .ym-banner-one {
                min-height: 280px;
            }
            .ym-banner-one__title {
                font-size: 2.2rem;
            }
            .ym-banner-one__desc {
                font-size: 0.95rem;
                max-width: 90%;
            }
        }
/*.banner { padding:150px 48px 60px; background:linear-gradient(135deg, #0f172a 0%, #1e293b 100%); position:relative; overflow:hidden; }
.banner-glow { position:absolute; width:400px; height:400px; border-radius:50%; filter:blur(100px); opacity:0.3; }
.banner-glow.g1 { top:-100px; right:-50px; background:var(--ac); }
.banner-glow.g2 { bottom:-100px; left:-50px; background:var(--pu); }
.banner-cnt { max-width:1200px; margin:0 auto; position:relative; z-index:1; }
.banner-title { font-size:42px; font-weight:900; color:var(--white); margin-bottom:12px; }
.banner-title span { background:var(--gradient); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.banner-desc { font-size:16px; color:rgba(255,255,255,0.6); }
@media(max-width:768px){ .banner{padding:80px 20px 40px} .banner-title{font-size:28px} }*/

/* 分类 */
.tabs { padding:20px 48px; background:var(--white); border-bottom:1px solid var(--border);/* position:sticky;*/ top:72px; z-index:100; }
.tabs-cnt { max-width:1200px; margin:0 auto; display:flex; gap:8px; }
.tab { padding:8px 20px; background:var(--bg); border:none; border-radius:20px; font-size:13px; font-weight:500; color:var(--text); cursor:pointer; transition:all 0.3s; }
.tab:hover { background:var(--ac-bg); color:var(--ac); }
.tab.active { background:var(--gradient); color:var(--white); }
@media(max-width:768px){ .tabs{padding:16px} .tabs-cnt{overflow-x:auto} }

/* 新闻列表 */
.section { padding:48px; }
.container { max-width:1200px; margin:0 auto; }

/* 置顶新闻 - 大图 */
.featured { margin-bottom:32px; }
.featured-card { display:grid; grid-template-columns:1.2fr 1fr; gap:32px; background:var(--white); border-radius:20px; overflow:hidden; border:1px solid var(--border); text-decoration:none; transition:all 0.4s; }
.featured-card:hover { transform:translateY(-6px); box-shadow:0 20px 50px rgba(0,0,0,0.1); }
.featured-img { height:100%; min-height:300px; }
.featured-img img { width:100%; height:100%; object-fit:cover; }
.featured-body { padding:32px; display:flex; flex-direction:column; justify-content:center; }
.featured-cat { display:inline-flex; padding:4px 12px; background:var(--ac); color:var(--white); border-radius:4px; font-size:11px; font-weight:600; margin-bottom:12px; width:fit-content; }
.featured-title { font-size:24px; font-weight:700; color:var(--dark); margin-bottom:12px; line-height:1.4; transition:color 0.3s; }
.featured-card:hover .featured-title { color:var(--ac); }
.featured-desc { font-size:15px; color:var(--text-light); line-height:1.7; margin-bottom:16px; }
.featured-meta { display:flex; gap:20px; font-size:13px; color:var(--text-light); }
@media(max-width:1024px){ .featured-card{grid-template-columns:1fr} .featured-img{min-height:200px} }

/* 新闻网格 */
.news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.news-card { background:var(--white); border-radius:16px; overflow:hidden; border:1px solid var(--border); text-decoration:none; transition:all 0.4s; display:block; }
.news-card:hover { transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,0,0,0.08); border-color:transparent; }
.news-img { height:180px; overflow:hidden; }
.news-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s; }
.news-card:hover .news-img img { transform:scale(1.06); }
.news-body { padding:20px; }
.news-cat { display:inline-flex; padding:3px 10px; background:var(--ac-bg); color:var(--ac); border-radius:4px; font-size:11px; font-weight:600; margin-bottom:10px; }
.news-title { font-size:16px; font-weight:700; color:var(--dark); margin-bottom:8px; line-height:1.5; transition:color 0.3s; }
.news-card:hover .news-title { color:var(--ac); }
.news-desc { font-size:13px; color:var(--text-light); line-height:1.6; margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.news-meta { display:flex; justify-content:space-between; font-size:12px; color:var(--text-light); }
@media(max-width:1024px){ .news-grid{grid-template-columns:repeat(2,1fr)} }
@media(max-width:768px){ .section{padding:24px 16px} .news-grid{grid-template-columns:1fr} }

/* 加载更多 */
.load-more { text-align:center; padding:40px 0 60px; }
.load-btn { padding:14px 48px; background:var(--white); border:2px solid var(--ac); color:var(--ac); border-radius:10px; font-size:15px; font-weight:600; cursor:pointer; transition:all 0.3s; }
.load-btn:hover { background:var(--ac); color:var(--white); }

/* CTA */
.cta { background:var(--gradient); padding:60px 48px; text-align:center; }
.cta h2 { font-size:32px; font-weight:900; color:var(--white); margin-bottom:12px; }
.cta p { font-size:15px; color:rgba(255,255,255,0.85); margin-bottom:24px; }
.cta-btn { display:inline-flex; align-items:center; gap:8px; padding:14px 32px; background:var(--white); color:var(--ac); border-radius:10px; font-size:15px; font-weight:600; text-decoration:none; transition:all 0.3s; }
.cta-btn:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(0,0,0,0.2); }

/* Footer */
.footer { background:#0f172a; padding:48px; text-align:center; }
.footer p { font-size:13px; color:#64748b; }
.footer img { height:28px; margin-bottom:12px; }
