feat: 官网UI全面升级 - 品牌色调整 + 新logo + 文案优化

- 品牌色从绿色改为蓝色(#3B82F6)
- 添加logo-b并裁剪为导航栏尺寸
- 文案按部门重新划分:市场/销售、生产/质检、老板、财务/人事
- 去除AI味文案,改用接地气表达
- 清理无用测试文件(version-a~e, index-c)
- 清理重复视频文件
This commit is contained in:
chiguyong 2026-05-24 09:23:35 +08:00
parent c01e83227b
commit 21386ac5bb
14 changed files with 1249 additions and 7680 deletions

BIN
assets/logo/logo-b-nav.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

BIN
assets/logo/logo-b.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Binary file not shown.

View File

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message></Error>

Binary file not shown.

686
index-b.html Normal file
View File

@ -0,0 +1,686 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>菲西尔智能 · 企业级AI落地专家</title>
<meta name="description" content="帮企业在现有业务系统上叠加AI能力。营销获客、提质增效、决策支持、数据处理四大场景2周部署见效。">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&family=Noto+Sans+SC:wght@400;500;700&display=swap" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/gsap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.5/ScrollTrigger.min.js"></script>
<style>
:root {
--bg: #ffffff;
--bg-soft: #f6f6f7;
--bg-mute: #f1f1f2;
--text-1: #213547;
--text-2: #476582;
--text-3: #8e9aaf;
--brand: #3B82F6;
--brand-light: #60A5FA;
--brand-dark: #2563EB;
--brand-soft: rgba(59, 130, 246, 0.12);
--accent: #64748b;
--accent-light: #94a3b8;
--divider: rgba(60, 60, 60, 0.12);
--shadow-1: 0 1px 2px rgba(0,0,0,0.04), 0 1px 2px rgba(0,0,0,0.06);
--shadow-2: 0 3px 12px rgba(0,0,0,0.07), 0 1px 4px rgba(0,0,0,0.07);
--shadow-3: 0 12px 32px rgba(0,0,0,0.1), 0 2px 6px rgba(0,0,0,0.08);
--radius: 8px;
--radius-lg: 12px;
--max-width: 1280px;
--header-height: 64px;
--transition: 0.25s ease;
}
@media (prefers-color-scheme: dark) {
:root {
--bg: #1e1e20;
--bg-soft: #252529;
--bg-mute: #2c2c30;
--text-1: #e2e2e4;
--text-2: #9e9eb5;
--text-3: #6e6e80;
--divider: rgba(255,255,255,0.1);
}
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
font-family: 'Inter', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, sans-serif;
background: var(--bg); color: var(--text-1); line-height: 1.7;
-webkit-font-smoothing: antialiased;
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
/* ========== HEADER ========== */
.header {
position: fixed; top: 0; left: 0; right: 0; z-index: 100;
height: var(--header-height); background: var(--bg);
border-bottom: 1px solid var(--divider);
transition: box-shadow var(--transition);
}
.header.scrolled { box-shadow: var(--shadow-1); }
.header-inner {
max-width: var(--max-width); margin: 0 auto; height: 100%;
padding: 0 32px; display: flex; align-items: center; justify-content: space-between;
}
.logo {
display: flex; align-items: center; text-decoration: none;
}
.logo img { height: 32px; width: auto; }
.nav-links { display: flex; gap: 32px; align-items: center; }
.nav-links a {
font-size: 14px; font-weight: 500; color: var(--text-2);
text-decoration: none; transition: color var(--transition);
}
.nav-links a:hover { color: var(--text-1); }
.nav-cta {
padding: 8px 16px; background: var(--brand-soft); color: var(--brand-dark);
border-radius: var(--radius); font-size: 13px; font-weight: 600;
text-decoration: none; transition: all var(--transition);
}
.nav-cta:hover { background: var(--brand); color: #fff; }
/* ========== HERO ========== */
.hero {
padding-top: var(--header-height);
background: linear-gradient(180deg, var(--bg) 0%, var(--bg-soft) 100%);
position: relative; overflow: hidden;
}
.hero-inner {
max-width: var(--max-width); margin: 0 auto; padding: 80px 32px 120px;
display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center;
}
.hero-badge {
display: inline-flex; align-items: center; gap: 8px;
padding: 6px 14px; background: var(--brand-soft);
border: 1px solid rgba(59,130,246,0.2); border-radius: 100px;
font-size: 13px; font-weight: 600; color: var(--brand-dark); margin-bottom: 24px;
}
.hero-badge::before {
content: ''; width: 8px; height: 8px; background: var(--brand);
border-radius: 50%; box-shadow: 0 0 8px var(--brand);
}
.hero-title {
font-family: 'Space Grotesk', 'Noto Sans SC', sans-serif;
font-size: clamp(36px, 5vw, 56px); font-weight: 700;
line-height: 1.15; letter-spacing: -0.03em; margin-bottom: 20px;
}
.hero-title .brand { color: var(--brand); }
.hero-desc {
font-size: 18px; color: var(--text-2); line-height: 1.7;
margin-bottom: 32px; max-width: 480px;
}
.hero-cta-group { display: flex; gap: 12px; flex-wrap: wrap; }
.btn {
display: inline-flex; align-items: center; gap: 8px;
padding: 12px 24px; font-size: 14px; font-weight: 600;
border-radius: var(--radius); text-decoration: none; cursor: pointer;
border: none; transition: all var(--transition);
}
.btn-primary {
background: var(--brand); color: #fff;
box-shadow: 0 1px 3px rgba(59,130,246,0.3);
}
.btn-primary:hover {
background: var(--brand-dark); transform: translateY(-1px);
box-shadow: var(--shadow-2);
}
.btn-secondary {
background: var(--bg-mute); color: var(--text-1);
border: 1px solid var(--divider);
}
.btn-secondary:hover { background: var(--bg-soft); border-color: var(--text-3); }
/* Hero visual - code preview style */
.hero-visual {
background: var(--bg); border: 1px solid var(--divider);
border-radius: var(--radius-lg); overflow: hidden;
box-shadow: var(--shadow-3);
}
.hero-visual-header {
padding: 12px 16px; background: var(--bg-soft);
border-bottom: 1px solid var(--divider);
display: flex; align-items: center; gap: 8px;
}
.hero-visual-dot { width: 10px; height: 10px; border-radius: 50%; }
.hero-visual-dot.r { background: #ff5f57; }
.hero-visual-dot.y { background: #febc2e; }
.hero-visual-dot.g { background: #28c840; }
.hero-visual-body { padding: 20px; font-family: 'JetBrains Mono', monospace; font-size: 13px; }
.code-line { display: flex; gap: 16px; margin-bottom: 8px; }
.code-num { color: var(--text-3); min-width: 24px; text-align: right; user-select: none; }
.code-content { color: var(--text-2); }
.code-keyword { color: #cf222e; }
.code-string { color: #0a3069; }
.code-func { color: #8250df; }
.code-comment { color: #6e7781; }
@media (prefers-color-scheme: dark) {
.code-keyword { color: #ff7b72; }
.code-string { color: #a5d6ff; }
.code-func { color: #d2a8ff; }
.code-comment { color: #8b949e; }
}
/* ========== FEATURES ========== */
.features {
padding: 80px 32px; max-width: var(--max-width); margin: 0 auto;
}
.features-header { text-align: center; margin-bottom: 64px; }
.features-header h2 {
font-family: 'Space Grotesk', sans-serif; font-size: 36px;
font-weight: 700; margin-bottom: 12px;
}
.features-header p { color: var(--text-2); font-size: 17px; }
.features-grid {
display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.feature-card {
padding: 32px; background: var(--bg-soft);
border: 1px solid var(--divider); border-radius: var(--radius-lg);
transition: all var(--transition);
}
.feature-card:hover {
transform: translateY(-2px); box-shadow: var(--shadow-2);
border-color: rgba(59,130,246,0.3);
}
.feature-icon {
width: 48px; height: 48px; border-radius: var(--radius);
background: var(--brand-soft); display: flex; align-items: center;
justify-content: center; margin-bottom: 20px;
}
.feature-icon svg { width: 24px; height: 24px; color: var(--brand); }
.feature-card h3 {
font-family: 'Space Grotesk', sans-serif; font-size: 18px;
font-weight: 600; margin-bottom: 8px;
}
.feature-card p { font-size: 14px; color: var(--text-2); line-height: 1.6; }
/* ========== SERVICES ========== */
.services { background: var(--bg-soft); padding: 80px 32px; }
.services-inner { max-width: var(--max-width); margin: 0 auto; }
.services-header { text-align: center; margin-bottom: 64px; }
.services-header h2 {
font-family: 'Space Grotesk', sans-serif; font-size: 36px;
font-weight: 700; margin-bottom: 12px;
}
.services-header p { color: var(--text-2); font-size: 17px; }
.service-row {
display: grid; grid-template-columns: 1fr 1fr; gap: 48px;
align-items: center; padding: 48px 0; border-bottom: 1px solid var(--divider);
}
.service-row:last-child { border-bottom: none; }
.service-row.reverse .service-text { order: 2; }
.service-row.reverse .service-img { order: 1; }
.service-tag {
display: inline-flex; align-items: center; gap: 6px;
padding: 4px 12px; background: var(--brand-soft);
border-radius: 100px; font-size: 12px; font-weight: 600;
color: var(--brand-dark); margin-bottom: 16px;
}
.service-text h3 {
font-family: 'Space Grotesk', 'Noto Sans SC', sans-serif;
font-size: 28px; font-weight: 700; margin-bottom: 16px;
}
.service-text p { color: var(--text-2); line-height: 1.7; margin-bottom: 20px; }
.service-metric {
display: flex; gap: 32px; margin-top: 24px;
}
.metric-item h4 {
font-family: 'Space Grotesk', sans-serif; font-size: 32px;
font-weight: 700; color: var(--brand); margin-bottom: 4px;
}
.metric-item span { font-size: 13px; color: var(--text-3); }
.service-img {
background: var(--bg); border: 1px solid var(--divider);
border-radius: var(--radius-lg); overflow: hidden;
aspect-ratio: 16/10; box-shadow: var(--shadow-2);
}
.service-img img { width: 100%; height: 100%; object-fit: cover; }
/* ========== HOW IT WORKS ========== */
.how {
padding: 80px 32px; max-width: var(--max-width); margin: 0 auto;
}
.how-header { text-align: center; margin-bottom: 64px; }
.how-header h2 {
font-family: 'Space Grotesk', sans-serif; font-size: 36px;
font-weight: 700; margin-bottom: 12px;
}
.how-header p { color: var(--text-2); font-size: 17px; }
.how-steps {
display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
.step {
text-align: center; padding: 32px 24px;
background: var(--bg-soft); border: 1px solid var(--divider);
border-radius: var(--radius-lg); position: relative;
}
.step-num {
width: 40px; height: 40px; border-radius: 50%;
background: var(--brand); color: #fff; display: flex;
align-items: center; justify-content: center;
font-family: 'Space Grotesk', sans-serif; font-size: 16px;
font-weight: 700; margin: 0 auto 16px;
}
.step h4 { font-size: 16px; font-weight: 600; margin-bottom: 8px; }
.step p { font-size: 14px; color: var(--text-2); line-height: 1.6; }
/* ========== TESTIMONIALS ========== */
.testimonials {
background: var(--bg-soft); padding: 80px 32px;
}
.testimonials-inner { max-width: var(--max-width); margin: 0 auto; }
.testimonials-header { text-align: center; margin-bottom: 48px; }
.testimonials-header h2 {
font-family: 'Space Grotesk', sans-serif; font-size: 36px; font-weight: 700;
}
.testimonial-grid {
display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
.testimonial-card {
padding: 32px; background: var(--bg);
border: 1px solid var(--divider); border-radius: var(--radius-lg);
}
.testimonial-card p {
font-size: 15px; color: var(--text-2); line-height: 1.7;
margin-bottom: 20px;
}
.testimonial-author {
display: flex; align-items: center; gap: 12px;
}
.testimonial-avatar {
width: 40px; height: 40px; border-radius: 50%;
background: linear-gradient(135deg, var(--brand), var(--brand-light));
display: flex; align-items: center; justify-content: center;
color: #fff; font-size: 14px; font-weight: 700;
}
.testimonial-author div { font-size: 14px; }
.testimonial-author div span { display: block; color: var(--text-3); font-size: 12px; }
/* ========== CTA ========== */
.cta {
padding: 80px 32px; max-width: var(--max-width); margin: 0 auto;
text-align: center;
}
.cta-box {
padding: 64px; background: linear-gradient(135deg, var(--brand-soft), rgba(59,130,246,0.06));
border: 1px solid rgba(59,130,246,0.2); border-radius: var(--radius-lg);
}
.cta h2 {
font-family: 'Space Grotesk', 'Noto Sans SC', sans-serif;
font-size: 36px; font-weight: 700; margin-bottom: 16px;
}
.cta p { color: var(--text-2); font-size: 17px; margin-bottom: 32px; }
/* ========== FOOTER ========== */
.footer {
border-top: 1px solid var(--divider); padding: 48px 32px;
max-width: var(--max-width); margin: 0 auto;
display: flex; justify-content: space-between; align-items: center;
}
.footer-left { font-size: 14px; color: var(--text-3); }
.footer-right { display: flex; gap: 24px; }
.footer-right a {
font-size: 14px; color: var(--text-2); text-decoration: none;
transition: color var(--transition);
}
.footer-right a:hover { color: var(--text-1); }
/* ========== RESPONSIVE ========== */
@media (max-width: 1024px) {
.hero-inner { grid-template-columns: 1fr; }
.hero-visual { display: none; }
.features-grid { grid-template-columns: repeat(2, 1fr); }
.service-row { grid-template-columns: 1fr; }
.service-row.reverse .service-text { order: 1; }
.service-row.reverse .service-img { order: 2; }
.how-steps { grid-template-columns: repeat(2, 1fr); }
.testimonial-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
.nav-links { display: none; }
.features-grid { grid-template-columns: 1fr; }
.how-steps { grid-template-columns: 1fr; }
.service-metric { flex-direction: column; gap: 16px; }
.cta-box { padding: 40px 24px; }
.footer { flex-direction: column; gap: 16px; text-align: center; }
}
</style>
</head>
<body>
<!-- Header -->
<header class="header" id="header">
<div class="header-inner">
<a href="#" class="logo">
<img src="assets/logo/logo-b-nav.png" alt="Fischer">
</a>
<nav class="nav-links">
<a href="#features">核心能力</a>
<a href="#services">解决方案</a>
<a href="#how">实施流程</a>
<a href="#testimonials">客户评价</a>
<a href="#contact" class="nav-cta">预约诊断</a>
</nav>
</div>
</header>
<!-- Hero -->
<section class="hero">
<div class="hero-inner">
<div class="hero-text">
<div class="hero-badge">企业级AI落地专家</div>
<h1 class="hero-title">
不换系统<br>
<span class="brand">2周让AI上岗</span>
</h1>
<p class="hero-desc">
市场部缺线索、生产部忙不过来、老板要报表、财务对账头大——不用换系统在现有工具上叠加AI能力2周见效。
</p>
<div class="hero-cta-group">
<a href="#contact" class="btn btn-primary">预约30分钟免费诊断</a>
<a href="#services" class="btn btn-secondary">看看适合哪个部门</a>
</div>
</div>
<div class="hero-visual">
<div class="hero-visual-header">
<span class="hero-visual-dot r"></span>
<span class="hero-visual-dot y"></span>
<span class="hero-visual-dot g"></span>
<span style="margin-left:8px;font-size:12px;color:var(--text-3);">fischer-ai.js</span>
</div>
<div class="hero-visual-body">
<div class="code-line"><span class="code-num">1</span><span class="code-content"><span class="code-keyword">import</span> { FischerAI } <span class="code-keyword">from</span> <span class="code-string">'@fischer/ai-sdk'</span></span></div>
<div class="code-line"><span class="code-num">2</span><span class="code-content"></span></div>
<div class="code-line"><span class="code-num">3</span><span class="code-content"><span class="code-comment">// 连接现有系统叠加AI能力</span></span></div>
<div class="code-line"><span class="code-num">4</span><span class="code-content"><span class="code-keyword">const</span> ai = <span class="code-keyword">new</span> <span class="code-func">FischerAI</span>({</span></div>
<div class="code-line"><span class="code-num">5</span><span class="code-content"> system: <span class="code-string">'property-mgmt'</span>,</span></div>
<div class="code-line"><span class="code-num">6</span><span class="code-content"> modules: [<span class="code-string">'dispatch'</span>, <span class="code-string">'alert'</span>, <span class="code-string">'report'</span>]</span></div>
<div class="code-line"><span class="code-num">7</span><span class="code-content">})</span></div>
<div class="code-line"><span class="code-num">8</span><span class="code-content"></span></div>
<div class="code-line"><span class="code-num">9</span><span class="code-content"><span class="code-comment">// 2周部署立即见效</span></span></div>
<div class="code-line"><span class="code-num">10</span><span class="code-content">ai.<span class="code-func">deploy</span>({ timeline: <span class="code-string">'2weeks'</span> })</span></div>
</div>
</div>
</div>
</section>
<!-- Features -->
<section class="features" id="features">
<div class="features-header">
<h2>为什么不用换系统</h2>
<p>在现有工具上加点东西,比推倒重来划算得多</p>
</div>
<div class="features-grid">
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z"/></svg>
</div>
<h3>2周上线</h3>
<p>不用等半年实施周期。接个API配置一下两周就能用。不影响现有业务。</p>
</div>
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
</div>
<h3>零风险</h3>
<p>数据不用搬,员工不用学新系统。原来怎么用现在还怎么用,只是多了个帮手。</p>
</div>
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06A1.65 1.65 0 0 0 5 15.34a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.66 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06A1.65 1.65 0 0 0 9 4.66a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg>
</div>
<h3>按需扩展</h3>
<p>先在一个部门试点,效果好再推广。不用一次性买全套,用多少付多少。</p>
</div>
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/><polyline points="3.27 6.96 12 12.01 20.73 6.96"/><line x1="12" y1="22.08" x2="12" y2="12"/></svg>
</div>
<h3>即插即用</h3>
<p>支持主流业务系统。不用改造现有架构像插U盘一样接上就能用。</p>
</div>
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"/></svg>
</div>
<h3>越用越顺手</h3>
<p>基于你的真实业务数据,不是通用模板。用久了会发现它越来越懂你。</p>
</div>
<div class="feature-card">
<div class="feature-icon">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>
</div>
<h3>不用维护</h3>
<p>我们负责后台更新和优化,你不用招专人维护。有问题找我们就行。</p>
</div>
</div>
</section>
<!-- Services -->
<section class="services" id="services">
<div class="services-inner">
<div class="services-header">
<h2>不同部门,不同解法</h2>
<p>看看你的部门适合哪种方案</p>
</div>
<div class="service-row">
<div class="service-text">
<span class="service-tag">适合市场部、销售部</span>
<h3>线索不够?客户跟不过来?</h3>
<p>市场部写内容太慢、SEO没效果销售部线索质量差、跟进不及时。我们用GEO优化让你的品牌出现在AI搜索结果里同时给CRM加个智能层——自动清洗线索、提醒跟进、生成客户画像。市场部少花冤枉钱销售部多成单。</p>
<div class="service-metric">
<div class="metric-item">
<h4>GEO优化</h4>
<span>被AI搜索优先推荐</span>
</div>
<div class="metric-item">
<h4>智能跟进</h4>
<span>线索不流失</span>
</div>
</div>
</div>
<div class="service-img">
<img src="https://images.unsplash.com/photo-1460925895917-afdab827c52f?w=800&h=500&fit=crop" alt="营销获客">
</div>
</div>
<div class="service-row reverse">
<div class="service-text">
<span class="service-tag">适合生产部、质检部</span>
<h3>产量上不去?质量问题反复?</h3>
<p>生产计划靠经验、设备坏了才修、质检漏检率高。我们在现有MES/ERP系统上加个智能层——预测设备故障提前修、自动排产减少换线、质检数据实时分析找规律。产量稳住质量提升不用加人。</p>
<div class="service-metric">
<div class="metric-item">
<h4>预测维护</h4>
<span>减少停机时间</span>
</div>
<div class="metric-item">
<h4>智能排产</h4>
<span>提升设备利用率</span>
</div>
</div>
</div>
<div class="service-img">
<img src="https://images.unsplash.com/photo-1551288049-bebda4e38f71?w=800&h=500&fit=crop" alt="提质增效">
</div>
</div>
<div class="service-row">
<div class="service-text">
<span class="service-tag">适合老板、管理层</span>
<h3>报表等太久?决策靠感觉?</h3>
<p>每周一等报表、数据散落在各个系统、发现问题已经晚了。我们把所有系统的数据接进来,老板随时问"这个月哪个区域利润最高""库存有没有风险",秒出答案。不用等周报,不用催下属,打开手机就能看。</p>
<div class="service-metric">
<div class="metric-item">
<h4>一问即答</h4>
<span>自然语言查数据</span>
</div>
<div class="metric-item">
<h4>风险预警</h4>
<span>提前发现问题</span>
</div>
</div>
</div>
<div class="service-img">
<img src="https://images.unsplash.com/photo-1553877522-43269d4ea984?w=800&h=500&fit=crop" alt="决策支持">
</div>
</div>
<div class="service-row reverse">
<div class="service-text">
<span class="service-tag">适合财务部、人事行政</span>
<h3>对账对到眼花?表格做不完?</h3>
<p>财务月底对账要加班、报销单据堆成山;人事算考勤算绩效、行政管资产管采购,全是重复劳动。我们在现有财务/人事系统上加个自动化层——自动对账、智能报销审核、考勤异常自动标记、资产到期自动提醒。减少80%重复工作。</p>
<div class="service-metric">
<div class="metric-item">
<h4>自动对账</h4>
<span>月底不用加班</span>
</div>
<div class="metric-item">
<h4>流程自动化</h4>
<span>减少重复劳动</span>
</div>
</div>
</div>
<div class="service-img">
<img src="https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?w=800&h=500&fit=crop" alt="数据处理">
</div>
</div>
</div>
</section>
<!-- How It Works -->
<section class="how" id="how">
<div class="how-header">
<h2>怎么开始?很简单</h2>
<p>从聊到用最快2周</p>
</div>
<div class="how-steps">
<div class="step">
<div class="step-num">1</div>
<h4>聊聊现状</h4>
<p>30分钟电话说说你们现在用什么系统、哪个环节最头疼</p>
</div>
<div class="step">
<div class="step-num">2</div>
<h4>出方案</h4>
<p>根据你的系统和痛点,定一个试点方案——先解决最急的问题</p>
</div>
<div class="step">
<div class="step-num">3</div>
<h4>接上就用</h4>
<p>API对接现有系统配置好逻辑两周内上线。员工几乎无感。</p>
</div>
<div class="step">
<div class="step-num">4</div>
<h4>看着变好</h4>
<p>用一段时间,效果出来了再扩展。不好用随时停,没沉没成本。</p>
</div>
</div>
</section>
<!-- Testimonials -->
<section class="testimonials" id="testimonials">
<div class="testimonials-inner">
<div class="testimonials-header">
<h2>客户原话</h2>
</div>
<div class="testimonial-grid">
<div class="testimonial-card">
<p>"销售部之前每天花2小时填表现在系统自动生成跟进记录他们终于有时间见客户了。"</p>
<div class="testimonial-author">
<div class="testimonial-avatar"></div>
<div>某制造企业 <span>销售总监</span></div>
</div>
</div>
<div class="testimonial-card">
<p>"以前月底对账要加班3天现在系统自动对财务部的姑娘说终于能准时下班了。"</p>
<div class="testimonial-author">
<div class="testimonial-avatar"></div>
<div>某贸易公司 <span>财务经理</span></div>
</div>
</div>
<div class="testimonial-card">
<p>"老板以前周一早上催报表,现在他自己手机上看实时数据,不找我要了。"</p>
<div class="testimonial-author">
<div class="testimonial-avatar"></div>
<div>某零售企业 <span>运营经理</span></div>
</div>
</div>
</div>
</div>
</section>
<!-- CTA -->
<section class="cta" id="contact">
<div class="cta-box">
<h2>先聊聊,不花钱</h2>
<p>30分钟电话说说你们现在用什么系统、哪个环节最头疼。我们看看能不能帮上忙。</p>
<a href="mailto:contact@fischerai.cn" class="btn btn-primary">预约免费诊断</a>
</div>
</section>
<!-- Footer -->
<footer class="footer">
<div class="footer-left">&copy; 2026 菲西尔智能科技有限公司</div>
<div class="footer-right">
<a href="#features">核心能力</a>
<a href="#services">解决方案</a>
<a href="mailto:contact@fischerai.cn">联系我们</a>
</div>
</footer>
<script>
// Header scroll effect
const header = document.getElementById('header');
window.addEventListener('scroll', () => {
if (window.scrollY > 10) header.classList.add('scrolled');
else header.classList.remove('scrolled');
});
// GSAP ScrollTrigger animations
gsap.registerPlugin(ScrollTrigger);
// Animate feature cards
gsap.utils.toArray('.feature-card').forEach((card, i) => {
gsap.from(card, {
y: 30, opacity: 0, duration: 0.5, delay: i * 0.1,
scrollTrigger: { trigger: card, start: 'top 85%' }
});
});
// Animate service rows
gsap.utils.toArray('.service-row').forEach(row => {
gsap.from(row.querySelector('.service-text'), {
x: -30, opacity: 0, duration: 0.6,
scrollTrigger: { trigger: row, start: 'top 80%' }
});
gsap.from(row.querySelector('.service-img'), {
x: 30, opacity: 0, duration: 0.6,
scrollTrigger: { trigger: row, start: 'top 80%' }
});
});
// Animate steps
gsap.utils.toArray('.step').forEach((step, i) => {
gsap.from(step, {
y: 20, opacity: 0, duration: 0.4, delay: i * 0.15,
scrollTrigger: { trigger: step, start: 'top 85%' }
});
});
// Animate testimonials
gsap.utils.toArray('.testimonial-card').forEach((card, i) => {
gsap.from(card, {
y: 20, opacity: 0, duration: 0.5, delay: i * 0.1,
scrollTrigger: { trigger: card, start: 'top 85%' }
});
});
</script>
</body>
</html>

3299
index.html

File diff suppressed because it is too large Load Diff

BIN
logo.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,355 +0,0 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>菲西尔智能 · AI+物业AI+资管AI+CRM 企业级智能叠加</title>
<meta name="description" content="上海菲西尔智能科技有限公司——专注为现有业务系统叠加AI能力。">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;510;600;700;800;900&family=Noto+Sans+SC:wght@300;400;500;700;900&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<style>
:root {
--bg-deep: #010102; --bg-main: #08090a; --bg-panel: #0f1011;
--bg-elevated: #191a1b; --bg-surface: #28282c;
--text-primary: #f7f8f8; --text-secondary: #d0d6e0;
--text-tertiary: #8a8f98; --text-quaternary: #62666d;
--border-subtle: rgba(255,255,255,0.12);
--border-standard: rgba(255,255,255,0.18);
--border-prominent: rgba(255,255,255,0.22);
--sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px;
--sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px;
--sp-9: 80px; --sp-10: 120px;
--r-sm: 4px; --r-md: 6px; --r-lg: 8px; --r-xl: 12px; --r-2xl: 16px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
font-family: 'Inter', 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
font-feature-settings: 'cv01', 'ss03';
background: var(--bg-main); color: var(--text-primary);
line-height: 1.6; overflow-x: hidden;
-webkit-font-smoothing: antialiased;
}
.display-xl { font-size: clamp(48px, 7vw, 88px); font-weight: 900; line-height: 1.02; letter-spacing: -0.03em; }
.display-lg { font-size: clamp(36px, 5vw, 64px); font-weight: 800; line-height: 1.05; letter-spacing: -0.025em; }
.heading-lg { font-size: clamp(24px, 3vw, 40px); font-weight: 700; line-height: 1.1; letter-spacing: -0.015em; }
.body-lg { font-size: clamp(16px, 1.2vw, 18px); font-weight: 400; line-height: 1.7; color: var(--text-secondary); }
.body-md { font-size: 15px; font-weight: 400; line-height: 1.65; color: var(--text-tertiary); }
.caption { font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--text-quaternary); }
.metric { font-size: clamp(40px, 5vw, 72px); font-weight: 900; line-height: 1; letter-spacing: -0.04em; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 var(--sp-5); position: relative; z-index: 2; }
.grain { position: fixed; inset: -50%; width: 200%; height: 200%; z-index: 9999; pointer-events: none; opacity: 0.02; mix-blend-mode: overlay; animation: grain 0.8s steps(6) infinite; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
@keyframes grain { 0% { transform: translate(0,0); } 100% { transform: translate(-10%,10%); } }
nav { position: fixed; top: 0; width: 100%; z-index: 1000; padding: var(--sp-4) 0; background: rgba(8,9,10,0.92); border-bottom: 1px solid var(--border-subtle); transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
nav.scrolled { padding: var(--sp-2) 0; background: rgba(8,9,10,0.95); }
.nav-inner { max-width: 1200px; margin: 0 auto; padding: 0 var(--sp-5); display: flex; justify-content: space-between; align-items: center; }
.logo { font-size: 12px; font-weight: 800; letter-spacing: 0.2em; color: var(--text-primary); text-transform: uppercase; }
.nav-links { display: flex; gap: var(--sp-7); }
.nav-links a { color: var(--text-tertiary); text-decoration: none; font-size: 12px; font-weight: 510; letter-spacing: 0.04em; transition: color 0.3s ease; }
.nav-links a:hover { color: var(--text-primary); }
.hero { position: relative; min-height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }
#hero-canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; }
.hero-poster { position: absolute; inset: 0; z-index: 0; background-image: linear-gradient(rgba(255,255,255,0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.07) 1px, transparent 1px); background-size: 50px 50px; }
@keyframes heroZoom { from { transform: scale(1.05); } to { transform: scale(1.12); } }
.hero-overlay { position: absolute; inset: 0; z-index: 2; background: linear-gradient(to bottom, transparent 60%, var(--bg-main) 95%); pointer-events: none; }
.hero-content { position: relative; z-index: 10; text-align: center; max-width: 900px; padding: 0 var(--sp-5); }
.hero-line { width: 40px; height: 1px; background: rgba(255,255,255,0.3); margin: 0 auto var(--sp-6); opacity: 0; animation: fadeUp 1s cubic-bezier(0.16, 1, 0.3, 1) 0.1s forwards; }
.hero-title { opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards; }
.hero-sub { margin-top: var(--sp-6); font-size: clamp(15px, 1.3vw, 17px); font-weight: 400; color: var(--text-secondary); max-width: 560px; margin-left: auto; margin-right: auto; line-height: 1.75; opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.5s forwards; }
.hero-cta { margin-top: var(--sp-7); opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s forwards; }
.btn-primary { display: inline-flex; align-items: center; gap: var(--sp-2); padding: 14px 32px; background: var(--text-primary); color: var(--bg-main); text-decoration: none; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; border-radius: var(--r-md); transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); border: 1px solid transparent; }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(255,255,255,0.12); }
.btn-ghost { display: inline-flex; align-items: center; padding: 14px 32px; background: rgba(255,255,255,0.03); color: var(--text-secondary); text-decoration: none; font-size: 12px; font-weight: 600; letter-spacing: 0.06em; border-radius: var(--r-md); border: 1px solid var(--border-subtle); transition: all 0.3s ease; margin-left: var(--sp-3); }
.btn-ghost:hover { background: rgba(255,255,255,0.06); color: var(--text-primary); border-color: var(--border-standard); }
.scroll-indicator { position: absolute; bottom: var(--sp-7); left: 50%; transform: translateX(-50%); z-index: 10; width: 1px; height: 48px; background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.2), transparent); animation: scrollPulse 3s ease-in-out infinite; }
@keyframes scrollPulse { 0%, 100% { opacity: 0; transform: translateX(-50%) scaleY(0.5); } 50% { opacity: 1; transform: translateX(-50%) scaleY(1); } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
section { padding: var(--sp-10) 0; position: relative; }
.section-header { max-width: 640px; margin-bottom: var(--sp-8); }
.section-header .caption { display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-4); }
.section-header .caption::before { content: ''; width: 20px; height: 1px; background: var(--text-quaternary); }
#pain-points { background: var(--bg-main); }
.pain-bg-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size: 80px 80px; pointer-events: none; }
.pain-glow { position: absolute; top: 20%; left: 50%; width: 800px; height: 800px; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(255,255,255,0.06) 0%, transparent 70%); pointer-events: none; }
.pain-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; position: relative; }
.pain-item { background: rgba(255,255,255,0.04); padding: var(--sp-7) var(--sp-6); border: 1px solid var(--border-subtle); position: relative; min-height: 320px; display: flex; flex-direction: column; justify-content: space-between; transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
.pain-item:hover { background: rgba(255,255,255,0.07); border-color: var(--border-standard); }
.pain-icon { width: 32px; height: 32px; opacity: 0.4; margin-bottom: var(--sp-6); transition: opacity 0.4s ease; }
.pain-item:hover .pain-icon { opacity: 0.6; }
.pain-icon svg { width: 100%; height: 100%; }
.pain-icon svg line, .pain-icon svg path, .pain-icon svg rect, .pain-icon svg circle, .pain-icon svg polyline { stroke: #fff; stroke-width: 1.2; fill: none; }
.pain-item h3 { font-size: 18px; font-weight: 800; line-height: 1.3; letter-spacing: -0.01em; margin-bottom: var(--sp-3); color: var(--text-primary); }
.pain-item p { font-size: 14px; color: var(--text-tertiary); line-height: 1.7; }
.pain-num { position: absolute; bottom: var(--sp-4); right: var(--sp-5); font-size: 72px; font-weight: 900; color: rgba(255,255,255,0.10); line-height: 1; letter-spacing: -0.04em; }
.pain-highlight { grid-column: 1 / -1; min-height: auto; padding: var(--sp-8) var(--sp-7); background: rgba(255,255,255,0.04); border-color: var(--border-subtle); display: flex; align-items: center; gap: var(--sp-7); }
.pain-highlight .highlight-body { flex: 1; }
.pain-highlight h3 { font-size: clamp(24px, 3vw, 36px); font-weight: 900; letter-spacing: -0.02em; margin-bottom: var(--sp-3); }
.pain-highlight p { font-size: 16px; color: var(--text-secondary); line-height: 1.8; max-width: 600px; }
.pain-highlight .pain-num { position: relative; bottom: auto; right: auto; font-size: 120px; opacity: 0.12; flex-shrink: 0; }
#solutions { background: var(--bg-panel); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.service-row { display: grid; grid-template-columns: 1fr 1.2fr; gap: var(--sp-8); align-items: center; margin-bottom: var(--sp-10); }
.service-row.reverse { direction: rtl; }
.service-row.reverse > * { direction: ltr; }
.service-row:last-child { margin-bottom: 0; }
.service-text .service-metric { margin-bottom: var(--sp-2); background: linear-gradient(135deg, var(--text-primary) 0%, var(--text-tertiary) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.service-text h3 { margin-bottom: var(--sp-4); color: var(--text-primary); }
.service-text p { font-size: 16px; color: var(--text-secondary); line-height: 1.8; max-width: 480px; margin-top: var(--sp-3); }
.service-closer { margin-top: var(--sp-5) !important; padding-top: var(--sp-4) !important; border-top: 1px solid var(--border-subtle) !important; font-size: 14px !important; color: var(--text-quaternary) !important; font-style: italic; }
.service-img { height: 480px; border-radius: var(--r-xl); overflow: hidden; background: var(--bg-elevated); border: 1px solid var(--border-subtle); }
.service-img img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(60%) brightness(0.85) contrast(1.1); transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.service-img:hover img { transform: scale(1.03); filter: grayscale(40%) brightness(0.9) contrast(1.15); }
#approach { background: var(--bg-main); }
.approach-list { max-width: 800px; }
.approach-item { display: flex; gap: var(--sp-6); padding: var(--sp-6) 0; border-bottom: 1px solid var(--border-subtle); align-items: flex-start; }
.approach-item:last-child { border-bottom: none; }
.approach-num { font-size: 13px; font-weight: 600; color: var(--text-quaternary); font-family: 'JetBrains Mono', monospace; letter-spacing: 0.05em; padding-top: 4px; min-width: 32px; }
.approach-body h3 { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; margin-bottom: var(--sp-2); color: var(--text-primary); }
.approach-body p { font-size: 15px; color: var(--text-tertiary); line-height: 1.7; }
#geo { background: var(--bg-panel); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.geo-grid { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: var(--sp-8); align-items: center; }
.geo-bridge { font-size: 12px; font-weight: 600; color: var(--text-quaternary); letter-spacing: 0.15em; text-transform: uppercase; display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-4); }
.geo-bridge::before { content: ''; width: 24px; height: 1px; background: var(--text-quaternary); }
.geo-quote { margin-top: var(--sp-6); padding: var(--sp-5); background: rgba(255,255,255,0.04); border-left: 2px solid var(--border-prominent); border-radius: 0 var(--r-md) var(--r-md) 0; }
.geo-quote p { font-size: 16px; color: var(--text-secondary); line-height: 1.7; font-style: italic; }
#contact { background: var(--bg-main); }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-8); align-items: start; }
.contact-form { display: flex; flex-direction: column; gap: var(--sp-4); }
.contact-form label { display: block; font-size: 11px; font-weight: 600; color: var(--text-quaternary); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: var(--sp-2); }
.contact-form input, .contact-form textarea { width: 100%; padding: 14px 16px; background: rgba(255,255,255,0.05); border: 1px solid var(--border-subtle); border-radius: var(--r-md); color: var(--text-primary); font-size: 15px; font-family: inherit; transition: all 0.3s ease; }
.contact-form input:focus, .contact-form textarea:focus { outline: none; border-color: var(--border-prominent); background: rgba(255,255,255,0.07); box-shadow: 0 0 0 3px rgba(255,255,255,0.03); }
.contact-form textarea { min-height: 100px; resize: vertical; }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: var(--text-quaternary); }
.contact-submit button { padding: 14px 40px; background: var(--text-primary); color: var(--bg-main); border: none; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; border-radius: var(--r-md); transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); width: 100%; }
.contact-submit button:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(255,255,255,0.1); }
.contact-submit button:disabled { opacity: 0.5; cursor: default; transform: none; box-shadow: none; }
.form-status { text-align: center; font-size: 13px; min-height: 20px; }
.form-status.ok { color: #27a644; }
.form-status.err { color: #ff5b4f; }
footer { padding: var(--sp-8) 0; text-align: center; background: var(--bg-deep); border-top: 1px solid var(--border-subtle); }
footer .caption { color: var(--text-quaternary); margin-bottom: var(--sp-3); }
footer .company { font-size: 14px; font-weight: 600; color: var(--text-tertiary); }
footer .copy { margin-top: var(--sp-3); font-size: 10px; color: var(--text-quaternary); letter-spacing: 0.08em; }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.08s; }
.reveal-delay-2 { transition-delay: 0.16s; }
.reveal-delay-3 { transition-delay: 0.24s; }
.reveal-delay-4 { transition-delay: 0.32s; }
.reveal-delay-5 { transition-delay: 0.4s; }
@media (max-width: 900px) {
:root { --sp-8: 48px; --sp-9: 64px; --sp-10: 80px; }
.nav-links { display: none; }
.container { padding: 0 var(--sp-4); }
.hero-content { max-width: 100%; }
.hero-sub { font-size: 15px; }
.btn-ghost { display: none; }
section { padding: var(--sp-9) 0; }
.section-header { margin-bottom: var(--sp-6); }
.pain-grid { display: flex; flex-direction: column; gap: 1px; }
.pain-item { min-height: auto; padding: var(--sp-6) var(--sp-4); border: none; border-top: 1px solid var(--border-subtle); background: transparent; }
.pain-item:first-child { border-top: none; }
.pain-icon { margin: 0 auto var(--sp-5); }
.pain-item h3 { font-size: 20px; text-align: center; }
.pain-item p { text-align: center; font-size: 14px; }
.pain-num { font-size: 64px; bottom: 12px; right: 12px; }
.pain-highlight { flex-direction: column; padding: var(--sp-6) var(--sp-4); gap: var(--sp-4); text-align: center; border-top: 1px solid var(--border-subtle); }
.pain-highlight .pain-num { position: relative; font-size: 80px; }
.service-row, .service-row.reverse { grid-template-columns: 1fr; gap: var(--sp-5); margin-bottom: var(--sp-8); direction: ltr; }
.service-row.reverse > * { direction: ltr; }
.service-img { height: 260px; order: -1; }
.service-text .service-metric { font-size: 48px; }
.approach-item { flex-direction: column; gap: var(--sp-2); padding: var(--sp-5) 0; }
.approach-num { font-size: 13px; }
.approach-body h3 { font-size: 18px; }
.geo-grid { grid-template-columns: 1fr; gap: var(--sp-6); }
.contact-grid { grid-template-columns: 1fr; gap: var(--sp-6); }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; } }
/* Hero Cycling Typography */
.hero-cycling {
display: flex;
align-items: center;
justify-content: center;
gap: 0.08em;
min-height: 1.2em;
}
.hero-ai-text, .hero-x-text {
display: inline-block;
font-size: 1em;
font-weight: inherit;
}
.hero-plus-sign {
display: inline-block;
transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1),
opacity 0.3s ease;
}
.hero-plus-sign.to-x {
transform: rotate(45deg);
}
.hero-industry-wrap {
display: inline-block;
position: relative;
width: 3em;
overflow: hidden;
height: 1.1em;
vertical-align: bottom;
text-align: left;
}
.hero-industry-text {
display: inline-block;
transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
opacity 0.2s ease;
}
.hero-industry-text.slide-out {
transform: translateY(-110%);
opacity: 0;
}
.hero-industry-text.slide-in {
transform: translateY(110%);
opacity: 0;
}
.hero-industry-text.show {
transform: translateY(0);
opacity: 1;
}
/* Merge phase */
.hero-industry-text.merge-out {
transform: translateY(-80%) scale(0.6);
opacity: 0;
filter: blur(6px);
transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.hero-ai-text.merge-in {
animation: aiGlow 0.6s ease;
}
@keyframes aiGlow {
0% { opacity: 1; }
30% { opacity: 0.4; filter: blur(4px); }
100% { opacity: 1; filter: blur(0); }
}
/* Final merged state: AI X centered with gap */
.hero-cycling.merged {
gap: 0.15em;
}
.hero-cycling.merged .hero-industry-wrap {
width: 0;
height: 0;
overflow: hidden;
}
.hero-cycling.merged .hero-plus-sign {
font-size: 1em;
}
.hero-cycling.merged .hero-x-text {
opacity: 1;
}
.hero-x-text {
opacity: 0;
transition: opacity 0.5s ease;
}
.hero-x-text.visible {
opacity: 1;
}
</style>
</head>
<body>
<nav><div class="nav-inner"><div class="logo">FISCHER</div><div class="nav-links"><a href="#pain-points">场景洞察</a><a href="#solutions">核心服务</a><a href="#approach">解决路径</a><a href="#geo">GEO</a><a href="#contact">合作咨询</a></div></div></nav>
<div class="hero"><div class="hero-poster"></div><div class="hero-infinity" style="position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:180px;color:rgba(255,255,255,0.06);pointer-events:none;z-index:1;font-weight:900;"></div><div class="hero-overlay"></div><div class="hero-content"><div class="hero-line"></div><h1 class="display-xl hero-title">
<div class="hero-cycling" id="heroCycling">
<span class="hero-ai-text" id="heroAi">AI</span>
<span class="hero-plus-sign" id="heroPlus">+</span>
<span class="hero-industry-wrap">
<span class="hero-industry-text show" id="heroIndustry">物业</span>
</span>
<span class="hero-x-text" id="heroX">X</span>
</div>
</h1><p class="hero-sub">在已运转的业务系统之上叠加 AI 智能层。2 周部署,零迁移成本,让旧系统拥有新大脑。</p><div class="hero-cta"><a href="#solutions" class="btn-primary">获取行业定制方案</a><a href="#pain-points" class="btn-ghost">了解痛点 &rarr;</a></div></div><div class="scroll-indicator"></div></div>
<section id="pain-points"><div class="pain-bg-grid"></div><div class="pain-glow"></div><div class="container"><div class="section-header reveal"><span class="caption">THE REAL PROBLEM</span><h2 class="display-lg">你的系统<br>正在偷走你的利润</h2><p class="body-lg" style="margin-top: var(--sp-4);">每一个你习以为常的流程背后,都藏着被浪费的成本和错失的机会。</p></div><div class="pain-grid"><div class="pain-item reveal reveal-delay-1"><div class="pain-icon"><svg viewBox="0 0 40 40"><rect x="6" y="6" width="12" height="12" rx="2"/><rect x="22" y="6" width="12" height="12" rx="2"/><rect x="6" y="22" width="12" height="12" rx="2"/><rect x="22" y="22" width="12" height="12" rx="2"/><line x1="18" y1="12" x2="22" y2="12"/><line x1="12" y1="18" x2="12" y2="22"/><line x1="28" y1="18" x2="28" y2="22"/><line x1="18" y1="28" x2="22" y2="28"/></svg></div><div><h3>每年几十万数据录入费<br>换来零决策价值</h3><p>物业、资管、CRM 积累了海量数据,却像仓库里的积压库存。记录了一大堆,决策还是靠拍脑袋。</p></div><div class="pain-num">01</div></div><div class="pain-item reveal reveal-delay-2"><div class="pain-icon"><svg viewBox="0 0 40 40"><rect x="3" y="10" width="10" height="20" rx="1.5"/><rect x="15" y="10" width="10" height="20" rx="1.5"/><rect x="27" y="10" width="10" height="20" rx="1.5"/><line x1="8" y1="16" x2="8" y2="24"/><line x1="20" y1="16" x2="20" y2="24"/><line x1="32" y1="16" x2="32" y2="24"/></svg></div><div><h3>系统越多 盲区越大<br>管理者像盲人摸象</h3><p>报修、资产、客户分属不同系统。永远拼不出完整的业务全景,资源错配成了常态。</p></div><div class="pain-num">02</div></div><div class="pain-item reveal reveal-delay-3"><div class="pain-icon"><svg viewBox="0 0 40 40"><circle cx="20" cy="8" r="5"/><path d="M12 36c0-7 4-12 8-12s8 5 8 12"/><circle cx="30" cy="13" r="3.5"/><path d="M27 36c0-4 2-8 3-8s3 4 3 8"/></svg></div><div><h3>高薪人才 70% 时间<br>耗在填表和派单</h3><p>招来的专业人才,精力被重复事务榨干。高射炮打蚊子,人效极低,人才流失率越来越高。</p></div><div class="pain-num">03</div></div><div class="pain-item reveal reveal-delay-1"><div class="pain-icon"><svg viewBox="0 0 40 40"><circle cx="20" cy="20" r="14"/><polyline points="20,10 20,20 26,24"/><line x1="6" y1="4" x2="6" y2="10"/><line x1="34" y1="4" x2="34" y2="10"/></svg></div><div><h3>报表出来时<br>损失已经发生</h3><p>空置率超标、客户流失、租金定价偏差……等月底报表出来,问题早已发生。企业永远在事后补救。</p></div><div class="pain-num">04</div></div><div class="pain-item reveal reveal-delay-2"><div class="pain-icon"><svg viewBox="0 0 40 40"><path d="M20 3L3 12v10c0 10 7 18 17 20 10-2 17-10 17-20V12L20 3z"/><line x1="20" y1="15" x2="20" y2="25"/><line x1="15" y1="20" x2="25" y2="20"/></svg></div><div><h3>推翻重来的项目<br>70% 超期超预算</h3><p>传统 AI 方案要求重建系统。周期长、风险高、员工抵触。一旦失败,前期投入全部打水漂。</p></div><div class="pain-num">05</div></div><div class="pain-item reveal reveal-delay-3"><div class="pain-icon"><svg viewBox="0 0 40 40"><path d="M13 6c0-3 3-5 7-5s7 2 7 5c0 9-7 14-7 14s-7-5-7-14z"/><line x1="20" y1="26" x2="20" y2="34"/><line x1="15" y1="30" x2="25" y2="30"/><circle cx="12" cy="15" r="1.5"/><circle cx="28" cy="15" r="1.5"/></svg></div><div><h3>核心能力长在老员工脑子里<br>人走能力断</h3><p>招商经验、客户判断、定价策略全靠人。人一走,能力就断层。企业无法规模化复制成功经验。</p></div><div class="pain-num">06</div></div><div class="pain-item pain-highlight reveal"><div class="pain-num">&infin;</div><div class="highlight-body"><h3>破局之道</h3><p>不替换系统,不迁移数据,不改变流程。在现有基础设施之上叠加一层 AI&mdash;&mdash;让旧系统拥有新大脑。</p></div></div></div></div></section>
<section id="solutions"><div class="container"><div class="section-header reveal"><span class="caption">WHAT WE DO</span><h2 class="display-lg">把 AI 变成你的<br>核心生产力</h2><p class="body-lg" style="margin-top: var(--sp-4);">三个行业场景,一条相同逻辑:不替换,只增强。</p></div><div class="service-row reveal"><div class="service-text"><div class="metric service-metric">60%</div><h3 class="heading-lg">AI+物业<br>智能中枢</h3><p>工单自动分发,客诉响应提速 60%。在现有物业 ERP 之上叠加 AI 调度层——不改变任何原有流程。巡检路线自动规划、设备故障提前预警。你现有的系统不用换,但效率会翻倍。</p><p class="service-closer">"不是换系统,是让系统变聪明。"</p></div><div class="service-img"><img src="assets/prop.jpg?v=7" alt="Smart Building" loading="lazy"></div></div><div class="service-row reverse reveal"><div class="service-text"><div class="metric service-metric">90 天</div><h3 class="heading-lg">AI+资管<br>风控大脑</h3><p>空置率提前 90 天预警,租金定价误差收窄至 5%。无缝接入资管平台,让历史租赁数据变成预测模型。招商智能匹配、租约到期提醒。</p><p class="service-closer">资管不该靠直觉,该靠数据。</p></div><div class="service-img"><img src="assets/server.jpg?v=7" alt="Server Data" loading="lazy"></div></div><div class="service-row reveal"><div class="service-text"><div class="metric service-metric">40%</div><h3 class="heading-lg">AI+CRM<br>效率跃升</h3><p>线索自动清洗,销售人效提升 40%。为现有 CRM 配备 AI 助理——自动捕捉商机、生成对话摘要。销售无需学习新软件,打开原界面就能看到 AI 推荐。</p><p class="service-closer">"销售的时间应该花在客户身上,不是系统里。"</p></div><div class="service-img"><img src="assets/crm.jpg?v=7" alt="CRM" loading="lazy"></div></div></div></section>
<section id="approach"><div class="container"><div class="section-header reveal"><span class="caption">WHY FISCHER</span><h2 class="display-lg">菲西尔和其他<br>AI 公司有什么不同</h2></div><div class="approach-list"><div class="approach-item reveal reveal-delay-1"><div class="approach-num">01</div><div class="approach-body"><h3>不替换,只叠加</h3><p>通过 API 外挂 AI 层,不停服、不迁移、不改流程。员工用原来的界面,体验无缝升级。</p></div></div><div class="approach-item reveal reveal-delay-2"><div class="approach-num">02</div><div class="approach-body"><h3>让数据开口说话</h3><p>沉睡的历史数据自动转化为预测模型和决策建议。把事后统计变为事前预警。</p></div></div><div class="approach-item reveal reveal-delay-3"><div class="approach-num">03</div><div class="approach-body"><h3>让 AI 替你干活</h3><p>高频重复工作交给 AI Agent——智能客服、招商匹配、巡检规划自动运转人只负责关键决策。</p></div></div><div class="approach-item reveal reveal-delay-4"><div class="approach-num">04</div><div class="approach-body"><h3>跨系统一屏掌控</h3><p>所有业务数据在 AI 层融合。一句自然语言就能查"本月哪些楼宇空置率超标",告别手动汇总。</p></div></div><div class="approach-item reveal reveal-delay-5"><div class="approach-num">05</div><div class="approach-body"><h3>小步试错,大步扩张</h3><p>从单一场景试点,验证有效再扩展。每一步都可衡量投入产出,钱花在刀刃上。</p></div></div></div></div></section>
<section id="geo"><div class="container"><div class="geo-grid"><div class="reveal"><span class="caption">BEYOND EFFICIENCY</span><div class="geo-bridge">对内提效降本,对外重塑获客</div><h2 class="heading-lg" style="margin-bottom: var(--sp-4);">让用户在大模型里<br>第一个找到你</h2><p class="body-lg">当客户问 Kimi 或文心一言"帮我找一家做 AI+物业的公司"&mdash;&mdash;你的品牌会不会出现在答案里?我们优化企业在主流大模型中的内容结构与权重,从"搜索排名"进化为"答案占位"。</p><div class="geo-quote"><p>"未来的获客,不是在搜索结果里抢位置,而是在 AI 答案里占一席之地。"</p></div></div><div class="service-img reveal" style="height: 440px;"><img src="assets/geo.jpg?v=7" alt="Network" loading="lazy"></div></div></div></section>
<section id="contact"><div class="container"><div class="contact-grid"><div class="reveal"><span class="caption">GET IN TOUCH</span><h2 class="heading-lg" style="margin-bottom: var(--sp-4); margin-top: var(--sp-2);">15 分钟,看看你的系统<br>能叠加什么</h2><p class="body-lg" style="margin-top: var(--sp-4);">不推销,只评估。基于你现有架构,给出一份可落地的 AI 叠加建议。</p><div style="margin-top: var(--sp-7); padding-top: var(--sp-5); border-top: 1px solid var(--border-subtle);"><p style="font-size: 13px; color: var(--text-quaternary);">上海菲西尔智能科技有限公司</p><p style="font-size: 13px; color: var(--text-quaternary); margin-top: var(--sp-1);">智能叠加——不推翻重来,在现有系统上叠加 AI 能力</p></div></div><form class="contact-form reveal" id="consultForm" onsubmit="return false;"><div><label>怎么称呼您</label><input type="text" name="name" placeholder="您的姓名" required></div><div><label>手机号码</label><input type="tel" name="phone" placeholder="便于我们联系您" required></div><div><label>邮箱</label><input type="email" name="email" placeholder="选填"></div><div><label>你现在用的是哪个系统?</label><textarea name="message" placeholder="简单描述一下,方便我们提前准备方案(选填)"></textarea></div><div class="contact-submit"><button type="submit" id="submitBtn">预约诊断名额</button></div><div class="form-status" id="formStatus"></div></form></div></div></section>
<footer><div class="container"><div class="caption">TECHNICAL SUPPORT PROVIDED BY</div><div class="company">上海菲西尔智能科技有限公司</div><div class="copy">&copy; 2026 SHANGHAI FISCHER INTELLIGENT TECHNOLOGY CO., LTD.</div></div></footer>
<script>
document.addEventListener('DOMContentLoaded', () => {
const nav = document.querySelector('nav');
window.addEventListener('scroll', () => { nav.classList.toggle('scrolled', window.scrollY > 60); }, { passive: true });
const form = document.getElementById('consultForm');
const btn = document.getElementById('submitBtn');
const status = document.getElementById('formStatus');
if (form) {
btn.addEventListener('click', () => {
const name = form.name.value.trim(), phone = form.phone.value.trim(), email = form.email.value.trim(), message = form.message.value.trim();
if (!name || !phone) { status.textContent = '请填写姓名和电话'; status.className = 'form-status err'; return; }
btn.disabled = true; btn.textContent = '提交中...';
fetch('/ai/api/consult', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ name, phone, email, message }) })
.then(r => r.json()).then(d => { if (d.success) { status.textContent = '已收到,我们会尽快联系您'; status.className = 'form-status ok'; form.reset(); } else { status.textContent = d.error || '提交失败,请重试'; status.className = 'form-status err'; } })
.catch(() => { status.textContent = '网络错误,请重试'; status.className = 'form-status err'; })
.finally(() => { btn.disabled = false; btn.textContent = '预约诊断名额'; });
});
}
const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) entry.target.classList.add('visible'); }); }, { threshold: 0.08, rootMargin: '0px 0px -30px 0px' });
document.querySelectorAll('.reveal').forEach(el => observer.observe(el));
});
// Hero cycling: AI + 物业 -> AI + 资管 -> ... -> AI X
(function() {
const indEl = document.getElementById('heroIndustry');
const cyclingEl = document.getElementById('heroCycling');
const plusEl = document.getElementById('heroPlus');
const xEl = document.getElementById('heroX');
const aiEl = document.getElementById('heroAi');
if (!indEl || !cyclingEl) return;
const industries = ['资管', 'CRM', '制造', '医疗', '金融', '零售', '物流'];
let idx = 0;
const speeds = [1200, 900, 700, 500, 350, 220, 130, 80, 50];
let step = 0;
function next() {
// Slide out
indEl.className = 'hero-industry-text slide-out';
idx = (idx + 1) % industries.length;
if (step >= speeds.length) {
// Merge phase
setTimeout(() => {
indEl.className = 'hero-industry-text merge-out';
plusEl.classList.add('to-x');
aiEl.classList.add('merge-in');
}, 150);
setTimeout(() => {
xEl.classList.add('visible');
cyclingEl.classList.add('merged');
}, 700);
return;
}
const delay = speeds[step];
step++;
setTimeout(() => {
indEl.textContent = industries[idx];
indEl.className = 'hero-industry-text slide-in';
requestAnimationFrame(() => {
requestAnimationFrame(() => {
indEl.className = 'hero-industry-text show';
});
});
}, 120);
setTimeout(next, delay);
}
setTimeout(next, 1500);
})();
</script>
</body>
</html>

View File

@ -1,355 +0,0 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>菲西尔智能 · AI+物业AI+资管AI+CRM 企业级智能叠加</title>
<meta name="description" content="上海菲西尔智能科技有限公司——专注为现有业务系统叠加AI能力。">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;510;600;700;800;900&family=Noto+Sans+SC:wght@300;400;500;700;900&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<style>
:root {
--bg-deep: #010102; --bg-main: #08090a; --bg-panel: #0f1011;
--bg-elevated: #191a1b; --bg-surface: #28282c;
--text-primary: #f7f8f8; --text-secondary: #d0d6e0;
--text-tertiary: #8a8f98; --text-quaternary: #62666d;
--border-subtle: rgba(255,255,255,0.12);
--border-standard: rgba(255,255,255,0.18);
--border-prominent: rgba(255,255,255,0.22);
--sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px;
--sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px;
--sp-9: 80px; --sp-10: 120px;
--r-sm: 4px; --r-md: 6px; --r-lg: 8px; --r-xl: 12px; --r-2xl: 16px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
font-family: 'Inter', 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
font-feature-settings: 'cv01', 'ss03';
background: var(--bg-main); color: var(--text-primary);
line-height: 1.6; overflow-x: hidden;
-webkit-font-smoothing: antialiased;
}
.display-xl { font-size: clamp(48px, 7vw, 88px); font-weight: 900; line-height: 1.02; letter-spacing: -0.03em; }
.display-lg { font-size: clamp(36px, 5vw, 64px); font-weight: 800; line-height: 1.05; letter-spacing: -0.025em; }
.heading-lg { font-size: clamp(24px, 3vw, 40px); font-weight: 700; line-height: 1.1; letter-spacing: -0.015em; }
.body-lg { font-size: clamp(16px, 1.2vw, 18px); font-weight: 400; line-height: 1.7; color: var(--text-secondary); }
.body-md { font-size: 15px; font-weight: 400; line-height: 1.65; color: var(--text-tertiary); }
.caption { font-size: 11px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--text-quaternary); }
.metric { font-size: clamp(40px, 5vw, 72px); font-weight: 900; line-height: 1; letter-spacing: -0.04em; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 var(--sp-5); position: relative; z-index: 2; }
.grain { position: fixed; inset: -50%; width: 200%; height: 200%; z-index: 9999; pointer-events: none; opacity: 0.02; mix-blend-mode: overlay; animation: grain 0.8s steps(6) infinite; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
@keyframes grain { 0% { transform: translate(0,0); } 100% { transform: translate(-10%,10%); } }
nav { position: fixed; top: 0; width: 100%; z-index: 1000; padding: var(--sp-4) 0; background: rgba(8,9,10,0.92); border-bottom: 1px solid var(--border-subtle); transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
nav.scrolled { padding: var(--sp-2) 0; background: rgba(8,9,10,0.95); }
.nav-inner { max-width: 1200px; margin: 0 auto; padding: 0 var(--sp-5); display: flex; justify-content: space-between; align-items: center; }
.logo { font-size: 12px; font-weight: 800; letter-spacing: 0.2em; color: var(--text-primary); text-transform: uppercase; }
.nav-links { display: flex; gap: var(--sp-7); }
.nav-links a { color: var(--text-tertiary); text-decoration: none; font-size: 12px; font-weight: 510; letter-spacing: 0.04em; transition: color 0.3s ease; }
.nav-links a:hover { color: var(--text-primary); }
.hero { position: relative; min-height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; }
#hero-canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; }
.hero-poster { position: absolute; inset: 0; z-index: 0; background: #0e1117; overflow: hidden; }
@keyframes heroZoom { from { transform: scale(1.05); } to { transform: scale(1.12); } }
.hero-overlay { position: absolute; inset: 0; z-index: 2; background: linear-gradient(to bottom, transparent 50%, var(--bg-main) 95%); pointer-events: none; }
.hero-content { position: relative; z-index: 10; text-align: center; max-width: 900px; padding: 0 var(--sp-5); }
.hero-line { width: 40px; height: 1px; background: rgba(255,255,255,0.3); margin: 0 auto var(--sp-6); opacity: 0; animation: fadeUp 1s cubic-bezier(0.16, 1, 0.3, 1) 0.1s forwards; }
.hero-title { opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards; }
.hero-sub { margin-top: var(--sp-6); font-size: clamp(15px, 1.3vw, 17px); font-weight: 400; color: var(--text-secondary); max-width: 560px; margin-left: auto; margin-right: auto; line-height: 1.75; opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.5s forwards; }
.hero-cta { margin-top: var(--sp-7); opacity: 0; animation: fadeUp 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.7s forwards; }
.btn-primary { display: inline-flex; align-items: center; gap: var(--sp-2); padding: 14px 32px; background: var(--text-primary); color: var(--bg-main); text-decoration: none; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; border-radius: var(--r-md); transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); border: 1px solid transparent; }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(255,255,255,0.12); }
.btn-ghost { display: inline-flex; align-items: center; padding: 14px 32px; background: rgba(255,255,255,0.03); color: var(--text-secondary); text-decoration: none; font-size: 12px; font-weight: 600; letter-spacing: 0.06em; border-radius: var(--r-md); border: 1px solid var(--border-subtle); transition: all 0.3s ease; margin-left: var(--sp-3); }
.btn-ghost:hover { background: rgba(255,255,255,0.06); color: var(--text-primary); border-color: var(--border-standard); }
.scroll-indicator { position: absolute; bottom: var(--sp-7); left: 50%; transform: translateX(-50%); z-index: 10; width: 1px; height: 48px; background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.2), transparent); animation: scrollPulse 3s ease-in-out infinite; }
@keyframes scrollPulse { 0%, 100% { opacity: 0; transform: translateX(-50%) scaleY(0.5); } 50% { opacity: 1; transform: translateX(-50%) scaleY(1); } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
section { padding: var(--sp-10) 0; position: relative; }
.section-header { max-width: 640px; margin-bottom: var(--sp-8); }
.section-header .caption { display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-4); }
.section-header .caption::before { content: ''; width: 20px; height: 1px; background: var(--text-quaternary); }
#pain-points { background: var(--bg-main); }
.pain-bg-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size: 80px 80px; pointer-events: none; }
.pain-glow { position: absolute; top: 20%; left: 50%; width: 800px; height: 800px; transform: translate(-50%, -50%); background: radial-gradient(circle, rgba(255,255,255,0.06) 0%, transparent 70%); pointer-events: none; }
.pain-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; position: relative; }
.pain-item { background: rgba(255,255,255,0.04); padding: var(--sp-7) var(--sp-6); border: 1px solid var(--border-subtle); position: relative; min-height: 320px; display: flex; flex-direction: column; justify-content: space-between; transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
.pain-item:hover { background: rgba(255,255,255,0.07); border-color: var(--border-standard); }
.pain-icon { width: 32px; height: 32px; opacity: 0.4; margin-bottom: var(--sp-6); transition: opacity 0.4s ease; }
.pain-item:hover .pain-icon { opacity: 0.6; }
.pain-icon svg { width: 100%; height: 100%; }
.pain-icon svg line, .pain-icon svg path, .pain-icon svg rect, .pain-icon svg circle, .pain-icon svg polyline { stroke: #fff; stroke-width: 1.2; fill: none; }
.pain-item h3 { font-size: 18px; font-weight: 800; line-height: 1.3; letter-spacing: -0.01em; margin-bottom: var(--sp-3); color: var(--text-primary); }
.pain-item p { font-size: 14px; color: var(--text-tertiary); line-height: 1.7; }
.pain-num { position: absolute; bottom: var(--sp-4); right: var(--sp-5); font-size: 72px; font-weight: 900; color: rgba(255,255,255,0.10); line-height: 1; letter-spacing: -0.04em; }
.pain-highlight { grid-column: 1 / -1; min-height: auto; padding: var(--sp-8) var(--sp-7); background: rgba(255,255,255,0.04); border-color: var(--border-subtle); display: flex; align-items: center; gap: var(--sp-7); }
.pain-highlight .highlight-body { flex: 1; }
.pain-highlight h3 { font-size: clamp(24px, 3vw, 36px); font-weight: 900; letter-spacing: -0.02em; margin-bottom: var(--sp-3); }
.pain-highlight p { font-size: 16px; color: var(--text-secondary); line-height: 1.8; max-width: 600px; }
.pain-highlight .pain-num { position: relative; bottom: auto; right: auto; font-size: 120px; opacity: 0.12; flex-shrink: 0; }
#solutions { background: var(--bg-panel); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.service-row { display: grid; grid-template-columns: 1fr 1.2fr; gap: var(--sp-8); align-items: center; margin-bottom: var(--sp-10); }
.service-row.reverse { direction: rtl; }
.service-row.reverse > * { direction: ltr; }
.service-row:last-child { margin-bottom: 0; }
.service-text .service-metric { margin-bottom: var(--sp-2); background: linear-gradient(135deg, var(--text-primary) 0%, var(--text-tertiary) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.service-text h3 { margin-bottom: var(--sp-4); color: var(--text-primary); }
.service-text p { font-size: 16px; color: var(--text-secondary); line-height: 1.8; max-width: 480px; margin-top: var(--sp-3); }
.service-closer { margin-top: var(--sp-5) !important; padding-top: var(--sp-4) !important; border-top: 1px solid var(--border-subtle) !important; font-size: 14px !important; color: var(--text-quaternary) !important; font-style: italic; }
.service-img { height: 480px; border-radius: var(--r-xl); overflow: hidden; background: var(--bg-elevated); border: 1px solid var(--border-subtle); }
.service-img img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(60%) brightness(0.85) contrast(1.1); transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.service-img:hover img { transform: scale(1.03); filter: grayscale(40%) brightness(0.9) contrast(1.15); }
#approach { background: var(--bg-main); }
.approach-list { max-width: 800px; }
.approach-item { display: flex; gap: var(--sp-6); padding: var(--sp-6) 0; border-bottom: 1px solid var(--border-subtle); align-items: flex-start; }
.approach-item:last-child { border-bottom: none; }
.approach-num { font-size: 13px; font-weight: 600; color: var(--text-quaternary); font-family: 'JetBrains Mono', monospace; letter-spacing: 0.05em; padding-top: 4px; min-width: 32px; }
.approach-body h3 { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; margin-bottom: var(--sp-2); color: var(--text-primary); }
.approach-body p { font-size: 15px; color: var(--text-tertiary); line-height: 1.7; }
#geo { background: var(--bg-panel); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); }
.geo-grid { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: var(--sp-8); align-items: center; }
.geo-bridge { font-size: 12px; font-weight: 600; color: var(--text-quaternary); letter-spacing: 0.15em; text-transform: uppercase; display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-4); }
.geo-bridge::before { content: ''; width: 24px; height: 1px; background: var(--text-quaternary); }
.geo-quote { margin-top: var(--sp-6); padding: var(--sp-5); background: rgba(255,255,255,0.04); border-left: 2px solid var(--border-prominent); border-radius: 0 var(--r-md) var(--r-md) 0; }
.geo-quote p { font-size: 16px; color: var(--text-secondary); line-height: 1.7; font-style: italic; }
#contact { background: var(--bg-main); }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-8); align-items: start; }
.contact-form { display: flex; flex-direction: column; gap: var(--sp-4); }
.contact-form label { display: block; font-size: 11px; font-weight: 600; color: var(--text-quaternary); letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: var(--sp-2); }
.contact-form input, .contact-form textarea { width: 100%; padding: 14px 16px; background: rgba(255,255,255,0.05); border: 1px solid var(--border-subtle); border-radius: var(--r-md); color: var(--text-primary); font-size: 15px; font-family: inherit; transition: all 0.3s ease; }
.contact-form input:focus, .contact-form textarea:focus { outline: none; border-color: var(--border-prominent); background: rgba(255,255,255,0.07); box-shadow: 0 0 0 3px rgba(255,255,255,0.03); }
.contact-form textarea { min-height: 100px; resize: vertical; }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: var(--text-quaternary); }
.contact-submit button { padding: 14px 40px; background: var(--text-primary); color: var(--bg-main); border: none; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; border-radius: var(--r-md); transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1); width: 100%; }
.contact-submit button:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(255,255,255,0.1); }
.contact-submit button:disabled { opacity: 0.5; cursor: default; transform: none; box-shadow: none; }
.form-status { text-align: center; font-size: 13px; min-height: 20px; }
.form-status.ok { color: #27a644; }
.form-status.err { color: #ff5b4f; }
footer { padding: var(--sp-8) 0; text-align: center; background: var(--bg-deep); border-top: 1px solid var(--border-subtle); }
footer .caption { color: var(--text-quaternary); margin-bottom: var(--sp-3); }
footer .company { font-size: 14px; font-weight: 600; color: var(--text-tertiary); }
footer .copy { margin-top: var(--sp-3); font-size: 10px; color: var(--text-quaternary); letter-spacing: 0.08em; }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.08s; }
.reveal-delay-2 { transition-delay: 0.16s; }
.reveal-delay-3 { transition-delay: 0.24s; }
.reveal-delay-4 { transition-delay: 0.32s; }
.reveal-delay-5 { transition-delay: 0.4s; }
@media (max-width: 900px) {
:root { --sp-8: 48px; --sp-9: 64px; --sp-10: 80px; }
.nav-links { display: none; }
.container { padding: 0 var(--sp-4); }
.hero-content { max-width: 100%; }
.hero-sub { font-size: 15px; }
.btn-ghost { display: none; }
section { padding: var(--sp-9) 0; }
.section-header { margin-bottom: var(--sp-6); }
.pain-grid { display: flex; flex-direction: column; gap: 1px; }
.pain-item { min-height: auto; padding: var(--sp-6) var(--sp-4); border: none; border-top: 1px solid var(--border-subtle); background: transparent; }
.pain-item:first-child { border-top: none; }
.pain-icon { margin: 0 auto var(--sp-5); }
.pain-item h3 { font-size: 20px; text-align: center; }
.pain-item p { text-align: center; font-size: 14px; }
.pain-num { font-size: 64px; bottom: 12px; right: 12px; }
.pain-highlight { flex-direction: column; padding: var(--sp-6) var(--sp-4); gap: var(--sp-4); text-align: center; border-top: 1px solid var(--border-subtle); }
.pain-highlight .pain-num { position: relative; font-size: 80px; }
.service-row, .service-row.reverse { grid-template-columns: 1fr; gap: var(--sp-5); margin-bottom: var(--sp-8); direction: ltr; }
.service-row.reverse > * { direction: ltr; }
.service-img { height: 260px; order: -1; }
.service-text .service-metric { font-size: 48px; }
.approach-item { flex-direction: column; gap: var(--sp-2); padding: var(--sp-5) 0; }
.approach-num { font-size: 13px; }
.approach-body h3 { font-size: 18px; }
.geo-grid { grid-template-columns: 1fr; gap: var(--sp-6); }
.contact-grid { grid-template-columns: 1fr; gap: var(--sp-6); }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; } }
/* Hero Cycling Typography */
.hero-cycling {
display: flex;
align-items: center;
justify-content: center;
gap: 0.08em;
min-height: 1.2em;
}
.hero-ai-text, .hero-x-text {
display: inline-block;
font-size: 1em;
font-weight: inherit;
}
.hero-plus-sign {
display: inline-block;
transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1),
opacity 0.3s ease;
}
.hero-plus-sign.to-x {
transform: rotate(45deg);
}
.hero-industry-wrap {
display: inline-block;
position: relative;
width: 3em;
overflow: hidden;
height: 1.1em;
vertical-align: bottom;
text-align: left;
}
.hero-industry-text {
display: inline-block;
transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1),
opacity 0.2s ease;
}
.hero-industry-text.slide-out {
transform: translateY(-110%);
opacity: 0;
}
.hero-industry-text.slide-in {
transform: translateY(110%);
opacity: 0;
}
.hero-industry-text.show {
transform: translateY(0);
opacity: 1;
}
/* Merge phase */
.hero-industry-text.merge-out {
transform: translateY(-80%) scale(0.6);
opacity: 0;
filter: blur(6px);
transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.hero-ai-text.merge-in {
animation: aiGlow 0.6s ease;
}
@keyframes aiGlow {
0% { opacity: 1; }
30% { opacity: 0.4; filter: blur(4px); }
100% { opacity: 1; filter: blur(0); }
}
/* Final merged state: AI X centered with gap */
.hero-cycling.merged {
gap: 0.15em;
}
.hero-cycling.merged .hero-industry-wrap {
width: 0;
height: 0;
overflow: hidden;
}
.hero-cycling.merged .hero-plus-sign {
font-size: 1em;
}
.hero-cycling.merged .hero-x-text {
opacity: 1;
}
.hero-x-text {
opacity: 0;
transition: opacity 0.5s ease;
}
.hero-x-text.visible {
opacity: 1;
}
</style>
</head>
<body>
<nav><div class="nav-inner"><div class="logo">FISCHER</div><div class="nav-links"><a href="#pain-points">场景洞察</a><a href="#solutions">核心服务</a><a href="#approach">解决路径</a><a href="#geo">GEO</a><a href="#contact">合作咨询</a></div></div></nav>
<div class="hero"><div class="hero-poster"><div class="aurora-1" style="position:absolute;top:-30%;left:-10%;width:120%;height:60%;background:linear-gradient(120deg,transparent 0%,rgba(16,185,129,0.12) 40%,rgba(59,130,246,0.1) 60%,transparent 100%);transform:rotate(-8deg);animation:auroraA 12s ease-in-out infinite alternate;pointer-events:none;"></div><div class="aurora-2" style="position:absolute;top:10%;right:-15%;width:100%;height:50%;background:linear-gradient(240deg,transparent 0%,rgba(168,85,247,0.1) 40%,rgba(236,72,153,0.08) 60%,transparent 100%);transform:rotate(5deg);animation:auroraB 16s ease-in-out infinite alternate-reverse;pointer-events:none;"></div></div><div class="hero-overlay"></div><style>@keyframes auroraA{0%{transform:rotate(-8deg) translateX(-3%)}100%{transform:rotate(-8deg) translateX(3%)}}@keyframes auroraB{0%{transform:rotate(5deg) translateX(3%)}100%{transform:rotate(5deg) translateX(-3%)}}</style><div class="hero-content"><div class="hero-line"></div><h1 class="display-xl hero-title">
<div class="hero-cycling" id="heroCycling">
<span class="hero-ai-text" id="heroAi">AI</span>
<span class="hero-plus-sign" id="heroPlus">+</span>
<span class="hero-industry-wrap">
<span class="hero-industry-text show" id="heroIndustry">物业</span>
</span>
<span class="hero-x-text" id="heroX">X</span>
</div>
</h1><p class="hero-sub">在已运转的业务系统之上叠加 AI 智能层。2 周部署,零迁移成本,让旧系统拥有新大脑。</p><div class="hero-cta"><a href="#solutions" class="btn-primary">获取行业定制方案</a><a href="#pain-points" class="btn-ghost">了解痛点 &rarr;</a></div></div><div class="scroll-indicator"></div></div>
<section id="pain-points"><div class="pain-bg-grid"></div><div class="pain-glow"></div><div class="container"><div class="section-header reveal"><span class="caption">THE REAL PROBLEM</span><h2 class="display-lg">你的系统<br>正在偷走你的利润</h2><p class="body-lg" style="margin-top: var(--sp-4);">每一个你习以为常的流程背后,都藏着被浪费的成本和错失的机会。</p></div><div class="pain-grid"><div class="pain-item reveal reveal-delay-1"><div class="pain-icon"><svg viewBox="0 0 40 40"><rect x="6" y="6" width="12" height="12" rx="2"/><rect x="22" y="6" width="12" height="12" rx="2"/><rect x="6" y="22" width="12" height="12" rx="2"/><rect x="22" y="22" width="12" height="12" rx="2"/><line x1="18" y1="12" x2="22" y2="12"/><line x1="12" y1="18" x2="12" y2="22"/><line x1="28" y1="18" x2="28" y2="22"/><line x1="18" y1="28" x2="22" y2="28"/></svg></div><div><h3>每年几十万数据录入费<br>换来零决策价值</h3><p>物业、资管、CRM 积累了海量数据,却像仓库里的积压库存。记录了一大堆,决策还是靠拍脑袋。</p></div><div class="pain-num">01</div></div><div class="pain-item reveal reveal-delay-2"><div class="pain-icon"><svg viewBox="0 0 40 40"><rect x="3" y="10" width="10" height="20" rx="1.5"/><rect x="15" y="10" width="10" height="20" rx="1.5"/><rect x="27" y="10" width="10" height="20" rx="1.5"/><line x1="8" y1="16" x2="8" y2="24"/><line x1="20" y1="16" x2="20" y2="24"/><line x1="32" y1="16" x2="32" y2="24"/></svg></div><div><h3>系统越多 盲区越大<br>管理者像盲人摸象</h3><p>报修、资产、客户分属不同系统。永远拼不出完整的业务全景,资源错配成了常态。</p></div><div class="pain-num">02</div></div><div class="pain-item reveal reveal-delay-3"><div class="pain-icon"><svg viewBox="0 0 40 40"><circle cx="20" cy="8" r="5"/><path d="M12 36c0-7 4-12 8-12s8 5 8 12"/><circle cx="30" cy="13" r="3.5"/><path d="M27 36c0-4 2-8 3-8s3 4 3 8"/></svg></div><div><h3>高薪人才 70% 时间<br>耗在填表和派单</h3><p>招来的专业人才,精力被重复事务榨干。高射炮打蚊子,人效极低,人才流失率越来越高。</p></div><div class="pain-num">03</div></div><div class="pain-item reveal reveal-delay-1"><div class="pain-icon"><svg viewBox="0 0 40 40"><circle cx="20" cy="20" r="14"/><polyline points="20,10 20,20 26,24"/><line x1="6" y1="4" x2="6" y2="10"/><line x1="34" y1="4" x2="34" y2="10"/></svg></div><div><h3>报表出来时<br>损失已经发生</h3><p>空置率超标、客户流失、租金定价偏差……等月底报表出来,问题早已发生。企业永远在事后补救。</p></div><div class="pain-num">04</div></div><div class="pain-item reveal reveal-delay-2"><div class="pain-icon"><svg viewBox="0 0 40 40"><path d="M20 3L3 12v10c0 10 7 18 17 20 10-2 17-10 17-20V12L20 3z"/><line x1="20" y1="15" x2="20" y2="25"/><line x1="15" y1="20" x2="25" y2="20"/></svg></div><div><h3>推翻重来的项目<br>70% 超期超预算</h3><p>传统 AI 方案要求重建系统。周期长、风险高、员工抵触。一旦失败,前期投入全部打水漂。</p></div><div class="pain-num">05</div></div><div class="pain-item reveal reveal-delay-3"><div class="pain-icon"><svg viewBox="0 0 40 40"><path d="M13 6c0-3 3-5 7-5s7 2 7 5c0 9-7 14-7 14s-7-5-7-14z"/><line x1="20" y1="26" x2="20" y2="34"/><line x1="15" y1="30" x2="25" y2="30"/><circle cx="12" cy="15" r="1.5"/><circle cx="28" cy="15" r="1.5"/></svg></div><div><h3>核心能力长在老员工脑子里<br>人走能力断</h3><p>招商经验、客户判断、定价策略全靠人。人一走,能力就断层。企业无法规模化复制成功经验。</p></div><div class="pain-num">06</div></div><div class="pain-item pain-highlight reveal"><div class="pain-num">&infin;</div><div class="highlight-body"><h3>破局之道</h3><p>不替换系统,不迁移数据,不改变流程。在现有基础设施之上叠加一层 AI&mdash;&mdash;让旧系统拥有新大脑。</p></div></div></div></div></section>
<section id="solutions"><div class="container"><div class="section-header reveal"><span class="caption">WHAT WE DO</span><h2 class="display-lg">把 AI 变成你的<br>核心生产力</h2><p class="body-lg" style="margin-top: var(--sp-4);">三个行业场景,一条相同逻辑:不替换,只增强。</p></div><div class="service-row reveal"><div class="service-text"><div class="metric service-metric">60%</div><h3 class="heading-lg">AI+物业<br>智能中枢</h3><p>工单自动分发,客诉响应提速 60%。在现有物业 ERP 之上叠加 AI 调度层——不改变任何原有流程。巡检路线自动规划、设备故障提前预警。你现有的系统不用换,但效率会翻倍。</p><p class="service-closer">"不是换系统,是让系统变聪明。"</p></div><div class="service-img"><img src="assets/prop.jpg?v=7" alt="Smart Building" loading="lazy"></div></div><div class="service-row reverse reveal"><div class="service-text"><div class="metric service-metric">90 天</div><h3 class="heading-lg">AI+资管<br>风控大脑</h3><p>空置率提前 90 天预警,租金定价误差收窄至 5%。无缝接入资管平台,让历史租赁数据变成预测模型。招商智能匹配、租约到期提醒。</p><p class="service-closer">资管不该靠直觉,该靠数据。</p></div><div class="service-img"><img src="assets/server.jpg?v=7" alt="Server Data" loading="lazy"></div></div><div class="service-row reveal"><div class="service-text"><div class="metric service-metric">40%</div><h3 class="heading-lg">AI+CRM<br>效率跃升</h3><p>线索自动清洗,销售人效提升 40%。为现有 CRM 配备 AI 助理——自动捕捉商机、生成对话摘要。销售无需学习新软件,打开原界面就能看到 AI 推荐。</p><p class="service-closer">"销售的时间应该花在客户身上,不是系统里。"</p></div><div class="service-img"><img src="assets/crm.jpg?v=7" alt="CRM" loading="lazy"></div></div></div></section>
<section id="approach"><div class="container"><div class="section-header reveal"><span class="caption">WHY FISCHER</span><h2 class="display-lg">菲西尔和其他<br>AI 公司有什么不同</h2></div><div class="approach-list"><div class="approach-item reveal reveal-delay-1"><div class="approach-num">01</div><div class="approach-body"><h3>不替换,只叠加</h3><p>通过 API 外挂 AI 层,不停服、不迁移、不改流程。员工用原来的界面,体验无缝升级。</p></div></div><div class="approach-item reveal reveal-delay-2"><div class="approach-num">02</div><div class="approach-body"><h3>让数据开口说话</h3><p>沉睡的历史数据自动转化为预测模型和决策建议。把事后统计变为事前预警。</p></div></div><div class="approach-item reveal reveal-delay-3"><div class="approach-num">03</div><div class="approach-body"><h3>让 AI 替你干活</h3><p>高频重复工作交给 AI Agent——智能客服、招商匹配、巡检规划自动运转人只负责关键决策。</p></div></div><div class="approach-item reveal reveal-delay-4"><div class="approach-num">04</div><div class="approach-body"><h3>跨系统一屏掌控</h3><p>所有业务数据在 AI 层融合。一句自然语言就能查"本月哪些楼宇空置率超标",告别手动汇总。</p></div></div><div class="approach-item reveal reveal-delay-5"><div class="approach-num">05</div><div class="approach-body"><h3>小步试错,大步扩张</h3><p>从单一场景试点,验证有效再扩展。每一步都可衡量投入产出,钱花在刀刃上。</p></div></div></div></div></section>
<section id="geo"><div class="container"><div class="geo-grid"><div class="reveal"><span class="caption">BEYOND EFFICIENCY</span><div class="geo-bridge">对内提效降本,对外重塑获客</div><h2 class="heading-lg" style="margin-bottom: var(--sp-4);">让用户在大模型里<br>第一个找到你</h2><p class="body-lg">当客户问 Kimi 或文心一言"帮我找一家做 AI+物业的公司"&mdash;&mdash;你的品牌会不会出现在答案里?我们优化企业在主流大模型中的内容结构与权重,从"搜索排名"进化为"答案占位"。</p><div class="geo-quote"><p>"未来的获客,不是在搜索结果里抢位置,而是在 AI 答案里占一席之地。"</p></div></div><div class="service-img reveal" style="height: 440px;"><img src="assets/geo.jpg?v=7" alt="Network" loading="lazy"></div></div></div></section>
<section id="contact"><div class="container"><div class="contact-grid"><div class="reveal"><span class="caption">GET IN TOUCH</span><h2 class="heading-lg" style="margin-bottom: var(--sp-4); margin-top: var(--sp-2);">15 分钟,看看你的系统<br>能叠加什么</h2><p class="body-lg" style="margin-top: var(--sp-4);">不推销,只评估。基于你现有架构,给出一份可落地的 AI 叠加建议。</p><div style="margin-top: var(--sp-7); padding-top: var(--sp-5); border-top: 1px solid var(--border-subtle);"><p style="font-size: 13px; color: var(--text-quaternary);">上海菲西尔智能科技有限公司</p><p style="font-size: 13px; color: var(--text-quaternary); margin-top: var(--sp-1);">智能叠加——不推翻重来,在现有系统上叠加 AI 能力</p></div></div><form class="contact-form reveal" id="consultForm" onsubmit="return false;"><div><label>怎么称呼您</label><input type="text" name="name" placeholder="您的姓名" required></div><div><label>手机号码</label><input type="tel" name="phone" placeholder="便于我们联系您" required></div><div><label>邮箱</label><input type="email" name="email" placeholder="选填"></div><div><label>你现在用的是哪个系统?</label><textarea name="message" placeholder="简单描述一下,方便我们提前准备方案(选填)"></textarea></div><div class="contact-submit"><button type="submit" id="submitBtn">预约诊断名额</button></div><div class="form-status" id="formStatus"></div></form></div></div></section>
<footer><div class="container"><div class="caption">TECHNICAL SUPPORT PROVIDED BY</div><div class="company">上海菲西尔智能科技有限公司</div><div class="copy">&copy; 2026 SHANGHAI FISCHER INTELLIGENT TECHNOLOGY CO., LTD.</div></div></footer>
<script>
document.addEventListener('DOMContentLoaded', () => {
const nav = document.querySelector('nav');
window.addEventListener('scroll', () => { nav.classList.toggle('scrolled', window.scrollY > 60); }, { passive: true });
const form = document.getElementById('consultForm');
const btn = document.getElementById('submitBtn');
const status = document.getElementById('formStatus');
if (form) {
btn.addEventListener('click', () => {
const name = form.name.value.trim(), phone = form.phone.value.trim(), email = form.email.value.trim(), message = form.message.value.trim();
if (!name || !phone) { status.textContent = '请填写姓名和电话'; status.className = 'form-status err'; return; }
btn.disabled = true; btn.textContent = '提交中...';
fetch('/ai/api/consult', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ name, phone, email, message }) })
.then(r => r.json()).then(d => { if (d.success) { status.textContent = '已收到,我们会尽快联系您'; status.className = 'form-status ok'; form.reset(); } else { status.textContent = d.error || '提交失败,请重试'; status.className = 'form-status err'; } })
.catch(() => { status.textContent = '网络错误,请重试'; status.className = 'form-status err'; })
.finally(() => { btn.disabled = false; btn.textContent = '预约诊断名额'; });
});
}
const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) entry.target.classList.add('visible'); }); }, { threshold: 0.08, rootMargin: '0px 0px -30px 0px' });
document.querySelectorAll('.reveal').forEach(el => observer.observe(el));
});
// Hero cycling: AI + 物业 -> AI + 资管 -> ... -> AI X
(function() {
const indEl = document.getElementById('heroIndustry');
const cyclingEl = document.getElementById('heroCycling');
const plusEl = document.getElementById('heroPlus');
const xEl = document.getElementById('heroX');
const aiEl = document.getElementById('heroAi');
if (!indEl || !cyclingEl) return;
const industries = ['资管', 'CRM', '制造', '医疗', '金融', '零售', '物流'];
let idx = 0;
const speeds = [1200, 900, 700, 500, 350, 220, 130, 80, 50];
let step = 0;
function next() {
// Slide out
indEl.className = 'hero-industry-text slide-out';
idx = (idx + 1) % industries.length;
if (step >= speeds.length) {
// Merge phase
setTimeout(() => {
indEl.className = 'hero-industry-text merge-out';
plusEl.classList.add('to-x');
aiEl.classList.add('merge-in');
}, 150);
setTimeout(() => {
xEl.classList.add('visible');
cyclingEl.classList.add('merged');
}, 700);
return;
}
const delay = speeds[step];
step++;
setTimeout(() => {
indEl.textContent = industries[idx];
indEl.className = 'hero-industry-text slide-in';
requestAnimationFrame(() => {
requestAnimationFrame(() => {
indEl.className = 'hero-industry-text show';
});
});
}, 120);
setTimeout(next, delay);
}
setTimeout(next, 1500);
})();
</script>
</body>
</html>