/* ============================================================
   华起科技（黑龙江）有限公司 huaqi.world · 品牌官网样式
   科技蓝 #1A6DE8 / 深蓝 #0A2A63 / 青色 #19C6E6 + 品牌梅红 #B41226
   ============================================================ */
:root{
  /* 品牌梅红 —— 点缀色（logo、少量强调、品牌锚点） */
  --red:#B41226; --red-2:#8E101C; --red-3:#E0364B; --red-soft:#FBEDEE;
  /* 科技蓝 —— 主色系 */
  --blue:#1A6DE8; --blue-2:#0B3D91; --blue-3:#3E95FF; --blue-soft:#E9F2FF;
  --cyan:#19C6E6; --cyan-soft:#DCFAFF;
  --navy:#061A38; --navy-2:#0A2A63; --navy-3:#0E3A7E;
  /* 中性色 */
  --silver:#C9CCD2; --ink:#12263F; --gray:#5B6B7E; --light:#93A2B4;
  --paper:#F3F7FC; --line:#E2EAF4; --white:#fff;
  --shadow:0 14px 40px rgba(16,52,108,.09);
  --shadow-hover:0 22px 54px rgba(26,109,232,.18);
  --radius:16px;
  --maxw:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:"Microsoft YaHei","PingFang SC","Hiragino Sans GB","Segoe UI",Arial,sans-serif;
  color:var(--ink);background:var(--white);line-height:1.7;font-size:16px;
  -webkit-font-smoothing:antialiased;
}
.lang-en{font-size:15px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}

/* ---------- 按钮 ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 30px;border-radius:999px;
  font-weight:700;font-size:15px;letter-spacing:.06em;border:1.5px solid transparent;
  cursor:pointer;transition:.25s;white-space:nowrap}
.btn-primary{background:linear-gradient(120deg,var(--blue-3),var(--blue) 55%,var(--blue-2));color:#fff;
  box-shadow:0 12px 26px rgba(26,109,232,.30)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(26,109,232,.42)}
.btn-ghost{border-color:rgba(255,255,255,.65);color:#fff}
.btn-ghost:hover{background:#fff;color:var(--blue-2)}
.btn-dark{border-color:var(--blue-2);color:var(--blue-2)}
.btn-dark:hover{background:var(--ink);color:#fff}
.btn .arr{transition:transform .25s}
.btn:hover .arr{transform:translateX(4px)}

/* ---------- 头部 ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:.3s}
.site-header.scrolled{box-shadow:0 6px 24px rgba(28,26,30,.08);border-color:var(--line)}
.header-inner{display:flex;align-items:center;height:74px;gap:22px}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand-logo{width:46px;height:46px}
.brand-txt{display:flex;flex-direction:column;line-height:1.25}
.brand-cn{font-weight:900;font-size:15px;letter-spacing:.02em;white-space:nowrap}
.brand-en{font-size:8.5px;letter-spacing:.24em;color:var(--light);font-weight:700}
.brand-short{display:none}
.main-nav{display:flex;gap:2px;margin-left:auto}
.main-nav a{padding:9px 11px;font-size:14.5px;font-weight:600;color:#3A4A5F;border-radius:8px;
  position:relative;transition:.2s;white-space:nowrap}
.main-nav a:hover{color:var(--blue)}
.main-nav a.on{color:var(--blue)}
.main-nav a.on::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:22px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--blue-3),var(--cyan))}
.header-right{display:flex;align-items:center;gap:14px;flex:none}
.lang-switch{font-size:13px;font-weight:700;color:var(--gray);border:1px solid var(--line);
  border-radius:999px;padding:6px 14px;transition:.2s}
.lang-switch:hover{color:var(--blue);border-color:var(--blue)}
.header-cta{background:linear-gradient(120deg,var(--blue-3),var(--blue-2));color:#fff;font-size:14px;font-weight:700;padding:9px 20px;border-radius:999px;transition:.25s}
.header-cta:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(26,109,232,.35)}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.nav-toggle span{width:24px;height:2.5px;background:var(--ink);border-radius:2px;transition:.3s}
.nav-toggle.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ---------- HERO ---------- */
.hero{position:relative;color:#fff;overflow:hidden;
  background:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(150deg,var(--navy-3) 0%,var(--navy-2) 42%,var(--navy) 100%);
  background-size:46px 46px,46px 46px,100% 100%;
  background-position:center;
}
.hero::before{content:"";position:absolute;right:-160px;top:-180px;width:640px;height:640px;
  background:radial-gradient(circle,rgba(30,140,255,.38),transparent 62%);filter:blur(10px)}
