---
target: current UI/UX design vs Bain
total_score: 24
p0_count: 1
p1_count: 4
p2_count: 1
timestamp: 2026-07-07T12-40-50Z
slug: src-app-marketing
---
Method: dual-agent (A: design review · B: detector + browser evidence)
## Design Health Score
| # | Heuristic | Score | Key Issue |
|---|-----------|-------|-----------|
| 1 | Visibility of System Status | 2 | Active nav exists; homepage crashes with only “出错了” + toast, no useful status |
| 2 | Match System / Real World | 3 | Chinese enterprise context fits, but terms like “数据中台” / “全链路” are jargon for non-technical buyers |
| 3 | User Control and Freedom | 3 | Standard back/forward works; error page only offers “重试”, no escape path |
| 4 | Consistency and Standards | 3 | Tokens are consistent, but product/solution/service pages use nearly identical card templates → monotony |
| 5 | Error Prevention | 2 | Form labels present, yet the homepage crashes before any prevention can happen |
| 6 | Recognition Rather Than Recall | 3 | Mega dropdown + labeled icons help, but too many cards strain working memory |
| 7 | Flexibility and Efficiency | 2 | No search, no shortcuts, no recent items; power users must browse level by level |
| 8 | Aesthetic and Minimalist Design | 2 | White space is generous, but repeated eyebrow labels, big numbers, and zero imagery create noise + monotony |
| 9 | Error Recovery | 1 | Error boundary text is vague, no diagnosis or recovery guidance |
| 10 | Help and Documentation | 1 | No FAQ, no contextual help, no whitepaper download; pages must self-explain |
| **Total** | | **24 / 40** | **Acceptable — significant improvements needed** |
## Anti-Patterns Verdict
**LLM assessment: Yes, the site reads as AI-generated.**
Tells found across the marketing surface:
- Repeated `01/02/03…` card numbering on product, solution, and service grids — used as decoration, not real sequence.
- Tiny uppercase eyebrow labels (“Product Matrix”, “Industry Expertise”, “Our Process”, etc.) above nearly every section.
- Identical card templates reused across three different business pages: icon + number + title + description + tag + link.
- Side-stripe borders on cards (colored left/right bars on hover) — explicitly banned in the Impeccable register.
- Generic hero metrics (“6+ 产品线 / 100% 自研率 / 全栈技术覆盖”) — the SaaS cliché.
- Zero real photography or screenshots; every page is icons + text.
- Tight Chinese typography with `leading-[0.88–0.92]` and `tracking-tighter`, harming readability.
**Deterministic scan (Assessment B):**
- CLI detector hit 2 warnings: `bounce-easing` in `detail.test.tsx` (test file — noise/false positive) and `layout-transition` (`transition: width`) in `src/components/ui/scroll-progress.tsx` (real).
- Browser overlay on 5 pages found: `layout-transition: width/height`, `low-contrast 2.6:1` for `#94a3b8` text on white (WCAG AA failure), `single-font: pingfang sc` (likely false positive from fallback resolution), and `image-hover-transform` on `
`.
- Console shows repeated Framer Motion `useScroll` hydration errors on the homepage: `Target ref is defined but not hydrated`.
**Visual overlays:** Assessment B injected the detector overlay successfully via Playwright headless; screenshots are saved in `/private/tmp/impeccable-screenshots/`. No persistent user-visible overlay is active in the IDE browser.
## Overall Impression
The site has a disciplined token system and a clear four-layer narrative structure, but it currently ships as a generic AI-template consulting landing page. The biggest single issue is that the homepage does not render — it collapses with a React error boundary. Even if that were fixed, the lack of real imagery, repeated card templates, and weak proof points leave it far behind Bain’s editorial confidence.
## What’s Working
1. **Token and design-system discipline** — colors, typography, spacing, and shadows are fully variable-driven in `globals.css`; the cinnabar red `#C41E3A` is used with restraint.
2. **Four-layer narrative is consistent** — every detail page follows Hero → Value → Trust → CTA, giving visitors a stable mental model.
3. **Responsive and motion-respect basics are in place** — `prefers-reduced-motion`, focus-visible, 44×44 touch targets, and mobile safe-area handling show engineering care.
## Priority Issues
### [P0] Homepage crashes on load
- **What**: `http://localhost:3000/` renders an error boundary with heading “出错了” and a “4 errors” toast. Console points to `HeroSection` in `home-content-v13.tsx` throwing `Target ref is defined but not hydrated` from Framer Motion `useScroll`.
- **Why it matters**: For a B2B consulting site, the homepage is the trust front door. A crashing first impression is catastrophic for CEO/CIO/CTO visitors.
- **Fix**: Guard the scroll ref in `HeroSection`; add a robust fallback UI for empty or malformed CMS data; log the error source.
- **Suggested command**: `$impeccable harden`
### [P1] Zero real imagery across the entire site
- **What**: No photography, team portraits, client scenes, or product screenshots anywhere; every page relies on Lucide icons and geometric decoration.
- **Why it matters**: Brand consulting sites are judged first on credibility. Icons alone read as template work and undermine the “沉稳 · 精致 · 可信赖” brand promise.
- **Fix**: Introduce 1–3 high-quality real images on the hero, case-study, and about/team sections. Avoid replacing photography with colored blocks or icon grids.
- **Suggested command**: `$impeccable shape`
### [P1] Product / solution / service pages are the same template
- **What**: All three listing pages use identical “icon + big number + title + description + tag + link” cards. Visitors cannot visually distinguish what type of offering they are looking at.
- **Why it matters**: It reinforces the AI-template feel and causes reading fatigue; it also fails to match the different mental models for products (features), solutions (industry pain), and services (process).
- **Fix**: Give each listing page a distinct module language — product cards can carry feature screenshots, solution cards can lead with industry pain + outcome, service cards can show process steps and deliverables.
- **Suggested command**: `$impeccable distill`
### [P1] Uppercase eyebrow labels repeat on every section
- **What**: Sections are prefaced with labels like “Product Matrix”, “Industry Expertise”, “Professional Services”, “Our Process”.
- **Why it matters**: This is one of the strongest AI-landing-page grammar markers of 2023–2026 and strips away brand uniqueness.
- **Fix**: Keep at most one deliberate label system; otherwise use short Chinese section introductions or let typography alone create hierarchy.
- **Suggested command**: `$impeccable distill`
### [P2] Low-contrast helper text fails WCAG AA
- **What**: Detector measured `2.6:1` for `#94a3b8` text on white; WCAG AA requires `4.5:1` for body text.
- **Why it matters**: Small muted labels and placeholders become unreadable for users with low vision or on bright screens, and it feels cheap.
- **Fix**: Bump helper/muted text to at least `#64748B` on white, or darken the body text toward `--color-text-primary`.
- **Suggested command**: `$impeccable audit`
## Persona Red Flags
**Jordan(首次访问者)**
- 首页直接看到“出错了”,5 秒内无法判断是公司问题还是自己的问题,极大概率离开。
- 即便首页正常,面对 6 个产品卡片和“数据中台”“全链路”等术语,没有解释入口。
- 没有明确的“从这里开始”引导,CTA 多但目的不清晰。
**Riley(压力测试者)**
- 首页崩溃且错误信息模糊,无诊断细节。
- 案例使用匿名客户(“某上市制造企业”),无法验证真实性。
- “500+ 项目验证”与关于页 2014 起步的时间线存在可信度张力。
- 联系表单未展示对 XSS、超长输入、特殊字符等边界情况的处理。
**Casey(移动用户)**
- 主要 CTA“立即咨询”在顶部导航,单手拇指难以触及。
- 联系表单字段多,无智能默认值或自动填充优化。
- 长页面依赖汉堡菜单,无底部快捷导航。
- 首页崩溃在移动端更容易直接返回搜索结果。
**Wei(中国 Fortune 500 CIO,重视结果证明与文化可信度)**
- 首页崩溃是首要红旗——对大型采购决策者不可接受。
- 看不到任何 Fortune 500 级客户名称、具体项目负责人、可验证的业务成果。
- 团队页无真实高管/顾问照片与背景介绍,难以建立“同行者”信任。
- 没有行业认证、合作伙伴背书、白皮书下载等深度信任资产。
## Minor Observations
- Cards use side-stripe borders on hover (`border-left/right` colored accent) — banned decorative pattern.
- `scroll-progress.tsx` animates `width`, causing layout thrash; should use `scaleX` on a transform layer.
- Several H1/H2 lines use `leading-[0.88–0.92]` and `tracking-tighter`; Chinese dense strokes become hard to read.
- Image hover transforms are applied directly to `
` elements; if used, keep subtle and respect reduced motion.
- The homepage Framer Motion `useScroll` error repeats 6+ times and is caught by the global error tracker.
- Footer ICP/公安备案 and WeChat QR code are good local trust signals, but buried deep.
- Mixed English eyebrows with Chinese headings make the brand voice feel less decisive.
## Questions to Consider
- If the homepage cannot render in dev, what is the current production deployment status, and is the crash already live?
- Do you have real team photos, client logos, or case-study imagery that can replace the icon grids, or should we source credible stock first?
- Are “01/02/03” numbering and uppercase eyebrows a deliberate brand system, or inherited scaffolding that can be removed?
## Gap vs Bain & Company
| Dimension | Bain | Novalon current | Gap |
|---|---|---|---|
| Imagery | Real people, client scenes, team photography | Zero photography; only Lucide icons | Large |
| Client proof | Named clients, specific business outcomes, quantified impact | Anonymous “某上市制造企业”, generic percentages | Large |
| Data proof | Concrete figures ($300M saved, 2.5× stock price, 90% FTE reduction) | “40% 效率提升 / 3× 决策效率” without source | Medium |
| Interactive entry | “Answer two questions” industry/problem funnel | No personalization; only fixed browse | Medium |
| Thought leadership | Latest briefs, client results, insights on homepage | No recurring insights/research module | Medium |
| Team credibility | Advisor photos, author bylines, team bios | About page lacks real portraits | Large |
| Module diversity | Hero, case carousel, Q&A funnel, article cards, CTA | Three listing pages use the same card grid | Large |
| Stability | No visible crashes | Homepage crashes on load | Critical |
**Core conclusion**: Novalon is currently a feature-list template site; Bain is a trust-building editorial platform. Closing the gap requires, in order: fix the homepage crash, introduce real imagery, replace anonymous proof with verifiable case studies, and diversify the page modules beyond the single card-grid template.