// c-app.jsx — 版本 C · 急救模式（中文版）
// 挑衅性营销战役。沿用「失血」隐喻——经中国市场专家小组论证：
// 「失血」比「流血」更克制、更商业化，但仍保留紧迫感。

const C_TWEAKS = /*EDITMODE-BEGIN*/{
  "showBleedingPulse": true,
  "showChineseSignals": true,
  "density": "standard"
}/*EDITMODE-END*/;

const C_NAV = [
  { label: '失血点', href: '#bleeding' },
  { label: '急救系统', href: '#triage' },
  { label: '案例证明', href: '#proof' },
  { label: '关于我们', href: '#about' },
  { label: '就绪度检查', href: '#readiness' },
];

const BLEEDING_SITES = [
  { id: 'L', x: 22, y: 28, label: '商品详情文案', bleeds: '权威性', severity: 'critical', body: '满是规格参数的卖点罗列，而西方竞品在销售向往。给人的感觉是制造商，而非品牌。' },
  { id: 'N', x: 64, y: 18, label: '品牌名称', bleeds: '信任度', severity: 'critical', body: '拼音缩写。无记忆点。无品类联想。品牌感知最初的 200 毫秒，被浪费了。' },
  { id: 'I', x: 48, y: 52, label: '生活方式视觉', bleeds: '向往感', severity: 'high', body: '图库照片。白底平铺摆拍。无人能在品牌的世界中看到自己——因为那个世界根本不存在。' },
  { id: 'R', x: 80, y: 42, label: '用户评价模式', bleeds: '溢价许可', severity: 'high', body: '负面评价主题集中在感知质量上，尽管制造水平相当。信任赤字，已折价计入。' },
  { id: 'D', x: 16, y: 68, label: '自有需求池', bleeds: '定价自主权', severity: 'mid', body: '无独立站。无邮件列表。无法在平台付费结构之外与买家沟通。' },
  { id: 'C', x: 70, y: 76, label: '内容创作者策略', bleeds: '文化许可', severity: 'mid', body: '与头部网红的一次性合作，无后续。纳米/微型红人的效率高出 4–6 倍。预算错配。' },
];

const C_TRIAGE = [
  { num: '01', name: '诊断', verb: '找到失血点。', body: '对 10 大能力域和 240+ 项基准评分。定位每一处定价权流失点。量化每项造成的损失。' },
  { num: '02', name: '蓝图规划', verb: '止住失血。', body: '优先级急救计划。严重失血点优先处理，然后是能产生复合效应的建设。按现金流和势能排序。' },
  { num: '03', name: '领域执行手册', verb: '修复系统。', body: '我们离开后您的团队可立即运行的运营交付物。品牌、内容、红人、零售——为您的现实情况量身打造。' },
  { num: '04', name: '持续导航', verb: '保护成果。', body: '季度重新评分。偏差检测。随市场发展与新失血点出现，提供持续顾问支持。' },
];

const C_PILLARS = [
  { kicker: '不是观点', label: '有据可依的方法论', body: '240+ 项评分基准。两位评估师，同一品牌，同一分数。我们的交付物是地图，而非一份提案 PPT。' },
  { kicker: '不是两个供应商', label: '一个运营层', body: '中国专业服务团队以中文深入您的运营。美国顾问团队以英文做出战略决策。翻译在我们内部完成。' },
  { kicker: '不是榨取式合作', label: '激励一致', body: '我们像伙伴一样为您服务，而非为了完成自身 KPI 向您推销服务的代理机构。声誉是我们的生命线——把事情做对，比证明自己正确更重要。' },
];

const SEVERITY_COLOR = {
  critical: 'var(--copper-hot)',
  high: 'var(--copper)',
  mid: 'var(--light-blue)',
};

const SEVERITY_LABEL_ZH = {
  critical: '严重',
  high: '高',
  mid: '中',
};

const eZh = { fontFamily: 'var(--font-zh)' };

// ─────────────────────────────────────────────────────────────
// Nav
// ─────────────────────────────────────────────────────────────
function CNav() {
  const [scrolled, setScrolled] = React.useState(false);
  React.useEffect(() => {
    const onScroll = () => setScrolled(window.scrollY > 24);
    onScroll();
    window.addEventListener('scroll', onScroll, { passive: true });
    return () => window.removeEventListener('scroll', onScroll);
  }, []);
  return (
    <nav style={{
      position: 'fixed', top: 0, left: 0, right: 0, zIndex: 50,
      background: scrolled ? 'rgba(20, 22, 30, 0.84)' : 'transparent',
      backdropFilter: scrolled ? 'blur(20px) saturate(140%)' : 'none',
      WebkitBackdropFilter: scrolled ? 'blur(20px) saturate(140%)' : 'none',
      borderBottom: '1px solid ' + (scrolled ? 'var(--surface-border)' : 'transparent'),
      transition: 'all .3s ease',
    }}>
      <div className="container" style={{
        display: 'flex', alignItems: 'center', justifyContent: 'space-between',
        padding: scrolled ? '14px 48px' : '22px 48px',
      }}>
        <a href="#" style={{
          display: 'flex', alignItems: 'baseline', gap: 4,
          fontFamily: 'var(--font-heading)', fontWeight: 700, fontSize: 19,
        }}>
          <span style={{ color: 'var(--white)' }}>Project</span>
          <span style={{ color: 'var(--light-blue)' }}>Silk</span>
        </a>
        <div style={{ display: 'flex', alignItems: 'center', gap: 28 }}>
          <ul style={{
            ...eZh,
            display: 'flex', gap: 22, listStyle: 'none', margin: 0, padding: 0,
            fontSize: 13.5, color: 'var(--text-secondary)',
          }}>
            {C_NAV.map(it => (
              <li key={it.label}>
                <a href={it.href} style={{ transition: 'color .2s' }}
                   onMouseEnter={(e) => e.currentTarget.style.color = 'var(--white)'}
                   onMouseLeave={(e) => e.currentTarget.style.color = ''}>
                  {it.label}
                </a>
              </li>
            ))}
          </ul>
          <a href="#cta" className="btn btn-primary" style={{ ...eZh, padding: '10px 18px', fontSize: 13 }}>
            立即诊断
          </a>
        </div>
      </div>
    </nav>
  );
}

