// components.jsx — shared UI primitives + nav/footer

const { useState, useEffect, useRef, useMemo } = React;

// brand wordmark — pain_point tech with underscore between pain and point
function BrandMark({ size = 18, accent = false }) {
  return (
    <span className="brand-mark" style={{ fontSize: size }}>
      <span>pain</span>
      <span className={accent ? "u accent" : "u"}>_</span>
      <span>point</span>
      <span style={{ marginLeft: '0.35em', color: 'var(--ink-3)', fontFamily: 'var(--font-mono)', fontSize: size * 0.72, letterSpacing: '0.08em' }}>tech</span>
    </span>
  );
}

// arrow icon
function Arrow({ size = 14 }) {
  return (
    <svg className="arrow" width={size} height={size} viewBox="0 0 16 16" fill="none">
      <path d="M3 13L13 3M13 3H5M13 3V11" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  );
}

// small dot for visuals
function Dot({ color = 'var(--accent)' }) {
  return <span className="floating-dot" style={{ background: color }} />;
}

function Lang({ value, onChange }) {
  return (
    <div className="lang">
      <button data-active={value === 'zh'} onClick={() => onChange('zh')}>繁中</button>
      <button data-active={value === 'en'} onClick={() => onChange('en')}>EN</button>
    </div>
  );
}

function Nav({ route, lang, onNav, onLangChange, t }) {
  const links = [
    { id: 'home', label: t.nav.home, href: '#/' },
    { id: 'services', label: t.nav.services, href: '#services' },
    { id: 'industries', label: t.nav.industries, href: '#industries' },
    { id: 'cases', label: t.nav.cases, href: '#cases' },
  ];
  return (
    <nav className="nav">
      <div className="wrap nav-inner">
        <a href="#/" onClick={(e) => { e.preventDefault(); onNav('home'); }}>
          <BrandMark size={18} accent />
        </a>
        <div className="nav-links">
          {links.map(l => (
            <a key={l.id} href={l.href}
               className={route === l.id ? 'active' : ''}
               onClick={(e) => {
                 if (l.id === 'home') { e.preventDefault(); onNav('home'); }
                 // others scroll within home
                 if (route !== 'home' && l.id !== 'home') {
                   e.preventDefault();
                   onNav('home');
                   setTimeout(() => {
                     const el = document.getElementById(l.id);
                     if (el) window.scrollTo({ top: el.offsetTop - 80, behavior: 'smooth' });
                   }, 60);
                 } else if (l.id !== 'home') {
                   e.preventDefault();
                   const el = document.getElementById(l.id);
                   if (el) window.scrollTo({ top: el.offsetTop - 80, behavior: 'smooth' });
                 }
               }}>
              {l.label}
            </a>
          ))}
        </div>
        <div style={{ display: 'flex', gap: 12, alignItems: 'center' }}>
          <Lang value={lang} onChange={onLangChange} />
          <a className="nav-cta" href="#/contact" onClick={(e) => { e.preventDefault(); onNav('contact'); }}>
            {t.nav.contact}
            <Arrow size={12} />
          </a>
        </div>
      </div>
    </nav>
  );
}

