:root{
  --navy-950:#07132E;
  --navy-900:#0B1D44;
  --navy-850:#10295C;
  --navy-800:#16367A;
  --navy-700: #123D8F;
  --brand:#2E6BE6;
  --brand-deep:#1D4FB8;
  --brand-light:#5B93FF;
  --jade:#1FA97A;
  --jade-light:#57D9A3;
  --jade-pale:#DDF3E9;
  --orange:#F2994A;
  --purple:#7C6CE0;
  --cyan:#12B5C9;
  --rose:#E85D75;
  --amber:#F5B32B;
  --paper:#F5F7FB;
  --paper-2:#E8EDF6;
  --ink:#13233F;
  --ink-2:#53647F;
  --ink-3:#8CA0BE;
  --line:rgba(11,29,68,.10);
  --r-lg:14px;
  --r-md:11px;
  --shadow-card:0 10px 34px rgba(11,29,68,.09);
  --font:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans SC","Source Han Sans SC","Helvetica Neue",Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size: 100%;}
body{font-family:var(--font);color:var(--ink);background:var(--paper);line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
::selection{background:rgba(46,107,230,.18)}
.container{max-width:80rem;margin:0 auto;padding:0 28px}
.section{padding:100px 0;position:relative}

.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:13px;font-weight:700;letter-spacing:.24em;color:var(--jade)}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--jade)}
.section.dark .eyebrow{color:var(--jade-light)}
.section.dark .eyebrow::before{background:var(--jade-light)}
.h2{font-size:clamp(29px,3.6vw,42px);font-weight:800;line-height:1.35;letter-spacing:-.01em;margin:18px 0 16px;color:var(--ink)}
.h2 .accent{color:var(--jade)}
.section.dark .h2{color:#fff}
.section.dark .h2 .accent{color:var(--jade-light)}
.lead{font-size:16.5px;color:var(--ink-2);max-width:800px;line-height:1.95}
.section.dark .lead{color:rgba(255,255,255,.74)}
.sec-head{margin-bottom:54px}

.watermark{position:absolute;top:34px;right:28px;font-size:120px;font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(46,107,230,.16);pointer-events:none;user-select:none}
.section.dark .watermark{-webkit-text-stroke:1.5px rgba(120,160,255,.18)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 30px;border-radius:8px;font-size:15.5px;font-weight:700;min-height:52px;letter-spacing:.03em;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-light{background:linear-gradient(120deg,var(--jade-light),var(--jade));color:#fff;box-shadow:0 12px 28px rgba(46,107,230,.4)}
.btn-light:hover{background:linear-gradient(120deg,var(--jade),#0e7a56)}
.btn-dark{background:var(--brand-deep);color:#fff;box-shadow:0 12px 28px rgba(29,79,184,.32)}
.btn-dark:hover{background:#17459F}
.btn-ghost{border:1px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.05)}
.btn-ghost:hover{background:rgba(255,255,255,.12)}

/* 顶栏 */
.header{position:sticky;top:0;z-index:100;background:rgba(245,247,251,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:12px}
.brand>div{display:flex;flex-direction:column;gap:4px;}
.brand-logo{height:40px!important;}
.brand-name{font-size:18px;font-weight:bold;letter-spacing:.02em;color:var(--navy-900);line-height:1.1}
.brand-tag{width: 40px;color: var(--navy-700);background: #ebf2fc;border: 1px solid rgba(31,111,255,.16);border-radius: 999px;align-items: center;min-height: 16px;padding: 1px 7px;font-size: 10px;font-weight: 900;line-height: 1;display: inline-flex;}
.nav{display:flex;align-items:center;gap:20px}
.nav a{font-size:14.5px;font-weight:600;color:var(--ink-2);position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--brand);transition:width .25s ease}
.nav a:hover{color:var(--brand-deep)}
.nav a:hover::after{width:100%}
.header-right{display:flex;align-items:center;gap:20px}
.phone{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15.5px;color:var(--navy-900)}
.phone svg{color:var(--brand)}
.menu-btn{display:none;width:44px;height:44px;border-radius:9px;border:1px solid var(--line);align-items:center;justify-content:center;color:var(--navy-900);padding:0;}
.mobile-menu{display:none;background:#fff;border-bottom:1px solid var(--line);padding:8px 20px 16px}
.mobile-menu:not([hidden]){display:block}
.mobile-menu a{display:block;padding:13px 4px;font-size:15px;font-weight:600;color:var(--ink-2);border-bottom:1px solid var(--paper-2)}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a:hover{color:var(--brand-deep)}

/* Hero 深蓝 */
.hero{position:relative;overflow:hidden;background:radial-gradient(820px 480px at 85% -10%,rgba(46,107,230,.32),transparent 60%),radial-gradient(700px 500px at -10% 110%,rgba(31,169,122,.18),transparent 55%),linear-gradient(160deg,var(--navy-950),var(--navy-900) 55%,var(--navy-850));color:#fff}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(120,160,255,.16) 1.2px,transparent 1.2px);background-size:26px 26px;pointer-events:none;mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 75%);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 75%)}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding:108px 0 118px}
.hero h1{font-size:clamp(34px,4.4vw,54px);font-weight:900;line-height:1.28;letter-spacing:-.015em;margin:24px 0 22px;color: #fff;}
.hero h1 .hl{color:transparent;background:linear-gradient(100deg,var(--jade-light),var(--jade));-webkit-background-clip:text;background-clip:text}
.hero-sub{font-size:16.5px;line-height:2;color:rgba(255,255,255,.78);max-width:600px}
.hero-cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.hero-chips{display:flex;flex-wrap:wrap;gap:11px;margin-top:34px}
.hchip{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#DCE8FF;background:rgba(91,147,255,.1);border:1px solid rgba(120,160,255,.3);padding:8px 15px;border-radius:6px}
.hchip .dot{width:6px;height:6px;border-radius:50%;background:var(--jade-light)}

.hero-visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:380px}
.shield{position:relative;width:300px;height:350px;filter:drop-shadow(0 24px 50px rgba(0,0,0,.4))}
.shield svg{width:100%;height:100%}
.orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--jade-light),#0e7a56);box-shadow:0 8px 24px rgba(31 169 122,.45);opacity:0.8;}
.orb.o1{width:64px;height:64px;top:6%;right:8%;animation:float 5s ease-in-out infinite}
.orb.o2{width:42px;height:42px;bottom:14%;left:4%;background:radial-gradient(circle at 30% 30%,#BFF0DC,var(--jade));animation:float 6s ease-in-out 1.2s infinite}
.orb.o3{width:26px;height:26px;bottom:4%;right:22%;background:radial-gradient(circle at 30% 30%,#fff,var(--jade-light));animation:float 4.5s ease-in-out .6s infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* 痛点（浅） */
.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.pain-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:32px 28px;box-shadow:var(--shadow-card);position:relative;transition:transform .25s ease,box-shadow .25s ease}
.pain-card:hover{transform:translateY(-6px);box-shadow:0 20px 46px rgba(11,29,68,.14);border-color: rgba(11,29,68,.16);}
.pain-card .idx{position:absolute;top:22px;right:24px;font-size:34px;font-weight:900;color:var(--paper-2);line-height:1}
.pain-ic{width:52px;height:52px;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:18px}
.ic-blue{background:linear-gradient(135deg,#1D4FB8,#2E6BE6)}
.ic-orange{background:linear-gradient(135deg,#D97A2B,#F2994A)}
.ic-purple{background:linear-gradient(135deg,var(--jade-light),var(--jade))}
.ic-cyan{background:linear-gradient(135deg,#0E8CA0,#12B5C9)}
.ic-green{background:linear-gradient(135deg,#148059,#1FA97A)}
.ic-rose{background:linear-gradient(135deg,#C8435F,#E85D75)}
.pain-card h3{font-size:19px;font-weight:800;margin-bottom:10px}
.pain-card p{font-size:14px;color:var(--ink-2);line-height:1.85}

/* 目标（深蓝） */
.goals{background:linear-gradient(165deg,var(--navy-950),var(--navy-900) 60%,var(--navy-850))}
.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.goal-card{background:rgba(255,255,255,.045);border:1px solid rgba(120,160,255,.2);border-radius:var(--r-lg);padding:32px 28px;position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease}
.goal-card:hover{transform:translateY(-6px);border-color:rgba(31,169,122,.6)}
.goal-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gc,var(--brand))}
.goal-card .g-ic{width:52px;height:52px;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:18px;background:var(--gc,var(--brand))}
.goal-card .g-no{font-size:12px;font-weight:800;letter-spacing:.22em;color:var(--jade-light)}
.goal-card h3{font-size:19px;font-weight:800;color:#fff;margin:8px 0 12px}
.goal-card p{font-size:14px;color:rgba(255,255,255,.7);line-height:1.85}

/* 核心功能（浅） */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding:34px 0}
.feature.rev .f-visual{order:2}
.f-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--brand-deep);background:#E3ECFF;padding:6px 14px;border-radius:5px;margin-bottom:16px}
.feature h3{font-size:25px;font-weight:800;margin-bottom:14px;letter-spacing:-.01em}
.feature p{font-size:14.5px;color:var(--ink-2);line-height:1.9;margin-bottom:14px}
.f-tags{display:flex;flex-wrap:wrap;gap:8px}
.f-tags span{font-size:12.5px;font-weight:600;color:var(--navy-900);background:#fff;border:1px solid var(--line);padding:6px 12px;border-radius:5px}
.f-shot-wrap{padding:20px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}
.f-shot{width:100%;display:block}
.f-shot-tall{height:380px;width:100%;object-fit:cover;object-position:top;display:block}

/* 功能体系（深） */
#modules {background:linear-gradient(165deg,var(--navy-950),var(--navy-900))}
.modules{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.module{background: rgba(255, 255, 255, .05);border: 1px solid rgba(120, 160, 255, .18);border-radius:var(--r-md);padding:22px 20px;box-shadow:var(--shadow-card);transition:transform .25s ease,border-color .25s ease}
.module:hover{transform:translateY(-4px);border-color:rgba(120, 160, 255, .28)}                                                                                                                                                                                                                                                             
.module .m-ic{width:40px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:13px;color:#fff}
.module b{display:block;font-size:15px;font-weight:800;margin-bottom:5px;color:#fff}
.module span{font-size:12.5px;color:var(--ink-2);line-height:1.65;display:block}
.cap-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.cap-tags span{font-size:12.5px;font-weight:600;color: #DCE8FF;background: rgba(91, 147, 255, .1);border: 1px solid rgba(120, 160, 255, .3);padding:7px 14px;border-radius:999px}

/* 指标（深蓝） */
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.metric{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 24px;text-align:center;transition:transform .25s ease}
.metric:hover{transform:translateY(-5px);border-color: rgba(11,29,68,.16);}
.metric .m-num{font-size:38px;font-weight:900;color:var(--jade);line-height:1.1;letter-spacing:-.02em}
.metric .m-num small{font-size:18px;font-weight:800;margin-left:2px}
.metric .m-label{font-size:13.5px;margin-top:8px}
.metrics-note{margin-top:26px;text-align:center;font-size:12.5px;color:var(--ink-3)}

/* 技术架构（深蓝） */
.arch{background:linear-gradient(165deg,var(--navy-950),var(--navy-900) 60%,var(--navy-850))}
.arch-img{background:#fff;border-radius:var(--r-lg);padding:24px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.arch-img img{width:100%;height:auto;border-radius:6px;display:block}
.arch-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.arch-point{background:rgba(255,255,255,.05);border:1px solid rgba(120,160,255,.18);border-radius:10px;padding:18px;display:flex;gap:12px;align-items:flex-start}
.arch-point svg{flex:none;margin-top:3px;color:var(--apc,var(--brand-light))}
.arch-point b{display:block;font-size:14px;color:#fff;margin-bottom:3px}
.arch-point span{font-size:12.5px;color:rgba(255,255,255,.64);line-height:1.65}

/* 实施与风险（浅） */
.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:40px 0 46px;position:relative}
.tl-step{text-align:center;position:relative;padding:0 4px}
.tl-step .node{width:34px;height:34px;border-radius:50%;background:#fff;border:2px solid var(--brand);color:var(--brand-deep);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;position:relative;z-index:2}
.tl-step::before{content:"";position:absolute;top:17px;left:-50%;width:100%;height:2px;background:var(--paper-2);z-index:1}
.tl-step:first-child::before{display:none}
.tl-step b{display:block;font-size:14px;font-weight:800;margin-bottom:4px}
.tl-step span{font-size:12px;color:var(--ink-2);line-height:1.6;display:block}
.risk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.risk-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;box-shadow:var(--shadow-card)}
.risk-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.risk-head h3{font-size:17px;font-weight:700;display:flex;align-items:center;gap:10px}
.risk-head h3 .r-no{width:30px;height:30px;border-radius:6px;background:linear-gradient(135deg,#148059,#1FA97A);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
.badges{display:flex;gap:7px}
.badge{font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:4px}
.badge.f{color:var(--brand-deep);background:#E3ECFF;border:1px solid rgba(46,107,230,.3)}
.badge.i{color:#B06A1F;background:#FBF0DC;border:1px solid rgba(176,106,31,.3)}
.risk-card ul{display:grid;gap:13px;margin-top:6px}
.risk-card li{display:flex;gap:12px;font-size:13px;color:var(--ink-2);line-height:1.8}
.risk-card li svg{flex:none;margin-top:5px;color:var(--jade)}

/* CTA */
.cta-card{position:relative;background:linear-gradient(150deg,rgba(31,111,255,.22),rgba(79,184,255,.08)),#0c2652;border:1px solid rgba(120,160,255,.32);border-radius:18px;padding:64px 44px;color:#fff;text-align:center;margin-top:64px;}
.cta-card h3{font-size:clamp(26px,3.4vw,38px);font-weight:900;line-height:1.35;margin-bottom:16px;color:#fff;}
.cta-card h3 .hl{color:var(--jade-light)}
.cta-card p{color:rgba(255,255,255,.74);font-size:15.5px;max-width:640px;margin:0 auto 32px;line-height:1.9}
.cta-line{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap}
.cta-phone{display:inline-flex;align-items:center;gap:9px;font-size:19px;font-weight:900;padding:13px 24px;border-radius:8px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.06)}
.cta-phone svg{color:var(--jade-light)}

/* ===== 页脚 ===== */
.footer{background:var(--navy-950);color:rgba(255,255,255,.7);padding:30px 0}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;color:rgba(255,255,255,.4);font-size:14px;}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}

@media (max-width:1180px){
  .brand-name {
    font-size: 14px;
  }
  .brand-logo {
      height: 30px !important;
  }
  .nav {
    gap: 10px;
  }
  .phone {
    gap: 5px;
    font-size: 13px;
  }
}
@media (max-width:1024px){
  .nav{display:none}.header-right .phone{display:none}.menu-btn{display:flex}
  .hero-inner{grid-template-columns:1fr;padding:70px 0 80px}
  .hero-visual{display:none}
  .pain-grid,.goal-grid,.metric-grid,.modules,.arch-points{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .section{padding:76px 0}
  .feature{grid-template-columns:1fr;gap:24px}
  .feature.rev .f-visual{order:0}
  .pain-grid,.goal-grid,.metric-grid,.modules,.risk-grid,.arch-points{grid-template-columns:1fr}
  .timeline{grid-template-columns:repeat(2,1fr);gap:22px}
  .cta-card{padding:44px 24px;margin-top: 30px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}