// ─────────────────────────────────────────────────────────────
// Hero
// ─────────────────────────────────────────────────────────────
function CHero({ t }) {
  return (
    <section style={{
      position: 'relative',
      minHeight: '100vh',
      overflow: 'hidden',
      paddingBlock: '180px 80px',
      background: 'var(--rich-black)',
      display: 'flex', alignItems: 'center',
    }}>
      <div style={{
        position: 'absolute',
        top: '-10%', right: '-20%',
        width: '60%', height: '120%',
        background: 'radial-gradient(ellipse at center, rgba(217,119,6,0.20) 0%, rgba(180,83,9,0.08) 30%, transparent 60%)',
        filter: 'blur(60px)',
        pointerEvents: 'none',
      }} />
      <div style={{
        position: 'absolute',
        top: '20%', right: '-5%',
        width: '70%', height: 2,
        background: 'linear-gradient(90deg, transparent 0%, var(--copper-hot) 50%, transparent 100%)',
        opacity: 0.5,
        transform: 'rotate(-12deg)',
        pointerEvents: 'none',
      }} />

      <div className="container" style={{ position: 'relative', zIndex: 2, width: '100%' }}>
        {t.showChineseSignals && (
          <div style={{ display: 'flex', alignItems: 'center', gap: 16, marginBottom: 32, flexWrap: 'wrap' }}>
            <span style={{
              fontFamily: 'var(--font-zh)', fontSize: 14,
              color: 'var(--copper-hot)', letterSpacing: '0.3em',
            }}>
              止 血 · 然 后 建 品 牌
            </span>
            <span style={{ width: 24, height: 1, background: 'var(--copper-hot)', opacity: 0.6 }} />
            <span style={{
              fontFamily: 'var(--font-mono)', fontSize: 11,
              letterSpacing: '0.22em', textTransform: 'uppercase', color: 'var(--copper-hot)',
            }}>
              Stop the bleeding. Then build the brand.
            </span>
          </div>
        )}

        <h1 style={{
          fontFamily: 'var(--font-heading), var(--font-zh)',
          fontSize: 'clamp(40px, 6.4vw, 104px)',
          lineHeight: 1.08,
          fontWeight: 700,
          letterSpacing: '-0.02em',
          marginBottom: 40,
          maxWidth: 1240,
          textWrap: 'balance',
        }}>
          您的品牌正在
          <br />
          <span style={{ color: 'var(--copper-hot)', position: 'relative' }}>
            「失血」定价权。
            <span style={{
              position: 'absolute',
              left: 0, right: 0, bottom: '-0.05em',
              height: 2,
              background: 'linear-gradient(90deg, var(--copper-hot) 0%, transparent 100%)',
              opacity: 0.5,
            }} />
          </span>
          <br />
          <span style={{ color: 'var(--text-secondary)' }}>我们能精准定位每一处伤口。</span>
        </h1>

        <p style={{
          ...eZh,
          fontSize: 'clamp(16px, 1.4vw, 22px)',
          lineHeight: 1.7,
          color: 'var(--white)',
          maxWidth: 820,
          marginBottom: 48,
          fontWeight: 400,
        }}>
          中国品牌是世界级的运营者，运营卓越。
          <span style={{ color: 'var(--text-secondary)' }}>{' '}但在美国市场，您在情感层面缺乏存在感——
          这导致您已经赢得的 30–60% 定价权被损耗。</span>
        </p>

        <div style={{ display: 'flex', gap: 16, alignItems: 'center', flexWrap: 'wrap', marginBottom: 80 }}>
          <a href="#bleeding" className="btn btn-primary" style={{ ...eZh, padding: '16px 28px', fontSize: 15 }}>
            查看您的失血点
            <span className="arrow">→</span>
          </a>
          <a href="#triage" className="btn btn-ghost" style={{ ...eZh, padding: '16px 24px', fontSize: 14 }}>
            了解我们如何止血
          </a>
        </div>

        <div style={{
          display: 'grid', gridTemplateColumns: 'repeat(4, 1fr)',
          paddingTop: 32,
          borderTop: '1px solid var(--surface-border)',
          gap: 32,
        }}>
          <VitalStat n="6" label="平均失血点数量" pulse={t.showBleedingPulse} />
          <VitalStat n="–58%" label="每单位价差" pulse={false} />
          <VitalStat n="240+" label="评分基准" pulse={false} />
          <VitalStat n="3.19×" label="第一年 ROI（匿名）" pulse={false} />
        </div>
      </div>
    </section>
  );
}

