:root{
  --brand:#1261ff;
  --brand-2:#0b4fd8;
  --brand-soft:#edf4ff;
  --ink:#101828;
  --text:#344054;
  --muted:#667085;
  --line:#e7edf5;
  --soft:#f7f9fc;
  --navy:#0c1730;
  --white:#fff;
  --shadow:0 18px 55px rgba(16,36,74,.09);
  --shadow-sm:0 10px 30px rgba(16,36,74,.07);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;transition:.2s ease}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(1200px,calc(100% - 48px));margin:auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px 14px;border-radius:8px;box-shadow:var(--shadow-sm)}

/* topbar */
.top{background:var(--navy);color:#c9d5e9;font-size:13px;letter-spacing:.1px}
.top .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:22px}

/* header */
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(160%) blur(16px);border-bottom:1px solid rgba(231,237,245,.95)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:850;font-size:20px;white-space:nowrap}
.mark{width:44px;height:44px;border-radius:12px;color:#fff;display:grid;place-items:center;font-weight:900;}
.brand small{display:block;font-size:10px;color:#98a2b3;letter-spacing:1.7px;font-weight:700;line-height:1.2;margin-top:2px}
.links{display:flex;align-items:center;gap:22px;font-size:15px;font-weight:600}
.links>a:not(.phone){position:relative;padding:27px 0 25px;color:#344054}
.links>a:not(.phone):after{content:"";position:absolute;left:50%;right:50%;bottom:15px;height:2px;background:var(--brand);border-radius:3px;transition:.2s ease}
.links>a:not(.phone):hover,.links>a.active{color:var(--brand)}
.links>a:not(.phone):hover:after,.links>a.active:after{left:0;right:0}
.phone{padding:10px 15px;border-radius:10px;background:var(--brand);color:#fff!important;font-weight:800;box-shadow:0 8px 20px rgba(18,97,255,.2)}
.phone:hover{transform:translateY(-1px);background:var(--brand-2)}
.menu{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;width:44px;height:44px;font-size:24px;color:#344054;cursor:pointer}

/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(118deg,#f9fbff 0%,#eef5ff 55%,#f7faff 100%);border-bottom:1px solid #e6edf7}
.hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-250px;background:radial-gradient(circle,rgba(18,97,255,.14),rgba(18,97,255,0) 68%)}
.hero:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;left:-200px;bottom:-250px;background:radial-gradient(circle,rgba(86,137,255,.10),rgba(86,137,255,0) 70%)}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center;padding:78px 0 72px}
.eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--brand);font-weight:850;letter-spacing:.8px;text-transform:uppercase}
.eyebrow:before,.kicker:before{content:"";width:20px;height:2px;border-radius:3px;background:var(--brand)}
.hero h1{font-size:50px;line-height:1.16;letter-spacing:-1.5px;margin:14px 0 20px;color:#0b1328}
.hero h1 span{color:var(--brand)}
.hero p{font-size:18px;color:#526177;max-width:740px;margin:0}
.actions{display:flex;gap:12px;margin:30px 0 0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 21px;border:1px solid var(--brand);border-radius:11px;font-weight:800}
.btn.primary{background:var(--brand);color:#fff;box-shadow:0 10px 25px rgba(18,97,255,.20)}
.btn.primary:hover{transform:translateY(-2px);background:var(--brand-2)}
.btn.light{background:#fff;color:var(--brand);box-shadow:0 6px 20px rgba(16,36,74,.04)}
.btn.light:hover{background:var(--brand-soft);transform:translateY(-2px)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}
.stat{background:rgba(255,255,255,.82);border:1px solid rgba(218,228,241,.96);border-radius:14px;padding:18px 18px 16px;box-shadow:0 8px 26px rgba(16,36,74,.045)}
.stat b{display:block;font-size:27px;line-height:1.15;color:#0d1830}.stat span{font-size:13px;color:#7a8799}
.hero-card{position:relative;background:rgba(255,255,255,.9);border:1px solid rgba(214,225,239,.98);border-radius:22px;padding:30px;box-shadow:var(--shadow);overflow:hidden}
.hero-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--brand),#7aa0ff)}
.hero-card h2{font-size:24px;line-height:1.35;margin:0 0 8px}.hero-card>p{font-size:14px;color:#66758a;margin:0 0 20px}
.history{display:grid;grid-template-columns:1fr 48px 1fr;align-items:center;gap:10px}
.year{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fbfcfe}
.year b{display:block;font-size:31px;line-height:1;color:var(--brand);margin-bottom:8px}.year strong{font-size:14px}.year p{font-size:12px!important;color:#7b8798!important;margin:6px 0 0!important;line-height:1.6}
.arrow{text-align:center;font-size:24px;color:#9aa8bc}
.proof-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}
.proof{background:#f5f8fd;border:1px solid #edf1f6;border-radius:11px;padding:13px;font-size:12px;color:#728095}.proof b{font-size:13px;color:#26354b}

/* sections */
.section{padding:78px 0}
.soft{background:linear-gradient(180deg,#f8fafd,#f5f8fc)}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:34px;margin-bottom:34px}
.head h2{font-size:34px;line-height:1.25;letter-spacing:-.5px;margin:7px 0 0;color:#101828}
.head p{max-width:540px;color:#6b778b;margin:0}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px;box-shadow:0 5px 20px rgba(16,36,74,.035);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#d8e4f3}
.card h3{margin:9px 0 10px;font-size:21px;line-height:1.35}.card p{color:#68758a;margin:0 0 12px}
.tag{display:inline-flex;align-items:center;font-size:12px;font-weight:800;color:var(--brand);background:var(--brand-soft);border:1px solid #dfeaff;border-radius:999px;padding:5px 11px}
.service{position:relative;overflow:hidden;padding:30px}
.service:before{content:"";position:absolute;right:-36px;top:-52px;width:150px;height:150px;border-radius:50%;background:linear-gradient(145deg,#eef4ff,#f9fbff)}
.service h3{font-size:25px}.service ul{padding-left:19px;color:#47546a;margin:16px 0 20px}.service li{margin:7px 0}.more{display:inline-flex;align-items:center;color:var(--brand);font-weight:800}.more:hover{gap:4px;color:var(--brand-2)}
.principle{border-top:4px solid var(--brand);padding-top:22px}.principle>b{font-size:30px;color:#dbe6f7;letter-spacing:-1px}.principle h3{margin-top:-2px}

/* cases */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.case{position:relative;min-height:205px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:linear-gradient(145deg,#111f3b,#2857a4);color:#fff;border-radius:18px;padding:25px;box-shadow:0 12px 32px rgba(25,49,91,.14);transition:.25s ease}
.case:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-60px;top:-70px;background:rgba(255,255,255,.08)}
.case:after{content:"";position:absolute;width:95px;height:95px;border-radius:18px;right:22px;bottom:22px;border:1px solid rgba(255,255,255,.11);transform:rotate(18deg)}
.case:nth-child(even){background:linear-gradient(145deg,#26344b,#576d91)}
.case:nth-child(3n){background:linear-gradient(145deg,#133c56,#1b7792)}
.case:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(25,49,91,.2)}
.case small,.case h3{position:relative;z-index:2}.case small{opacity:.76}.case h3{margin:5px 0 0;font-size:20px;line-height:1.45;max-width:82%}

/* knowledge */
.news-cols{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.newsbox{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 7px 24px rgba(16,36,74,.045)}
.news-title{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;background:linear-gradient(110deg,#0d1930,#172a4c);color:#fff}.news-title h3{margin:0;font-size:20px}.news-title a{font-size:13px;color:#cfe0ff}.news-title a:hover{color:#fff}
.news-list a{display:grid;grid-template-columns:78px 1fr;gap:16px;padding:18px 21px;border-top:1px solid #edf1f5;background:#fff}.news-list a:first-child{border-top:0}.news-list a:hover{background:#f8fbff}.date{font-size:12px;color:#8b97a9;line-height:1.6}.news-list b{display:block;line-height:1.5;color:#26354a}.news-list p{margin:6px 0 0;color:#7a8697;font-size:13px;line-height:1.65}

/* FAQ */
.faq{border:1px solid var(--line);border-radius:18px;background:#fff;padding:0 24px;box-shadow:0 6px 24px rgba(16,36,74,.035)}
.faq details{border-top:1px solid #e9eef4;padding:18px 0}.faq details:first-child{border-top:0}.faq summary{font-weight:800;cursor:pointer;list-style:none;position:relative;padding-right:34px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:2px;top:-4px;font-size:25px;color:var(--brand);font-weight:400}.faq details[open] summary:after{content:"−"}.faq p{color:#69768a;margin:12px 0 2px}

/* page header */
.bread{font-size:13px;color:#7c889b;margin:18px auto}.bread a:hover{color:var(--brand)}
.page-hero{position:relative;overflow:hidden;padding:60px 0;background:linear-gradient(118deg,#f7faff,#eef5ff);border-bottom:1px solid #e3ebf5}
.page-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-220px;background:radial-gradient(circle,rgba(18,97,255,.13),rgba(18,97,255,0) 70%)}
.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:42px;line-height:1.25;letter-spacing:-.7px;margin:9px 0 14px}.page-hero p{font-size:17px;color:#5f6d82;max-width:900px;margin:0}
.content{padding:58px 0 76px}.article{max-width:920px}.article h2{font-size:29px;line-height:1.35;margin:42px 0 14px;padding-top:2px;color:#142033}.article h2:first-child{margin-top:0}.article h3{font-size:21px;margin:28px 0 10px}.article p,.article li{font-size:17px;color:#3a465b}.article p{margin:12px 0}.article li{margin:8px 0}.article ul,.article ol{padding-left:24px}.article .lead{font-size:19px;color:#29364b;background:#f7faff;border-left:4px solid var(--brand);padding:16px 18px;border-radius:0 12px 12px 0}.article strong,.article b{color:#1a2940}.article .card p{font-size:15px}.meta{color:#8792a3;font-size:13px;margin-top:10px}
.notice{background:#fff8e9;border:1px solid #f2dfb5;border-radius:12px;padding:15px 17px;color:#75581f}

/* archives / side */
.archive{border-top:1px solid var(--line)}
.archive>a{display:block;padding:21px 2px;border-bottom:1px solid var(--line);transition:.2s ease}.archive>a:hover{padding-left:8px;background:linear-gradient(90deg,#f9fbff,transparent)}.archive a b{font-size:18px;color:#26354a}.archive a p{margin:6px 0 0;color:#778397}
.two-col{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:44px}
.side{border:1px solid var(--line);border-radius:16px;padding:22px;align-self:start;position:sticky;top:108px;background:#fff;box-shadow:0 6px 24px rgba(16,36,74,.04)}.side h3{margin:0 0 10px}.side a{display:block;padding:10px 0;border-top:1px solid #edf1f5;color:#4c5a70}.side a:first-of-type{border-top:0}.side a:hover{color:var(--brand);padding-left:4px}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-item{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff;box-shadow:0 7px 24px rgba(16,36,74,.04)}.contact-item b{display:block;font-size:20px;margin-bottom:4px}

/* yqlj */
.yqlj{ padding-bottom:25px;}
.yqlj a{ padding-right:10px;}
.yqlj a:hover{ color:#003366}

/* footer */
.footer{position:relative;overflow:hidden;background:#0d1830;color:#c7d1e2;padding:58px 0 24px}.footer:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;bottom:-260px;background:radial-gradient(circle,rgba(72,124,230,.16),rgba(72,124,230,0) 68%)}.footer .container{position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:1.55fr 1fr 1fr 1fr;gap:34px}.footer h3,.footer h4{color:#fff;margin-top:0}.footer h3{font-size:21px}.footer h4{font-size:15px;letter-spacing:.2px}.footer a{display:block;margin:8px 0;color:#c3ccdb}.footer a:hover{color:#fff;transform:translateX(3px)}.footer p{color:#aeb9ca;font-size:14px}.footer span{color:#9ba9bd}.footline{border-top:1px solid #2b3851;margin-top:32px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#93a1b7}

/*pager*/
.pager {text-align: center; margin: 20px 0;}
.pager ul {display: flex; flex-wrap: wrap; justify-content: center}
.pager ul li {display: inline-block;}
.pager ul li a {padding: 10px 15px; margin: 2px 5px; border: #dddddd solid 1px; display: inline-block; font-size:16px;}
.pager ul li a:hover {border: #004781 solid 1px; color: #004781}
.pager ul .active a {border: #004781 solid 1px; display: inline-block; background-color: #004781; color: #fff;}
.pager ul a:not([href]):not([class]):hover {border: #dddddd solid 1px;}
.pager ul .active a:hover {color: #fff; border: #004781 solid 1px !important;}

/* mobile */
@media(max-width:980px){
  .links{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;padding:14px 24px 20px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);box-shadow:0 20px 35px rgba(16,36,74,.08)}
  .links.open{display:flex}.links>a:not(.phone){padding:12px 2px;border-bottom:1px solid #eef2f6}.links>a:not(.phone):after{display:none}.phone{text-align:center;margin-top:12px}.menu{display:grid;place-items:center}
  .hero-inner{grid-template-columns:1fr;gap:34px;padding:58px 0}.hero h1{font-size:44px}.grid4,.grid3,.case-grid{grid-template-columns:repeat(2,1fr)}.news-cols,.two-col,.contact-grid{grid-template-columns:1fr}.side{position:static}.footer-grid{grid-template-columns:1fr 1fr}.head{align-items:flex-start;flex-direction:column}.history{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}
}
@media(max-width:640px){
  .container{width:min(100% - 28px,1200px)}.top .container{min-height:34px}.top .container span:last-child{display:none}.nav{height:68px}.links{top:68px}.brand{font-size:17px}.mark{width:40px;height:40px;border-radius:10px}.hero-inner{padding:44px 0}.hero h1,.page-hero h1{font-size:32px;letter-spacing:-.5px}.hero p,.page-hero p{font-size:16px}.stats,.grid2,.grid3,.grid4,.case-grid,.footer-grid,.proof-list{grid-template-columns:1fr}.section{padding:52px 0}.head{margin-bottom:24px}.head h2{font-size:28px}.hero-card{padding:22px}.service{padding:24px}.news-list a{grid-template-columns:64px 1fr;padding:16px}.footline{flex-direction:column}.actions{flex-direction:column}.btn{width:100%}.page-hero{padding:46px 0}.content{padding:44px 0 58px}.article h2{font-size:25px;margin-top:34px}.article p,.article li{font-size:16px}.article .lead{font-size:17px}.case{min-height:170px}.footer{padding-top:48px}
}
