:root{
    --bg:#0A0D13;
    --bg-alt:#0D111A;
    --surface:#131826;
    --surface-2:#1A2133;
    --border:#242C40;
    --border-soft:#1B2233;
    --text:#EEF0F6;
    --text-muted:#9AA3BA;
    --text-faint:#5F6880;
    --accent:#FF7A45;
    --accent-soft:#FF7A4522;
    --accent-ink:#26130A;
    --accent-2:#4FD1C5;
    --accent-2-soft:#4FD1C51F;
    --danger:#FF6B6B;
    --font-display:'Bricolage Grotesque', 'Segoe UI', system-ui, sans-serif;
    --font-body:'IBM Plex Sans', 'Segoe UI', system-ui, sans-serif;
    --font-mono:'IBM Plex Mono', 'SFMono-Regular', Consolas, monospace;
    --radius-lg:20px;
    --radius-md:14px;
    --radius-sm:9px;
    --maxw:1180px;
  }

  *{box-sizing:border-box;}
  body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:var(--font-body);
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    padding-inline:0;
  }
  img,svg{max-width:100%;display:block;}
  a{color:inherit;}
  h1,h2,h3,h4{font-family:var(--font-display);margin:0;text-wrap:balance;font-weight:600;letter-spacing:-0.01em;}
  p{margin:0;}
  ul{margin:0;padding:0;list-style:none;}
  button{font-family:inherit;}
  :focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:4px;}
  ::selection{background:var(--accent-soft);color:var(--text);}

  .wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:24px;}
  @media (max-width:640px){ .wrap{padding-inline:18px;} }

  .eyebrow{
    font-family:var(--font-mono);
    font-size:0.78rem;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--accent-2);
    display:inline-flex;
    align-items:center;
    gap:8px;
  }
  .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 3px var(--accent-2-soft);}

  /* ---------- NAV ---------- */
  .nav{
    position:sticky;
    top:env(safe-area-inset-top,0px);
    z-index:50;
    background:rgba(10,13,19,0.82);
    backdrop-filter:blur(10px) saturate(140%);
    border-bottom:1px solid var(--border-soft);
  }
  .nav-inner{
    max-width:var(--maxw);
    margin-inline:auto;
    padding:14px 24px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
  }
  .brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-0.01em;}
  .brand-mark{
    width:32px;height:32px;border-radius:9px;
    background:linear-gradient(155deg,var(--accent),#FF9A6B);
    color:var(--accent-ink);
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-display);font-weight:800;font-size:1.05rem;
    flex:none;
  }
  .nav-links{display:flex;gap:30px;align-items:center;}
  .nav-links a{
    font-size:0.92rem;color:var(--text-muted);text-decoration:none;
    transition:color .15s ease;
  }
  .nav-links a:hover{color:var(--text);}
  .nav-actions{display:flex;align-items:center;gap:12px;}
  .lang-btn{
    background:transparent;border:1px solid var(--border);color:var(--text-muted);
    border-radius:100px;padding:7px 14px;font-size:0.82rem;font-family:var(--font-mono);
    cursor:pointer;transition:.15s ease;
  }
  .lang-btn:hover{border-color:var(--accent-2);color:var(--text);}
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    border-radius:100px;padding:11px 22px;font-size:0.92rem;font-weight:600;
    text-decoration:none;cursor:pointer;border:1px solid transparent;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
    white-space:nowrap;
  }
  .btn:active{transform:translateY(1px);}
  .btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 24px -10px var(--accent-soft);}
  .btn-primary:hover{background:#FF8A5C;}
  .btn-ghost{background:transparent;border-color:var(--border);color:var(--text);}
  .btn-ghost:hover{border-color:var(--text-muted);}
  .btn-block{width:100%;}
  .btn-lg{padding:14px 28px;font-size:1rem;}

  .mobile-toggle{
    display:none;background:transparent;border:1px solid var(--border);
    border-radius:9px;padding:8px 10px;color:var(--text);cursor:pointer;
  }
  .mobile-toggle span{display:block;width:18px;height:2px;background:var(--text);margin:3px 0;border-radius:2px;}
  .mobile-menu{display:none;flex-direction:column;gap:2px;padding:8px 24px 18px;border-bottom:1px solid var(--border-soft);background:var(--bg);}
  .mobile-menu.open{display:flex;}
  .mobile-menu a{padding:11px 4px;color:var(--text-muted);text-decoration:none;border-bottom:1px solid var(--border-soft);font-size:0.95rem;}
  .mobile-menu a:last-child{border-bottom:none;}

  @media (max-width:860px){
    .nav-links{display:none;}
    .mobile-toggle{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;}
    .nav-actions .btn-lg{display:none;}
  }

  /* ---------- SECTION SCAFFOLD ---------- */
  section{padding-block:96px;}
  .section-alt{background:var(--bg-alt);border-block:1px solid var(--border-soft);}
  @media (max-width:640px){ section{padding-block:64px;} }
  .section-head{max-width:640px;margin-bottom:52px;}
  .section-head.center{max-width:680px;margin-inline:auto;text-align:center;}
  .section-title{font-size:clamp(1.7rem,3.2vw,2.4rem);margin-top:14px;}
  .section-sub{margin-top:14px;color:var(--text-muted);font-size:1.02rem;max-width:56ch;}
  .section-head.center .section-sub{margin-inline:auto;}

  [data-reveal]{opacity:1;transform:none;}
  @media (prefers-reduced-motion:no-preference){
    [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease;}
    [data-reveal].in-view{opacity:1;transform:none;}
  }

  /* ---------- HERO ---------- */
  .hero{padding-top:76px;padding-bottom:80px;position:relative;overflow:hidden;}
  .hero::before{
    content:"";position:absolute;top:-220px;right:-160px;width:560px;height:560px;
    background:radial-gradient(circle,var(--accent-soft),transparent 70%);
    pointer-events:none;
  }
  .hero::after{
    content:"";position:absolute;bottom:-260px;left:-200px;width:520px;height:520px;
    background:radial-gradient(circle,var(--accent-2-soft),transparent 70%);
    pointer-events:none;
  }
  .hero-inner{
    display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;
    position:relative;
  }
  @media (max-width:980px){ .hero-inner{grid-template-columns:1fr;} }
  .hero-title{font-size:clamp(2.3rem,5vw,3.5rem);line-height:1.08;margin-top:18px;}
  .hero-title .accent{color:var(--accent);}
  .hero-sub{margin-top:20px;color:var(--text-muted);font-size:1.08rem;max-width:52ch;}
  .hero-ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;}
  .chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px;}
  .chip{
    font-size:0.8rem;color:var(--text-muted);border:1px solid var(--border);
    border-radius:100px;padding:7px 13px;display:inline-flex;align-items:center;gap:7px;
    font-family:var(--font-mono);
  }
  .chip .dot{width:6px;height:6px;border-radius:50%;background:var(--accent-2);flex:none;}

  .hero-visual{position:relative;}
  .mock-card{
    background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
    padding:22px;box-shadow:0 30px 60px -30px rgba(0,0,0,0.6);
  }
  .mock-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
  .mock-label{font-family:var(--font-mono);font-size:0.72rem;color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;}
  .mock-engine{
    font-family:var(--font-mono);font-size:0.72rem;background:var(--accent-2-soft);
    color:var(--accent-2);padding:4px 10px;border-radius:100px;
  }
  .mock-query{
    font-size:0.95rem;color:var(--text-muted);padding:11px 14px;background:var(--bg);
    border:1px solid var(--border-soft);border-radius:var(--radius-sm);margin-bottom:16px;
  }
  .mock-answer{font-size:0.94rem;color:var(--text);line-height:1.65;}
  .mock-answer strong{color:var(--accent);font-weight:600;}
  .mock-cites{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap;}
  .mock-cite{
    font-family:var(--font-mono);font-size:0.7rem;color:var(--text-faint);
    border:1px solid var(--border-soft);border-radius:6px;padding:3px 8px;
  }
  .mock-foot{margin-top:14px;font-size:0.74rem;color:var(--text-faint);font-style:italic;}

  /* ---------- INDUSTRY STRIP ---------- */
  .industries-wrap{padding-block:36px;}
  .industries-label{font-family:var(--font-mono);font-size:0.76rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px;text-align:center;}
  .industries{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
  .industry-tag{
    font-size:0.85rem;color:var(--text-muted);border:1px solid var(--border-soft);
    border-radius:100px;padding:8px 16px;
  }

  /* ---------- PRODUCTS ---------- */
  .products-grid{display:flex;flex-direction:column;gap:28px;}
  .product-card{
    background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
    padding:38px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;
  }
  .product-card.rev .product-mock{order:-1;}
  @media (max-width:900px){
    .product-card{grid-template-columns:1fr;padding:26px;}
    .product-card.rev .product-mock{order:0;}
  }
  .product-badge{
    display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);
    font-size:0.72rem;letter-spacing:.08em;padding:5px 11px;border-radius:100px;
  }
  .product-badge.geo{background:var(--accent-2-soft);color:var(--accent-2);}
  .product-badge.trade{background:var(--accent-soft);color:var(--accent);}
  .product-name{font-size:1.65rem;margin-top:14px;}
  .product-tagline{color:var(--text-muted);margin-top:8px;font-size:1rem;}
  .product-desc{color:var(--text-muted);margin-top:16px;font-size:0.96rem;max-width:48ch;}
  .feature-list{margin-top:22px;display:flex;flex-direction:column;gap:11px;}
  .feature-item{display:flex;gap:10px;font-size:0.92rem;color:var(--text);}
  .feature-item svg{flex:none;margin-top:3px;}

  .product-mock{
    background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-md);
    padding:20px;
  }
  .geo-bar-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
  .geo-bar-row:last-child{margin-bottom:0;}
  .geo-bar-label{width:96px;flex:none;font-family:var(--font-mono);font-size:0.74rem;color:var(--text-muted);}
  .geo-bar-track{flex:1;height:8px;border-radius:100px;background:var(--surface-2);overflow:hidden;}
  .geo-bar-fill{height:100%;border-radius:100px;background:linear-gradient(90deg,var(--accent-2),var(--accent));}
  .geo-bar-pct{width:38px;flex:none;text-align:right;font-family:var(--font-mono);font-size:0.74rem;color:var(--text-faint);}

  .seq-list{display:flex;flex-direction:column;gap:12px;}
  .seq-item{border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:12px 14px;background:var(--surface);}
  .seq-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
  .seq-lang{font-family:var(--font-mono);font-size:0.7rem;color:var(--accent-2);text-transform:uppercase;letter-spacing:.05em;}
  .seq-step{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-faint);}
  .seq-text{font-size:0.86rem;color:var(--text-muted);}
  .mock-caption{margin-top:14px;font-size:0.74rem;color:var(--text-faint);font-style:italic;text-align:center;}

  /* ---------- HOW IT WORKS ---------- */
  .how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
  @media (max-width:900px){ .how-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .how-grid{grid-template-columns:1fr;} }
  .how-step{border-top:2px solid var(--border);padding-top:20px;position:relative;}
  .how-num{font-family:var(--font-mono);color:var(--accent);font-size:0.85rem;}
  .how-title{margin-top:12px;font-size:1.08rem;}
  .how-desc{margin-top:10px;color:var(--text-muted);font-size:0.9rem;}

  /* ---------- CAPABILITIES ---------- */
  .cap-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;}
  @media (max-width:980px){ .cap-grid{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:600px){ .cap-grid{grid-template-columns:1fr 1fr;} }
  .cap-note{
    margin-top:22px;
    text-align:center;
    font-size:0.88rem;
    color:var(--text-faint);
    max-width:640px;
    margin-inline:auto;
    line-height:1.6;
  }
  .cap-tile{background:var(--surface);padding:30px 24px;}
  .cap-value{font-family:var(--font-display);font-size:2.1rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;}
  .cap-label{margin-top:8px;color:var(--text-muted);font-size:0.88rem;}

  /* ---------- AUDIENCE ---------- */
  .audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  @media (max-width:900px){ .audience-grid{grid-template-columns:1fr;} }
  .audience-card{
    border:1px solid var(--border);border-radius:var(--radius-md);padding:26px;
    background:var(--surface);
  }
  .audience-icon{
    width:42px;height:42px;border-radius:11px;background:var(--accent-2-soft);
    display:flex;align-items:center;justify-content:center;color:var(--accent-2);margin-bottom:16px;
  }
  .audience-title{font-size:1.1rem;}
  .audience-desc{margin-top:10px;color:var(--text-muted);font-size:0.9rem;}

  /* ---------- FAQ ---------- */
  .faq-list{display:flex;flex-direction:column;border-top:1px solid var(--border-soft);}
  .faq-item{border-bottom:1px solid var(--border-soft);}
  .faq-question{
    width:100%;text-align:left;background:transparent;border:none;color:var(--text);
    padding:22px 4px;font-size:1.02rem;font-weight:600;font-family:var(--font-body);
    display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;
  }
  .faq-icon{flex:none;width:20px;height:20px;position:relative;}
  .faq-icon::before,.faq-icon::after{content:"";position:absolute;background:var(--text-muted);border-radius:2px;transition:transform .2s ease;}
  .faq-icon::before{width:14px;height:2px;top:9px;left:3px;}
  .faq-icon::after{width:2px;height:14px;top:3px;left:9px;}
  .faq-item.open .faq-icon::after{transform:rotate(90deg);opacity:0;}
  .faq-answer{max-height:0;overflow:hidden;transition:max-height .25s ease;}
  .faq-answer-inner{padding:0 4px 22px;color:var(--text-muted);font-size:0.94rem;max-width:70ch;}

  /* ---------- CTA BAND ---------- */
  .cta-band{
    background:linear-gradient(135deg,var(--surface),var(--surface-2));
    border:1px solid var(--border);border-radius:var(--radius-lg);
    padding:56px 44px;display:flex;justify-content:space-between;align-items:center;gap:32px;
    max-width:var(--maxw);margin:0 auto;
  }
  @media (max-width:760px){ .cta-band{flex-direction:column;text-align:center;padding:40px 26px;} }
  .cta-band h2{font-size:clamp(1.5rem,3vw,2rem);}
  .cta-band p{margin-top:10px;color:var(--text-muted);}

  /* ---------- FOOTER / CONTACT ---------- */
  footer{padding-block:88px 40px;}
  .footer-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;}
  @media (max-width:900px){ .footer-grid{grid-template-columns:1fr;gap:44px;} }
  .footer-copy{color:var(--text-muted);margin-top:16px;max-width:44ch;font-size:0.95rem;}
  .footer-email{
    margin-top:22px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);
    color:var(--accent-2);text-decoration:none;font-size:0.94rem;border-bottom:1px solid transparent;
  }
  .footer-email:hover{border-color:var(--accent-2);}

  .contact-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
  @media (max-width:540px){ .form-row{grid-template-columns:1fr;} }
  .form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;}
  .form-field label{font-size:0.78rem;color:var(--text-muted);font-family:var(--font-mono);}
  .form-field input,.form-field textarea{
    background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);
    padding:11px 13px;color:var(--text);font-family:var(--font-body);font-size:0.92rem;
  }
  .form-field input:focus,.form-field textarea:focus{border-color:var(--accent-2);}
  .form-field textarea{resize:vertical;min-height:90px;}
  .hp-field{position:absolute!important;left:-9999px!important;opacity:0;height:0;width:0;}
  .form-status{
    margin-top:12px;
    font-size:0.85rem;
    line-height:1.55;
    padding:10px 12px;
    border-radius:var(--radius-sm);
    border:1px solid var(--border);
  }
  .form-status.ok{color:var(--accent-2);border-color:var(--accent-2);background:var(--accent-2-soft);}
  .form-status.err{color:var(--danger);border-color:var(--danger);background:rgba(255,107,107,.1);}
  .form-note{margin-top:12px;font-size:0.76rem;color:var(--text-faint);}

  .footer-bottom{
    max-width:var(--maxw);margin:60px auto 0;padding-top:26px;border-top:1px solid var(--border-soft);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:var(--text-faint);font-size:0.82rem;
  }

  /* ---------- CHANNELS ---------- */
  .channel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:56px;}
  @media (max-width:980px){ .channel-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .channel-grid{grid-template-columns:1fr;} }
  .channel-card{
    background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);
    padding:24px;display:flex;flex-direction:column;
  }
  .channel-icon{
    width:42px;height:42px;border-radius:11px;background:var(--accent-2-soft);
    display:flex;align-items:center;justify-content:center;color:var(--accent-2);margin-bottom:16px;flex:none;
  }
  .channel-name{font-size:1.05rem;}
  .channel-tagline{margin-top:8px;color:var(--text-muted);font-size:0.86rem;line-height:1.55;}
  .channel-list{margin-top:16px;display:flex;flex-direction:column;gap:9px;}
  .channel-list li{display:flex;gap:8px;font-size:0.82rem;color:var(--text-muted);}
  .channel-list svg{flex:none;margin-top:3px;}

  .flow-card{
    background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-lg);
    padding:32px 28px 26px;
  }
  .flow-title{font-family:var(--font-mono);font-size:0.78rem;color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;text-align:center;margin-bottom:28px;}
  .flow-row{display:flex;position:relative;gap:8px;}
  .flow-row::before{
    content:"";position:absolute;top:19px;left:6%;right:6%;height:2px;
    background:repeating-linear-gradient(90deg,var(--border) 0 8px,transparent 8px 14px);
  }
  .flow-item{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;gap:10px;}
  .flow-dot{
    width:40px;height:40px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);
    display:flex;align-items:center;justify-content:center;color:var(--accent-2);position:relative;z-index:1;
  }
  .flow-day{font-family:var(--font-mono);font-size:0.7rem;color:var(--accent);}
  .flow-label{font-size:0.84rem;color:var(--text);font-weight:600;}
  .flow-sub{font-size:0.76rem;color:var(--text-faint);}
  @media (max-width:640px){
    .flow-row{flex-direction:column;gap:22px;}
    .flow-row::before{display:none;}
    .flow-item{flex-direction:row;text-align:left;justify-content:flex-start;}
    .flow-item > div:last-child{display:flex;flex-direction:column;}
  }

