[{"data":1,"prerenderedAt":68},["ShallowReactive",2],{"site-info":3,"site-navs":31,"design-page-pc-about":61},{"id":4,"site_name":5,"site_code":6,"site_type":7,"clone_from_site_id":8,"clone_time":9,"domain":10,"ssl_enabled":8,"canonical_domain":9,"logo":11,"favicon":9,"keywords":12,"description":13,"contact_phone":14,"contact_email":15,"contact_address":16,"icp_no":17,"statistics_code":9,"robots":9,"sitemap_enabled":4,"is_default":4,"create_by":8,"update_by":8,"status":4,"build_status":18,"build_time":19,"weigh":8,"remark":20,"create_time":21,"update_time":22,"lang_code":23,"lang_group_id":8,"base_currency":24,"version_config":25,"compliance":29},1,"夺冠科技","default","original",0,null,"www.example.com","\u002Fstorage\u002Fdefault\u002F20260928\u002F178305770719409fef7d8e7ddf20cbc1f41122e60a7efb217950506.png","企业官网,网站建设,数字化服务,CRM,小程序商城","夺冠科技专注企业数字化十二年，提供官网建设、客户管理、智能报价、会员商城一站式解决方案。","0539-8888-666","contact@duoguankeji.com","山东省临沂市兰山区天基国际6楼","鲁ICP备2026000000号-1",3,"2026-09-29 10:59:26","安装自动生成","2026-09-27 16:04:24","2026-10-01 14:10:25","zh-cn","CNY",{"id":4,"site_id":4,"version_type":26,"version_name":27,"allow_shop":8,"allow_trade":8,"allow_member":8,"allow_multilang":8,"allow_marketing":8,"allow_gdpr":8,"allow_google_seo":8,"allow_social_media":8,"allow_overseas_clue":8,"status":4,"remark":28,"create_time":21,"update_time":21},"brand","品牌宣传版","默认站点使用品牌宣传版（支持单向升级至商城版\u002F外贸版）",{"icp_no":17,"icp_url":30},"https:\u002F\u002Fbeian.miit.gov.cn\u002F",[32,36,41,45,49,53,57],{"id":4,"nav_name":33,"nav_type":34,"link_url":35,"target":8,"target_id":8,"parent_id":8,"icon":9},"首页","custom","\u002F",{"id":37,"nav_name":38,"nav_type":39,"link_url":40,"target":8,"target_id":4,"parent_id":8,"icon":9},2,"关于我们","page","\u002Fpages\u002Fabout",{"id":18,"nav_name":42,"nav_type":43,"link_url":44,"target":8,"target_id":4,"parent_id":8,"icon":9},"产品中心","category","\u002Fproducts",{"id":46,"nav_name":47,"nav_type":43,"link_url":48,"target":8,"target_id":37,"parent_id":8,"icon":9},4,"新闻资讯","\u002Farticles",{"id":50,"nav_name":51,"nav_type":43,"link_url":52,"target":8,"target_id":18,"parent_id":8,"icon":9},5,"成功案例","\u002Fcases",{"id":54,"nav_name":55,"nav_type":43,"link_url":56,"target":8,"target_id":46,"parent_id":8,"icon":9},6,"图册中心","\u002Fphotos",{"id":58,"nav_name":59,"nav_type":34,"link_url":60,"target":8,"target_id":8,"parent_id":8,"icon":9},7,"联系我们","\u002Fpages\u002Fcontact",{"id":4,"site_id":4,"page_name":38,"page_code":62,"content":63,"keywords":64,"description":65,"slug":9,"weigh":4,"status":4,"remark":20,"create_by":8,"update_by":8,"delete_time":66,"create_time":21,"update_time":67},"about","\u003Csection class=\"dgw-block dgw-hero\" id=\"hero-14\" data-dg-key=\"hero-14\" style=\"padding-top:0px;padding-bottom:0px;background-color:#1f4fa3;color:#ffffff;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Cdiv class=\"dgw-hero\" style=\"display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#ffffff;min-height:380px\">\u003Cdiv class=\"dgw-hero-bg\" aria-hidden=\"true\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0b2447,#1f4fa3);z-index:0\">\u003C\u002Fdiv>\u003Cdiv class=\"dgw-hero-inner\" style=\"position:relative;z-index:2;width:100%;max-width:760px\">\u003Ch1 class=\"dgw-hero-title\" style=\"margin:0 0 18px;color:#ffffff;font-size:44px;font-weight:700;line-height:1.25\">关于夺冠科技\u003C\u002Fh1>\u003Cp class=\"dgw-hero-sub\" style=\"margin:0 0 14px;color:#ffffff;opacity:.92;font-size:17px;line-height:1.7\">以客户为中心的一体化数字服务商\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-heading\" id=\"heading-15\" data-dg-key=\"heading-15\" style=\"padding-top:48px;padding-bottom:24px;background-color:#ffffff;max-width:640px;margin-left:auto;margin-right:auto;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:640px;margin:0 auto;padding:0 16px\">\u003Cdiv style=\"text-align:center\">\u003Ch2 id=\"intro\" class=\"dgw-heading-title\" style=\"margin:0;color:#1f2937;font-size:28px;font-weight:700;line-height:1.35;display:inline-block;padding-left:14px;border-left:4px solid #1f2937\">公司简介\u003C\u002Fh2>\u003Cp class=\"dgw-heading-sub\" style=\"margin:10px auto 0;color:#6b7280;font-size:16px;line-height:1.7;max-width:640px\">成立于 2014 年，总部位于山东临沂\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-text\" id=\"text-16\" data-dg-key=\"text-16\" style=\"padding-top:24px;padding-bottom:24px;background-color:#ffffff;font-size:16px;max-width:860px;margin-left:auto;margin-right:auto;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:860px;margin:0 auto;padding:0 16px\">\u003Cdiv class=\"dgw-rich-text\" style=\"color:#374151;font-size:16px;line-height:1.85;text-align:left;max-width:860px;margin-left:auto;margin-right:auto\">\u003Cp style=\"margin:0 0 12px\">夺冠科技成立于 2014 年，总部位于山东临沂，是一家专注企业数字化的一体化服务商。我们以&quot;一个客户档案贯穿全生命周期&quot;为产品理念，为企业提供官网建设、客户管理、智能报价、会员商城四大产品线，覆盖从品牌获客到成交复购的完整链路。\u003Cbr \u002F>\n十年来，我们服务了 500 多家企业客户，涵盖制造、贸易、专业服务等行业。团队汇聚产品、研发、增长三类人才，坚持&quot;把复杂留给自己，把简单交给客户&quot;，让每一家企业都能用得起、用得好数字化工具。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-dataStats dgw-hover-lift\" id=\"dataStats-17\" data-dg-key=\"dataStats-17\" style=\"padding-top:28px;padding-bottom:28px;background-color:#f7f8fa;border-radius:12px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Cdiv class=\"dgw-stats\" role=\"list\" aria-label=\"关键数据指标\">\u003Cdiv class=\"dgw-stat dgw-hover-lift\" role=\"listitem\">\u003Cspan class=\"dgw-stat-icon\" aria-hidden=\"true\">\u003Ci class=\"fa fa-flag\">\u003C\u002Fi>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-body\">\u003Cspan class=\"dgw-stat-value\" data-dgw-countup=\"2014\" data-dgw-decimals=\"0\" data-dgw-countup-dur=\"1200\">2014\u003Cspan class=\"dgw-stat-suffix\">年\u003C\u002Fspan>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-label\">公司成立\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-stat dgw-hover-lift\" role=\"listitem\">\u003Cspan class=\"dgw-stat-icon\" aria-hidden=\"true\">\u003Ci class=\"fa fa-users\">\u003C\u002Fi>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-body\">\u003Cspan class=\"dgw-stat-value\" data-dgw-countup=\"500\" data-dgw-decimals=\"0\" data-dgw-countup-dur=\"1200\">500\u003Cspan class=\"dgw-stat-suffix\">+\u003C\u002Fspan>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-label\">服务客户\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-stat dgw-hover-lift\" role=\"listitem\">\u003Cspan class=\"dgw-stat-icon\" aria-hidden=\"true\">\u003Ci class=\"fa fa-child\">\u003C\u002Fi>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-body\">\u003Cspan class=\"dgw-stat-value\" data-dgw-countup=\"30\" data-dgw-decimals=\"0\" data-dgw-countup-dur=\"1200\">30\u003Cspan class=\"dgw-stat-suffix\">+\u003C\u002Fspan>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-label\">团队成员\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-stat dgw-hover-lift\" role=\"listitem\">\u003Cspan class=\"dgw-stat-icon\" aria-hidden=\"true\">\u003Ci class=\"fa fa-refresh\">\u003C\u002Fi>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-body\">\u003Cspan class=\"dgw-stat-value\" data-dgw-countup=\"98\" data-dgw-decimals=\"0\" data-dgw-countup-dur=\"1200\">98\u003Cspan class=\"dgw-stat-suffix\">%\u003C\u002Fspan>\u003C\u002Fspan>\u003Cdiv class=\"dgw-stat-label\">客户续约率\u003C\u002Fdiv>\u003Cspan class=\"dgw-stat-trend\" data-dir=\"up\">\u003Ci class=\"fa fa-arrow-up\" aria-hidden=\"true\">\u003C\u002Fi>\u003Cspan>3%\u003C\u002Fspan>\u003Cspan class=\"dgw-stat-trend-text\">较去年\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-features\" id=\"features-18\" data-dg-key=\"features-18\" style=\"padding-top:32px;padding-bottom:32px;background-color:#ffffff;border-radius:12px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Cdiv style=\"text-align:left;margin-bottom:22px\">\u003Ch2 style=\"margin:0;font-size:17px;font-weight:700;color:#1f2937;line-height:1.35\">使命 · 愿景 · 价值观\u003C\u002Fh2>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-feature-grid\" style=\"align-items:stretch\">\u003Cdiv class=\"dgw-feature-cell\" style=\"border-radius:12px;overflow:hidden;padding:0;height:100%;text-align:left;transition:transform .25s ease,box-shadow .25s ease\">\u003Ci class=\"fa fa-rocket\" aria-hidden=\"true\" style=\"font-size:30px;color:#1f4fa3;margin-bottom:14px;display:inline-block\">\u003C\u002Fi>\u003Ch3 style=\"font-size:17px;margin:0 0 8px;color:#1f2937;line-height:1.4\">使命\u003C\u002Fh3>\u003Cp style=\"font-size:14px;line-height:1.7;color:#6b7280;margin:0\">让每一家企业都拥有触手可及的数字化能力。\u003C\u002Fp>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-feature-cell\" style=\"border-radius:12px;overflow:hidden;padding:0;height:100%;text-align:left;transition:transform .25s ease,box-shadow .25s ease\">\u003Ci class=\"fa fa-eye\" aria-hidden=\"true\" style=\"font-size:30px;color:#1f4fa3;margin-bottom:14px;display:inline-block\">\u003C\u002Fi>\u003Ch3 style=\"font-size:17px;margin:0 0 8px;color:#1f2937;line-height:1.4\">愿景\u003C\u002Fh3>\u003Cp style=\"font-size:14px;line-height:1.7;color:#6b7280;margin:0\">成为中小企业最信赖的一体化数字服务商。\u003C\u002Fp>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-feature-cell\" style=\"border-radius:12px;overflow:hidden;padding:0;height:100%;text-align:left;transition:transform .25s ease,box-shadow .25s ease\">\u003Ci class=\"fa fa-handshake-o\" aria-hidden=\"true\" style=\"font-size:30px;color:#1f4fa3;margin-bottom:14px;display:inline-block\">\u003C\u002Fi>\u003Ch3 style=\"font-size:17px;margin:0 0 8px;color:#1f2937;line-height:1.4\">价值观\u003C\u002Fh3>\u003Cp style=\"font-size:14px;line-height:1.7;color:#6b7280;margin:0\">客户第一 · 坦诚透明 · 持续交付 · 长期主义。\u003C\u002Fp>\u003C\u002Fdiv>\u003Cdiv class=\"dgw-feature-cell\" style=\"border-radius:12px;overflow:hidden;padding:0;height:100%;text-align:left;transition:transform .25s ease,box-shadow .25s ease\">\u003Ci class=\"fa fa-cog\" aria-hidden=\"true\" style=\"font-size:30px;color:#1f4fa3;margin-bottom:14px;display:inline-block\">\u003C\u002Fi>\u003Ch3 style=\"font-size:17px;margin:0 0 8px;color:#1f2937;line-height:1.4\">经营理念\u003C\u002Fh3>\u003Cp style=\"font-size:14px;line-height:1.7;color:#6b7280;margin:0\">把复杂留给自己，把简单交给客户。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-timeline\" id=\"timeline-19\" data-dg-key=\"timeline-19\" style=\"padding-top:32px;padding-bottom:32px;background-color:#f7f8fa;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Ch2 style=\"text-align:center;font-size:26px;margin:0 0 26px;color:#1f2937\">发展历程\u003C\u002Fh2>\u003Cdiv style=\"position:relative;padding-left:26px;border-left:2px solid #e2e8f0\">\u003Cdiv style=\"position:relative;padding:0 0 26px 10px\">\u003Cspan style=\"position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:#1f4fa3;border:3px solid #fff;box-shadow:0 0 0 2px #1f4fa3\">\u003C\u002Fspan>\u003Cdiv style=\"font-size:13px;font-weight:600;color:#1f4fa3;margin-bottom:4px\">2014\u003C\u002Fdiv>\u003Cdiv style=\"font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px\">公司创立\u003C\u002Fdiv>\u003Cdiv style=\"font-size:14px;line-height:1.7;color:#6b7280\">在临沂成立，从企业官网定制服务起步。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"position:relative;padding:0 0 26px 10px\">\u003Cspan style=\"position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:#1f4fa3;border:3px solid #fff;box-shadow:0 0 0 2px #1f4fa3\">\u003C\u002Fspan>\u003Cdiv style=\"font-size:13px;font-weight:600;color:#1f4fa3;margin-bottom:4px\">2017\u003C\u002Fdiv>\u003Cdiv style=\"font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px\">CRM 上线\u003C\u002Fdiv>\u003Cdiv style=\"font-size:14px;line-height:1.7;color:#6b7280\">发布自研 CRM 系统，确立&quot;客户档案全生命周期&quot;主线。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"position:relative;padding:0 0 26px 10px\">\u003Cspan style=\"position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:#1f4fa3;border:3px solid #fff;box-shadow:0 0 0 2px #1f4fa3\">\u003C\u002Fspan>\u003Cdiv style=\"font-size:13px;font-weight:600;color:#1f4fa3;margin-bottom:4px\">2020\u003C\u002Fdiv>\u003Cdiv style=\"font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px\">智能报价\u003C\u002Fdiv>\u003Cdiv style=\"font-size:14px;line-height:1.7;color:#6b7280\">推出多级价格体系与一键报价单，打通报价到合同。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"position:relative;padding:0 0 26px 10px\">\u003Cspan style=\"position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:#1f4fa3;border:3px solid #fff;box-shadow:0 0 0 2px #1f4fa3\">\u003C\u002Fspan>\u003Cdiv style=\"font-size:13px;font-weight:600;color:#1f4fa3;margin-bottom:4px\">2023\u003C\u002Fdiv>\u003Cdiv style=\"font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px\">会员商城\u003C\u002Fdiv>\u003Cdiv style=\"font-size:14px;line-height:1.7;color:#6b7280\">商城与 CRM 客户档案打通，形成成交复购闭环。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"position:relative;padding:0 0 26px 10px\">\u003Cspan style=\"position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:#1f4fa3;border:3px solid #fff;box-shadow:0 0 0 2px #1f4fa3\">\u003C\u002Fspan>\u003Cdiv style=\"font-size:13px;font-weight:600;color:#1f4fa3;margin-bottom:4px\">2026\u003C\u002Fdiv>\u003Cdiv style=\"font-size:16px;font-weight:600;color:#1f2937;margin-bottom:4px\">AI 建站\u003C\u002Fdiv>\u003Cdiv style=\"font-size:14px;line-height:1.7;color:#6b7280\">可视化拖拽设计器 + AI 内容生成，建站进入分钟级。\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-team\" id=\"team-20\" data-dg-key=\"team-20\" style=\"padding-top:32px;padding-bottom:32px;background-color:#ffffff;border-radius:10px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Ch2 style=\"text-align:center;font-size:26px;margin:0 0 26px;color:#1f2937\">核心团队\u003C\u002Fh2>\u003Cdiv style=\"display:flex;flex-wrap:wrap;margin:-10px\">\u003Cdiv style=\"box-sizing:border-box;width:25%;padding:10px\">\u003Cdiv style=\"background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:26px 18px;text-align:center;height:100%\">\u003Cimg src=\"\u002Fstatic\u002Fimages\u002Fdemo\u002Fteam-1.svg\" alt=\"\" style=\"width:88px;height:88px;border-radius:50%;object-fit:cover;margin-bottom:12px\">\u003Ch3 style=\"font-size:16px;margin:0 0 4px;color:#1f2937\">王浩然\u003C\u002Fh3>\u003Cdiv style=\"font-size:13px;color:#1f4fa3;margin-bottom:10px\">创始人 &amp; CEO\u003C\u002Fdiv>\u003Cp style=\"font-size:13px;line-height:1.7;color:#6b7280;margin:0\">两次企业服务创业经历，专注中小企业数字化十年。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"box-sizing:border-box;width:25%;padding:10px\">\u003Cdiv style=\"background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:26px 18px;text-align:center;height:100%\">\u003Cimg src=\"\u002Fstatic\u002Fimages\u002Fdemo\u002Fteam-2.svg\" alt=\"\" style=\"width:88px;height:88px;border-radius:50%;object-fit:cover;margin-bottom:12px\">\u003Ch3 style=\"font-size:16px;margin:0 0 4px;color:#1f2937\">李 婧\u003C\u002Fh3>\u003Cdiv style=\"font-size:13px;color:#1f4fa3;margin-bottom:10px\">CRM 产品总监\u003C\u002Fdiv>\u003Cp style=\"font-size:13px;line-height:1.7;color:#6b7280;margin:0\">曾任头部 SaaS 产品负责人，主导客户档案体系设计。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"box-sizing:border-box;width:25%;padding:10px\">\u003Cdiv style=\"background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:26px 18px;text-align:center;height:100%\">\u003Cimg src=\"\u002Fstatic\u002Fimages\u002Fdemo\u002Fteam-3.svg\" alt=\"\" style=\"width:88px;height:88px;border-radius:50%;object-fit:cover;margin-bottom:12px\">\u003Ch3 style=\"font-size:16px;margin:0 0 4px;color:#1f2937\">陈志远\u003C\u002Fh3>\u003Cdiv style=\"font-size:13px;color:#1f4fa3;margin-bottom:10px\">技术总监\u003C\u002Fdiv>\u003Cp style=\"font-size:13px;line-height:1.7;color:#6b7280;margin:0\">全栈架构师，负责 SSG 引擎与多端一致性架构。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"box-sizing:border-box;width:25%;padding:10px\">\u003Cdiv style=\"background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:26px 18px;text-align:center;height:100%\">\u003Cimg src=\"\u002Fstatic\u002Fimages\u002Fdemo\u002Fteam-4.svg\" alt=\"\" style=\"width:88px;height:88px;border-radius:50%;object-fit:cover;margin-bottom:12px\">\u003Ch3 style=\"font-size:16px;margin:0 0 4px;color:#1f2937\">赵 敏\u003C\u002Fh3>\u003Cdiv style=\"font-size:13px;color:#1f4fa3;margin-bottom:10px\">客户成功总监\u003C\u002Fdiv>\u003Cp style=\"font-size:13px;line-height:1.7;color:#6b7280;margin:0\">带队交付 500+ 客户，续约率保持在 98%。\u003C\u002Fp>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-quote\" id=\"quote-21\" data-dg-key=\"quote-21\" style=\"padding-top:30px;padding-bottom:30px;background-color:#f8fafc;font-size:20px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Cblockquote style=\"text-align:center;margin:0;padding:8px 28px\">\u003Cdiv style=\"font-size:20px;line-height:1.8;color:#334155;font-weight:500;position:relative\">\u003Ci class=\"fa fa-quote-left\" style=\"color:#1f4fa3;opacity:.25;font-size:34px;vertical-align:-8px;margin-right:8px\">\u003C\u002Fi>一个客户档案，贯穿全生命周期。\u003C\u002Fdiv>\u003Cdiv style=\"margin-top:14px;color:#94a3b8;font-size:13px\">—— 夺冠科技\u003C\u002Fdiv>\u003C\u002Fblockquote>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-cta\" id=\"cta-22\" data-dg-key=\"cta-22\" style=\"padding-top:40px;padding-bottom:40px;background-color:#1f4fa3;color:#ffffff;border-radius:999px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Cdiv style=\"text-align:center;color:#fff;padding:24px\">\u003Ch2 style=\"color:#fff;font-size:26px;margin:0 0 12px\">想进一步了解我们？\u003C\u002Fh2>\u003Cp style=\"color:#fff;opacity:.9;margin:0 0 22px\">欢迎预约产品演示，或到临沂总部交流。\u003C\u002Fp>\u003Ca href=\"\u002Fpages\u002Fabout\" style=\"display:inline-block;background:#fff;color:#1f4fa3;font-weight:600;padding:10px 30px;border-radius:999px;text-decoration:none\">预约产品演示\u003C\u002Fa>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Csection class=\"dgw-block dgw-contact\" id=\"contact-23\" data-dg-key=\"contact-23\" style=\"padding-top:32px;padding-bottom:32px;background-color:#f7f8fa;border-radius:12px;position:relative;\">\u003Cdiv class=\"dgw-container\" style=\"max-width:1200px;margin:0 auto;padding:0 16px\">\u003Ch2 style=\"text-align:center;font-size:26px;margin:0 0 28px;color:#1f2937\">联系我们\u003C\u002Fh2>\u003Cdiv style=\"display:flex;flex-wrap:wrap;gap:16px\">\u003Cdiv style=\"flex:1;min-width:220px;background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:22px;display:flex;gap:14px;align-items:flex-start\">\u003Ci class=\"fa fa-phone\" style=\"font-size:22px;color:#1f4fa3;margin-top:2px\">\u003C\u002Fi>\u003Cdiv>\u003Cdiv style=\"font-size:13px;color:#9ca3af;margin-bottom:4px\">联系电话\u003C\u002Fdiv>\u003Cdiv style=\"font-size:15px;color:#1f2937;line-height:1.6;word-break:break-all\">0539-8888-666\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"flex:1;min-width:220px;background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:22px;display:flex;gap:14px;align-items:flex-start\">\u003Ci class=\"fa fa-envelope-o\" style=\"font-size:22px;color:#1f4fa3;margin-top:2px\">\u003C\u002Fi>\u003Cdiv>\u003Cdiv style=\"font-size:13px;color:#9ca3af;margin-bottom:4px\">电子邮箱\u003C\u002Fdiv>\u003Cdiv style=\"font-size:15px;color:#1f2937;line-height:1.6;word-break:break-all\">hello@duoguankeji.com\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"flex:1;min-width:220px;background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:22px;display:flex;gap:14px;align-items:flex-start\">\u003Ci class=\"fa fa-map-marker\" style=\"font-size:22px;color:#1f4fa3;margin-top:2px\">\u003C\u002Fi>\u003Cdiv>\u003Cdiv style=\"font-size:13px;color:#9ca3af;margin-bottom:4px\">公司地址\u003C\u002Fdiv>\u003Cdiv style=\"font-size:15px;color:#1f2937;line-height:1.6;word-break:break-all\">山东省临沂市兰山区天基国际6楼\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv style=\"flex:1;min-width:220px;background:#fff;border:1px solid #eef1f5;border-radius:12px;padding:22px;display:flex;gap:14px;align-items:flex-start\">\u003Ci class=\"fa fa-clock-o\" style=\"font-size:22px;color:#1f4fa3;margin-top:2px\">\u003C\u002Fi>\u003Cdiv>\u003Cdiv style=\"font-size:13px;color:#9ca3af;margin-bottom:4px\">工作时间\u003C\u002Fdiv>\u003Cdiv style=\"font-size:15px;color:#1f2937;line-height:1.6;word-break:break-all\">周一至周五 9:00 - 18:00\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\u003Cstyle data-dgw=\"assets\">html.dgw-anim-ready [data-dgw-anim]{opacity:0;transition:opacity .6s ease,transform .6s ease}\r\nhtml.dgw-anim-ready [data-dgw-anim=\"fade-up\"]{transform:translateY(28px)}\r\nhtml.dgw-anim-ready [data-dgw-anim=\"slide-left\"]{transform:translateX(-40px)}\r\nhtml.dgw-anim-ready [data-dgw-anim=\"slide-right\"]{transform:translateX(40px)}\r\nhtml.dgw-anim-ready [data-dgw-anim=\"zoom-in\"]{transform:scale(.94)}\r\nhtml.dgw-anim-ready [data-dgw-anim].dgw-in{opacity:1;transform:none}\r\n@media(prefers-reduced-motion:reduce){html.dgw-anim-ready [data-dgw-anim]{opacity:1!important;transform:none!important;transition:none!important}}\r\n.dgw-hover-lift{transition:transform .25s ease,box-shadow .25s ease}\r\n.dgw-hover-lift:hover{transform:translateY(-4px)}\r\n.dgw-hover-shadow{transition:box-shadow .25s ease}\r\n.dgw-hover-shadow:hover{box-shadow:0 16px 40px rgba(15,23,42,.16)}\r\n.dgw-hover-zoom{transition:transform .25s ease}\r\n.dgw-hover-zoom:hover{transform:scale(1.015)}\r\n[data-dgw-sticky]{position:sticky;top:0;z-index:30}\r\n[data-dgw-parallax]{will-change:transform}\r\n.dgw-hero-btns{display:flex;gap:14px;flex-wrap:wrap}\r\n.dgw-hero-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;padding:12px 30px;border-radius:999px;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;transition:opacity .2s ease,transform .2s ease}\r\n.dgw-hero-btn--primary{background:#fff;color:#1f4fa3}\r\n.dgw-hero-btn--ghost{background:transparent;color:inherit;border:1px solid rgba(255,255,255,.7)}\r\n.dgw-hero-btn:hover{opacity:.9}\r\n.dgw-hero-vtoggle{position:absolute;right:18px;bottom:18px;z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(15,23,42,.35);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}\r\n.dgw-scroll-indicator{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:3;display:inline-flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:inherit;opacity:.85;text-decoration:none}\r\n.dgw-scroll-indicator i{font-size:20px;animation:dgw-bounce 1.6s infinite}\r\n@keyframes dgw-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}\r\n.dgw-breadcrumb{display:flex;align-items:center}\r\n.dgw-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}\r\n.dgw-breadcrumb li{display:inline-flex;align-items:center}\r\n.dgw-breadcrumb a{text-decoration:none;transition:color .2s ease}\r\n.dgw-breadcrumb--underline a:hover{text-decoration:underline}\r\n.dgw-divider-flex{display:flex;align-items:center;gap:14px}\r\n.dgw-divider-line{flex:1;height:0}\r\n.dgw-banner-inner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;max-width:1200px;margin:0 auto}\r\n.dgw-banner-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 18px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);color:inherit;font-weight:600;font-size:13px;text-decoration:none}\r\n.dgw-banner-close{background:transparent;border:0;color:inherit;font-size:20px;line-height:1;cursor:pointer;opacity:.8;padding:0 4px}\r\n.dgw-banner-close:hover{opacity:1}\r\n.dgw-countdown{font-variant-numeric:tabular-nums;font-weight:600}\r\n.dgw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.2;font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .1s ease,background .2s ease,color .2s ease,border-color .2s ease}\r\n.dgw-btn--lg{padding:13px 34px;font-size:16px}\r\n.dgw-btn--md{padding:10px 26px;font-size:14px}\r\n.dgw-btn--sm{padding:7px 18px;font-size:13px}\r\n.dgw-btn--primary{background:#1f4fa3;color:#fff;border:1px solid #1f4fa3}\r\n.dgw-btn--secondary{background:#f1f5f9;color:#1f2937;border:1px solid #e2e8f0}\r\n.dgw-btn--outline{background:transparent;color:#1f4fa3;border:1px solid #1f4fa3}\r\n.dgw-btn--ghost{background:transparent;color:#1f2937;border:1px solid transparent}\r\n.dgw-btn--link{background:transparent;color:#1f4fa3;border:0;padding-left:2px;padding-right:2px}\r\n.dgw-btn--disabled,.dgw-btn[aria-disabled=\"true\"]{opacity:.55;pointer-events:none}\r\n.dgw-btn--loading{opacity:.75;pointer-events:none}\r\n.dgw-btn:active{transform:translateY(1px)}\r\n.dgw-btn-group{display:flex}\r\n.dgw-stats{display:grid}\r\n.dgw-stat{display:flex;align-items:flex-start;gap:14px;padding:20px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}\r\n.dgw-stat--center{flex-direction:column;align-items:center;text-align:center}\r\n.dgw-stat-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;font-size:20px;line-height:1}\r\n.dgw-stat-body{min-width:0}\r\n.dgw-stat-value{display:flex;align-items:baseline;gap:3px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}\r\n.dgw-stat-suffix{font-size:.55em;font-weight:600}\r\n.dgw-stat-label{margin-top:6px;font-size:14px;line-height:1.4}\r\n.dgw-stat-trend{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:12px}\r\n.dgw-stat-trend-text{margin-left:2px;opacity:.75}\r\n.dgw-chart{position:relative}\r\n.dgw-chart-head{margin:0 0 14px}\r\n.dgw-chart-title{margin:0;font-size:17px;font-weight:600;color:#1f2937}\r\n.dgw-chart-sub{margin:6px 0 0;font-size:13px;color:#94a3b8}\r\n.dgw-chart-body{position:relative;width:100%}\r\n.dgw-chart-bars{display:flex;align-items:flex-end;gap:12px;height:100%;padding:26px 4px 0}\r\n.dgw-chart-col{flex:1 1 0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;min-width:0}\r\n.dgw-chart-bar{width:100%;max-width:56px;border-radius:6px 6px 0 0;transition:height .6s cubic-bezier(.22,.61,.36,1)}\r\n.dgw-chart-colval{font-size:12px;font-weight:600;margin-bottom:6px}\r\n.dgw-chart-x{display:flex;gap:12px;margin-top:8px}\r\n.dgw-chart-xlabel{flex:1 1 0;text-align:center;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\r\n.dgw-chart-svg{display:block;width:100%;height:100%;overflow:visible}\r\n.dgw-chart-grid{position:absolute;left:0;right:0;top:26px;bottom:22px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}\r\n.dgw-chart-gridline{height:0}\r\n.dgw-chart-pie{display:flex;align-items:center;justify-content:center;gap:28px;height:100%;flex-wrap:wrap}\r\n.dgw-chart-donut{position:relative;border-radius:50%;flex:0 0 auto}\r\n.dgw-chart-donut-hole{position:absolute;inset:26%;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;color:#94a3b8;text-align:center;padding:6px}\r\n.dgw-chart-legend{display:flex;flex-direction:column;gap:10px;font-size:13px;color:#475569;min-width:110px}\r\n.dgw-chart-legend-item{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;font:inherit;color:inherit;cursor:pointer;text-align:left}\r\n.dgw-chart-legend-dot{width:10px;height:10px;border-radius:3px;flex:0 0 auto}\r\n.dgw-chart-legend-item.is-off{opacity:.4;text-decoration:line-through}\r\n.dgw-chart-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:13px}\r\n.dgw-tags{display:flex;align-items:center}\r\n.dgw-tag{display:inline-flex;align-items:center;gap:6px;line-height:1;text-decoration:none;border:1px solid transparent;transition:all .18s ease}\r\n.dgw-tag-close{padding:0;border:0;background:transparent;color:inherit;font:inherit;line-height:1;opacity:.6;cursor:pointer}\r\n.dgw-tag-close:hover{opacity:1}\r\n.dgw-tag-dot{width:.5em;height:.5em;border-radius:50%;flex:0 0 auto}\r\n.dgw-badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5em;height:1.5em;margin-left:6px;padding:0 .4em;border-radius:999px;font-size:.8em;font-weight:600;line-height:1}\r\n.dgw-share{display:flex;align-items:center}\r\n.dgw-share--float{position:fixed;z-index:40;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}\r\n.dgw-share[data-dgw-share-float].is-show{opacity:1;visibility:visible}\r\n.dgw-anchors[data-dgw-hover=\"color\"] .dgw-anchor-item:hover{color:var(--dgw-ic,#1f4fa3)}\r\n.dgw-share-title{margin-right:10px;font-size:13px;color:#64748b}\r\n.dgw-share-item{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;font:inherit;text-decoration:none;cursor:pointer;transition:all .2s ease}\r\n.dgw-share-tip{position:fixed;left:50%;bottom:40px;z-index:99;transform:translateX(-50%);padding:8px 16px;border-radius:8px;background:rgba(15,23,42,.9);color:#fff;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s ease}\r\n.dgw-share-tip.is-on{opacity:1}\r\n.dgw-spacer{display:block;width:100%}\r\n.dgw-spacer-line{display:block}\r\n.dgw-reveal{opacity:0;transform:translateY(14px)}\r\n.dgw-reveal.dgw-in{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}\r\n.dgw-anchors{width:100%}\r\n.dgw-anchor-item i{font-size:.95em}\r\n.dgw-anchor-progress{position:absolute;left:0;bottom:0;height:2px;width:0;background:#1f4fa3;transition:width .15s linear}\r\n.dgw-rank-wrap{width:100%}\r\n.dgw-rank-head{margin-bottom:14px}\r\n.dgw-rank-title{margin:0;font-size:18px;color:#1f2937}\r\n.dgw-rank-sub-title{margin:6px 0 0;font-size:13px;color:#94a3b8}\r\n.dgw-rank{margin:0;padding:0;list-style:none}\r\n.dgw-rank-name{font-weight:500}\r\n.dgw-rank-trend{font-size:1.15em}\r\n.dgw-rank-no--text{background:transparent}\r\n.dgw-gauge{width:100%}\r\n.dgw-gauge-title{margin:0 0 12px;font-size:18px;color:#1f2937;text-align:center}\r\n.dgw-gauge-wrap{display:flex;align-items:center;justify-content:center}\r\n.dgw-gauge-svg{display:block}\r\n.dgw-gauge-arc{transition:stroke-dasharray .9s ease}@media(max-width:640px){[data-dg-key=\"hero-14\"] .dgw-hero-btns{flex-direction:column;width:100%}}[data-dg-key=\"text-16\"] .dgw-rich-text a{color:#1f4fa3;text-decoration:underline}[data-dg-key=\"dataStats-17\"] .dgw-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}@media(max-width:640px){[data-dg-key=\"dataStats-17\"] .dgw-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}[data-dg-key=\"dataStats-17\"] .dgw-stat{background:#ffffff;border:1px solid #eef1f5;border-radius:12px}[data-dg-key=\"dataStats-17\"] .dgw-stat-icon{background:#eef4ff;color:#1f4fa3;border-radius:8px}[data-dg-key=\"dataStats-17\"] .dgw-stat-value{font-size:32px;color:#1f2937}[data-dg-key=\"dataStats-17\"] .dgw-stat-label{color:#64748b}[data-dg-key=\"dataStats-17\"] .dgw-stat-trend[data-dir=\"up\"]{color:#10b981}[data-dg-key=\"dataStats-17\"] .dgw-stat-trend[data-dir=\"down\"]{color:#e11d48}[data-dg-key=\"dataStats-17\"] .dgw-stat-trend[data-dir=\"flat\"]{color:#64748b}@media(max-width:640px){[data-dg-key=\"dataStats-17\"] .dgw-stat{flex-direction:column;align-items:center;text-align:center}}[data-dg-key=\"features-18\"] .dgw-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}@media(max-width:640px){[data-dg-key=\"features-18\"] .dgw-feature-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}[data-dg-key=\"features-18\"] .dgw-feature-grid .dgw-feature-cell:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(15,23,42,.16)}\u003C\u002Fstyle>\u003Cscript data-dgw=\"runtime\">(function(){\r\n  var d=document, w=window;\r\n  if(w.__dgwRuntimeInit){ if(w.__dgwBoot) w.__dgwBoot(); return; }\r\n  w.__dgwRuntimeInit=1;\r\n  function qa(s,c){ return Array.prototype.slice.call((c||d).querySelectorAll(s)); }\r\n  function q(s,c){ return (c||d).querySelector(s); }\r\n  function on(el,ev,fn){ if(el) el.addEventListener(ev,fn); }\r\n\r\n  function boot(){\r\n    \u002F\u002F 动效：仅在脚本可用时开启初始隐藏态，避免无 JS 环境白屏\r\n    d.documentElement.classList.add('dgw-anim-ready');\r\n    qa('[data-dgw-anim]').forEach(function(el){\r\n      if(el.__dgwAnim) return; el.__dgwAnim=1;\r\n      var delay=parseInt(el.getAttribute('data-dgw-delay')||'0',10)||0;\r\n      function show(){ setTimeout(function(){ el.classList.add('dgw-in'); },delay); }\r\n      if(!('IntersectionObserver' in w)){ show(); return; }\r\n      var io=new IntersectionObserver(function(es){\r\n        es.forEach(function(e){ if(e.isIntersecting){ show(); io.unobserve(el); } });\r\n      },{threshold:.12});\r\n      io.observe(el);\r\n    });\r\n\r\n    \u002F\u002F 视差\r\n    qa('[data-dgw-parallax]').forEach(function(el){\r\n      if(el.__dgwPx) return; el.__dgwPx=1;\r\n      var speed=parseFloat(el.getAttribute('data-dgw-parallax-speed')||'0.18')||0.18;\r\n      function upd(){\r\n        var r=el.getBoundingClientRect();\r\n        if(r.bottom\u003C0||r.top>w.innerHeight) return;\r\n        var off=(r.top+r.height\u002F2-w.innerHeight\u002F2)*-speed;\r\n        el.style.backgroundPositionY='calc(50% + '+off.toFixed(1)+'px)';\r\n      }\r\n      on(w,'scroll',upd); upd();\r\n    });\r\n\r\n    \u002F\u002F 平滑滚动（Hero 滚动指示器 \u002F 锚点）\r\n    qa('[data-dgw-scrollto]').forEach(function(el){\r\n      if(el.__dgwSt) return; el.__dgwSt=1;\r\n      on(el,'click',function(e){\r\n        e.preventDefault();\r\n        var sec=el.closest('[data-dg-key]');\r\n        var next=sec&&sec.nextElementSibling;\r\n        if(next) next.scrollIntoView({behavior:'smooth',block:'start'});\r\n        else w.scrollTo({top:w.innerHeight,behavior:'smooth'});\r\n      });\r\n    });\r\n\r\n    \u002F\u002F Hero 背景视频播放\u002F暂停\r\n    qa('[data-dgw-videotoggle]').forEach(function(btn){\r\n      if(btn.__dgwVt) return; btn.__dgwVt=1;\r\n      on(btn,'click',function(){\r\n        var host=btn.closest('.dgw-hero')||btn.parentNode;\r\n        var v=q('video',host); if(!v) return;\r\n        var icon=q('i',btn);\r\n        if(v.paused){ v.play(); if(icon) icon.className='fa fa-pause'; }\r\n        else { v.pause(); if(icon) icon.className='fa fa-play'; }\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 面包屑动态当前页（服务端渲染占位，客户端按路径补全）\r\n    qa('[data-dgw-bc-current]').forEach(function(el){\r\n      var seg=(location.pathname||'\u002F').split('\u002F').filter(Boolean).pop()||'';\r\n      try{ seg=decodeURIComponent(seg); }catch(e){}\r\n      if(seg) el.textContent=seg;\r\n    });\r\n\r\n    \u002F\u002F 促销横幅：关闭记忆 + 倒计时\r\n    qa('[data-dgw-banner]').forEach(function(bar){\r\n      if(bar.__dgwBn) return; bar.__dgwBn=1;\r\n      var memKey=bar.getAttribute('data-dgw-banner');\r\n      if(memKey && bar.getAttribute('data-dismiss-memory')==='1'){\r\n        try{ if(localStorage.getItem('dgw-banner-'+memKey)==='1'){ bar.style.display='none'; return; } }catch(e){}\r\n      }\r\n      qa('[data-dgw-banner-close]',bar).forEach(function(btn){\r\n        on(btn,'click',function(){\r\n          bar.style.display='none';\r\n          if(memKey && bar.getAttribute('data-dismiss-memory')==='1'){\r\n            try{ localStorage.setItem('dgw-banner-'+memKey,'1'); }catch(e){}\r\n          }\r\n        });\r\n      });\r\n      var cd=q('[data-dgw-countdown]',bar);\r\n      if(!cd) return;\r\n      var end=new Date((cd.getAttribute('data-deadline')||'').replace(\u002F-\u002Fg,'\u002F')).getTime();\r\n      if(isNaN(end)) return;\r\n      var action=cd.getAttribute('data-end-action')||'hide';\r\n      var endText=cd.getAttribute('data-end-text')||'活动已结束';\r\n      function tick(){\r\n        var left=end-Date.now();\r\n        if(left\u003C=0){\r\n          if(action==='text'){ cd.textContent=endText; }\r\n          else { bar.style.display='none'; }\r\n          return clearInterval(timer);\r\n        }\r\n        var s=Math.floor(left\u002F1000), dd=Math.floor(s\u002F86400), hh=Math.floor(s%86400\u002F3600), mm=Math.floor(s%3600\u002F60), ss=s%60;\r\n        function p(n){ return (n\u003C10?'0':'')+n; }\r\n        cd.textContent=(dd>0? dd+'天 ':'')+p(hh)+':'+p(mm)+':'+p(ss);\r\n      }\r\n      var timer=setInterval(tick,1000); tick();\r\n    });\r\n\r\n    \u002F\u002F 按钮点击反馈\r\n    qa('[data-dgw-clickfx]').forEach(function(el){\r\n      if(el.__dgwCf) return; el.__dgwCf=1;\r\n      on(el,'click',function(){\r\n        el.style.transform='translateY(1px) scale(.985)';\r\n        setTimeout(function(){ el.style.transform=''; },160);\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 标签页：点击切换 + 方向键\u002FHome\u002FEnd 键盘导航\r\n    qa('[data-dgw-tabs]').forEach(function(box){\r\n      if(box.__dgwTabs) return; box.__dgwTabs=1;\r\n      var btns=qa('[data-dgw-tab]',box), panels=qa('[data-dgw-panel]',box);\r\n      function act(i){\r\n        btns.forEach(function(b,idx){\r\n          var on_=idx===i;\r\n          b.setAttribute('aria-selected',on_?'true':'false');\r\n          b.classList.toggle('is-active',on_);\r\n          b.tabIndex=on_?0:-1;\r\n        });\r\n        panels.forEach(function(pn,idx){ pn.hidden=idx!==i; });\r\n      }\r\n      btns.forEach(function(b,idx){\r\n        on(b,'click',function(){ if(!b.disabled) act(idx); });\r\n        on(b,'keydown',function(e){\r\n          var n=btns.length;\r\n          if(e.key!=='ArrowRight'&&e.key!=='ArrowLeft'&&e.key!=='Home'&&e.key!=='End') return;\r\n          e.preventDefault();\r\n          var t=e.key==='Home'?0:(e.key==='End'?n-1:(e.key==='ArrowRight'?(idx+1)%n:(idx-1+n)%n));\r\n          act(t); if(btns[t]) btns[t].focus();\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 评分：鼠标\u002F键盘选择星级\r\n    qa('[data-dgw-rating]').forEach(function(box){\r\n      if(box.__dgwRt) return; box.__dgwRt=1;\r\n      var stars=qa('.dgw-star',box), max=parseInt(box.getAttribute('data-max')||'5',10)||5;\r\n      function paint(v){ stars.forEach(function(s){ var on_=parseInt(s.getAttribute('data-value')||'0',10)\u003C=v; var i=q('i',s); if(i) i.className='fa '+(on_?'fa-star':'fa-star-o'); }); }\r\n      var cur=parseInt(box.getAttribute('data-value')||'0',10)||0;\r\n      stars.forEach(function(s){\r\n        var v=parseInt(s.getAttribute('data-value')||'0',10);\r\n        on(s,'click',function(){ cur=v; box.setAttribute('data-value',v); paint(v); try{ box.dispatchEvent(new CustomEvent('dgw:rating',{bubbles:true,detail:{value:v}})); }catch(e){} });\r\n        on(s,'mouseenter',function(){ paint(v); });\r\n      });\r\n      on(box,'mouseleave',function(){ paint(cur); });\r\n      box.tabIndex=0;\r\n      on(box,'keydown',function(e){\r\n        if(e.key!=='ArrowRight'&&e.key!=='ArrowLeft') return;\r\n        e.preventDefault();\r\n        cur=Math.max(1,Math.min(max,cur+(e.key==='ArrowRight'?1:-1)));\r\n        box.setAttribute('data-value',cur); paint(cur);\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 文件上传：点击\u002F拖拽选文件、大小校验、删除\r\n    qa('[data-dgw-upload]').forEach(function(box){\r\n      if(box.__dgwUp) return; box.__dgwUp=1;\r\n      var drop=q('[data-dgw-drop]',box), input=q('[data-dgw-fileinput]',box);\r\n      if(!drop||!input) return;\r\n      var maxSize=parseFloat(box.getAttribute('data-max-size')||'0')||0;\r\n      function openPicker(e){ if(e) e.preventDefault(); input.click(); }\r\n      on(drop,'click',openPicker);\r\n      on(drop,'keydown',function(e){ if(e.key==='Enter'||e.key===' '){ openPicker(e); } });\r\n      ['dragenter','dragover'].forEach(function(ev){ on(drop,ev,function(e){ e.preventDefault(); drop.classList.add('is-dragover'); }); });\r\n      ['dragleave','drop'].forEach(function(ev){ on(drop,ev,function(e){ if(e){ e.preventDefault(); } drop.classList.remove('is-dragover'); }); });\r\n      on(input,'change',function(){\r\n        var list=q('.dgw-file-list',box);\r\n        if(!list){ list=d.createElement('ul'); list.className='dgw-file-list'; box.appendChild(list); }\r\n        Array.prototype.slice.call(input.files||[]).forEach(function(f){\r\n          var ok=!maxSize||f.size\u003C=maxSize*1024*1024;\r\n          var li=d.createElement('li'); li.className='dgw-file-item';\r\n          li.innerHTML='\u003Ci class=\"fa '+(ok?'fa-check-circle':'fa-exclamation-circle')+'\" style=\"color:'+(ok?'#10b981':'#e11d48')+'\" aria-hidden=\"true\">\u003C\u002Fi>'\r\n            +'\u003Cspan class=\"dgw-file-name\">\u003C\u002Fspan>\u003Cspan class=\"dgw-file-size\">\u003C\u002Fspan>'\r\n            +'\u003Cbutton type=\"button\" class=\"dgw-file-del\" aria-label=\"删除\">\u003Ci class=\"fa fa-times\" aria-hidden=\"true\">\u003C\u002Fi>\u003C\u002Fbutton>';\r\n          var nm=q('.dgw-file-name',li), sz=q('.dgw-file-size',li), del=q('.dgw-file-del',li);\r\n          if(nm) nm.textContent=f.name;\r\n          if(sz) sz.textContent=(f.size\u002F1024).toFixed(0)+'KB'+(ok?'':' · 超出大小限制');\r\n          if(del) del.setAttribute('aria-label','删除 '+f.name);\r\n          list.appendChild(li);\r\n        });\r\n        input.value='';\r\n      });\r\n      on(box,'click',function(e){\r\n        var btn=(e.target&&e.target.closest)?e.target.closest('.dgw-file-del'):null;\r\n        if(!btn) return;\r\n        var li=btn.closest('.dgw-file-item');\r\n        if(li&&li.parentNode) li.parentNode.removeChild(li);\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 弹窗：按钮\u002F延迟\u002F滚动触发，遮罩与 ESC 关闭\r\n    qa('[data-dgw-modal]').forEach(function(ov){\r\n      if(ov.__dgwMd) return; ov.__dgwMd=1;\r\n      var opened=false;\r\n      function open(){\r\n        ov.style.display=''; ov.classList.add('is-open'); opened=true;\r\n        d.documentElement.style.overflow='hidden';\r\n        var f=q('[data-dgw-modal-close]',ov); if(f&&f.focus) f.focus();\r\n      }\r\n      function close(){\r\n        ov.classList.remove('is-open'); ov.style.display='none'; opened=false;\r\n        d.documentElement.style.overflow='';\r\n      }\r\n      ov.style.display='none';\r\n      var wrap=ov.parentNode||ov;\r\n      qa('[data-dgw-modal-open]',wrap).forEach(function(btn){\r\n        var hover=btn.getAttribute('data-dgw-modal-hover')==='1';\r\n        on(btn,hover?'mouseenter':'click',function(e){ e.preventDefault(); open(); });\r\n      });\r\n      on(ov,'click',function(e){\r\n        if(e.target===ov){ if(ov.getAttribute('data-close-overlay')==='1') close(); return; }\r\n        var c=(e.target&&e.target.closest)?e.target.closest('[data-dgw-modal-close]'):null;\r\n        if(c) close();\r\n      });\r\n      d.addEventListener('keydown',function(e){ if(e.key==='Escape'&&opened&&ov.getAttribute('data-close-esc')==='1') close(); });\r\n      var trig=ov.getAttribute('data-trigger')||'click';\r\n      if(trig==='load'){\r\n        setTimeout(open,(parseFloat(ov.getAttribute('data-open-delay')||'1')||1)*1000);\r\n      } else if(trig==='scroll' && 'IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){\r\n          es.forEach(function(e){ if(e.isIntersecting){ open(); io.disconnect(); } });\r\n        },{threshold:.35});\r\n        io.observe(wrap);\r\n      }\r\n    });\r\n\r\n    \u002F\u002F 消息提示 \u002F 通知：关闭、自动消失、未读点标记已读\r\n    qa('[data-dgw-dismiss]').forEach(function(btn){\r\n      if(btn.__dgwDis) return; btn.__dgwDis=1;\r\n      on(btn,'click',function(e){\r\n        e.preventDefault(); e.stopPropagation();\r\n        var item=(btn.closest)?btn.closest('.dgw-notify-item, .dgw-toast-item, .dgw-toast'):null;\r\n        if(item&&item.parentNode) item.parentNode.removeChild(item);\r\n      });\r\n    });\r\n    qa('[data-dgw-notify-item]').forEach(function(it){\r\n      if(it.__dgwNi) return; it.__dgwNi=1;\r\n      on(it,'click',function(e){\r\n        if(e.target&&e.target.closest&&e.target.closest('[data-dgw-dismiss]')) return;\r\n        var dot=q('[data-dgw-notify-dot]',it); if(dot) dot.style.display='none';\r\n      });\r\n    });\r\n    qa('[data-dgw-notify]').forEach(function(box){\r\n      if(box.__dgwNf) return; box.__dgwNf=1;\r\n      if(box.getAttribute('data-auto-dismiss')!=='1') return;\r\n      var dur=(parseInt(box.getAttribute('data-duration')||'5',10)||5)*1000;\r\n      qa('.dgw-notify-item',box).forEach(function(it){\r\n        var timer=setTimeout(function(){ if(it.parentNode) it.parentNode.removeChild(it); },dur);\r\n        if(box.getAttribute('data-pause-hover')==='1'){\r\n          on(it,'mouseenter',function(){ clearTimeout(timer); });\r\n          on(it,'mouseleave',function(){ timer=setTimeout(function(){ if(it.parentNode) it.parentNode.removeChild(it); },1200); });\r\n        }\r\n      });\r\n    });\r\n    qa('[data-dgw-toast]').forEach(function(box){\r\n      if(box.__dgwTs) return; box.__dgwTs=1;\r\n      if(box.getAttribute('data-auto-close')!=='1') return;\r\n      var dur=(parseInt(box.getAttribute('data-duration')||'3',10)||3)*1000;\r\n      setTimeout(function(){ if(box.parentNode) box.parentNode.removeChild(box); },dur);\r\n    });\r\n\r\n    \u002F\u002F 返回顶部：滚动阈值显示 + 进度环 + 平滑回顶\r\n    qa('[data-dgw-backtop]').forEach(function(btn){\r\n      if(btn.__dgwBt) return; btn.__dgwBt=1;\r\n      var dist=Math.max(0,parseInt(btn.getAttribute('data-distance')||'300',10)||300);\r\n      var ring=q('.dgw-backtop-ring',btn);\r\n      function onScroll(){\r\n        var top=w.pageYOffset||d.documentElement.scrollTop||0;\r\n        var h=Math.max(1,(d.documentElement.scrollHeight-w.innerHeight));\r\n        btn.classList.toggle('is-visible',top>dist);\r\n        if(ring) ring.style.background='conic-gradient(rgba(255,255,255,.5) 0 '+Math.min(100,top\u002Fh*100).toFixed(1)+'%, transparent 0)';\r\n      }\r\n      on(w,'scroll',onScroll); onScroll();\r\n      on(btn,'click',function(){ w.scrollTo({top:0,behavior:'smooth'}); });\r\n    });\r\n\r\n    \u002F\u002F 分页「加载更多」\u002F 无限滚动\r\n    function spin(host,btn,text){\r\n      if(btn){ btn.disabled=true; btn.setAttribute('data-label',btn.textContent||''); btn.textContent=text; }\r\n      if(host) host.setAttribute('aria-busy','true');\r\n    }\r\n    qa('[data-dgw-loadmore]').forEach(function(box){\r\n      if(box.__dgwLm) return; box.__dgwLm=1;\r\n      var btn=q('.dgw-pager-loadmore',box);\r\n      var loading=box.getAttribute('data-loading-text')||'加载中…';\r\n      on(btn,'click',function(){\r\n        spin(box,btn,loading);\r\n        setTimeout(function(){\r\n          if(btn){ btn.disabled=false; btn.textContent=btn.getAttribute('data-label')||'加载更多'; }\r\n          box.removeAttribute('aria-busy');\r\n          try{ box.dispatchEvent(new CustomEvent('dgw:loadmore',{bubbles:true,detail:{page:parseInt(box.getAttribute('data-page')||'1',10)+1}})); }catch(e){}\r\n        },600);\r\n      });\r\n    });\r\n    qa('[data-dgw-infinite]').forEach(function(box){\r\n      if(box.__dgwIf) return; box.__dgwIf=1;\r\n      var tip=q('[data-dgw-infinite-tip]',box);\r\n      var loading=box.getAttribute('data-loading-text')||'加载中…';\r\n      var endText=box.getAttribute('data-end-text')||'';\r\n      if(!('IntersectionObserver' in w)) return;\r\n      var io=new IntersectionObserver(function(es){\r\n        es.forEach(function(e){\r\n          if(!e.isIntersecting) return;\r\n          if(tip) tip.textContent=loading;\r\n          try{ box.dispatchEvent(new CustomEvent('dgw:loadmore',{bubbles:true,detail:{page:parseInt(box.getAttribute('data-page')||'1',10)+1}})); }catch(err){}\r\n          setTimeout(function(){ if(tip&&endText!=='') tip.textContent=endText; },700);\r\n        });\r\n      },{rootMargin:'120px'});\r\n      io.observe(box);\r\n    });\r\n\r\n    \u002F\u002F 数据统计：进入视口数字滚动\r\n    qa('[data-dgw-countup]').forEach(function(el){\r\n      if(el.__dgwCu) return; el.__dgwCu=1;\r\n      var raw=el.getAttribute('data-dgw-countup')||'';\r\n      var m=\u002F^([^\\d\\-+]*)([\\-\\d.]+)(.*)$\u002F.exec(raw);\r\n      if(!m) return;\r\n      var prefix=m[1], target=parseFloat(m[2]), tail=m[3], dec=(m[2].split('.')[1]||'').length;\r\n      var decAttr=el.getAttribute('data-dgw-decimals');\r\n      if(decAttr!==null&&decAttr!==''){ var d0=parseInt(decAttr,10); if(!isNaN(d0)&&d0>=0) dec=Math.min(4,d0); }\r\n      if(isNaN(target)) return;\r\n      var dur=parseInt(el.getAttribute('data-dgw-countup-dur')||'1200',10)||1200;\r\n      function run(){\r\n        var t0=null;\r\n        function step(ts){\r\n          if(t0===null) t0=ts;\r\n          var p=Math.min(1,(ts-t0)\u002Fdur), e=1-Math.pow(1-p,3);\r\n          el.textContent=prefix+(target*e).toFixed(dec)+tail;\r\n          if(p\u003C1) requestAnimationFrame(step);\r\n        }\r\n        requestAnimationFrame(step);\r\n      }\r\n      if('IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ run(); io.unobserve(el); } }); },{threshold:.3});\r\n        io.observe(el);\r\n      } else run();\r\n    });\r\n\r\n    \u002F\u002F 图表：入场动画 + 图例点击切换数据系列\r\n    qa('[data-dgw-chart]').forEach(function(box){\r\n      if(box.__dgwCh) return; box.__dgwCh=1;\r\n      var bars=qa('[data-dgw-bar]',box), dots=qa('[data-dgw-dot]',box), lines=qa('[data-dgw-line]',box);\r\n      bars.forEach(function(b){ if(b.getAttribute('data-h')) b.style.height='0'; });\r\n      function draw(){\r\n        bars.forEach(function(b){ var h=b.getAttribute('data-h'); if(h) b.style.height=h; });\r\n        lines.forEach(function(pl){\r\n          if(!pl.getTotalLength) return;\r\n          var len=pl.getTotalLength(); if(!len) return;\r\n          pl.style.strokeDasharray=len; pl.style.strokeDashoffset=len;\r\n          pl.getBoundingClientRect();\r\n          pl.style.transition='stroke-dashoffset 1.1s ease'; pl.style.strokeDashoffset='0';\r\n        });\r\n        dots.forEach(function(c,i){\r\n          c.style.opacity='0'; c.style.transition='opacity .3s ease';\r\n          setTimeout(function(){ c.style.opacity='1'; },380+i*70);\r\n        });\r\n      }\r\n      if(box.getAttribute('data-animate')==='1'&&'IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ draw(); io.unobserve(box); } }); },{threshold:.2});\r\n        io.observe(box);\r\n      } else draw();\r\n      function toggle(i,off){\r\n        bars.forEach(function(b){ if(parseInt(b.getAttribute('data-index')||'0',10)===i) b.style.opacity=off?'0.12':'1'; });\r\n        dots.forEach(function(b){ if(parseInt(b.getAttribute('data-index')||'0',10)===i) b.style.opacity=off?'0':'1'; });\r\n      }\r\n      qa('[data-dgw-chart-legend]',box).forEach(function(btn){\r\n        on(btn,'click',function(){ toggle(parseInt(btn.getAttribute('data-index')||'0',10), btn.classList.toggle('is-off')); });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 标签：可关闭\r\n    qa('[data-dgw-tag-close]').forEach(function(btn){\r\n      if(btn.__dgwTc) return; btn.__dgwTc=1;\r\n      on(btn,'click',function(e){\r\n        e.preventDefault(); e.stopPropagation();\r\n        var tag=(btn.closest)?btn.closest('.dgw-tag'):btn.parentNode;\r\n        if(tag&&tag.parentNode) tag.parentNode.removeChild(tag);\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 轻提示（复制链接等操作反馈）\r\n    function dgwToast(msg){\r\n      var t=q('[data-dgw-toast-host]');\r\n      if(!t){\r\n        t=d.createElement('div'); t.className='dgw-share-tip';\r\n        t.setAttribute('data-dgw-toast-host',''); t.setAttribute('role','status'); t.setAttribute('aria-live','polite');\r\n        d.body.appendChild(t);\r\n      }\r\n      t.textContent=msg; t.classList.add('is-on');\r\n      clearTimeout(t.__dgwT); t.__dgwT=setTimeout(function(){ t.classList.remove('is-on'); },1800);\r\n    }\r\n    w.__dgwToast=dgwToast;\r\n    function dgwCopy(txt,done){\r\n      function fb(){\r\n        var ta=d.createElement('textarea'); ta.value=txt; ta.setAttribute('readonly','');\r\n        ta.style.position='fixed'; ta.style.opacity='0';\r\n        d.body.appendChild(ta); ta.select();\r\n        try{ d.execCommand('copy'); }catch(e){}\r\n        d.body.removeChild(ta); done();\r\n      }\r\n      if(navigator.clipboard&&navigator.clipboard.writeText){ navigator.clipboard.writeText(txt).then(done,fb); } else fb();\r\n    }\r\n    qa('[data-dgw-copy]').forEach(function(el){\r\n      if(el.__dgwCp) return; el.__dgwCp=1;\r\n      on(el,'click',function(e){\r\n        e.preventDefault();\r\n        var v=el.getAttribute('data-dgw-copy');\r\n        dgwCopy((!v||v==='self')?location.href:v,function(){ dgwToast(el.getAttribute('data-copy-tip')||'链接已复制'); });\r\n      });\r\n    });\r\n    qa('[data-dgw-share]').forEach(function(el){\r\n      if(el.__dgwSh) return; el.__dgwSh=1;\r\n      on(el,'click',function(e){\r\n        if(!navigator.share) return;\r\n        e.preventDefault();\r\n        try{ navigator.share({title:d.title,text:d.title,url:el.getAttribute('data-dgw-share')||location.href}).catch(function(){}); }catch(err){}\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 搜索框：清除、热门词回填、即时搜索占位反馈\r\n    qa('[data-dgw-search]').forEach(function(form){\r\n      if(form.__dgwSb) return; form.__dgwSb=1;\r\n      var input=q('.dgw-search-input',form), clear=q('[data-dgw-search-clear]',form), res=q('.dgw-search-result',form);\r\n      var live=form.getAttribute('data-live')==='1';\r\n      function sync(){ if(clear) clear.hidden=!(input&&input.value); }\r\n      if(input){\r\n        on(input,'input',function(){\r\n          sync();\r\n          if(!live||!res) return;\r\n          var v=input.value.trim();\r\n          if(!v){ res.style.display='none'; res.textContent=''; return; }\r\n          res.style.display='block'; res.textContent=form.getAttribute('data-searching')||'搜索中…';\r\n          clearTimeout(form.__dgwT);\r\n          form.__dgwT=setTimeout(function(){ res.textContent=form.getAttribute('data-empty')||'没有找到相关内容'; },600);\r\n        });\r\n        on(input,'keydown',function(e){\r\n          if(e.key!=='Escape'||!clear) return;\r\n          input.value=''; sync();\r\n          if(res){ res.style.display='none'; res.textContent=''; }\r\n        });\r\n      }\r\n      if(clear) on(clear,'click',function(){\r\n        if(input){ input.value=''; input.focus(); }\r\n        sync();\r\n        if(res){ res.style.display='none'; res.textContent=''; }\r\n      });\r\n      qa('[data-dgw-search-word]',form).forEach(function(word){\r\n        on(word,'click',function(e){\r\n          e.preventDefault();\r\n          if(!input) return;\r\n          input.value=word.textContent||''; sync();\r\n          if(live&&res){ res.style.display='block'; res.textContent=form.getAttribute('data-empty')||'没有找到相关内容'; }\r\n        });\r\n      });\r\n      sync();\r\n    });\r\n\r\n    \u002F\u002F 筛选栏：单选\u002F多选切换、清空、应用事件\r\n    qa('[data-dgw-filter]').forEach(function(box){\r\n      if(box.__dgwFt) return; box.__dgwFt=1;\r\n      var multi=box.getAttribute('data-multi')==='1';\r\n      qa('[data-dgw-filter-option]',box).forEach(function(btn){\r\n        on(btn,'click',function(){\r\n          var on_=btn.getAttribute('aria-pressed')==='true';\r\n          if(!multi){ qa('[data-dgw-filter-option]',box).forEach(function(o){ o.setAttribute('aria-pressed','false'); }); }\r\n          btn.setAttribute('aria-pressed',on_?'false':'true');\r\n        });\r\n      });\r\n      qa('[data-dgw-filter-clear]',box).forEach(function(b){\r\n        on(b,'click',function(){ qa('[data-dgw-filter-option]',box).forEach(function(o){ o.setAttribute('aria-pressed','false'); }); });\r\n      });\r\n      qa('[data-dgw-filter-apply]',box).forEach(function(b){\r\n        on(b,'click',function(){\r\n          var vals=qa('[data-dgw-filter-option][aria-pressed=\"true\"]',box).map(function(o){ return o.getAttribute('data-value')||''; });\r\n          try{ box.dispatchEvent(new CustomEvent('dgw:filter-apply',{bubbles:true,detail:{values:vals}})); }catch(e){}\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 排序控件：按钮组互斥选中\r\n    qa('[data-dgw-sort]').forEach(function(box){\r\n      if(box.__dgwSo) return; box.__dgwSo=1;\r\n      qa('[data-dgw-sort-btn]',box).forEach(function(btn){\r\n        on(btn,'click',function(){\r\n          qa('[data-dgw-sort-btn]',box).forEach(function(o){ o.classList.remove('is-active'); o.setAttribute('aria-pressed','false'); });\r\n          btn.classList.add('is-active'); btn.setAttribute('aria-pressed','true');\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 数据表格：全选联动 + 表头点击排序\r\n    qa('[data-dgw-table]').forEach(function(box){\r\n      if(box.__dgwTb) return; box.__dgwTb=1;\r\n      var all=q('[data-dgw-table-all]',box), rows=qa('[data-dgw-table-row]',box);\r\n      function syncAll(){\r\n        if(!all) return;\r\n        all.checked=rows.length>0&&rows.every(function(r){ return r.checked; });\r\n      }\r\n      if(all) on(all,'change',function(){ rows.forEach(function(r){ r.checked=all.checked; }); });\r\n      rows.forEach(function(r){ on(r,'change',syncAll); });\r\n      var asc={};\r\n      qa('[data-dgw-table-sort]',box).forEach(function(btn,cIdx){\r\n        on(btn,'click',function(){\r\n          var table=q('.dgw-table',box), tbody=table?q('tbody',table):null;\r\n          if(!tbody) return;\r\n          asc[cIdx]=!asc[cIdx];\r\n          var col=cIdx+1+(all?1:0);\r\n          var list=qa('tr',tbody).filter(function(tr){ return !q('.dgw-table-empty',tr); });\r\n          list.sort(function(a,b){\r\n            var ca=q('td:nth-child('+col+')',a), cb=q('td:nth-child('+col+')',b);\r\n            var va=ca?ca.textContent.trim():'', vb=cb?cb.textContent.trim():'';\r\n            var na=parseFloat(va.replace(\u002F[^\\d.\\-]\u002Fg,'')), nb=parseFloat(vb.replace(\u002F[^\\d.\\-]\u002Fg,''));\r\n            var cmp=(!isNaN(na)&&!isNaN(nb))?na-nb:va.localeCompare(vb,'zh-CN');\r\n            return asc[cIdx]?cmp:-cmp;\r\n          });\r\n          list.forEach(function(tr){ tbody.appendChild(tr); });\r\n          qa('[data-dgw-table-sort]',box).forEach(function(o,i){\r\n            var th=o.closest?o.closest('th'):null;\r\n            if(th) th.setAttribute('aria-sort', i===cIdx?(asc[cIdx]?'ascending':'descending'):'none');\r\n          });\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 导航栏：移动端抽屉开合\r\n    qa('[data-dgw-navtoggle]').forEach(function(btn){\r\n      if(btn.__dgwNv) return; btn.__dgwNv=1;\r\n      var bar=btn.closest?btn.closest('.dgw-navbar'):null;\r\n      var drawer=bar?q('[data-dgw-navdrawer]',bar):null;\r\n      if(!drawer) return;\r\n      function setOpen(open){\r\n        drawer.classList.toggle('is-open',open);\r\n        btn.setAttribute('aria-expanded',open?'true':'false');\r\n        d.body.style.overflow=open?'hidden':'';\r\n      }\r\n      on(btn,'click',function(){ setOpen(!drawer.classList.contains('is-open')); });\r\n      qa('[data-dgw-navclose]',drawer).forEach(function(c){ on(c,'click',function(){ setOpen(false); }); });\r\n      qa('a[href]',drawer).forEach(function(a){ on(a,'click',function(){ if(a.getAttribute('href')!=='#') setOpen(false); }); });\r\n      on(d,'keydown',function(e){ if((e.key==='Escape'||e.keyCode===27)&&drawer.classList.contains('is-open')) setOpen(false); });\r\n      on(w,'resize',function(){ if(w.innerWidth>640&&drawer.classList.contains('is-open')) setOpen(false); });\r\n    });\r\n\r\n    \u002F\u002F 导航栏二级菜单：键盘聚焦与触摸设备展开（桌面仍以悬停样式为主）\r\n    qa('[data-dgw-navsub]').forEach(function(item){\r\n      if(item.__dgwNs) return; item.__dgwNs=1;\r\n      var delay=parseInt(item.getAttribute('data-delay')||'120',10);\r\n      if(isNaN(delay)||delay\u003C0) delay=120;\r\n      var timer=null;\r\n      function open(){ if(timer) clearTimeout(timer); item.classList.add('is-open'); }\r\n      function close(){ if(timer) clearTimeout(timer); timer=setTimeout(function(){ item.classList.remove('is-open'); },delay); }\r\n      on(item,'mouseenter',open);\r\n      on(item,'mouseleave',close);\r\n      on(item,'focusin',open);\r\n      on(item,'focusout',close);\r\n      on(d,'keydown',function(e){ if(e.key==='Escape'||e.keyCode===27) item.classList.remove('is-open'); });\r\n    });\r\n\r\n    \u002F\u002F 浮动分享栏：滚动后出现\r\n    qa('[data-dgw-share-float]').forEach(function(box){\r\n      if(box.__dgwSf) return; box.__dgwSf=1;\r\n      function upd(){\r\n        var y=w.pageYOffset||d.documentElement.scrollTop||0;\r\n        var shortPage=d.documentElement.scrollHeight\u003C=w.innerHeight+80;\r\n        box.classList.toggle('is-show', y>200||shortPage);\r\n      }\r\n      on(w,'scroll',upd);\r\n      upd();\r\n    });\r\n\r\n    \u002F\u002F 侧边导航：折叠 \u002F 展开\r\n    qa('[data-dgw-sidebartoggle]').forEach(function(btn){\r\n      if(btn.__dgwSb) return; btn.__dgwSb=1;\r\n      var box=btn.closest?btn.closest('[data-dgw-sidebar]'):null;\r\n      if(!box) return;\r\n      on(btn,'click',function(){\r\n        var off=box.classList.toggle('dgw-sidebar--collapsed');\r\n        btn.setAttribute('aria-expanded',off?'false':'true');\r\n        var ic=q('i',btn);\r\n        if(ic&&ic.className){\r\n          var to=off?'fa-angle-right':'fa-angle-left';\r\n          var from=off?'fa-angle-left':'fa-angle-right';\r\n          if(ic.className.indexOf('fa-angle-left')\u003C0&&ic.className.indexOf('fa-angle-right')\u003C0){ from=''; }\r\n          ic.className=from?ic.className.replace(from,to):(ic.className+' '+to);\r\n        }\r\n        try{ w.dispatchEvent(new CustomEvent('dgw:sidebar-toggle',{detail:{collapsed:off}})); }catch(e){}\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 锚点导航：平滑滚动 + 滚动高亮 + 阅读进度\r\n    qa('[data-dgw-anchors]').forEach(function(nav){\r\n      if(nav.__dgwAn) return; nav.__dgwAn=1;\r\n      var offset=parseInt(nav.getAttribute('data-offset')||'80',10)||0;\r\n      var smooth=nav.getAttribute('data-smooth')!=='0';\r\n      var spy=nav.getAttribute('data-spy')!=='0';\r\n      var links=qa('[data-dgw-anchor]',nav);\r\n      var bar=q('[data-dgw-anchor-progress]',nav);\r\n      function sec(id){ return id?d.getElementById(id):null; }\r\n      function mark(id){\r\n        links.forEach(function(a){ a.classList.toggle('dgw-active',a.getAttribute('data-dgw-anchor')===id); });\r\n      }\r\n      links.forEach(function(a){\r\n        on(a,'click',function(e){\r\n          var t=sec(a.getAttribute('data-dgw-anchor'));\r\n          if(!t){ return; }\r\n          e.preventDefault();\r\n          var y=w.pageYOffset||d.documentElement.scrollTop||0;\r\n          var top=t.getBoundingClientRect().top+y-offset;\r\n          if(smooth){ try{ w.scrollTo({top:Math.max(0,top),behavior:'smooth'}); }catch(err){ w.scrollTo(0,Math.max(0,top)); } }\r\n          else{ w.scrollTo(0,Math.max(0,top)); }\r\n          mark(a.getAttribute('data-dgw-anchor'));\r\n          if(history.replaceState){ try{ history.replaceState(null,'','#'+a.getAttribute('data-dgw-anchor')); }catch(err2){} }\r\n        });\r\n      });\r\n      function upd(){\r\n        if(bar){\r\n          var doc=d.documentElement;\r\n          var max=(doc.scrollHeight-w.innerHeight)||1;\r\n          var y=w.pageYOffset||doc.scrollTop||0;\r\n          bar.style.width=Math.min(100,Math.max(0,y\u002Fmax*100))+'%';\r\n        }\r\n        if(!spy||!links.length) return;\r\n        var cur=null, best=-1e9;\r\n        links.forEach(function(a){\r\n          var t=sec(a.getAttribute('data-dgw-anchor'));\r\n          if(!t) return;\r\n          var top=t.getBoundingClientRect().top-offset;\r\n          if(top\u003C=4&&top>best){ best=top; cur=a.getAttribute('data-dgw-anchor'); }\r\n        });\r\n        if(!cur) cur=links[0].getAttribute('data-dgw-anchor');\r\n        mark(cur);\r\n      }\r\n      on(w,'scroll',upd);\r\n      upd();\r\n    });\r\n\r\n    \u002F\u002F 排行榜：占比条从 0 展开\r\n    qa('[data-dgw-rankbar]').forEach(function(el){\r\n      if(el.__dgwRb) return; el.__dgwRb=1;\r\n      var pct=parseFloat(el.getAttribute('data-dgw-rankbar')||'0')||0;\r\n      function run(){\r\n        el.style.width='0%';\r\n        el.getBoundingClientRect();\r\n        el.style.width=pct+'%';\r\n      }\r\n      if('IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ run(); io.unobserve(el); } }); },{threshold:.25});\r\n        io.observe(el);\r\n      } else run();\r\n    });\r\n\r\n    \u002F\u002F 仪表盘：弧线扫过 + 数值滚动\r\n    qa('[data-dgw-gauge]').forEach(function(arc){\r\n      if(arc.__dgwGa) return; arc.__dgwGa=1;\r\n      var pct=parseFloat(arc.getAttribute('data-dgw-gauge')||'0')||0;\r\n      var svg=arc.closest?arc.closest('svg'):null;\r\n      var txt=svg?q('[data-dgw-gauge-text]',svg):null;\r\n      function countText(){\r\n        if(!txt) return;\r\n        var raw=parseFloat(txt.getAttribute('data-value')||'0');\r\n        if(isNaN(raw)) return;\r\n        var unit=txt.getAttribute('data-unit')||'';\r\n        var dec=parseInt(txt.getAttribute('data-dec')||'0',10)||0;\r\n        var t0=null;\r\n        function step(ts){\r\n          if(t0===null) t0=ts;\r\n          var p=Math.min(1,(ts-t0)\u002F900), e=1-Math.pow(1-p,3);\r\n          txt.textContent=(raw*e).toFixed(dec)+unit;\r\n          if(p\u003C1) requestAnimationFrame(step);\r\n        }\r\n        requestAnimationFrame(step);\r\n      }\r\n      function run(){\r\n        arc.getBoundingClientRect();\r\n        arc.setAttribute('stroke-dasharray',pct+' 100');\r\n        countText();\r\n      }\r\n      if('IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ run(); io.unobserve(arc); } }); },{threshold:.25});\r\n        io.observe(arc);\r\n      } else run();\r\n    });\r\n\r\n    \u002F\u002F 进度条：线性 \u002F 环形 \u002F 步骤 入场动画\r\n    qa('[data-dgw-progress]').forEach(function(box){\r\n      if(box.__dgwPb) return; box.__dgwPb=1;\r\n      var kind=box.getAttribute('data-dgw-progress');\r\n      var val=parseFloat(box.getAttribute('data-value')||'0')||0;\r\n      var fill=q('.dgw-progress i',box), circle=q('.dgw-progress-circle',box);\r\n      var steps=qa('.dgw-step',box);\r\n      var doneCount=steps.filter(function(s){ return s.classList.contains('is-done'); }).length;\r\n      function run(){\r\n        if(fill){\r\n          var target=fill.style.width||'';\r\n          if(target){\r\n            fill.style.width='0%'; fill.getBoundingClientRect();\r\n            fill.style.width=target;\r\n          }\r\n        }\r\n        if(circle){\r\n          var c=box.getAttribute('data-color')||'#1f4fa3', t=box.getAttribute('data-track')||'#eef1f5';\r\n          circle.style.background='conic-gradient('+c+' 0, '+c+' 0, '+t+' 0)';\r\n          circle.getBoundingClientRect();\r\n          circle.style.transition='background .9s ease';\r\n          circle.style.background='conic-gradient('+c+' calc('+val+'% * 1), '+t+' 0)';\r\n        }\r\n        if(kind==='step'&&steps.length){\r\n          steps.forEach(function(s){ s.classList.remove('is-done'); });\r\n          var shown=doneCount;\r\n          var cur=setInterval(function(){\r\n            if(shown\u003C=0){ clearInterval(cur); return; }\r\n            steps[--shown].classList.add('is-done');\r\n          },160);\r\n        }\r\n      }\r\n      if('IntersectionObserver' in w){\r\n        var io=new IntersectionObserver(function(es){ es.forEach(function(e){ if(e.isIntersecting){ run(); io.unobserve(box); } }); },{threshold:.25});\r\n        io.observe(box);\r\n      } else run();\r\n    });\r\n\r\n    \u002F\u002F 分享按钮：系统分享 → 复制链接兜底\r\n    qa('[data-dgw-share-item]').forEach(function(el){\r\n      if(el.__dgwSi) return; el.__dgwSi=1;\r\n      if(el.tagName==='A'&&el.getAttribute('href')&&el.getAttribute('href')!=='#') return;\r\n      on(el,'click',function(e){\r\n        var name=el.getAttribute('data-dgw-share-item')||'';\r\n        var wrap=el.closest?el.closest('.dgw-share'):null;\r\n        var tip=wrap?q('[data-dgw-share-tip]',wrap):null;\r\n        var url=w.location.href, title=d.title||'';\r\n        function feedback(){\r\n          if(tip){\r\n            tip.textContent='链接已复制，可分享到'+(name||'好友');\r\n            tip.classList.add('is-on');\r\n            clearTimeout(tip.__dgwSt);\r\n            tip.__dgwSt=setTimeout(function(){ tip.classList.remove('is-on'); },1800);\r\n          } else dgwToast(name?('已复制链接，可分享到'+name):'链接已复制');\r\n        }\r\n        if(navigator.share&&typeof navigator.share==='function'){\r\n          e.preventDefault();\r\n          try{ navigator.share({title:title,text:title,url:url}).catch(function(){}); }catch(err){ feedback(); }\r\n          return;\r\n        }\r\n        e.preventDefault();\r\n        dgwCopy(url,feedback);\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 加载态：重试按钮复位为加载中\r\n    qa('[data-dgw-loading]').forEach(function(box){\r\n      if(box.__dgwLd) return; box.__dgwLd=1;\r\n      qa('.dgw-loading-retry',box).forEach(function(btn){\r\n        on(btn,'click',function(){\r\n          box.setAttribute('aria-busy','true');\r\n          var ic=q('.dgw-loading-error-icon',box);\r\n          if(ic) ic.className='fa fa-spinner fa-spin dgw-loading-icon';\r\n          var t=q('.dgw-loading-text',box);\r\n          if(t) t.textContent=t.getAttribute('data-loading-text')||'加载中…';\r\n          btn.style.display='none';\r\n          try{ box.dispatchEvent(new CustomEvent('dgw:loading-retry',{bubbles:true})); }catch(e){}\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 分页：派发翻页事件（静态站点不拦截默认跳转）\r\n    qa('[data-dgw-page-size]').forEach(function(nav){\r\n      if(nav.__dgwPg) return; nav.__dgwPg=1;\r\n      var size=parseInt(nav.getAttribute('data-dgw-page-size')||'0',10)||0;\r\n      qa('.dgw-pager-item',nav).forEach(function(a){\r\n        on(a,'click',function(){\r\n          var m=\u002F[?&]page=(\\d+)\u002F.exec(a.getAttribute('href')||'');\r\n          var page=m?parseInt(m[1],10):1;\r\n          try{ nav.dispatchEvent(new CustomEvent('dgw:page-change',{bubbles:true,detail:{page:page,page_size:size}})); }catch(e){}\r\n        });\r\n      });\r\n    });\r\n\r\n    \u002F\u002F 表单：必填校验 + 提交反馈（novalidate 下自行校验）\r\n    qa('[data-dgw-form]').forEach(function(form){\r\n      if(form.__dgwFm) return; form.__dgwFm=1;\r\n      var demo=form.getAttribute('data-demo')==='1';\r\n      var msg=q('.dgw-form-msg',form);\r\n      var okText=form.getAttribute('data-success')||'提交成功';\r\n      var badText=form.getAttribute('data-error')||'提交失败';\r\n      function say(text,pass){\r\n        if(!msg) return;\r\n        msg.textContent=text;\r\n        msg.className='dgw-form-msg '+(pass?'is-success':'is-error');\r\n        msg.style.display='block';\r\n      }\r\n      function check(){\r\n        var bad=[];\r\n        qa('[required]',form).forEach(function(el){\r\n          var v=(el.value||'').replace(\u002F^\\s+|\\s+$\u002Fg,'');\r\n          var pass=v!=='';\r\n          if(pass&&el.type==='email') pass=\u002F^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\u002F.test(v);\r\n          if(pass&&el.type==='tel') pass=\u002F^[\\d\\s+\\-()]{6,}$\u002F.test(v);\r\n          el.setAttribute('aria-invalid',pass?'false':'true');\r\n          if(!pass) bad.push(el);\r\n        });\r\n        return bad;\r\n      }\r\n      on(form,'submit',function(e){\r\n        e.preventDefault();\r\n        var bad=check();\r\n        if(bad.length){ say(badText,false); if(bad[0].focus) bad[0].focus(); return; }\r\n        if(!demo){ try{ form.submit(); }catch(err){} return; }\r\n        var btn=q('button[type=\"submit\"]',form);\r\n        var old=btn?btn.textContent:'';\r\n        if(btn){ btn.disabled=true; btn.textContent=btn.getAttribute('data-loading-text')||'提交中…'; }\r\n        setTimeout(function(){\r\n          if(btn){ btn.disabled=false; btn.textContent=old; }\r\n          say(okText,true);\r\n          try{ form.dispatchEvent(new CustomEvent('dgw:form-submit',{bubbles:true})); }catch(err2){}\r\n        },700);\r\n      });\r\n      on(form,'reset',function(){\r\n        if(msg){ msg.style.display='none'; msg.textContent=''; }\r\n        qa('[aria-invalid]',form).forEach(function(el){ el.removeAttribute('aria-invalid'); });\r\n      });\r\n    });\r\n  }\r\n\r\n  w.__dgwBoot=boot;\r\n  if(d.readyState==='loading') d.addEventListener('DOMContentLoaded',boot); else boot();\r\n})();\u003C\u002Fscript>","关于夺冠科技,公司介绍","夺冠科技：专注企业数字化的一体化服务商。","1970-01-01 00:00:00","2026-09-29 12:53:34",1790836152800]