/* ===== 基础重置 ===== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
    --primary:#1a56c4;
    --primary-dark:#1547a0;
    --primary-light:#e8f0ff;
    --text:#1a1a2e;
    --text-soft:#555;
    --text-muted:#999;
    --bg:#ffffff;
    --bg-soft:#f5f7fa;
    --bg-card:#ffffff;
    --border:#e8e8e8;
    --radius:8px;
    --shadow:0 2px 12px rgba(0,0,0,0.06);
    --shadow-lg:0 8px 32px rgba(0,0,0,0.1);
    --container:1200px;
    --header-h:64px;
    --transition:all 0.3s ease;
}
html{scroll-behavior:smooth}
body{
    font-family:-apple-system,BlinkMacSystemFont,"Microsoft YaHei","PingFang SC",sans-serif;
    font-size:15px;color:var(--text);background:var(--bg);line-height:1.7;
}
a{color:var(--primary);text-decoration:none;transition:var(--transition)}
a:hover{color:var(--primary-dark)}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
.container{max-width:var(--container);margin:0 auto;padding:0 20px}

/* ===== 主内容区 ===== */
.site-main{display:block;margin-top:var(--header-h)}

/* ===== 顶部导航 ===== */
.site-header{
    position:fixed;top:0;left:0;right:0;height:var(--header-h);
    background:rgba(255,255,255,0.95);backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);z-index:1000;
}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:100%}
.logo-text{font-size:20px;font-weight:700;color:var(--text);letter-spacing:0.5px}
.main-nav ul{display:flex;gap:4px}
.main-nav li a{
    display:block;padding:8px 16px;font-size:15px;color:var(--text-soft);
    border-radius:var(--radius);font-weight:500;
}
.main-nav li a:hover,.main-nav li a.active{color:var(--primary);background:var(--primary-light)}
.mobile-menu-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:8px}
.mobile-menu-toggle span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:var(--transition)}

/* ===== 首页Banner ===== */
.hero-slider{position:relative;height:520px;overflow:hidden;background:var(--bg-soft)}
.hero-slide{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    opacity:0;transition:opacity 0.8s ease;background-size:cover;background-position:center;
}
.hero-slide.active{opacity:1}
.hero-slide::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,0.35)}
.hero-content{position:relative;z-index:2;text-align:center;color:#fff;padding:0 20px}
.hero-content h2{font-size:42px;font-weight:700;margin-bottom:16px;text-shadow:0 2px 8px rgba(0,0,0,0.3)}
.hero-content p{font-size:18px;opacity:0.95;margin-bottom:24px;text-shadow:0 1px 4px rgba(0,0,0,0.3)}
.hero-content .btn-hero{
    display:inline-block;padding:12px 36px;background:var(--primary);color:#fff;
    border-radius:40px;font-size:16px;font-weight:600;border:none;cursor:pointer;
    transition:var(--transition);box-shadow:0 4px 16px rgba(26,86,196,0.4);
}
.hero-content .btn-hero:hover{background:var(--primary-dark);color:#fff;transform:translateY(-2px)}
.slider-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.slider-dots button{width:10px;height:10px;border-radius:50%;border:none;background:rgba(255,255,255,0.5);cursor:pointer;transition:var(--transition)}
.slider-dots button.active{background:#fff;width:28px;border-radius:5px}

/* 静态Banner（无幻灯片时） */
.hero-static{
    height:420px;
    background:linear-gradient(135deg,#1a56c4 0%,#2d72e0 50%,#3a87f0 100%);
    display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;
}
.hero-static h2{font-size:40px;font-weight:700;margin-bottom:12px}
.hero-static p{font-size:18px;opacity:0.9;margin-bottom:24px}
.hero-static .btn-hero{background:#fff;color:var(--primary)}
.hero-static .btn-hero:hover{background:#f0f0f0;color:var(--primary-dark)}

/* ===== 通用区块 ===== */
.section{padding:72px 0}
.section-alt{background:var(--bg-soft)}
.section-title{text-align:center;margin-bottom:48px}
.section-title h2{font-size:32px;font-weight:700;color:var(--text);margin-bottom:8px}
.section-title p{font-size:15px;color:var(--text-muted)}

/* ===== 公司简介 ===== */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.about-text h3{font-size:24px;font-weight:600;margin-bottom:16px;color:var(--text)}
.about-text p{font-size:15px;color:var(--text-soft);margin-bottom:12px;line-height:1.8}
.about-img{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg)}
.about-img img{width:100%;height:360px;object-fit:cover}

/* ===== 核心业务卡片 ===== */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.service-card{
    background:var(--bg-card);border-radius:var(--radius);padding:32px 24px;
    text-align:center;box-shadow:var(--shadow);transition:var(--transition);
    border:1px solid transparent;
}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-light)}
.service-icon{
    width:64px;height:64px;margin:0 auto 20px;border-radius:16px;
    background:var(--primary-light);display:flex;align-items:center;justify-content:center;
    font-size:28px;color:var(--primary);
}
.service-card h3{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--text)}
.service-card p{font-size:14px;color:var(--text-soft);line-height:1.6}

/* ===== 最新动态 ===== */
.news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.news-card{
    background:var(--bg-card);border-radius:var(--radius);overflow:hidden;
    box-shadow:var(--shadow);transition:var(--transition);display:flex;flex-direction:column;
}
.news-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.news-img{width:100%;height:180px;object-fit:cover;background:var(--bg-soft)}
.news-body{padding:20px;flex:1;display:flex;flex-direction:column}
.news-body h3{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text);line-height:1.5}
.news-body p{font-size:13px;color:var(--text-soft);flex:1;margin-bottom:12px;line-height:1.5}
.news-date{font-size:12px;color:var(--text-muted)}

/* ===== 友情链接 ===== */
.partner-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}
.partner-grid a{
    display:inline-block;padding:8px 16px;background:var(--bg-card);
    border:1px solid var(--border);border-radius:var(--radius);
    font-size:13px;color:var(--text-soft);transition:var(--transition);
}
.partner-grid a:hover{border-color:var(--primary);color:var(--primary)}