/* ---------- 首页：两产品分流卡片 ---------- */
.split-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:20px;
  margin-top:34px;
}
.split-card{
  display:flex;
  flex-direction:column;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:30px 28px;
  text-decoration:none;
  color:inherit;
  transition:border-color .18s ease, transform .18s ease, background .18s ease;
}
.split-card:hover{
  border-color:var(--accent);
  transform:translateY(-3px);
  background:var(--surface-2);
}
.split-tag{
  font-family:var(--font-mono);
  font-size:0.7rem;
  letter-spacing:.12em;
  color:var(--accent-2);
  margin-bottom:14px;
}
.split-name{
  font-family:var(--font-display);
  font-size:1.5rem;
  font-weight:600;
  margin-bottom:10px;
}
.split-copy{
  color:var(--text-muted);
  font-size:0.95rem;
  margin-bottom:18px;
}
.split-list{
  display:flex;
  flex-direction:column;
  gap:9px;
  margin-bottom:20px;
}
.split-list li{
  position:relative;
  padding-left:20px;
  font-size:0.9rem;
  color:var(--text-muted);
}
.split-list li::before{
  content:"";
  position:absolute;
  left:0; top:.55em;
  width:6px; height:6px;
  border-radius:50%;
  background:var(--accent-2);
}
.split-who{
  font-family:var(--font-mono);
  font-size:0.75rem;
  color:var(--text-faint);
  padding-top:16px;
  border-top:1px solid var(--border-soft);
  margin-top:auto;
}
.split-go{
  margin-top:12px;
  font-size:0.9rem;
  font-weight:600;
  color:var(--accent);
}

/* ---------- 产品页：外呼序列卡 ---------- */
.seq{display:flex;flex-direction:column;gap:14px;margin-top:6px;}
.seq-item{
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-md);
  padding:14px 16px;
}
.seq-step{
  font-family:var(--font-mono);
  font-size:0.72rem;
  color:var(--text-faint);
  margin:4px 0 6px;
}
.seq-text{font-size:0.88rem;color:var(--text-muted);}

/* 当前所在产品页在导航中高亮 */
body[data-page="geo"]   .nav-links a[data-nav="geo"],
body[data-page="trade"] .nav-links a[data-nav="trade"]{
  color:var(--accent);
}