.hero::after{content:"";position:absolute;left:-140px;bottom:-220px;width:500px;height:500px;
  background:radial-gradient(circle,rgba(224,54,75,.28),transparent 65%)}
.hero-inner{position:relative;z-index:2;display:flex;align-items:center;gap:50px;padding:88px 0 100px}
.hero-copy{flex:1;min-width:0}
.hero-badge{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(120,200,255,.45);
  background:rgba(25,120,220,.14);
  border-radius:999px;padding:7px 18px;font-size:13.5px;letter-spacing:.18em;margin-bottom:26px}
.hero-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cyan);
  box-shadow:0 0 0 4px rgba(25,198,230,.25)}
.hero h1{font-size:56px;line-height:1.18;font-weight:900;letter-spacing:.02em}
.lang-en .hero h1{font-size:50px;line-height:1.22;letter-spacing:0}
.hero h1 .accent{color:#7FE4FF;text-shadow:0 0 34px rgba(25,198,230,.45)}
.hero-sub{margin:24px 0 36px;font-size:17px;line-height:1.9;color:rgba(232,242,255,.92);max-width:560px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.hero-visual{flex:none;width:340px;height:340px;position:relative;display:flex;align-items:center;justify-content:center}
.hero-visual .ring{position:absolute;border-radius:50%;border:1px solid rgba(120,190,255,.28)}
.hero-visual .r1{inset:0;animation:spin 40s linear infinite;border-style:solid;border-color:rgba(62,149,255,.35)}
.hero-visual .r2{inset:34px;border-style:dashed;border-color:rgba(25,198,230,.4);animation:spin 26s linear infinite reverse}
.hero-visual .logo-chip{position:relative;width:252px;height:252px;border-radius:28%;
  background:linear-gradient(160deg,#ffffff,#EAF3FF);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 30px 60px rgba(0,8,30,.5),0 0 0 9px rgba(255,255,255,.07),0 0 70px rgba(25,198,230,.35)}
.hero-visual .logo-chip img{width:80%;height:80%;filter:drop-shadow(0 10px 18px rgba(180,18,38,.25))}
.hero-visual .vtag{position:absolute;background:rgba(14,58,126,.5);border:1px solid rgba(120,200,255,.4);
  backdrop-filter:blur(6px);border-radius:999px;padding:7px 16px;font-size:13px;letter-spacing:.12em;color:#DCEEFF}
.hero-visual .t1{top:14px;left:-8px;animation:float 5s ease-in-out infinite}
.hero-visual .t2{bottom:26px;right:-14px;animation:float 6s ease-in-out infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{50%{transform:translateY(-10px)}}

/* 数据带 */
.stats{position:relative;z-index:3;margin-top:-44px}
.stats-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);
  display:grid;grid-template-columns:repeat(4,1fr);padding:30px 10px}
.stat{text-align:center;border-right:1px dashed var(--line)}
.stat:last-child{border-right:0}
.stat b{display:block;font-size:40px;font-weight:900;color:var(--blue);line-height:1.2}
.stat:first-child b{color:var(--red)}
.stat b small{font-size:20px}
.stat span{font-size:14px;color:var(--gray);letter-spacing:.08em}

/* ---------- 通用章节 ---------- */
.section{padding:92px 0}
.section.alt{background:var(--paper)}
.sec-head{text-align:center;max-width:680px;margin:0 auto 56px}
.sec-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--blue);font-weight:800;
  font-size:13.5px;letter-spacing:.3em;margin-bottom:14px}
.sec-kicker::before{content:"";width:26px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--red),var(--red-3))}
.sec-head h2{font-size:36px;font-weight:900;letter-spacing:.04em}
.lang-en .sec-head h2{letter-spacing:0}
.sec-head p{margin-top:14px;color:var(--gray);font-size:16px}
.sec-head.center{margin-left:auto;margin-right:auto}
.sec-more{text-align:center;margin-top:48px}

/* 方案卡片 */
.sol-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.sol-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:36px 28px;transition:.3s;overflow:hidden}
.sol-card::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--blue-3),var(--cyan));transform:scaleX(0);transform-origin:left;transition:.35s}
.sol-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover);border-color:transparent}
.sol-card:hover::before{transform:scaleX(1)}
.sol-ico{width:62px;height:62px;border-radius:16px;background:var(--blue-soft);display:flex;align-items:center;
  justify-content:center;margin-bottom:22px;transition:.3s}