function Footer({ onNav, lang, t }) {
  return (
    <footer className="foot">
      <div className="wrap">
        <div className="foot-grid">
          <div>
            <BrandMark size={20} accent />
            <p style={{ color: 'var(--ink-3)', fontSize: 13, marginTop: 16, maxWidth: '34ch', lineHeight: 1.6 }}>
              {t.footer.tagline}
            </p>
            <div style={{ marginTop: 24, fontFamily: 'var(--font-mono)', fontSize: 11, color: 'var(--ink-3)', letterSpacing: '0.12em' }}>
              EST. 2026 · TAIPEI
            </div>
          </div>
          <div>
            <h5>{t.footer.product}</h5>
            <ul>
              <li><a href="#services">{t.nav.services}</a></li>
              <li><a href="#modules">{t.footer.modules}</a></li>
              <li><a href="#industries">{t.nav.industries}</a></li>
              <li><a href="#process">{t.footer.process}</a></li>
            </ul>
          </div>
          <div>
            <h5>{t.footer.company}</h5>
            <ul>
              <li><a href="#cases">{t.nav.cases}</a></li>
              <li><a href="#" onClick={(e) => { e.preventDefault(); onNav('contact'); }}>{t.nav.contact}</a></li>
            </ul>
          </div>
          <div>
            <h5>{t.footer.contact}</h5>
            <ul>
              <li><a href="mailto:alexma@painpoint-ai.com">alexma@painpoint-ai.com</a></li>
              <li><a href="tel:+886973773379">+886 973 773 379</a></li>
              <li><a href="https://www.painpoint-ai.com">www.painpoint-ai.com</a></li>
            </ul>
          </div>
        </div>
        <div className="foot-bottom">
          <span>© 2026 痛點科技股份有限公司 · pain_point tech co., ltd.</span>
          <span className="mono">AI MANAGED OPERATIONS · v1.0</span>
        </div>
      </div>
    </footer>
  );
}

