/* ============ 基础重置 ============ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  color:#1f2733;background:#fff;line-height:1.7;font-size:16px;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;transition:color .2s}
ul,ol{list-style:none}
img{max-width:100%;display:block}
button{font:inherit;cursor:pointer;border:none;background:none}
time{font-variant-numeric:tabular-nums}

/* ============ 布局 ============ */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.section{padding:80px 0}
.section-light{background:#f6f8fb}
.section-dark{background:#0f1626;color:#eef1f7}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}

/* ============ 头部 ============ */
.site-header{
  position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);border-bottom:1px solid #eef0f4;
}
.nav-box{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:12px}
.logo-mark{
  width:40px;height:40px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(135deg,#2b6cff,#6a5cff);color:#fff;font-weight:800;font-size:15px;
}
.logo-text{display:flex;flex-direction:column;line-height:1.2}
.logo-text strong{font-size:17px;color:#0f1626;letter-spacing:.5px}
.logo-text em{font-size:11px;color:#8a93a3;font-style:normal;letter-spacing:1px}

.main-nav ul{display:flex;gap:6px}
.main-nav a{
  display:block;padding:8px 14px;border-radius:8px;font-size:15px;color:#4a5363;
}
.main-nav a:hover{color:#2b6cff;background:#f2f5ff}
.main-nav li.active a{color:#fff;background:linear-gradient(135deg,#2b6cff,#6a5cff)}

.nav-toggle{display:none;flex-direction:column;gap:5px;padding:8px}
.nav-toggle span{width:24px;height:2px;background:#0f1626;border-radius:2px}

/* ============ 首屏 ============ */
.hero{position:relative;overflow:hidden;padding:90px 0 100px;background:
  radial-gradient(1200px 500px at 80% -10%,rgba(106,92,255,.18),transparent 60%),
  radial-gradient(800px 400px at 0% 20%,rgba(43,108,255,.12),transparent 60%),
  linear-gradient(180deg,#f8faff,#eef3ff)}
.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center}
.hero-tag{color:#2b6cff;font-size:13px;letter-spacing:3px;font-weight:700;margin-bottom:18px}
.hero h1{font-size:44px;line-height:1.25;font-weight:800;letter-spacing:-.5px;color:#0f1626}
.hero-desc{margin:22px 0 32px;font-size:17px;color:#5a6474;max-width:540px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-visual{position:relative;height:360px}

/* 六边形视觉 */
.hex-grid{
  position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(2,1fr);gap:16px;transform:rotate(-6deg);
}
.hex-grid span{
  display:grid;place-items:center;font-weight:700;color:#fff;font-size:18px;
  border-radius:18px;box-shadow:0 18px 40px rgba(43,108,255,.25);
  background:linear-gradient(135deg,rgba(43,108,255,.92),rgba(106,92,255,.92));
  animation:float 6s ease-in-out infinite;
}
.hex-grid span:nth-child(2){animation-delay:.4s;background:linear-gradient(135deg,#4a9dff,#2b6cff)}
.hex-grid span:nth-child(3){animation-delay:.8s;background:linear-gradient(135deg,#6a5cff,#9b5cff)}
.hex-grid span:nth-child(4){animation-delay:1.2s;background:linear-gradient(135deg,#2bb5ff,#2b6cff)}
.hex-grid span:nth-child(5){animation-delay:1.6s;background:linear-gradient(135deg,#5c7bff,#6a5cff)}
.hex-grid span:nth-child(6){animation-delay:2s;background:linear-gradient(135deg,#3a8bff,#6a5cff)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

/* ============ 按钮 ============ */
.btn{display:inline-block;padding:13px 28px;border-radius:10px;font-size:15px;font-weight:600;transition:.25s}
.btn-primary{background:linear-gradient(135deg,#2b6cff,#6a5cff);color:#fff;box-shadow:0 10px 24px rgba(43,108,255,.3)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(43,108,255,.4)}
.btn-ghost{border:1.5px solid #2b6cff;color:#2b6cff}
.btn-ghost:hover{background:#2b6cff;color:#fff}

/* ============ 区块标题 ============ */
.section-head{text-align:center;margin-bottom:56px}
.eyebrow{color:#2b6cff;font-size:13px;letter-spacing:3px;font-weight:700;margin-bottom:10px}
.eyebrow.light{color:#8ea7ff}
.section-head h2{font-size:34px;font-weight:800;color:#0f1626;letter-spacing:-.5px}
.section-dark .section-head h2{color:#fff}
.subtitle{margin-top:12px;color:#6a7383;font-size:16px}

/* ============ 优势卡片 ============ */
.grid-adv{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.adv-card{
  background:#fff;border-radius:16px;padding:32px 26px;border:1px solid #eef0f4;
  box-shadow:0 6px 20px rgba(15,22,38,.04);transition:.3s;
}
.adv-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(43,108,255,.14);border-color:#d6e0ff}
.adv-ic{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;margin-bottom:18px;
  background:linear-gradient(135deg,#eaf1ff,#f0ecff);color:#2b6cff;font-size:20px}
.adv-card h3{font-size:18px;margin-bottom:10px;color:#0f1626}
.adv-card p{color:#6a7383;font-size:14.5px}

/* ============ 业务卡片 ============ */
.grid-biz{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-biz.three{grid-template-columns:repeat(3,1fr)}
.biz-card{
  background:#fff;border-radius:16px;padding:30px 26px;border:1px solid #eef0f4;transition:.3s;
}
.biz-card:hover{border-color:#2b6cff;background:linear-gradient(180deg,#fff,#f7f9ff)}
.biz-card h3{font-size:19px;margin-bottom:12px;color:#0f1626}
.biz-card p{color:#6a7383;font-size:14.5px;margin-bottom:14px}
.biz-card a{color:#2b6cff;font-weight:600;font-size:14px}
.biz-card a:hover{text-decoration:underline}

/* ============ 数据 ============ */
.stat-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.stat-list li{background:#f6f8fb;border-radius:14px;padding:24px;border:1px solid #eef0f4}
.stat-list.big li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.stat-list li b{display:block;font-size:26px;color:#2b6cff;font-weight:800}
.stat-list.big li b{color:#8ea7ff}
.stat-list li span{font-size:14px;color:#6a7383}
.stat-list.big li span{color:#c5cee0}

.lead{font-size:17px;color:#5a6474;margin-bottom:16px}
.section-dark .lead{color:#c5cee0}

/* ============ 资讯 ============ */
.grid-news{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.news-card{background:#fff;border-radius:16px;padding:26px 28px;border:1px solid #eef0f4;transition:.3s}
.news-card:hover{box-shadow:0 16px 36px rgba(43,108,255,.12);transform:translateY(-4px)}
.news-card time{color:#2b6cff;font-size:13px;font-weight:700}
.news-card h3{font-size:18px;margin:8px 0 10px;line-height:1.5}
.news-card h3 a:hover{color:#2b6cff}
.news-card p{color:#6a7383;font-size:14.5px}
.more-row{text-align:center;margin-top:40px}
.more-row a{color:#2b6cff;font-weight:600;font-size:15px}

/* 列表样式 */
.news-list{display:flex;flex-direction:column;gap:0}
.news-item{display:flex;gap:26px;padding:26px 0;border-bottom:1px solid #eef0f4}
.news-item time{flex:0 0 90px;color:#2b6cff;font-weight:700;font-size:14px;padding-top:4px}
.news-item h3{font-size:19px;margin-bottom:8px}
.news-item h3:hover{color:#2b6cff}
.news-item p{color:#6a7383;font-size:15px}
.tag{display:inline-block;margin-top:10px;padding:3px 12px;border-radius:20px;background:#eaf1ff;color:#2b6cff;font-size:12px;font-weight:600}

/* ============ 时间线 ============ */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative}
.timeline::before{content:"";position:absolute;top:24px;left:12.5%;right:12.5%;height:2px;background:linear-gradient(90deg,#2b6cff,#6a5cff)}
.timeline li{position:relative;padding-top:60px}
.timeline time,.timeline li time{
  position:absolute;top:0;left:0;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,#2b6cff,#6a5cff);color:#fff;font-weight:800;font-size:15px;z-index:2;
}
.timeline h3{font-size:17px;margin-bottom:8px;color:#0f1626}
.timeline p{color:#6a7383;font-size:14.5px}

/* ============ CTA ============ */
.cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px;
  background:linear-gradient(135deg,#0f1626,#1a2340);border-radius:20px;padding:46px 50px;color:#fff}
.cta-box h2{font-size:28px;margin:6px 0 10px}
.cta-box p{color:#c5cee0;max-width:560px}

/* ============ 招聘 ============ */
.job-table{border:1px solid #eef0f4;border-radius:16px;overflow:hidden}
.job-row{display:grid;grid-template-columns:2fr 2fr 1fr;padding:18px 24px;align-items:center}
.job-head{background:linear-gradient(135deg,#2b6cff,#6a5cff);color:#fff;font-weight:700}
.job-row:not(.job-head){border-top:1px solid #eef0f4}
.job-row:not(.job-head):hover{background:#f7f9ff}
.job-row span:first-child{font-weight:600;color:#0f1626}

/* ============ 页脚 ============ */
.site-footer{background:#0f1626;color:#c5cee0;padding:60px 0 0}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1.6fr;gap:40px;padding-bottom:40px}
.foot-grid h4{color:#fff;font-size:17px;margin-bottom:16px}
.foot-grid p{font-size:14px;line-height:1.9}
.foot-contact a{color:#8ea7ff}
.foot-links{display:flex;flex-direction:column;gap:8px}
.foot-links a{font-size:14px;color:#c5cee0}
.foot-links a:hover{color:#fff}

.friend-links{padding:22px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:14px}
.fl-label{color:#8ea7ff;font-weight:600;margin-right:4px}
.friend-links a{color:#c5cee0}
.friend-links a:hover{color:#fff}

.copyright{padding:22px 0 34px;text-align:center;font-size:13px;color:#8a93a3}

/* ============ 栏目横幅 ============ */
.page-banner{background:linear-gradient(135deg,#0f1626,#1e2b52);color:#fff;padding:70px 0;text-align:center}
.page-banner h1{font-size:38px;font-weight:800;margin:8px 0 12px}
.banner-desc{color:#c5cee0;font-size:16px}

/* ============ 响应式 ============ */
@media (max-width:960px){
  .hero{padding:60px 0 70px}
  .hero-inner,.two-col,.grid-adv,.grid-biz,.grid-news,.timeline,.foot-grid{grid-template-columns:1fr}
  .grid-biz.three{grid-template-columns:1fr}
  .hero h1{font-size:32px}
  .hero-visual{height:220px}
  .section{padding:56px 0}
  .section-head h2{font-size:27px}
  .section-head{margin-bottom:38px}
  .timeline::before{display:none}
  .timeline li{padding-top:0;padding-left:64px}
  .timeline time,.timeline li time{left:0}
  .cta-box{flex-direction:column;align-items:flex-start;padding:34px 28px}
  .job-row{grid-template-columns:1fr;gap:4px;padding:16px 20px}
  .job-head{display:none}
  .news-item{flex-direction:column;gap:8px}
  .news-item time{flex:none;padding-top:0}
  .foot-grid{gap:28px}
}
@media (max-width:768px){
  .container{padding:0 18px}
  .main-nav{position:fixed;top:72px;left:0;right:0;background:#fff;max-height:0;overflow:hidden;
    transition:.3s;box-shadow:0 12px 30px rgba(15,22,38,.1)}
  .main-nav.open{max-height:420px;padding:14px 0}
  .main-nav ul{flex-direction:column;gap:0;padding:0 18px}
  .main-nav a{padding:14px;border-radius:0;border-bottom:1px solid #eef0f4}
  .main-nav li.active a{border-radius:8px;border-bottom-color:transparent}
  .nav-toggle{display:flex}
  .logo-text strong{font-size:15px}
  .page-banner{padding:50px 0}
  .page-banner h1{font-size:28px}
  .adv-card,.biz-card,.news-card{padding:24px 20px}
}
@media (max-width:480px){
  .hero h1{font-size:26px}
  .section-head h2{font-size:23px}
  .btn{padding:12px 22px;font-size:14px}
}