.sol-ico svg{width:32px;height:32px;stroke:var(--blue);fill:none;stroke-width:1.8}
.sol-card:hover .sol-ico{background:linear-gradient(135deg,var(--blue-3),var(--blue-2))}
.sol-card:hover .sol-ico svg{stroke:#fff}
.sol-card h3{font-size:19px;font-weight:800;margin-bottom:12px}
.sol-card p{color:var(--gray);font-size:14.5px;line-height:1.8}
.sol-card .more{display:inline-flex;align-items:center;gap:6px;margin-top:18px;color:var(--blue);
  font-weight:700;font-size:14px;opacity:0;transform:translateY(6px);transition:.3s}
.sol-card:hover .more{opacity:1;transform:none}

/* 优势 */
.adv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.adv-card{background:#fff;border-radius:var(--radius);padding:34px 26px;box-shadow:var(--shadow);
  transition:.3s}
.adv-card:hover{transform:translateY(-6px)}
.adv-num{font-size:14px;font-weight:900;color:var(--blue-3);letter-spacing:.2em;margin-bottom:16px}
.adv-card h3{font-size:18px;font-weight:800;margin-bottom:12px}
.adv-card p{font-size:14px;color:var(--gray);line-height:1.85}

/* 案例 */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.case-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.3s}
.case-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover)}
.case-cover{height:190px;position:relative;overflow:hidden;
  background:
    linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(135deg,var(--navy-3),var(--blue-2));
  background-size:26px 26px,26px 26px,100% 100%;
  display:flex;align-items:center;justify-content:center}
.case-cover img{width:100%;height:100%;object-fit:cover;transition:.5s}
.case-card:hover .case-cover img{transform:scale(1.06)}
.case-cover .fallback{width:74px;height:74px;opacity:.55}
.case-cover .client-tag{position:absolute;left:16px;bottom:14px;background:rgba(6,26,56,.55);color:#fff;
  font-size:12px;padding:5px 13px;border-radius:999px;letter-spacing:.06em;backdrop-filter:blur(4px);
  border:1px solid rgba(120,200,255,.3)}
.case-body{padding:24px 24px 26px}
.case-body h3{font-size:18px;font-weight:800;margin-bottom:10px;line-height:1.5}
.case-body p{font-size:14px;color:var(--gray);line-height:1.8}
.case-body .more{display:inline-flex;align-items:center;gap:6px;margin-top:16px;color:var(--blue);font-weight:700;font-size:14px}