/* ===== 底部 ===== */
.site-footer{background:#1a1a2e;color:rgba(255,255,255,0.7);padding:48px 0 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:32px;padding-bottom:32px}
.footer-col h4{font-size:15px;font-weight:600;color:#fff;margin-bottom:16px}
.footer-col p{font-size:13px;margin-bottom:8px;line-height:1.6}
.footer-col ul li{margin-bottom:8px}
.footer-col ul li a{font-size:13px;color:rgba(255,255,255,0.6);transition:var(--transition)}
.footer-col ul li a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:20px 0;text-align:center}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,0.4)}
.footer-bottom a{color:rgba(255,255,255,0.4)}
.footer-bottom a:hover{color:rgba(255,255,255,0.7)}

/* ===== 响应式 ===== */
@media(max-width:768px){
    .main-nav{display:none;position:fixed;top:var(--header-h);left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:16px;box-shadow:var(--shadow-lg)}
    .main-nav.open{display:block}
    .main-nav ul{flex-direction:column;gap:0}
    .main-nav li a{padding:12px 16px;border-radius:0}
    .mobile-menu-toggle{display:flex}
    .hero-slider,.hero-static{height:320px}
    .hero-content h2,.hero-static h2{font-size:28px}
    .hero-content p,.hero-static p{font-size:15px}
    .about-grid{grid-template-columns:1fr;gap:24px}
    .about-img img{height:240px}
    .section{padding:48px 0}
    .section-title h2{font-size:24px}
    .footer-grid{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:480px){
    .footer-grid{grid-template-columns:1fr}
}

/* flag 文档属性角标 */
.flag-badges{display:inline-flex;gap:4px;margin-left:8px;vertical-align:middle}
.flag-badge{display:inline-block;padding:1px 7px;border-radius:4px;font-size:12px;line-height:1.8;color:#fff;font-weight:600}
.flag-h{background:#e63946}.flag-r{background:#1d4ed8}.flag-a{background:#f59e0b}
.flag-c{background:#8b5cf6}.flag-s{background:#0ea5e9}.flag-p{background:#10b981}.flag-b{background:#64748b}
.flag-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0 22px;font-size:13px;color:var(--text-muted)}
.flag-filter a{padding:3px 12px;border:1px solid var(--border);border-radius:14px;color:var(--text-soft);transition:var(--transition)}
.flag-filter a:hover{color:var(--primary);border-color:var(--primary)}
.flag-filter a.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.flag-filter .ff-label{margin-right:2px}
/* 顶部搜索框 */
.search-form{display:flex;align-items:center;gap:6px;margin-left:auto}
.search-form input{height:36px;padding:0 12px;border:1px solid var(--border);border-radius:18px;font-size:13px;background:var(--bg-card);color:var(--text);width:160px}
.search-form input:focus{outline:none;border-color:var(--primary)}
.search-form button{height:36px;padding:0 14px;border:0;border-radius:18px;background:var(--primary);color:#fff;font-size:13px;cursor:pointer}
@media(max-width:768px){.search-form input{width:120px}}
/* 文章页标签 */
.article-tags{margin-top:24px;padding-top:18px;border-top:1px solid var(--border);font-size:13px;color:var(--text-muted)}
.article-tags .at-label{margin-right:4px}
.article-tags a{display:inline-block;margin:0 6px 6px 0;padding:3px 12px;background:var(--primary-light);color:var(--primary);border-radius:14px;transition:var(--transition)}
.article-tags a:hover{background:var(--primary);color:#fff}
