{"product_id":"engwe-ep-2-pro","title":"ENGWE EP-2 Pro 20*4.0 Fat Tires Electric Bike","description":"\u003ch2\u003e\u003cb\u003eWhy Buy From Ecocycle Hub?\u003c\/b\u003e\u003c\/h2\u003e\n\u003cp\u003e\u003cb\u003e   Official Authorized Dealer:\u003cspan\u003e \u003c\/span\u003e\u003c\/b\u003eAll e-bikes come with a genuine manufacturer's warranty.\u003cb\u003e\u003cbr\u003e\u003c\/b\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003e   Bike-to-Work Approved:\u003c\/b\u003e\u003cspan\u003e \u003c\/span\u003eSave up to 52% through tax savings! We handle the paperwork and issue your HR-ready invoice within 24 hours.\u003c\/p\u003e\n\u003cp\u003e  🎁\u003cspan\u003e \u003c\/span\u003e\u003cb\u003eExclusive Offer:\u003c\/b\u003e\u003cspan\u003e \u003c\/span\u003eBuy 2 e-bikes today and get professional assembly \u0026amp; home delivery completely\u003cspan\u003e \u003c\/span\u003e\u003cb\u003eFREE\u003c\/b\u003e\u003cspan\u003e \u003c\/span\u003e(saving you €180)!\u003c\/p\u003e\n\u003cp\u003e   🇮🇪\u003cspan\u003e \u003c\/span\u003e\u003cb\u003eLocal Support:\u003c\/b\u003e\u003cspan\u003e \u003c\/span\u003eDedicated Ireland-based customer care and remote after-sales support.\u003c\/p\u003e\n\u003chr\u003e\n\u003ch2\u003e\u003cspan\u003eENGWE EP-2 Pro: 250W Foldable 20×4.0\" Fat Tyres E-Bike \u003c\/span\u003e\u003c\/h2\u003e\n\u003cp\u003eENGWE EP-2 Pro – a foldable fat-tyre e-bike with 120 km range, Boost Mode, torque sensor, SHIMANO 7-speed gearing, and 180mm hydraulic disc brakes. Conquer any terrain, fold it and go.\n  \u003cstyle\u003e\n  \/* ===== 弹窗按钮 ===== *\/\n  .spec-btn, .size-btn, .btw-btn {\n    background: #1a1a2e;\n    color: #fff;\n    border: none;\n    padding: 12px 28px;\n    font-size: 16px;\n    font-weight: 600;\n    border-radius: 40px;\n    cursor: pointer;\n    transition: 0.3s;\n    box-shadow: 0 4px 14px rgba(0,0,0,0.15);\n    display: inline-block;\n    margin: 6px 6px;\n    letter-spacing: 0.5px;\n  }\n  .spec-btn:hover, .size-btn:hover, .btw-btn:hover {\n    background: #16213e;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 24px rgba(0,0,0,0.25);\n  }\n  \/* Bike to Work 按钮单独配色 *\/\n  .btw-btn {\n    background: #2e7d32;\n  }\n  .btw-btn:hover {\n    background: #1b5e20;\n  }\n\n  \/* ===== 弹窗遮罩 ===== *\/\n  .spec-modal, .size-modal, .btw-modal {\n    display: none;\n    position: fixed;\n    z-index: 99999;\n    left: 0;\n    top: 0;\n    width: 100%;\n    height: 100%;\n    background-color: rgba(0,0,0,0.65);\n    backdrop-filter: blur(4px);\n    justify-content: center;\n    align-items: center;\n    animation: fadeIn 0.25s ease;\n  }\n  .spec-modal.show, .size-modal.show, .btw-modal.show {\n    display: flex;\n  }\n\n  \/* ===== 弹窗卡片 ===== *\/\n  .spec-modal-content, .size-modal-content, .btw-modal-content {\n    background: #ffffff;\n    width: 92%;\n    max-width: 820px;\n    max-height: 88vh;\n    border-radius: 20px;\n    padding: 28px 32px 24px;\n    overflow-y: auto;\n    position: relative;\n    box-shadow: 0 30px 60px rgba(0,0,0,0.4);\n    animation: slideUp 0.3s ease;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n  }\n\n  \/* ===== 关闭按钮 ===== *\/\n  .spec-close, .size-close, .btw-close {\n    position: sticky;\n    top: 0;\n    float: right;\n    font-size: 28px;\n    font-weight: 300;\n    color: #888;\n    cursor: pointer;\n    background: none;\n    border: none;\n    padding: 0 6px;\n    transition: 0.2s;\n    line-height: 1;\n    margin-top: -4px;\n  }\n  .spec-close:hover, .size-close:hover, .btw-close:hover {\n    color: #000;\n    transform: rotate(90deg);\n  }\n\n  \/* ===== 弹窗标题 ===== *\/\n  .spec-modal-content h2, .size-modal-content h2, .btw-modal-content h2 {\n    font-size: 24px;\n    font-weight: 700;\n    color: #1a1a2e;\n    margin: 0 0 4px 0;\n    padding-right: 40px;\n    border-bottom: 3px solid #e8e8e8;\n    padding-bottom: 12px;\n  }\n  .spec-modal-content .sub, .size-modal-content .sub, .btw-modal-content .sub {\n    font-size: 14px;\n    color: #888;\n    margin-top: -6px;\n    margin-bottom: 16px;\n  }\n\n  \/* ===== 规格表格 ===== *\/\n  .spec-table {\n    width: 100%;\n    border-collapse: collapse;\n    font-size: 14px;\n    line-height: 1.6;\n  }\n  .spec-table tr {\n    border-bottom: 1px solid #f0f0f0;\n  }\n  .spec-table tr:last-child {\n    border-bottom: none;\n  }\n  .spec-table td {\n    padding: 7px 6px 7px 0;\n    vertical-align: top;\n  }\n  .spec-table .label {\n    font-weight: 600;\n    color: #1a1a2e;\n    width: 35%;\n  }\n  .spec-table .value {\n    color: #333;\n    width: 65%;\n  }\n  .spec-table .group-row td {\n    padding-top: 14px;\n    padding-bottom: 4px;\n    font-weight: 700;\n    font-size: 15px;\n    color: #e8491d;\n    border-bottom: 2px solid #e8491d;\n  }\n  .spec-table .group-row:first-child td {\n    padding-top: 2px;\n  }\n\n  \/* ===== 尺寸图 \u0026 尺寸表格 ===== *\/\n  .size-modal-content .size-image {\n    width: 100%;\n    max-width: 600px;\n    display: block;\n    margin: 0 auto 16px;\n    border-radius: 8px;\n    background: #f8f8f8;\n    padding: 10px;\n    border: 1px solid #eee;\n    box-sizing: border-box;\n  }\n  .size-images {\n    display: flex;\n    gap: 12px;\n    flex-wrap: wrap;\n    margin: 8px 0 12px;\n  }\n  .size-images img {\n    flex: 1 1 45%;\n    min-width: 160px;\n    border-radius: 8px;\n    background: #f8f8f8;\n    padding: 8px;\n    border: 1px solid #eee;\n    box-sizing: border-box;\n  }\n  @media (max-width: 500px) {\n    .size-images img {\n      flex: 1 1 100%;\n    }\n  }\n  .size-table {\n    width: 100%;\n    border-collapse: collapse;\n    font-size: 14px;\n    line-height: 1.6;\n    margin-top: 6px;\n  }\n  .size-table tr {\n    border-bottom: 1px solid #f0f0f0;\n  }\n  .size-table tr:last-child {\n    border-bottom: none;\n  }\n  .size-table td {\n    padding: 6px 6px 6px 0;\n    vertical-align: top;\n  }\n  .size-table .label {\n    font-weight: 600;\n    color: #1a1a2e;\n    width: 45%;\n  }\n  .size-table .value {\n    color: #333;\n    width: 55%;\n  }\n  .size-table .group-row td {\n    padding-top: 12px;\n    padding-bottom: 4px;\n    font-weight: 700;\n    font-size: 15px;\n    color: #e8491d;\n    border-bottom: 2px solid #e8491d;\n  }\n  .size-table .group-row:first-child td {\n    padding-top: 2px;\n  }\n  .size-table .note-row td {\n    padding-top: 10px;\n    padding-bottom: 6px;\n    font-style: italic;\n    color: #888;\n    font-size: 13px;\n    border-bottom: 2px solid #eee;\n  }\n\n  \/* ===== Bike to Work 弹窗内容 ===== *\/\n  .btw-content {\n    text-align: center;\n    padding: 10px 0;\n  }\n  .btw-content p {\n    font-size: 15px;\n    color: #555;\n    line-height: 1.6;\n    margin-bottom: 18px;\n  }\n  .btw-content .highlight {\n    color: #2e7d32;\n    font-weight: 700;\n  }\n  .btw-content .btn-apply {\n    background: #2e7d32;\n    color: #fff;\n    padding: 14px 40px;\n    border-radius: 40px;\n    text-decoration: none;\n    font-weight: 700;\n    font-size: 18px;\n    display: inline-block;\n    transition: 0.3s;\n    border: none;\n    cursor: pointer;\n  }\n  .btw-content .btn-apply:hover {\n    background: #1b5e20;\n    transform: translateY(-2px);\n    box-shadow: 0 6px 20px rgba(46, 125, 50, 0.3);\n  }\n\n  \/* ===== 分割标题（弹窗内小标题） ===== *\/\n  .section-title {\n    font-size: 18px;\n    font-weight: 700;\n    color: #1a1a2e;\n    margin: 18px 0 6px 0;\n    padding-bottom: 6px;\n    border-bottom: 2px solid #e8491d;\n  }\n\n  \/* ===== 滚动条 ===== *\/\n  .spec-modal-content::-webkit-scrollbar,\n  .size-modal-content::-webkit-scrollbar,\n  .btw-modal-content::-webkit-scrollbar {\n    width: 5px;\n  }\n  .spec-modal-content::-webkit-scrollbar-track,\n  .size-modal-content::-webkit-scrollbar-track,\n  .btw-modal-content::-webkit-scrollbar-track {\n    background: #f1f1f1;\n    border-radius: 10px;\n  }\n  .spec-modal-content::-webkit-scrollbar-thumb,\n  .size-modal-content::-webkit-scrollbar-thumb,\n  .btw-modal-content::-webkit-scrollbar-thumb {\n    background: #ccc;\n    border-radius: 10px;\n  }\n  .spec-modal-content::-webkit-scrollbar-thumb:hover,\n  .size-modal-content::-webkit-scrollbar-thumb:hover,\n  .btw-modal-content::-webkit-scrollbar-thumb:hover {\n    background: #aaa;\n  }\n\n  \/* ===== 动画 ===== *\/\n  @keyframes fadeIn {\n    from { opacity: 0; }\n    to { opacity: 1; }\n  }\n  @keyframes slideUp {\n    from { transform: translateY(30px); opacity: 0; }\n    to { transform: translateY(0); opacity: 1; }\n  }\n\n  \/* ===== 移动端 ===== *\/\n  @media (max-width: 600px) {\n    .spec-modal-content, .size-modal-content, .btw-modal-content {\n      padding: 18px 14px 16px;\n      width: 96%;\n      max-height: 92vh;\n    }\n    .spec-modal-content h2, .size-modal-content h2, .btw-modal-content h2 {\n      font-size: 19px;\n      padding-bottom: 8px;\n    }\n    .spec-table td, .size-table td {\n      padding: 5px 3px 5px 0;\n      font-size: 13px;\n    }\n    .spec-btn, .size-btn, .btw-btn {\n      padding: 10px 20px;\n      font-size: 14px;\n      width: 88%;\n      text-align: center;\n    }\n    .size-modal-content .size-image,\n    .size-images img {\n      padding: 6px;\n    }\n    .btw-content .btn-apply {\n      padding: 12px 28px;\n      font-size: 16px;\n      width: 100%;\n      box-sizing: border-box;\n    }\n  }\n\u003c\/style\u003e\n\n\u003c!-- ============================================================ --\u003e\n\u003c!-- 按钮区域（三个按钮并排）                                     --\u003e\n\u003c!-- ============================================================ --\u003e\n\n\u003c\/p\u003e\u003cdiv style=\"text-align: center; margin: 10px 0 4px;\"\u003e\n  \u003cbutton class=\"spec-btn\" onclick=\"openSpec()\"\u003e📋 Specifications\u003c\/button\u003e\n  \u003cbutton class=\"size-btn\" onclick=\"openSize()\"\u003e📦 Box \u0026amp; Size\u003c\/button\u003e\n  \u003cbutton class=\"btw-btn\" onclick=\"openBtw()\"\u003e🚲 Bike to Work\u003c\/button\u003e\n\u003c\/div\u003e\n\n\u003c!-- ============================================================ --\u003e\n\u003c!-- 弹窗一：Specifications                                       --\u003e\n\u003c!-- ============================================================ --\u003e\n\n\u003cdiv id=\"specModal\" class=\"spec-modal\" onclick=\"closeSpecOutside(event)\"\u003e\n  \u003cdiv class=\"spec-modal-content\"\u003e\n    \u003cbutton class=\"spec-close\" onclick=\"closeSpec()\"\u003e✕\u003c\/button\u003e\n    \u003ch2\u003eSpecifications\u003c\/h2\u003e\n    \u003cdiv class=\"sub\"\u003eEngwe EP-2 Pro — Full Technical Details\u003c\/div\u003e\n\n    \u003ctable class=\"spec-table\"\u003e\n      \u003ctbody\u003e\n        \u003c!-- POWER \u0026 PERFORMANCE --\u003e\n        \u003ctr class=\"group-row\"\u003e\u003ctd colspan=\"2\"\u003e⚡ POWER \u0026amp; PERFORMANCE\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eMotor\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e250W Brushless Motor\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eMax Torque\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e55 Nm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eSpeed\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e25 km\/h\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eBattery\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e48V 13Ah Removable Internal Lithium-ion ×1\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eRange\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e40 km (Electric Mode)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eCharging Time\u003c\/td\u003e\n\u003ctd class=\"value\"\u003eAbout 6.5 hours\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eMaximum Climbing Degree\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e10°\u003c\/td\u003e\n\u003c\/tr\u003e\n\n        \u003c!-- FRAMESET \u0026 COMPONENTS --\u003e\n        \u003ctr class=\"group-row\"\u003e\u003ctd colspan=\"2\"\u003e🚲 FRAMESET \u0026amp; COMPONENTS\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eBrake\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e160mm Front \u0026amp; Rear Disc Mechanical Brake\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eTires\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e20\" × 4.0\" Fat Tires\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eTransmission System\u003c\/td\u003e\n\u003ctd class=\"value\"\u003eSHIMANO 7 Gears\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eDisplay\u003c\/td\u003e\n\u003ctd class=\"value\"\u003eLCD Display\u003c\/td\u003e\n\u003c\/tr\u003e\n\n        \u003c!-- WEIGHT --\u003e\n        \u003ctr class=\"group-row\"\u003e\u003ctd colspan=\"2\"\u003e📦 WEIGHT\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eBike Weight\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e30 kg (66 lbs)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eGross Weight\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e37.8 kg (80.7 lbs)\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n\n    \u003cdiv style=\"margin-top: 14px; font-size: 12px; color: #aaa; text-align: center; border-top: 1px solid #eee; padding-top: 12px;\"\u003e\n      Specifications subject to change without prior notice.\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- ============================================================ --\u003e\n\u003c!-- 弹窗二：Box \u0026 Size（含展开 + 折叠两张尺寸图）               --\u003e\n\u003c!-- ============================================================ --\u003e\n\n\u003cdiv id=\"sizeModal\" class=\"size-modal\" onclick=\"closeSizeOutside(event)\"\u003e\n  \u003cdiv class=\"size-modal-content\"\u003e\n    \u003cbutton class=\"size-close\" onclick=\"closeSize()\"\u003e✕\u003c\/button\u003e\n    \u003ch2\u003eBox \u0026amp; Size\u003c\/h2\u003e\n    \u003cdiv class=\"sub\"\u003eEngwe EP-2 Pro — What's Inside \u0026amp; Frame Dimensions\u003c\/div\u003e\n\n    \u003c!-- ===== GEOMETRY \/ SIZE ===== --\u003e\n    \u003cdiv class=\"section-title\"\u003e📐 Geometry \u0026amp; Size\u003c\/div\u003e\n\n    \u003c!-- 两张尺寸图并排：展开 + 折叠 --\u003e\n    \u003cdiv class=\"size-images\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/EP_2_pro_size_1.png?v=1785916639\" alt=\"Unfolded Dimensions\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/EP_2_pro_size_2.png?v=1785916639\" alt=\"Folded Dimensions\"\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- 尺寸数据表格 --\u003e\n    \u003ctable class=\"size-table\"\u003e\n      \u003ctbody\u003e\n        \u003ctr class=\"note-row\"\u003e\u003ctd colspan=\"2\"\u003eAll measurements provided in cm unless otherwise noted.\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eRider Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e5.4 ft – 6.2 ft\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003ePayload Capacity\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e150 kg (330 lbs)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003ePackage Dimensions (L×W×H)\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e144 × 32 × 66 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\n        \u003ctr class=\"group-row\"\u003e\u003ctd colspan=\"2\"\u003e📏 UNFOLDED\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eA – Wheelbase\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e113.5 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eB – Total Length\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e170 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eC – Reach\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e46 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eD – Standover Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e69 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eE – Minimum Saddle Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e86 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eF – Maximum Saddle Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e102 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eG – Minimum Handlebar Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e120 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eH – Maximum Handlebar Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e130 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\n        \u003ctr class=\"group-row\"\u003e\u003ctd colspan=\"2\"\u003e🔲 FOLDED\u003c\/td\u003e\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eFolded Size (L×W×H)\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e99 × 55 × 76 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eA – Height\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e76 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eB – Length\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e99 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eC – Width\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e55 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\n        \u003ctr class=\"note-row\"\u003e\u003ctd colspan=\"2\"\u003e⚠️ There may be a difference of 0–5 cm between measured and actual data.\u003c\/td\u003e\u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n\n    \u003c!-- ===== WHAT'S IN THE BOX ===== --\u003e\n    \u003cdiv class=\"section-title\"\u003e📦 What's in the Box?\u003c\/div\u003e\n\n    \u003ctable class=\"size-table\"\u003e\n      \u003ctbody\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eEP-2 Pro E-bike\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×1\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003e48V 13Ah Removable Internal Lithium-ion Battery\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×1\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eBattery Charger\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×1\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eAssembly Tools\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×1\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003ePedals\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×2\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"label\"\u003eUser Manual\u003c\/td\u003e\n\u003ctd class=\"value\"\u003e×1\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003c\/tbody\u003e\n    \u003c\/table\u003e\n\n    \u003cdiv style=\"margin-top: 14px; font-size: 12px; color: #aaa; text-align: center; border-top: 1px solid #eee; padding-top: 12px;\"\u003e\n      Please note: The product you receive is based on the option you selected to order.\n      \u003cbr\u003eMeasurements are approximate and may vary slightly between units.\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- ============================================================ --\u003e\n\u003c!-- 弹窗三：Bike to Work                                         --\u003e\n\u003c!-- ============================================================ --\u003e\n\n\u003cdiv id=\"btwModal\" class=\"btw-modal\" onclick=\"closeBtwOutside(event)\"\u003e\n  \u003cdiv class=\"btw-modal-content\"\u003e\n    \u003cbutton class=\"btw-close\" onclick=\"closeBtw()\"\u003e✕\u003c\/button\u003e\n    \u003ch2\u003e🚲 Bike to Work Scheme\u003c\/h2\u003e\n    \u003cdiv class=\"sub\"\u003eSave up to 52% on your Engwe EP-2 Pro through tax savings\u003c\/div\u003e\n\n    \u003cdiv class=\"btw-content\"\u003e\n      \u003cp\u003e\n        With the \u003cspan class=\"highlight\"\u003eBike to Work Scheme\u003c\/span\u003e, you can save up to 52% on your Engwe EP-2 Pro\n        through tax relief. We handle all the paperwork and issue your HR-ready invoice within 24 hours.\n      \u003c\/p\u003e\n\n      \u003ca class=\"btn-apply\" href=\"https:\/\/ecocyclehub.ie\/pages\/bike-to-work-scheme\" target=\"_blank\"\u003e\n        Apply Now →\n      \u003c\/a\u003e\n\n      \u003cp style=\"font-size: 13px; color: #888; margin-top: 14px;\"\u003e\n        Click to learn more and start your application\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv style=\"margin-top: 14px; font-size: 12px; color: #aaa; text-align: center; border-top: 1px solid #eee; padding-top: 12px;\"\u003e\n      Terms and conditions apply. Subject to employer approval.\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- ============================================================ --\u003e\n\u003c!-- JavaScript 脚本                                              --\u003e\n\u003c!-- ============================================================ --\u003e\n\n\u003cscript\u003e\n  \/\/ ===== Specifications 弹窗 =====\n  function openSpec() {\n    document.getElementById('specModal').classList.add('show');\n    document.body.style.overflow = 'hidden';\n  }\n  function closeSpec() {\n    document.getElementById('specModal').classList.remove('show');\n    document.body.style.overflow = '';\n  }\n  function closeSpecOutside(e) {\n    if (e.target === document.getElementById('specModal')) {\n      closeSpec();\n    }\n  }\n\n  \/\/ ===== Box + Size 弹窗 =====\n  function openSize() {\n    document.getElementById('sizeModal').classList.add('show');\n    document.body.style.overflow = 'hidden';\n  }\n  function closeSize() {\n    document.getElementById('sizeModal').classList.remove('show');\n    document.body.style.overflow = '';\n  }\n  function closeSizeOutside(e) {\n    if (e.target === document.getElementById('sizeModal')) {\n      closeSize();\n    }\n  }\n\n  \/\/ ===== Bike to Work 弹窗 =====\n  function openBtw() {\n    document.getElementById('btwModal').classList.add('show');\n    document.body.style.overflow = 'hidden';\n  }\n  function closeBtw() {\n    document.getElementById('btwModal').classList.remove('show');\n    document.body.style.overflow = '';\n  }\n  function closeBtwOutside(e) {\n    if (e.target === document.getElementById('btwModal')) {\n      closeBtw();\n    }\n  }\n\n  \/\/ ===== ESC 键关闭所有弹窗 =====\n  document.addEventListener('keydown', function(e) {\n    if (e.key === 'Escape') {\n      closeSpec();\n      closeSize();\n      closeBtw();\n    }\n  });\n\u003c\/script\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/ep2_pro_1.png?v=1785915450\" alt=\"\"\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_15.jpg?v=1752725542\"\u003e\u003c\/p\u003e\n\u003ch3\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_8.jpg?v=1752725542\"\u003e\u003c\/h3\u003e\n\u003ch3\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_13.jpg?v=1752725542\"\u003e\u003c\/h3\u003e\n\u003ch3\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_12.jpg?v=1752725542\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/ep2_pro_wheel.png?v=1785915630\" alt=\"\"\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_14.jpg?v=1752725542\"\u003e\n\u003c\/h3\u003e\n\u003ch3\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0728\/8609\/1925\/files\/EP-2ProAvailableontheBiketoWorkScheme1_9.jpg?v=1752725542\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/Ep_2_pro_display.png?v=1785915613\" alt=\"\"\u003e\n\u003c\/h3\u003e\n\u003chr\u003e\n\u003ch2\u003eCustomer Review\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/Engwe_EP_2_PRO_CR1.png?v=1785915706\" alt=\"\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/Engwe_EP_2_PRO_CR2.png?v=1785915755\" alt=\"\"\u003e\n\u003c\/h2\u003e","brand":"Engwe","offers":[{"title":"Gray","offer_id":44221932273715,"sku":null,"price":1099.0,"currency_code":"EUR","in_stock":true},{"title":"Orange","offer_id":44221932306483,"sku":null,"price":1099.0,"currency_code":"EUR","in_stock":true},{"title":"Black","offer_id":44221932339251,"sku":null,"price":1099.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0691\/7668\/8691\/files\/EP-2Pro_-3_Available_on_the_Cycle_to_Work_Scheme1_19.jpg?v=1776831173","url":"https:\/\/ecocyclehub.ie\/products\/engwe-ep-2-pro","provider":"Ecocycle Hub","version":"1.0","type":"link"}