/* 新闻 */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.news-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;transition:.3s}
.news-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-hover);border-color:transparent}
.news-cover{height:180px;background:linear-gradient(135deg,#D8E9FF,#A6C8F5);position:relative;overflow:hidden}
.news-cover img{width:100%;height:100%;object-fit:cover;transition:.5s}
.news-card:hover .news-cover img{transform:scale(1.06)}
.news-cover .date-badge{position:absolute;left:16px;top:14px;background:rgba(255,255,255,.94);
  border-radius:10px;padding:6px 12px;text-align:center;line-height:1.15;
  box-shadow:0 6px 16px rgba(11,61,145,.14)}
.news-cover .date-badge b{display:block;color:var(--blue);font-size:20px;font-weight:900}
.news-cover .date-badge span{font-size:10.5px;color:var(--gray)}
.news-cover .fallback{position:absolute;right:14px;bottom:10px;width:60px;height:60px;opacity:.26}
.news-body{padding:22px 22px 24px}
.news-body h3{font-size:17px;font-weight:800;line-height:1.55;margin-bottom:10px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-body p{font-size:13.5px;color:var(--gray);line-height:1.8;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* CTA 条 */
.cta-band{position:relative;
  background:
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(120deg,var(--navy-3),var(--blue-2) 55%,var(--navy));
  background-size:36px 36px,36px 36px,100% 100%;
  color:#fff;border-radius:24px;padding:62px 60px;display:flex;align-items:center;justify-content:space-between;
  gap:40px;overflow:hidden}
.cta-band::before{content:"";position:absolute;right:-60px;top:-60px;width:300px;height:300px;
  background:radial-gradient(circle,rgba(25,198,230,.3),transparent 65%)}
.cta-band::after{content:"";position:absolute;left:-40px;bottom:-80px;width:240px;height:240px;
  background:radial-gradient(circle,rgba(224,54,75,.35),transparent 65%)}
.cta-band h2{font-size:30px;font-weight:900;margin-bottom:12px;position:relative}
.cta-band p{opacity:.9;font-size:15.5px;position:relative}
.cta-band .btn{flex:none;position:relative;background:#fff;color:var(--blue-2)}
.cta-band .btn:hover{background:var(--navy);color:#fff}

/* ---------- 内页头 ---------- */
.page-hero{
  background:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(140deg,var(--navy-3),var(--navy-2) 52%,var(--navy));
  background-size:40px 40px,40px 40px,100% 100%;
  color:#fff;padding:74px 0 84px;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;left:-80px;bottom:-120px;width:380px;height:380px;
  background:radial-gradient(circle,rgba(224,54,75,.32),transparent 65%)}
.page-hero::after{content:"";position:absolute;right:-80px;top:-120px;width:420px;height:420px;
  background:radial-gradient(circle,rgba(62,149,255,.35),transparent 65%)}
.page-hero h1{position:relative;font-size:40px;font-weight:900;letter-spacing:.05em}
.page-hero p{position:relative;margin-top:14px;opacity:.9;letter-spacing:.14em;font-size:15px}
.crumb{position:relative;margin-top:20px;font-size:13.5px;opacity:.85}
.crumb a:hover{opacity:1;text-decoration:underline}

/* 关于 */
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.about-art{aspect-ratio:1/1;border-radius:24px;background:
  radial-gradient(circle at 72% 18%,rgba(62,149,255,.35),transparent 55%),
  radial-gradient(circle at 18% 88%,rgba(224,54,75,.3),transparent 55%),
  linear-gradient(150deg,var(--navy-3),var(--navy));
  display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.about-art::before{content:"";position:absolute;inset:0;
  background:
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:34px 34px}
.about-art .art-chip{position:relative;width:60%;aspect-ratio:1;border-radius:26%;
  background:linear-gradient(160deg,#fff,#EAF3FF);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 30px 60px rgba(0,8,30,.45),0 0 0 8px rgba(255,255,255,.07),0 0 60px rgba(25,198,230,.3)}
.about-art .art-chip img{width:78%;height:78%}
.about-art .seal{position:absolute;left:34px;bottom:30px;color:rgba(255,255,255,.85);
  border:1.5px solid rgba(140,205,255,.55);border-radius:12px;padding:10px 18px;font-weight:800;letter-spacing:.25em;
  background:rgba(10,42,99,.25);backdrop-filter:blur(4px)}
.about-text h2{font-size:32px;font-weight:900;margin-bottom:24px}
.about-text p{color:#4a454b;margin-bottom:18px;line-height:2}
.vision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.vision-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 28px;text-align:center}
.vision-card .vi{width:58px;height:58px;margin:0 auto 18px;border-radius:50%;background:var(--blue-soft);
  display:flex;align-items:center;justify-content:center}
.vision-card .vi svg{width:28px;height:28px;stroke:var(--blue);fill:none;stroke-width:1.8}
.vision-card h3{font-size:19px;font-weight:800;margin-bottom:10px}
.vision-card p{font-size:14px;color:var(--gray);line-height:1.8}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.value-card{padding:34px 28px;border-radius:var(--radius);
  background:
    linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(160deg,var(--navy-3),var(--blue-2));
  background-size:28px 28px,28px 28px,100% 100%;
  color:#fff;position:relative;overflow:hidden}
.value-card:nth-child(2){background:
    linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(160deg,#1472F0,#0B3D91);
  background-size:28px 28px,28px 28px,100% 100%}
.value-card:nth-child(3){background:linear-gradient(160deg,var(--red-3),var(--red-2))}
.value-card::after{content:"";position:absolute;right:-30px;bottom:-30px;width:130px;height:130px;
  border:1px solid rgba(255,255,255,.2);border-radius:50%}
.value-card h3{font-size:22px;font-weight:900;letter-spacing:.2em;margin-bottom:10px}
.value-card p{font-size:14px;opacity:.9;line-height:1.8}

/* 流程 */
.flow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.flow-step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 18px;text-align:center;position:relative}
.flow-step b{display:inline-flex;width:40px;height:40px;border-radius:50%;
  background:linear-gradient(135deg,var(--blue-3),var(--blue-2));color:#fff;
  align-items:center;justify-content:center;font-size:17px;margin-bottom:14px}
.flow-step h4{font-size:15px;font-weight:800;margin-bottom:8px}
.flow-step p{font-size:12.5px;color:var(--gray);line-height:1.7}

/* 详情页 */
.detail-wrap{display:grid;grid-template-columns:1fr 280px;gap:44px;align-items:start}
.article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:48px 52px}
.article h1{font-size:30px;font-weight:900;line-height:1.4;margin-bottom:18px}
.article .meta{display:flex;gap:22px;color:var(--light);font-size:13.5px;padding-bottom:22px;
  border-bottom:1px solid var(--line);margin-bottom:30px;flex-wrap:wrap}
.article .a-body{font-size:16px;line-height:2.05;color:#33302e}
.article .a-body p{margin-bottom:18px}
.article .a-body img{border-radius:12px;margin:18px 0}
.side-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;position:sticky;top:96px}
.side-box h4{font-size:16px;font-weight:800;padding-bottom:14px;border-bottom:2px solid var(--blue);display:inline-block;margin-bottom:8px}
.side-box a.side-item{display:block;padding:13px 0;border-bottom:1px dashed var(--line);font-size:14px;color:#4a454b;transition:.2s}
.side-box a.side-item:last-child{border-bottom:0}
.side-box a.side-item:hover{color:var(--blue);padding-left:6px}
.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:700;margin-bottom:24px}

/* 列表分页/空 */
.empty{text-align:center;padding:80px 0;color:var(--light);font-size:15px}
.pager{display:flex;gap:8px;justify-content:center;margin-top:50px}
.pager a,.pager span{min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:700;color:#4a454b;background:#fff}
.pager a:hover{border-color:var(--blue);color:var(--blue)}
.pager .cur{background:linear-gradient(120deg,var(--blue-3),var(--blue-2));border-color:var(--blue);color:#fff}

/* 招聘 */
.job-list{display:flex;flex-direction:column;gap:18px;max-width:920px;margin:0 auto}
.job-item{display:flex;align-items:center;gap:26px;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:26px 30px;transition:.25s}
.job-item:hover{border-color:var(--blue);box-shadow:var(--shadow);transform:translateX(4px)}
.job-main{flex:1;min-width:0}
.job-main h3{font-size:19px;font-weight:800;margin-bottom:10px}
.job-tags{display:flex;gap:10px;flex-wrap:wrap}
.job-tags span{font-size:12.5px;color:var(--gray);background:var(--paper);border-radius:999px;padding:4px 13px}
.job-tags .hot{background:var(--red-soft);color:var(--red);font-weight:700}
.job-arrow{width:46px;height:46px;border-radius:50%;background:var(--blue-soft);color:var(--blue);
  display:flex;align-items:center;justify-content:center;flex:none;transition:.25s}
.job-item:hover .job-arrow{background:linear-gradient(135deg,var(--blue-3),var(--blue-2));color:#fff}
.job-section{margin:28px 0}
.job-section h3{font-size:18px;font-weight:800;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.job-section h3::before{content:"";width:5px;height:18px;background:linear-gradient(var(--blue-3),var(--blue));border-radius:3px}
.job-section ul{list-style:none;padding-left:6px}
.job-section li{position:relative;padding:6px 0 6px 22px;color:#4a454b;line-height:1.9}
.job-section li::before{content:"";position:absolute;left:2px;top:15px;width:7px;height:7px;border-radius:50%;background:var(--blue-3)}

/* 联系 */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:start}
.contact-cards{display:flex;flex-direction:column;gap:18px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;display:flex;gap:18px;align-items:flex-start}
.contact-card .ci{width:46px;height:46px;border-radius:12px;background:var(--blue-soft);flex:none;
  display:flex;align-items:center;justify-content:center}
.contact-card .ci svg{width:23px;height:23px;stroke:var(--blue);fill:none;stroke-width:1.8}
.contact-card h4{font-size:15px;font-weight:800;margin-bottom:6px}
.contact-card a{color:var(--blue-2);font-weight:700}
.contact-card a:hover{color:var(--blue)}
.contact-card p{font-size:14.5px;color:var(--gray);line-height:1.7}
.contact-card-wx{text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.contact-card-wx .wx-ci{background:rgba(7,193,96,.1)}
.contact-card-wx .wx-ci svg{width:25px;height:25px;fill:#07C160;stroke:none;padding:0}
.contact-card-wx h4{color:#07C160}
.contact-card-wx:hover{border-color:#07C160;box-shadow:0 10px 26px rgba(7,193,96,.14);transform:translateY(-2px)}
.contact-card-dy{align-items:center;gap:20px;transition:border-color .2s,box-shadow .2s,transform .2s}
.contact-card-dy .dy-qr{width:88px;height:88px;flex:none;border-radius:12px;display:block;object-fit:cover}
.contact-card-dy .dy-info{min-width:0}
.contact-card-dy h4{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.contact-card-dy .dy-v{font-style:normal;font-size:11px;font-weight:900;color:#fff;background:#161823;
  width:18px;height:18px;line-height:18px;text-align:center;border-radius:50%;
  position:relative;box-shadow:2px -2px 0 #25F4EE,-2px 2px 0 #FE2C55}
.contact-card-dy .dy-tip{font-size:13px!important}
.contact-card-dy:hover{border-color:#161823;box-shadow:0 10px 26px rgba(22,24,35,.12);transform:translateY(-2px)}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:42px 44px;box-shadow:var(--shadow)}
.form-card h3{font-size:23px;font-weight:900;margin-bottom:8px}
.form-card .f-sub{color:var(--gray);font-size:14px;margin-bottom:28px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{margin-bottom:18px}
.field label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:#33302e}
.field input,.field textarea,.field select{width:100%;border:1.5px solid var(--line);border-radius:10px;
  padding:13px 15px;font-size:15px;font-family:inherit;color:var(--ink);background:#fff;transition:.2s}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--blue);background:#fff;
  box-shadow:0 0 0 4px rgba(26,109,232,.1)}
.field textarea{resize:vertical;min-height:130px}
.field .hint{font-size:12px;color:var(--light);margin-top:6px}
.form-note{margin-top:6px;font-size:13px;color:var(--light)}
.alert{border-radius:12px;padding:15px 20px;margin-bottom:24px;font-size:14.5px;font-weight:600}
.alert-ok{background:#EAF7EE;color:#1c7438;border:1px solid #BFE6CB}
.alert-err{background:var(--red-soft);color:var(--red-2);border:1px solid #F0C6CB}
.upload-btn{display:inline-flex;align-items:center;gap:8px;border:1.5px dashed var(--line);border-radius:10px;
  padding:12px 18px;cursor:pointer;font-size:14px;color:var(--gray);width:100%;transition:.2s}
.upload-btn:hover{border-color:var(--blue);color:var(--blue)}
.upload-btn input{display:none}

/* 404 */
.error-page{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 24px}
.error-page .big{font-size:120px;font-weight:900;
  background:linear-gradient(140deg,var(--blue-3),var(--blue-2) 60%,var(--navy));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:1}
.error-page p{color:var(--gray);margin:14px 0 30px;font-size:17px}

/* ---------- 页脚 ---------- */
.site-footer{background:linear-gradient(180deg,#071527,#050E1C);color:rgba(220,234,250,.72);
  position:relative;overflow:hidden;padding-top:64px;margin-top:0}
.site-footer::before{content:"";position:absolute;inset:0;opacity:.5;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:40px 40px}
.footer-grid{position:relative;display:grid;grid-template-columns:1.5fr 1fr 1.2fr 1fr;gap:44px;padding-bottom:50px}
.f-logo{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.f-logo img{width:52px;height:52px;background:#fff;border-radius:12px;padding:5px}
.f-cn{color:#fff;font-weight:900;font-size:16px;letter-spacing:.03em}
.f-url{color:var(--cyan);font-weight:700;font-size:13px;letter-spacing:.15em;margin-top:3px}
.f-brand p{font-size:13.5px;line-height:1.9;margin-bottom:16px}
.f-motto{display:inline-block;font-size:13px;color:var(--red-3);border:1px solid rgba(224,54,75,.45);
  border-radius:999px;padding:5px 16px;letter-spacing:.18em;background:rgba(224,54,75,.08)}
.f-col h4{color:#fff;font-size:15px;font-weight:800;margin-bottom:18px;letter-spacing:.08em}
.f-col a{display:block;font-size:14px;padding:5px 0;transition:.2s}
.f-col a:hover{color:var(--cyan);padding-left:5px}
.f-col p{font-size:13.5px;line-height:2;padding:2px 0}
.f-plum{width:108px;height:108px;margin-bottom:12px;
  background:#fff;-webkit-mask:url("../images/logo.png") center/contain no-repeat;
  mask:url("../images/logo.png") center/contain no-repeat;
  opacity:.9;filter:drop-shadow(0 0 18px rgba(25,198,230,.4))}
.f-hint{font-size:13px}
.footer-bottom{position:relative;border-top:1px solid rgba(140,180,230,.16)}
.fb-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:22px 24px;
  font-size:13px;color:rgba(200,220,245,.45)}
.fb-inner a{color:rgba(200,220,245,.55);transition:color .2s}
.fb-inner a:hover{color:var(--cyan,#19C6E6)}

/* 滚动显现 */
.reveal{opacity:0;transform:translateY(28px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* 企业微信获客悬浮按钮 */
.wx-float{position:fixed;right:22px;bottom:30px;z-index:900;display:flex;align-items:center;gap:9px;
  background:linear-gradient(135deg,#07C160,#06AD56);color:#fff;text-decoration:none;
  padding:8px 18px 8px 10px;border-radius:999px;font-size:15px;font-weight:700;letter-spacing:.02em;
  box-shadow:0 10px 28px rgba(7,193,96,.42);transition:transform .2s,box-shadow .2s}
.wx-float:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(7,193,96,.5)}
.wx-float svg{width:30px;height:30px;background:#fff;border-radius:50%;padding:6px;flex:none;
  color:#07C160;box-sizing:border-box}
.wx-float-txt{white-space:nowrap}
@media (max-width:640px){
  .wx-float{right:14px;bottom:16px;padding:7px 14px 7px 8px;font-size:14px}
  .wx-float svg{width:26px;height:26px;padding:5px}
}

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  .brand-cn .full{display:none}
  .brand-cn .brand-short{display:inline}
  .main-nav{position:fixed;top:74px;left:0;right:0;background:#fff;flex-direction:column;gap:0;
    padding:10px 24px 22px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(6,26,56,.1);
    transform:translateY(-140%);transition:.32s;visibility:hidden;z-index:90}
  .main-nav.show{transform:none;visibility:visible}
  .main-nav a{padding:14px 8px;border-bottom:1px solid var(--paper);border-radius:0}
  .main-nav a.on::after{display:none}
  .nav-toggle{display:flex}
  .header-cta{display:none}
}
@media (max-width:1024px){
  .sol-grid,.adv-grid{grid-template-columns:repeat(2,1fr)}
  .flow-grid{grid-template-columns:repeat(3,1fr);gap:14px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:36px}
  .hero-visual{width:280px;height:280px}
  .hero-visual .logo-chip{width:200px;height:200px}
  .detail-wrap{grid-template-columns:1fr}
  .side-box{position:static}
}
@media (max-width:860px){
  .main-nav{position:fixed;top:74px;left:0;right:0;background:#fff;flex-direction:column;gap:0;
    padding:10px 24px 22px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(0,0,0,.08);
    transform:translateY(-130%);transition:.32s;visibility:hidden}
  .main-nav.show{transform:none;visibility:visible}
  .main-nav a{padding:14px 8px;border-bottom:1px solid var(--paper);border-radius:0}
  .main-nav a.on::after{display:none}
  .nav-toggle{display:flex}
  .header-cta{display:none}
  .hero-inner{flex-direction:column;text-align:center;padding:64px 0 90px;gap:30px}
  .hero-sub{margin-left:auto;margin-right:auto}
  .hero-actions{justify-content:center}
  .hero h1{font-size:38px}
  .lang-en .hero h1{font-size:32px}
  .stats-card{grid-template-columns:1fr 1fr;gap:20px 0;padding:26px 10px}
  .stat:nth-child(2){border-right:0}
  .case-grid,.news-grid{grid-template-columns:1fr}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:36px}
  .vision-grid,.values-grid{grid-template-columns:1fr}
  .cta-band{flex-direction:column;text-align:center;padding:44px 30px}
  .form-row{grid-template-columns:1fr}
  .article{padding:32px 24px}
  .article h1{font-size:23px}
  .sec-head h2{font-size:28px}
  .section{padding:64px 0}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .form-card{padding:30px 24px}
  .job-item{flex-wrap:wrap}
}
@media (max-width:480px){
  .sol-grid,.adv-grid,.flow-grid{grid-template-columns:1fr}
  .hero h1{font-size:31px}
  .stat b{font-size:32px}
  .cta-band h2{font-size:23px}
  .brand-txt .brand-en{display:none}
}