// translation strings
const TRANSLATIONS = {
  zh: {
    nav: { home: '首頁', services: '服務', industries: '產業', cases: '案例', blog: '部落格', contact: '聯絡我們' },
    hero: {
      kicker: '結果導向 · OUTCOME-DRIVEN',
      title1: '我們派遣 ',
      title2: 'AI Agent',
      title3: '，',
      title4: '按結果收費。',
      lede: '從部署到維運一手包辦。我們將 AI Agent 部門派駐到你的公司，讓它真的幫你賺錢、省力、做得更好。沒有開發費，沒有黑盒子 — 看得到結果，才付錢。',
      ctaPrimary: '預約合作評估',
      ctaSecondary: '查看服務模式',
      meta: [
        { k: '合作模式', v: '成果分潤 / 月費' },
        { k: '導入時間', v: '2 – 6 週' },
        { k: '主要產業', v: 'C 端服務業' },
        { k: '據點', v: '台北 · 線上服務全台' },
      ],
      marquee: ['旅遊業 TRAVEL', '旅宿業 HOSPITALITY', '線上課程 EDUCATION', '身心靈 WELLNESS', '水電裝修 HOME SERVICES', '牙醫診所 DENTAL', '美容 BEAUTY', '健身 FITNESS'],
    },
    why: {
      eyebrow: '為什麼是我們',
      title: '不是賣 AI 給你 — 是把整個 AI 部門派駐進你的公司。',
      lede: '坊間多數 AI 顧問會收一筆開發費、丟一個工具給你，然後祝你好運。我們相反：我們不收開發費，我們派一整組 AI Agent 進駐你的營運，按結果收錢。',
      points: [
        { n: '01', h: '不收開發費', b: '我們把開發成本內化，從產出的結果分潤。前期不需要為了 AI 大筆投入，就能讓部門開始運作。' },
        { n: '02', h: '一手包辦部署到維運', b: '不只交付，而是長期駐點。每月優化、迭代、汰換，AI Agent 會跟著你的業務成長。' },
        { n: '03', h: 'C 端產業最熟', b: '旅宿、課程、身心靈、水電、牙醫… 我們專做需要面對大量散客的傳統產業。' },
      ],
    },
    services: {
      eyebrow: '服務模式',
      title: '兩種合作方式，依你的痛點選擇。',
      lede: '不確定哪一種適合？我們會在初次討論後，免費提供「AI 適用性評估報告」，幫你判斷投入點。',
      cards: [
        {
          num: '/01',
          pill: '成果分潤',
          title: 'AI 共利計畫',
          subtitle: 'Managed AI Department',
          body: '我們把 AI Agent 整合進你的商業模式，做全面 AI 轉型 — 不只是工具導入，而是派一整個 AI 部門進駐你的公司，協助銷售、行銷、營運。我們不收開發費，從產出的結果分潤。需通過我們的審核（確認業務體質適合深度合作）。',
          features: [
            ['全套 AI 部門進駐', 'TEAM'],
            ['整合進商業模式', 'INTEGRATED'],
            ['需通過審核', 'QUALIFIED'],
            ['不收開發費，按成果分潤', 'NO UPFRONT'],
          ],
          cta: '了解合作模式',
        },
        {
          num: '/02',
          pill: '開發費 + 月費',
          title: '獨立 Agent 模組導入',
          subtitle: 'Standalone Agent',
          body: '針對單一痛點，導入客製化 AI Agent 到你的內部流程 — 客服、訂單、內容生產等。因為是客製化需求，會收一次性開發費 + 月費維運。費用依 Agent 複雜度決定。',
          features: [
            ['客製化 Agent 部署', 'CUSTOM'],
            ['一次性開發費', 'BUILD FEE'],
            ['月費維運', 'MONTHLY OPS'],
            ['依複雜度計費', 'TIERED'],
          ],
          cta: '查看 Agent 目錄',
        },
      ],
    },
    industries: {
      eyebrow: '我們服務的產業',
      title: '專做需要消化大量 C 端客戶的產業。',
      lede: '如果你的業務每天要回幾百個客人問題、行銷漏斗很長、或是團隊小但案量大 — 那我們就是為你而生的。',
      groups: [
        {
          tag: '現有合作',
          en: 'CURRENT PARTNERS',
          list: [
            { num: '01', name: '旅宿業', en: 'HOSPITALITY', pain: '訂房、入住、跨房型管理，與大量散客回覆' },
            { num: '02', name: '線上課程', en: 'ONLINE COURSES', pain: '行銷漏斗長、需大量內容、舊生再行銷複雜' },
            { num: '03', name: '豪華露營', en: 'GLAMPING', pain: '客製化詢問、預訂管理、季節性流量波動' },
            { num: '04', name: '露營業', en: 'CAMPING', pain: '營位查詢、設備租借、群客團體預訂' },
            { num: '05', name: '仲介業', en: 'BROKERAGE', pain: '客戶配對、物件追蹤、跨平台帶看與成交記錄' },
          ],
        },
        {
          tag: '正在尋找',
          en: 'OPEN TO PARTNER',
          list: [
            { num: '06', name: '旅遊業', en: 'TRAVEL', pain: '行程客製化諮詢、跨平台訂單、客服回覆量爆炸' },
            { num: '07', name: '身心靈產業', en: 'WELLNESS', pain: '預約、後續關懷、社群互動需要長期經營' },
            { num: '08', name: '水電裝修', en: 'HOME SERVICES', pain: '報價、派工、客戶詢問散落在各通訊軟體' },
            { num: '09', name: '牙醫診所', en: 'DENTAL', pain: '預約轉介、回診提醒、衛教內容生產' },
            { num: '10', name: '風水產業', en: 'FENG SHUI', pain: '客戶諮詢、命盤排程、線上化教學與會員經營' },
            { num: '11', name: '鎖匠產業', en: 'LOCKSMITH', pain: '緊急派工、區域調度、客戶詢問跨平台分散' },
          ],
        },
      ],
    },
    modules: {
      eyebrow: 'Agent 模組目錄',
      title: '兩大模組，多個 Agent，可組合可客製。',
      lede: '模組通常用於深度合作（成果分潤），可以根據你的需求挑選；也可單獨拆出做獨立 Agent（月費制）。',
      cards: [
        {
          name: '行銷漏斗模組',
          en: 'GROWTH FUNNEL',
          desc: '從觸及到轉換的全套獲客 Agent。負責內容生產、廣告投放、社群經營到第一線客服回覆。',
          purpose: '獲客 ACQUISITION',
          agents: ['內容生產 Agent', '廣告投放 Agent', '社群經營 Agent', 'AI 客服 Agent', 'SEO 內容 Agent', 'EDM 自動化 Agent'],
        },
        {
          name: '營運效率模組',
          en: 'OPERATIONS',
          desc: '提升內部營運效率的 Agent 群。從訂單到財報，幫你把後台變得更輕。',
          purpose: '效率 EFFICIENCY',
          agents: ['訂單管理 Agent', '營運分析 Agent', '產品管理 Agent', '成本分析 Agent', '營運財報 Agent', '客戶 CRM Agent'],
        },
      ],
      custom: '需要客製化 Agent？我們也接 — 從需求拆解到部署，整套服務（月費起）。',
    },
    process: {
      eyebrow: '合作流程',
      title: '從第一次聊天到 AI 部門進駐，最短 2 週。',
      steps: [
        { n: '01', t: '需求討論', b: '初次聊天，了解你的業務、現有流程、想解決什麼。免費。' },
        { n: '02', t: 'AI 適用性評估', b: '我們提出書面報告，分析 AI Agent 對你的業務適不適合、能在哪些環節創造效益。' },
        { n: '03', t: '提案與合作模式', b: '依評估結果，提出 AI 共利計畫（分潤）或獨立 Agent（開發費 + 月費）方案，雙方確認合作模式。' },
        { n: '04', t: 'AI 部門進駐', b: '部署 Agent 團隊到你的工作流程中，每月迭代、按成果結算。' },
      ],
    },
    cases: {
      eyebrow: '案例',
      title: '結果，是我們的履歷。',
      list: [
        {
          num: '/CS-01',
          industry: '旅宿業 · 連鎖品牌',
          quote: '一個行銷人員，搭配我們的 AI 團隊，管理五間旅館，一年消化十萬名客戶、合作一千兩百位網紅。',
          stats: [
            { num: '1人', label: '行銷人力' },
            { num: '5間', label: '旅館同時管理' },
            { num: '100K+', label: '年度客戶量' },
          ],
        },
        {
          num: '/CS-02',
          industry: '線上課程 · 房地產',
          quote: '原本需要五個員工跑 LODO 行銷漏斗，導入 AI 後縮減到一人，當年純粹 AI 漏斗收入做到 1,200 萬。',
          stats: [
            { num: '5→1', label: '員工縮減' },
            { num: 'NT$12M', label: 'AI 漏斗年營收' },
            { num: '0', label: '開發費' },
          ],
        },
        {
          num: '/CS-03',
          industry: '旅宿業 · 單館',
          quote: '行銷、客服、櫃台、行政整組從 12 人精簡到 3 人。每月 800 位客戶照常接，月營收 NT$3M，毛利優化到極致。',
          stats: [
            { num: '12→3', label: '團隊縮編' },
            { num: '800/月', label: '入住客戶' },
            { num: 'NT$3M', label: '月營收' },
          ],
        },
      ],
      moreCta: '查看更多案例',
    },
    cta: {
      kicker: '下一步',
      title: ['如果你的痛點需要', '一整個 AI 部門', '來解決 — 我們在這裡。'],
      lede: '初次討論免費。我們會用一份「AI 適用性評估報告」告訴你，這件事到底值不值得做。',
      btnPrimary: '預約免費評估',
      btnSecondary: 'alexma@painpoint-ai.com',
    },
    footer: {
      tagline: '結果導向的 AI Agent，從部署到維運一手包辦。Outcome-driven AI agents, operated end-to-end.',
      product: '服務',
      modules: 'Agent 模組',
      process: '合作流程',
      company: '公司',
      contact: '聯絡',
    },
    contact: {
      eyebrow: '聯絡我們',
      title: '把痛點告訴我們。',
      lede: '填好表單，我們會在 1 個工作天內回覆。或直接寫信給 Alex：alexma@painpoint-ai.com',
      sideTitle: '我們會做這些',
      sideList: [
        { n: '01', t: '24 小時內初次回覆', b: '通常更快。我們是小團隊，不轉介、不外包。' },
        { n: '02', t: '一次 30 分鐘的需求討論', b: '線上會議。先聊清楚你想解決什麼。' },
        { n: '03', t: '免費 AI 適用性評估報告', b: '討論後 5 個工作天內，我們會寫一份書面分析給你。' },
        { n: '04', t: '不適合就不做', b: '評估結果不適合，我們會直說，不收費。誘因對齊，誰都不浪費時間。' },
      ],
      form: {
        name: '姓名', namePh: '王小明',
        company: '公司', companyPh: '公司或品牌名稱',
        email: 'Email', emailPh: 'you@company.com',
        phone: '電話', phonePh: '+886 9XX XXX XXX',
        industry: '產業類型',
        size: '公司規模',
        sizes: ['1–5 人', '6–20 人', '21–50 人', '51–200 人', '200+'],
        service: '想諮詢的服務',
        services: ['AI 共利計畫（成果分潤）', '獨立 Agent 導入（開發費 + 月費）', '都想了解'],
        pain: '目前痛點 / 想用 AI 解決什麼',
        painPh: '例如：客服訊息回不完、行銷內容產不出來、訂單跨平台難管理…',
        consent: '我同意痛點科技為了回覆此諮詢使用上述資料，並同意收到後續相關訊息。',
        submit: '送出諮詢',
      },
      submitted: {
        title: '收到了，謝謝。',
        body: '我們會在 1 個工作天內回信。如果是急件，可以直接寄信給 Alex：alexma@painpoint-ai.com',
        back: '回首頁',
      },
    },
  },
  en: {
    nav: { home: 'Home', services: 'Services', industries: 'Industries', cases: 'Cases', blog: 'Blog', contact: 'Contact' },
    hero: {
      kicker: 'OUTCOME-DRIVEN',
      title1: 'We deploy ',
      title2: 'AI Agents',
      title3: '. ',
      title4: 'You pay for results.',
      lede: "From deployment to operations, end-to-end. We embed an entire AI agent department inside your company so it actually drives revenue and saves time. No dev fees. No black box. You only pay when it works.",
      ctaPrimary: 'Book a fit assessment',
      ctaSecondary: 'See service models',
      meta: [
        { k: 'Engagement', v: 'Revenue share / monthly' },
        { k: 'Time to deploy', v: '2 – 6 weeks' },
        { k: 'Industries', v: 'B2C services' },
        { k: 'Based in', v: 'Taipei · Remote across TW' },
      ],
      marquee: ['TRAVEL', 'HOSPITALITY', 'EDUCATION', 'WELLNESS', 'HOME SERVICES', 'DENTAL', 'BEAUTY', 'FITNESS'],
    },
    why: {
      eyebrow: 'Why us',
      title: "We don't sell you AI — we embed an AI department inside your company.",
      lede: "Most AI consultants charge a build fee, hand you a tool, and wish you luck. We do the opposite: no dev fees, just an AI agent team operating inside your business with revenue share.",
      points: [
        { n: '01', h: 'No development fee', b: 'We absorb the build cost and share in the results. No big upfront commitment to get a department running.' },
        { n: '02', h: 'Deployment to operations', b: "We don't drop and run. Monthly iteration, optimization, swap-out — agents grow with your business." },
        { n: '03', h: 'B2C native', b: 'Hospitality, courses, wellness, home services, dental — we specialize in industries that face large customer volumes.' },
      ],
    },
    services: {
      eyebrow: 'Service models',
      title: 'Two ways to engage. Pick by pain.',
      lede: "Not sure which fits? After a first call, we deliver a free written 'AI Fit Assessment' to help you decide.",
      cards: [
        {
          num: '/01',
          pill: 'Revenue share',
          title: 'AI Co-Profit Plan',
          subtitle: 'Managed AI Department',
          body: 'We integrate AI agents into your business model for full AI transformation — not just tool deployment, but an entire AI department embedded across sales, marketing, and ops. No dev fee, revenue share. Subject to our review (we confirm the business is a fit for deep partnership).',
          features: [
            ['Full AI department embed', 'TEAM'],
            ['Integrated into business model', 'INTEGRATED'],
            ['Subject to review', 'QUALIFIED'],
            ['No upfront — revenue share', 'NO UPFRONT'],
          ],
          cta: 'See the model',
        },
        {
          num: '/02',
          pill: 'Build fee + monthly',
          title: 'Standalone Agent Module',
          subtitle: 'Custom drop-in agent',
          body: "For a single pain point, we deploy a custom AI agent into your workflow — support, orders, content. Because it's bespoke, we charge a one-time build fee plus monthly ops. Pricing scales with agent complexity.",
          features: [
            ['Custom agent deployment', 'CUSTOM'],
            ['One-time build fee', 'BUILD FEE'],
            ['Monthly ops', 'MONTHLY OPS'],
            ['Priced by complexity', 'TIERED'],
          ],
          cta: 'See the agent catalog',
        },
      ],
    },
    industries: {
      eyebrow: 'Industries we serve',
      title: 'Built for businesses that move serious customer volume.',
      lede: "If you answer hundreds of inquiries a day, your funnel is long, or your team is small but the workload isn't — we're for you.",
      groups: [
        {
          tag: 'Current partners',
          en: 'WORKING WITH',
          list: [
            { num: '01', name: 'Hospitality', en: 'HOSPITALITY', pain: 'Reservations, check-in, multi-room ops, guest replies at scale' },
            { num: '02', name: 'Online courses', en: 'ONLINE COURSES', pain: 'Long funnel, hungry for content, complex re-targeting of past students' },
            { num: '03', name: 'Glamping', en: 'GLAMPING', pain: 'Custom inquiries, booking ops, seasonal demand swings' },
            { num: '04', name: 'Camping', en: 'CAMPING', pain: 'Site availability, gear rentals, group reservations' },
            { num: '05', name: 'Brokerage', en: 'BROKERAGE', pain: 'Client matching, listing tracking, cross-platform showing & deal records' },
          ],
        },
        {
          tag: 'Open to partner',
          en: 'LOOKING FOR',
          list: [
            { num: '06', name: 'Travel', en: 'TRAVEL', pain: 'Custom itineraries, multi-platform bookings, support overflow' },
            { num: '07', name: 'Wellness', en: 'WELLNESS', pain: 'Bookings, follow-up care, ongoing community engagement' },
            { num: '08', name: 'Home services', en: 'HOME SERVICES', pain: 'Quotes, dispatching, inquiries scattered across messaging apps' },
            { num: '09', name: 'Dental', en: 'DENTAL', pain: 'Referrals, recall reminders, patient education content' },
            { num: '10', name: 'Feng shui', en: 'FENG SHUI', pain: 'Consultations, chart scheduling, digital teaching, member retention' },
            { num: '11', name: 'Locksmith', en: 'LOCKSMITH', pain: 'Emergency dispatch, area routing, multi-platform inquiry overflow' },
          ],
        },
      ],
    },
    modules: {
      eyebrow: 'Agent modules',
      title: 'Two modules. Many agents. Composable or custom.',
      lede: "Modules are typically used in deep engagements (revenue-share), composed to your needs. Or pull a single agent out as a standalone (monthly).",
      cards: [
        {
          name: 'Growth Funnel Module',
          en: 'GROWTH FUNNEL',
          desc: 'Top-to-bottom acquisition agents. Content production, ad ops, social, and front-line support replies.',
          purpose: 'ACQUISITION',
          agents: ['Content Agent', 'Ad Ops Agent', 'Social Agent', 'AI Support', 'SEO Agent', 'Email Agent'],
        },
        {
          name: 'Operations Module',
          en: 'OPERATIONS',
          desc: 'Efficiency agents for the back office. From orders to financial reporting — make your back end leaner.',
          purpose: 'EFFICIENCY',
          agents: ['Order Agent', 'Analytics Agent', 'Product Agent', 'Cost Agent', 'Reporting Agent', 'CRM Agent'],
        },
      ],
      custom: 'Need a custom agent? We build them too — from spec to deploy, full service (monthly basis).',
    },
    process: {
      eyebrow: 'How we work',
      title: 'From first chat to embed, as fast as 2 weeks.',
      steps: [
        { n: '01', t: 'Discovery', b: "First call. We learn your business, current flow, and what you want to solve. Free." },
        { n: '02', t: 'AI Fit Assessment', b: 'We deliver a written report on whether AI agents fit your operation, and where they create the most value.' },
        { n: '03', t: 'Proposal', b: "Based on findings, we propose either AI Co-Profit Plan (rev share) or standalone agent (build fee + monthly). Both sides confirm." },
        { n: '04', t: 'Embed', b: "We deploy the agent team into your workflow. Monthly iteration. Outcome-based settlement." },
      ],
    },
    cases: {
      eyebrow: 'Case studies',
      title: 'Results are our résumé.',
      list: [
        {
          num: '/CS-01',
          industry: 'Hospitality · Boutique chain',
          quote: 'One marketer plus our AI team — running five hotels, processing 100K+ guests a year, working with 1,200 influencers.',
          stats: [
            { num: '1', label: 'Marketer' },
            { num: '5', label: 'Hotels managed' },
            { num: '100K+', label: 'Annual guests' },
          ],
        },
        {
          num: '/CS-02',
          industry: 'Online Course · Real estate',
          quote: "A LODO funnel that previously took five staff now runs with one. AI funnel revenue alone hit NT$12M for the year.",
          stats: [
            { num: '5→1', label: 'Headcount' },
            { num: 'NT$12M', label: 'AI funnel revenue' },
            { num: '0', label: 'Dev fees' },
          ],
        },
        {
          num: '/CS-03',
          industry: 'Hospitality · Single property',
          quote: 'Marketing, support, front desk, ops — all of it went from 12 people to 3. Still 800 guests a month, NT$3M revenue, margins maxed.',
          stats: [
            { num: '12→3', label: 'Team size' },
            { num: '800/mo', label: 'Guests served' },
            { num: 'NT$3M', label: 'Monthly revenue' },
          ],
        },
      ],
      moreCta: 'See more cases',
    },
    cta: {
      kicker: 'Next step',
      title: ['If your pain point needs ', 'an entire AI department', ' — we are here.'],
      lede: "First call is free. We'll deliver an 'AI Fit Assessment' that tells you, plainly, whether this is worth doing.",
      btnPrimary: 'Book a free assessment',
      btnSecondary: 'alexma@painpoint-ai.com',
    },
    footer: {
      tagline: 'Outcome-driven AI agents, operated end-to-end.',
      product: 'Services',
      modules: 'Agent modules',
      process: 'How we work',
      company: 'Company',
      contact: 'Contact',
    },
    contact: {
      eyebrow: 'Contact',
      title: 'Tell us your pain point.',
      lede: "Fill the form, we'll reply within one business day. Or write Alex directly: alexma@painpoint-ai.com",
      sideTitle: "What we'll do",
      sideList: [
        { n: '01', t: 'First reply within 24h', b: "Usually faster. Small team — no handoffs, no outsourcing." },
        { n: '02', t: '30-min discovery call', b: 'Online. Get the lay of the land on what you want to solve.' },
        { n: '03', t: 'Free AI Fit Assessment', b: 'Within 5 business days of the call, you get a written analysis.' },
        { n: '04', t: 'No-fit, no engagement', b: "If it doesn't fit, we say so. Aligned incentives — no time wasted on either side." },
      ],
      form: {
        name: 'Name', namePh: 'Jane Doe',
        company: 'Company', companyPh: 'Company or brand name',
        email: 'Email', emailPh: 'you@company.com',
        phone: 'Phone', phonePh: '+886 9XX XXX XXX',
        industry: 'Industry',
        size: 'Company size',
        sizes: ['1–5', '6–20', '21–50', '51–200', '200+'],
        service: 'Service interested in',
        services: ['AI Co-Profit Plan (revenue share)', 'Standalone Agent (build fee + monthly)', 'Tell me both'],
        pain: 'Current pain point / what to solve with AI',
        painPh: "e.g. support inbox is overflowing, can't produce enough content, multi-platform orders are messy…",
        consent: 'I agree pain_point tech may use this info to respond to my inquiry and follow up.',
        submit: 'Send inquiry',
      },
      submitted: {
        title: 'Got it. Thanks.',
        body: "We'll reply within one business day. If urgent, write Alex directly: alexma@painpoint-ai.com",
        back: 'Back to home',
      },
    },
  },
};

Object.assign(window, { BrandMark, Arrow, Dot, Lang, Nav, Footer, TRANSLATIONS });