function VitalStat({ n, label, pulse }) {
  return (
    <div style={{ position: 'relative' }}>
      {pulse && (
        <div style={{
          position: 'absolute', top: -3, left: -10,
          width: 6, height: 6, borderRadius: '50%',
          background: 'var(--copper-hot)',
          boxShadow: '0 0 12px var(--copper-hot)',
          animation: 'breathe 1.6s ease-in-out infinite',
        }} />
      )}
      <div style={{
        fontFamily: 'var(--font-heading)',
        fontSize: 'clamp(26px, 2.2vw, 36px)',
        fontWeight: 700,
        color: 'var(--white)',
        letterSpacing: '-0.03em',
        lineHeight: 1, marginBottom: 8,
      }}>
        {n}
      </div>
      <div style={{
        ...eZh,
        fontSize: 12, letterSpacing: '0.04em',
        color: 'var(--text-tertiary)',
      }}>{label}</div>
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// Bleeding
// ─────────────────────────────────────────────────────────────
function CBleeding({ t }) {
  const [active, setActive] = React.useState('L');
  const current = BLEEDING_SITES.find(b => b.id === active);
  return (
    <section className="section section--navy" id="bleeding" style={{ position: 'relative', overflow: 'hidden' }}>
      <div className="container">
        <div style={{
          paddingBottom: 24, borderBottom: '2px solid var(--copper)',
          marginBottom: 56,
          display: 'flex', justifyContent: 'space-between', alignItems: 'baseline',
        }}>
          <div>
            <div style={{
              fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.22em',
              textTransform: 'uppercase', color: 'var(--copper-hot)', marginBottom: 8,
            }}>
              生命体征 · 六大常见失血点
            </div>
            <h2 style={{
              fontFamily: 'var(--font-heading), var(--font-zh)',
              fontSize: 'clamp(30px, 4.4vw, 58px)',
              lineHeight: 1.2, letterSpacing: '-0.015em',
            }}>
              大多数品牌
              <br />
              <span style={{ color: 'var(--copper-hot)' }}>同时在三到五处「失血」。</span>
            </h2>
          </div>
        </div>

        <p style={{
          ...eZh,
          fontSize: 16.5, lineHeight: 1.8, color: 'var(--text-secondary)',
          maxWidth: 800, marginBottom: 56,
        }}>
          失血点不是「运行不佳」，而是正在持续地伤害您的品牌——我们将其定义为正在持续造成损失的能力缺口。
          一个错别字流失信任。业余的摄影流失权威。频繁打折流失高端感知。
          失血点瞬间摧毁短期情感和长期情感。必须首先对它们进行急救，先于其他一切。
        </p>

        <div style={{
          display: 'grid', gridTemplateColumns: '1.1fr 1fr',
          gap: 64, alignItems: 'start',
        }}>
          <BleedingMap sites={BLEEDING_SITES} active={active} onSelect={setActive} pulse={t.showBleedingPulse} />

          <div>
            <div style={{
              display: 'inline-flex', alignItems: 'center', gap: 10, marginBottom: 16,
              padding: '6px 14px',
              border: '1px solid ' + SEVERITY_COLOR[current.severity],
              borderRadius: 999,
              ...eZh, fontSize: 11,
              letterSpacing: '0.04em',
              color: SEVERITY_COLOR[current.severity],
            }}>
              <span style={{
                width: 6, height: 6, borderRadius: '50%',
                background: SEVERITY_COLOR[current.severity],
                boxShadow: `0 0 10px ${SEVERITY_COLOR[current.severity]}`,
              }} />
              {SEVERITY_LABEL_ZH[current.severity]}级失血
            </div>

            <h3 style={{
              fontFamily: 'var(--font-heading), var(--font-zh)',
              fontSize: 32, fontWeight: 700, letterSpacing: '-0.01em',
              marginBottom: 12, color: 'var(--white)',
            }}>
              {current.label}
            </h3>
            <div style={{ ...eZh, fontSize: 15.5, color: SEVERITY_COLOR[current.severity], marginBottom: 20, fontWeight: 500 }}>
              流失：{current.bleeds}
            </div>
            <p style={{ ...eZh, fontSize: 15.5, lineHeight: 1.85, color: 'var(--text-secondary)', marginBottom: 32 }}>
              {current.body}
            </p>

            <div style={{
              display: 'flex', flexWrap: 'wrap', gap: 8,
              paddingTop: 24, borderTop: '1px solid var(--surface-border)',
            }}>
              {BLEEDING_SITES.map(s => (
                <button key={s.id} onClick={() => setActive(s.id)} style={{
                  padding: '8px 14px',
                  border: '1px solid ' + (s.id === active ? SEVERITY_COLOR[s.severity] : 'var(--surface-border-strong)'),
                  background: s.id === active ? 'rgba(217,119,6,0.1)' : 'transparent',
                  color: s.id === active ? 'var(--white)' : 'var(--text-secondary)',
                  borderRadius: 4,
                  ...eZh, fontSize: 12.5, fontWeight: 500,
                  cursor: 'pointer',
                  transition: 'all .2s',
                }}>
                  {s.label}
                </button>
              ))}
            </div>
          </div>
        </div>
      </div>
    </section>
  );
}

function BleedingMap({ sites, active, onSelect, pulse }) {
  return (
    <div style={{
      position: 'relative',
      aspectRatio: '4/3',
      border: '1px solid var(--surface-border-strong)',
      borderRadius: 6,
      background: 'radial-gradient(ellipse at center, rgba(96,165,250,0.04) 0%, rgba(0,0,0,0.2) 100%), var(--rich-black)',
      overflow: 'hidden',
    }}>
      <svg viewBox="0 0 100 75" style={{ position: 'absolute', inset: 0, width: '100%', height: '100%' }}>
        {[0.25, 0.5, 0.75].map((p, i) => (
          <line key={`h${i}`} x1="0" x2="100" y1={75 * p} y2={75 * p}
            stroke="rgba(255,255,255,0.05)" strokeDasharray="0.5 1" />
        ))}
        {[0.25, 0.5, 0.75].map((p, i) => (
          <line key={`v${i}`} x1={100 * p} x2={100 * p} y1="0" y2="75"
            stroke="rgba(255,255,255,0.05)" strokeDasharray="0.5 1" />
        ))}
        <circle cx="50" cy="37.5" r="8" stroke="rgba(96,165,250,0.15)" strokeWidth="0.3" fill="none" />
        <circle cx="50" cy="37.5" r="16" stroke="rgba(96,165,250,0.1)" strokeWidth="0.3" fill="none" />
        <circle cx="50" cy="37.5" r="26" stroke="rgba(96,165,250,0.06)" strokeWidth="0.3" fill="none" />
        <circle cx="50" cy="37.5" r="0.6" fill="var(--light-blue)" />
      </svg>

      {sites.map(s => {
        const isActive = s.id === active;
        const color = SEVERITY_COLOR[s.severity];
        return (
          <button key={s.id} onClick={() => onSelect(s.id)} style={{
            position: 'absolute',
            left: `${s.x}%`, top: `${s.y}%`,
            transform: 'translate(-50%, -50%)',
            width: isActive ? 24 : 16, height: isActive ? 24 : 16,
            borderRadius: '50%',
            background: 'transparent',
            border: 'none',
            cursor: 'pointer',
            padding: 0,
            zIndex: isActive ? 2 : 1,
            transition: 'all .3s',
          }}>
            <span style={{
              position: 'absolute', inset: 0,
              borderRadius: '50%',
              background: color,
              boxShadow: `0 0 ${isActive ? 24 : 12}px ${color}`,
              animation: pulse ? `breathe ${1.4 + (s.x % 7) * 0.1}s ease-in-out infinite` : 'none',
              opacity: isActive ? 1 : 0.7,
            }} />
            <span style={{
              position: 'absolute',
              top: '50%', left: '50%', transform: 'translate(-50%, -50%)',
              fontFamily: 'var(--font-mono)', fontSize: 9, color: 'var(--rich-black)',
              fontWeight: 700,
            }}>{s.id}</span>
            {isActive && (
              <span style={{
                position: 'absolute', inset: -14,
                borderRadius: '50%',
                border: `1px solid ${color}`,
                opacity: 0.5,
                animation: 'breathe 2s ease-in-out infinite',
              }} />
            )}
          </button>
        );
      })}

      <div style={{
        position: 'absolute', bottom: 14, left: 14,
        padding: '8px 12px',
        background: 'rgba(20,22,30,0.7)',
        border: '1px solid var(--surface-border)',
        borderRadius: 4,
        display: 'flex', gap: 14,
        ...eZh, fontSize: 10, letterSpacing: '0.04em',
        color: 'var(--text-secondary)',
      }}>
        <Legend dot="var(--copper-hot)" label="严重" />
        <Legend dot="var(--copper)" label="高" />
        <Legend dot="var(--light-blue)" label="中" />
      </div>

      <div style={{
        position: 'absolute', top: 14, right: 14,
        fontFamily: 'var(--font-mono)', fontSize: 9, letterSpacing: '0.18em',
        textTransform: 'uppercase', color: 'var(--text-tertiary)',
      }}>
        示意 · 典型中国品牌
      </div>
    </div>
  );
}

function Legend({ dot, label }) {
  return (
    <div style={{ display: 'flex', alignItems: 'center', gap: 6 }}>
      <span style={{ width: 6, height: 6, borderRadius: '50%', background: dot, boxShadow: `0 0 6px ${dot}` }} />
      {label}
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// Triage system
// ─────────────────────────────────────────────────────────────
function CTriage() {
  return (
    <section className="section section--black" id="triage" style={{ position: 'relative' }}>
      <div className="container">
        <div style={{ marginBottom: 64, maxWidth: 960 }}>
          <div style={{
            fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.22em',
            textTransform: 'uppercase', color: 'var(--light-blue)', marginBottom: 16,
          }}>
            急救系统
          </div>
          <h2 style={{
            fontFamily: 'var(--font-heading), var(--font-zh)',
            fontSize: 'clamp(30px, 4.4vw, 58px)',
            lineHeight: 1.2, letterSpacing: '-0.015em',
            marginBottom: 28,
          }}>
            发现它。止住它。
            <br />
            <span style={{ color: 'var(--light-blue)' }}>修复系统。保护成果。</span>
          </h2>
          <p style={{ ...eZh, fontSize: 16.5, lineHeight: 1.8, color: 'var(--text-secondary)' }}>
            每次合作都遵循相同的四个阶段。先进行紧急处理，
            再调整长期习惯。然后永久维护，因为市场不会停滞不前。
          </p>
        </div>

        <div style={{
          display: 'grid',
          gridTemplateColumns: 'repeat(4, 1fr)',
          gap: 24,
        }}>
          {C_TRIAGE.map((p, i) => (
            <TriageCard key={p.num} {...p} index={i} />
          ))}
        </div>

        <div style={{
          marginTop: 80, padding: 40,
          border: '1px solid var(--copper)',
          borderRadius: 6,
          background: 'linear-gradient(135deg, rgba(180,83,9,0.08) 0%, rgba(180,83,9,0.02) 100%)',
          display: 'grid', gridTemplateColumns: '1fr 1.4fr',
          gap: 48, alignItems: 'center',
        }}>
          <div style={{
            fontFamily: 'var(--font-heading), var(--font-zh)',
            fontSize: 'clamp(26px, 3.2vw, 42px)',
            lineHeight: 1.2, fontWeight: 700,
            letterSpacing: '-0.01em',
            color: 'var(--white)',
          }}>
            10 大能力域。<br />
            <span style={{ color: 'var(--copper-hot)' }}>240+ 项基准。</span><br />
            已映射、已评分、已排序。
          </div>
          <div>
            <p style={{ ...eZh, fontSize: 15.5, lineHeight: 1.8, color: 'var(--text-secondary)', marginBottom: 24 }}>
              我们的交付物即地图本身——一幅根据您所在品类的世界级水准
              进行衡量、评分、动态呈现的业务运营系统图。路线图源于差距分析，
              而非主观意见。
            </p>
            <a href="#" className="btn btn-ghost" style={eZh}>
              浏览方法论
              <span className="arrow">→</span>
            </a>
          </div>
        </div>
      </div>
    </section>
  );
}

function TriageCard({ num, name, verb, body }) {
  return (
    <div style={{
      position: 'relative',
      padding: '32px 24px',
      border: '1px solid var(--surface-border-strong)',
      borderRadius: 6,
      background: 'linear-gradient(180deg, rgba(255,255,255,0.025) 0%, rgba(255,255,255,0) 100%)',
      minHeight: 300,
      display: 'flex', flexDirection: 'column',
      transition: 'transform .3s, border-color .25s',
    }}
      onMouseEnter={(e) => { e.currentTarget.style.transform = 'translateY(-4px)'; e.currentTarget.style.borderColor = 'var(--copper)'; }}
      onMouseLeave={(e) => { e.currentTarget.style.transform = ''; e.currentTarget.style.borderColor = ''; }}
    >
      <div style={{
        fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
        color: 'var(--copper-hot)', marginBottom: 16,
      }}>
        {num} · 阶段
      </div>
      <h4 style={{
        fontFamily: 'var(--font-heading), var(--font-zh)',
        fontSize: 26, fontWeight: 700, letterSpacing: '-0.01em',
        marginBottom: 6, color: 'var(--white)',
      }}>{name}</h4>
      <div style={{
        ...eZh,
        fontSize: 14.5, color: 'var(--light-blue)',
        marginBottom: 18, fontWeight: 500,
      }}>{verb}</div>
      <p style={{ ...eZh, fontSize: 13.5, lineHeight: 1.8, color: 'var(--text-secondary)', margin: 0, flex: 1 }}>{body}</p>
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// Proof
// ─────────────────────────────────────────────────────────────
function CProof() {
  return (
    <section className="section section--navy" id="proof" style={{ position: 'relative', overflow: 'hidden' }}>
      <div className="glow-orb glow-blue" style={{ width: 600, height: 600, left: -200, top: '20%', opacity: 0.4 }} />

      <div className="container" style={{ position: 'relative', zIndex: 1 }}>
        <div style={{
          paddingBottom: 24,
          borderBottom: '2px solid var(--light-blue)',
          marginBottom: 56,
        }}>
          <div style={{
            fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.22em',
            textTransform: 'uppercase', color: 'var(--light-blue)',
          }}>
            案例证明 · 已匿名合作
          </div>
        </div>

        <div style={{
          display: 'grid', gridTemplateColumns: '1.1fr 1fr',
          gap: 80, alignItems: 'center',
        }}>
          <div>
            <h2 style={{
              fontFamily: 'var(--font-heading), var(--font-zh)',
              fontSize: 'clamp(30px, 4.2vw, 56px)',
              lineHeight: 1.2, letterSpacing: '-0.015em',
              marginBottom: 28,
            }}>
              5 处失血点已诊断。
              <br />
              <span style={{ color: 'var(--copper-hot)' }}>第一年 ROI 3.19×。</span>
              <br />
              <span style={{ color: 'var(--text-secondary)' }}>第三年预期 8.0×+。</span>
            </h2>
            <p style={{ ...eZh, fontSize: 16, lineHeight: 1.85, color: 'var(--text-secondary)', marginBottom: 32, maxWidth: 560 }}>
              一家领先的中国婴童用品品牌。亚马逊销量强劲，无品牌溢价。
              我们诊断了五大能力域的差距，规划了三波干预蓝图，
              并模拟了到第三年的发展路径。
            </p>
            <div style={{ display: 'flex', gap: 14, flexWrap: 'wrap' }}>
              <a href="#" className="btn btn-primary" style={eZh}>
                阅读案例研究
                <span className="arrow">→</span>
              </a>
              <a href="#" style={{
                ...eZh,
                display: 'inline-flex', alignItems: 'center', gap: 8,
                fontSize: 14, color: 'var(--light-blue)',
                padding: '14px 0',
              }}>
                下载匿名 PDF ↓
              </a>
            </div>
          </div>

          <CProofVisual />
        </div>
      </div>
    </section>
  );
}

function CProofVisual() {
  return (
    <div style={{
      padding: '32px 28px',
      border: '1px solid var(--surface-border-strong)',
      borderRadius: 6,
      background: 'rgba(255,255,255,0.02)',
    }}>
      <div style={{
        fontFamily: 'var(--font-mono)', fontSize: 10, letterSpacing: '0.18em',
        textTransform: 'uppercase', color: 'var(--text-tertiary)', marginBottom: 20,
      }}>
        预期 ROI · 按波次排序
      </div>

      {[
        { wave: 'W1', label: '止血 · 商品详情页 + 红人', roi: 1.8, color: 'var(--copper-hot)' },
        { wave: 'W2', label: '奠定基础 · 独立站 + PR', roi: 2.4, color: 'var(--light-blue)' },
        { wave: 'W3', label: '复合增长 · 零售 + 品牌', roi: 3.9, color: 'var(--white)' },
      ].map((w, i) => (
        <div key={i} style={{ marginBottom: 18 }}>
          <div style={{
            display: 'flex', justifyContent: 'space-between', alignItems: 'baseline',
            marginBottom: 8,
          }}>
            <span style={{ ...eZh, fontSize: 14, color: 'var(--white)', fontWeight: 500 }}>
              <span style={{ fontFamily: 'var(--font-mono)', fontSize: 11, color: w.color, marginRight: 10 }}>{w.wave}</span>
              {w.label}
            </span>
            <span style={{ fontFamily: 'var(--font-heading)', fontSize: 18, fontWeight: 700, color: w.color }}>
              {w.roi.toFixed(1)}×
            </span>
          </div>
          <div style={{ height: 6, background: 'rgba(255,255,255,0.04)', borderRadius: 3, overflow: 'hidden' }}>
            <div style={{
              width: `${(w.roi / 4) * 100}%`,
              height: '100%',
              background: w.color,
              opacity: 0.8,
              transition: 'width 1s ease',
            }} />
          </div>
        </div>
      ))}

      <div style={{
        marginTop: 24, paddingTop: 20,
        borderTop: '1px dashed var(--surface-border-strong)',
        display: 'flex', justifyContent: 'space-between', alignItems: 'center',
      }}>
        <div>
          <div style={{ ...eZh, fontSize: 10.5, letterSpacing: '0.04em', color: 'var(--text-tertiary)', marginBottom: 4 }}>
            第三年预期
          </div>
          <div style={{ ...eZh, fontSize: 13.5, color: 'var(--white)' }}>
            跨协同能力复合
          </div>
        </div>
        <div style={{
          fontFamily: 'var(--font-heading)', fontSize: 44, fontWeight: 700,
          color: 'var(--copper-hot)', letterSpacing: '-0.03em', lineHeight: 1,
        }}>
          8.0×+
        </div>
      </div>
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// Difference
// ─────────────────────────────────────────────────────────────
function CDifference() {
  return (
    <section className="section section--black" id="about">
      <div className="container">
        <div style={{
          paddingBottom: 24, borderBottom: '1px solid var(--surface-border)',
          marginBottom: 56,
          display: 'flex', justifyContent: 'space-between', alignItems: 'flex-end', gap: 32,
        }}>
          <h2 style={{
            fontFamily: 'var(--font-heading), var(--font-zh)',
            fontSize: 'clamp(30px, 4.4vw, 56px)',
            lineHeight: 1.2, letterSpacing: '-0.015em',
            maxWidth: 760,
          }}>
            我们绝不妥协的原则。
          </h2>
          <a href="#" style={{
            ...eZh, fontSize: 14, color: 'var(--light-blue)',
            display: 'inline-flex', alignItems: 'center', gap: 8,
            paddingBottom: 8,
          }}>
            创始人、团队与顾问
            <span className="arrow">→</span>
          </a>
        </div>

        <div style={{
          display: 'grid',
          gridTemplateColumns: 'repeat(3, 1fr)',
          gap: 1,
          background: 'var(--surface-border-strong)',
          border: '1px solid var(--surface-border-strong)',
        }}>
          {C_PILLARS.map((p, i) => (
            <div key={i} style={{
              background: 'var(--rich-black)',
              padding: '36px 32px',
              minHeight: 280,
              display: 'flex', flexDirection: 'column',
            }}>
              <div style={{
                fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
                textTransform: 'uppercase', color: 'var(--copper-hot)', marginBottom: 18,
              }}>
                {p.kicker}
              </div>
              <h3 style={{
                fontFamily: 'var(--font-heading), var(--font-zh)',
                fontSize: 24, fontWeight: 700, letterSpacing: '-0.005em',
                marginBottom: 14, lineHeight: 1.3,
              }}>
                {p.label}
              </h3>
              <p style={{ ...eZh, fontSize: 14.5, color: 'var(--text-secondary)', lineHeight: 1.85, margin: 0 }}>{p.body}</p>
            </div>
          ))}
        </div>
      </div>
    </section>
  );
}

// ─────────────────────────────────────────────────────────────
// CTA
// ─────────────────────────────────────────────────────────────
function CCTA() {
  return (
    <section className="section section--navy" id="cta" style={{ position: 'relative', overflow: 'hidden' }}>
      <div className="glow-orb glow-copper" style={{
        width: 900, height: 900,
        left: '50%', top: '50%', transform: 'translate(-50%, -50%)',
        opacity: 0.3,
      }} />

      <div className="container" style={{ position: 'relative', zIndex: 1 }}>
        <div style={{ textAlign: 'center', maxWidth: 960, marginInline: 'auto', marginBottom: 56 }}>
          <div style={{
            fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.22em',
            textTransform: 'uppercase', color: 'var(--copper-hot)', marginBottom: 24,
          }}>
            两种参与方式
          </div>
          <h2 style={{
            fontFamily: 'var(--font-heading), var(--font-zh)',
            fontSize: 'clamp(32px, 5vw, 68px)',
            lineHeight: 1.15, letterSpacing: '-0.02em',
          }}>
            看清您在何处失血。
            <br />
            <span style={{ color: 'var(--copper-hot)' }}>然后止住它。</span>
          </h2>
        </div>

        <div style={{
          display: 'grid', gridTemplateColumns: 'repeat(2, 1fr)',
          gap: 24,
          maxWidth: 1080, marginInline: 'auto',
        }}>
          <CForkCard
            primary
            kicker="准备好合作"
            title="预约诊断"
            body="一次 45 分钟的对话。无论您是否进一步合作，我们都将展示您的前三大失血点及弥合方案。"
            cta="开始对话"
            href="#"
          />
          <CForkCard
            kicker="尚不确定"
            title="合作伙伴就绪度检查"
            body="提交 10 个字段。获得一份显示您潜在失血点的结构化就绪度快照。完全匿名。无需承诺。"
            cta="开始检查"
            href="#readiness"
          />
        </div>
      </div>
    </section>
  );
}

function CForkCard({ primary, kicker, title, body, cta, href }) {
  return (
    <a href={href} style={{
      padding: '40px 36px',
      border: '1px solid ' + (primary ? 'var(--copper)' : 'var(--surface-border-strong)'),
      borderRadius: 6,
      background: primary
        ? 'linear-gradient(180deg, rgba(180,83,9,0.14) 0%, rgba(180,83,9,0.02) 100%)'
        : 'rgba(255,255,255,0.02)',
      display: 'flex', flexDirection: 'column', gap: 16,
      transition: 'transform .3s, border-color .25s',
      cursor: 'pointer',
      minHeight: 300,
    }}
      onMouseEnter={(e) => { e.currentTarget.style.transform = 'translateY(-4px)'; }}
      onMouseLeave={(e) => { e.currentTarget.style.transform = ''; }}
    >
      <div style={{
        fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
        textTransform: 'uppercase',
        color: primary ? 'var(--copper-hot)' : 'var(--light-blue)',
      }}>
        {kicker}
      </div>
      <h3 style={{
        fontFamily: 'var(--font-heading), var(--font-zh)',
        fontSize: 30, fontWeight: 700, letterSpacing: '-0.01em',
        lineHeight: 1.2, color: 'var(--white)',
      }}>
        {title}
      </h3>
      <p style={{ ...eZh, fontSize: 14.5, color: 'var(--text-secondary)', lineHeight: 1.8, margin: 0 }}>{body}</p>
      <div style={{
        marginTop: 'auto', paddingTop: 16,
        display: 'inline-flex', alignItems: 'center', gap: 10,
        color: primary ? 'var(--copper-hot)' : 'var(--light-blue)',
        ...eZh, fontSize: 15, fontWeight: 500,
      }}>
        {cta}
        <span className="arrow">→</span>
      </div>
    </a>
  );
}

// ─────────────────────────────────────────────────────────────
// Footer
// ─────────────────────────────────────────────────────────────
function CFooter({ t }) {
  return (
    <footer style={{
      background: 'var(--rich-black)',
      borderTop: '1px solid var(--copper)',
      paddingBlock: 72,
    }}>
      <div className="container">
        <div style={{
          display: 'grid',
          gridTemplateColumns: '1.5fr 1fr 1fr 1.2fr',
          gap: 56,
          marginBottom: 56,
        }}>
          <div>
            <a href="#" style={{
              display: 'inline-flex', alignItems: 'baseline', gap: 4,
              fontFamily: 'var(--font-heading)', fontWeight: 700, fontSize: 24,
              marginBottom: 18,
            }}>
              <span style={{ color: 'var(--white)' }}>Project</span>
              <span style={{ color: 'var(--light-blue)' }}>Silk</span>
            </a>
            <p style={{ ...eZh, fontSize: 14, color: 'var(--text-secondary)', lineHeight: 1.8, maxWidth: 360 }}>
              我们找出中国品牌在美国市场流失定价权的部位——并将其弥合。
              为中国企业构建的西式战略。
            </p>
            {t.showChineseSignals && (
              <div style={{ marginTop: 16, fontFamily: 'var(--font-zh)', fontSize: 14, color: 'var(--copper-hot)', letterSpacing: '0.18em' }}>
                止血，然后建品牌
              </div>
            )}
          </div>

          <div>
            <div style={{
              fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
              textTransform: 'uppercase', color: 'var(--text-tertiary)', marginBottom: 16,
            }}>网站</div>
            <ul style={{ ...eZh, listStyle: 'none', padding: 0, margin: 0, display: 'flex', flexDirection: 'column', gap: 9, fontSize: 13.5 }}>
              {['失血点', '急救系统', '案例证明', '关于我们', '就绪度检查', '联系我们'].map(l => (
                <li key={l}><a href="#" style={{ color: 'var(--text-secondary)' }}>{l}</a></li>
              ))}
            </ul>
          </div>
          <div>
            <div style={{
              fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
              textTransform: 'uppercase', color: 'var(--text-tertiary)', marginBottom: 16,
            }}>联系我们</div>
            <ul style={{ ...eZh, listStyle: 'none', padding: 0, margin: 0, display: 'flex', flexDirection: 'column', gap: 9, fontSize: 13.5 }}>
              <li><a href="#" style={{ color: 'var(--text-secondary)' }}>hello@project-silk.com</a></li>
              <li><a href="#" style={{ color: 'var(--text-secondary)' }}>LinkedIn</a></li>
              <li><a href="#" style={{ color: 'var(--text-secondary)' }}>Foundry Studio</a></li>
            </ul>
          </div>
          <CFooterWeChat />
        </div>

        <div style={{
          ...eZh,
          paddingTop: 24, borderTop: '1px solid var(--surface-border)',
          display: 'flex', justifyContent: 'space-between', flexWrap: 'wrap', gap: 12,
          fontSize: 12, color: 'var(--text-tertiary)',
        }}>
          <div>© 2026 Project Silk · A Foundry Studio venture</div>
          <div style={{ display: 'flex', gap: 24 }}>
            <a href="#">隐私政策</a>
            <a href="#">服务条款</a>
          </div>
        </div>
      </div>
    </footer>
  );
}

function CFooterWeChat() {
  return (
    <div>
      <div style={{
        fontFamily: 'var(--font-mono)', fontSize: 11, letterSpacing: '0.18em',
        textTransform: 'uppercase', color: 'var(--text-tertiary)', marginBottom: 16,
      }}>
        企业微信 · WeCom
      </div>
      <div style={{ display: 'flex', gap: 14 }}>
        <div style={{
          width: 78, height: 78,
          background: 'var(--deep-navy-2)',
          border: '1px solid var(--surface-border-strong)',
          borderRadius: 4,
          display: 'grid',
          gridTemplateColumns: 'repeat(8, 1fr)', gridTemplateRows: 'repeat(8, 1fr)',
          padding: 5, gap: 1.5,
        }}>
          {Array.from({ length: 64 }).map((_, i) => (
            <div key={i} style={{
              background: (i * 17 + Math.floor(i / 8) * 3) % 4 === 0 ? 'var(--white)' : 'transparent',
            }} />
          ))}
        </div>
        <div style={{ ...eZh, fontSize: 13, color: 'var(--text-secondary)', lineHeight: 1.7 }}>
          Project Silk<br />
          项目丝路<br />
          <span style={{ color: 'var(--text-tertiary)', fontSize: 11 }}>扫码添加</span>
        </div>
      </div>
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// WeChat pill
// ─────────────────────────────────────────────────────────────
function CWeChatPill() {
  const [open, setOpen] = React.useState(false);
  return (
    <div style={{ position: 'fixed', left: 24, bottom: 24, zIndex: 40 }}>
      {open && (
        <div style={{
          position: 'absolute', bottom: 60, left: 0,
          background: 'rgba(20, 22, 30, 0.94)',
          border: '1px solid var(--surface-border-strong)',
          backdropFilter: 'blur(18px) saturate(140%)',
          WebkitBackdropFilter: 'blur(18px) saturate(140%)',
          borderRadius: 8, padding: 16, width: 220,
          boxShadow: '0 24px 60px rgba(0,0,0,0.6)',
        }}>
          <div style={{
            fontFamily: 'var(--font-mono)', fontSize: 10, letterSpacing: '0.18em',
            textTransform: 'uppercase', color: 'var(--text-tertiary)', marginBottom: 12,
          }}>企业微信 · WeCom</div>
          <div style={{
            width: '100%', aspectRatio: '1/1',
            background: 'var(--deep-navy-2)',
            border: '1px solid var(--surface-border-strong)', borderRadius: 4,
            display: 'grid', gridTemplateColumns: 'repeat(10, 1fr)', gridTemplateRows: 'repeat(10, 1fr)',
            padding: 8, gap: 1.5, marginBottom: 10,
          }}>
            {Array.from({ length: 100 }).map((_, i) => (
              <div key={i} style={{
                background: (i * 13 + Math.floor(i / 10) * 5) % 4 === 0 ? 'var(--white)' : 'transparent',
              }} />
            ))}
          </div>
          <div style={{ ...eZh, fontSize: 12, color: 'var(--text-secondary)', lineHeight: 1.6 }}>
            扫码添加 Project Silk<br />官方企业微信账号
          </div>
        </div>
      )}
      <button onClick={() => setOpen(o => !o)} style={{
        background: open ? 'var(--copper-hot)' : 'rgba(20, 22, 30, 0.92)',
        color: open ? 'var(--rich-black)' : 'var(--white)',
        border: '1px solid ' + (open ? 'var(--copper-hot)' : 'var(--surface-border-strong)'),
        borderRadius: 999, padding: '12px 18px',
        display: 'flex', alignItems: 'center', gap: 10,
        ...eZh, fontSize: 13, fontWeight: 500, cursor: 'pointer',
        backdropFilter: 'blur(18px) saturate(140%)',
        WebkitBackdropFilter: 'blur(18px) saturate(140%)',
        boxShadow: open ? '0 8px 32px var(--glow-copper-high)' : '0 8px 24px rgba(0,0,0,0.4)',
        transition: 'all .25s ease',
      }}>
        <span style={{
          width: 8, height: 8, borderRadius: '50%',
          background: open ? 'var(--rich-black)' : 'var(--copper-hot)',
          boxShadow: open ? 'none' : '0 0 8px var(--copper-hot)',
        }} />
        微信 · WeChat
      </button>
    </div>
  );
}

// ─────────────────────────────────────────────────────────────
// App
// ─────────────────────────────────────────────────────────────
function App() {
  const [t, setTweak] = useTweaks(C_TWEAKS);
  return (
    <div data-density={t.density} style={{ fontFamily: 'var(--font-zh)' }}>
      <CNav />
      <CHero t={t} />
      <CBleeding t={t} />
      <CTriage />
      <CProof />
      <CDifference />
      <CCTA />
      <CFooter t={t} />
      <CWeChatPill />

      <TweaksPanel>
        <TweakSection label="Pulse" />
        <TweakToggle label="Bleeding pulse animation"
          value={t.showBleedingPulse}
          onChange={(v) => setTweak('showBleedingPulse', v)} />
        <TweakSection label="Localization" />
        <TweakToggle label="Show Chinese signals"
          value={t.showChineseSignals}
          onChange={(v) => setTweak('showChineseSignals', v)} />
        <TweakSection label="Density" />
        <TweakRadio label="Section rhythm"
          value={t.density}
          options={['compact', 'standard', 'spacious']}
          onChange={(v) => setTweak('density', v)} />
      </TweaksPanel>
    </div>
  );
}

ReactDOM.createRoot(document.getElementById('root')).render(<App />);
