PageSourceSearch

http://hldj.com.cn/cat/1.html

html hldj.com.cn collected 2026-10-09 04:22:35 UTC 47,126 bytes, 331 lines download raw bytes

1<!doctype html><html lang="zh-CN" class="no-js"><head><meta charset="UTF-8"><meta name="referrer" content="no-referrer"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>行业资讯 - 福建画龙点睛园林_市政绿化工程_景观设计施工 - 画龙点睛园林</title><meta name="description" content="福建画龙点睛园林集团股份有限公司专注园林绿化工程、景观设计与市政绿化施工,业务涵盖道路绿化、小区景观、庭院设计、苗木供应及后期养护。官网提供项目案例、设计团队与工程咨询入口。"><meta name="keywords" content="园林景观设计,小区绿化养护,市政绿化工程,福建园林绿化公司,道路绿化施工,假山喷泉制作,公园景观设计,园林工程施工"><meta name="robots" content="index,follow"><link rel="canonical" href="http://hldj.com.cn/cat/1.html"><meta property="og:title" content="行业资讯 - 福建画龙点睛园林_市政绿化工程_景观设计施工 - 画龙点睛园林"><meta property="og:description" content="福建画龙点睛园林集团股份有限公司专注园林绿化工程、景观设计与市政绿化施工,业务涵盖道路绿化、小区景观、庭院设计、苗木供应及后期养护。官网提供项目案例、设计团队与工程咨询入口。"><meta property="og:url" content="http://hldj.com.cn/cat/1.html"><link rel="next" href="/cat/2.html"><meta property="og:image" content="https://pics1.baidu.com/feed/d833c895d143ad4b03959860816376a2a50f0641.jpeg@f_auto?token=dd918772d3ec1dbf799cd04fcde7b862"><link href="https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;700&display=swap" rel="stylesheet">
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"GeneralContractor","name":"画龙点睛园林","url":"http://hldj.com.cn/","description":"福建画龙点睛园林集团股份有限公司专注园林绿化工程、景观设计与市政绿化施工,业务涵盖道路绿化、小区景观、庭院设计、苗木供应及后期养护。官网提供项目案例、设计团队与工程咨询入口。"}</script>
1<style>:root{--ind-primary: #ea580c; --ind-primary-dark: #c2410c; --ind-primary-light: #ffedd5; --ind-accent: #d97706; --ind-bg: #fff7ed; --ind-bg-alt: #ffffff; --ind-gradient: linear-gradient(135deg, #7c2d12, #f97316); --ind-radius: 8px;}
2:root{--orange:var(--ind-primary,#ff6f00);--orange-l:var(--ind-primary-light,#ff8c1a);--concrete:#5a6166;--concrete-l:#7a8186;--concrete-d:#3a3e44;--ink:#1c1f24;--surface:#fff;--bg:#f5f5f3;--text:#3a3a3a;--text2:#6a6a6a;--text3:#9a9a9a;--line:#e4e4e0;--ff:'Oswald','Noto Sans SC','PingFang SC',sans-serif;--fm:'Oswald',monospace;--ease:cubic-bezier(.4,0,.2,1);--eo:cubic-bezier(.16,1,.3,1)}
3*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
4html{scroll-behavior:smooth}
5body{font-family:'Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;background:var(--ind-bg,#f5f5f3);color:#3a3a3a;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
6a{text-decoration:none;color:var(--orange);transition:all .3s var(--ease)}a:hover{color:var(--orange-l)}
7img{max-width:100%;display:block}
8h1,h2,h3,h4{font-family:var(--ff);font-weight:700;color:var(--ink)}
9::selection{background:var(--orange);color:#fff}
10::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--concrete)}::-webkit-scrollbar-thumb{background:var(--ink)}::-webkit-scrollbar-thumb:hover{background:var(--orange)}
11/* 顶部导航条(极简横条 + 全屏汉堡) */
12.topbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:18px 40px;display:flex;align-items:center;justify-content:space-between;transition:all .4s var(--ease);background:rgba(28,31,36,.92);backdrop-filter:blur(12px)}
13.topbar.scrolled{background:rgba(28,31,36,.96);backdrop-filter:blur(12px);padding:14px 40px;box-shadow:0 4px 24px rgba(0,0,0,.2)}
14.tb-brand{display:flex;align-items:center;gap:12px;color:#fff;font-family:var(--ff);font-weight:700;font-size:19px;text-transform:uppercase;letter-spacing:1px}
15.tb-brand .lg{width:40px;height:40px;background:var(--orange);display:flex;align-items:center;justify-content:center}
16.tb-brand .lg svg{width:24px;height:24px}
17.tb-brand .nm small{display:block;font-size:9px;color:var(--orange);letter-spacing:2.5px;font-weight:600}
18.tb-tools{display:flex;align-items:center;gap:24px}
19.tb-cta{color:#fff;font-size:13px;font-weight:600;padding:9px 22px;border:1.5px solid rgba(255,255,255,.3);text-transform:uppercase;letter-spacing:1px;transition:all .3s;display:inline-flex;align-items:center;gap:6px}
20.tb-cta:hover{background:var(--orange);border-color:var(--orange);color:#fff}
21.tb-cta svg{width:14px;height:14px}
22.burger{display:flex;flex-direction:column;gap:5px;background:transparent;border:none;cursor:pointer;padding:6px;width:32px}
23.burger span{display:block;height:2px;background:#fff;border-radius:1px;transition:all .3s}
24.burger span:nth-child(1){width:24px}.burger span:nth-child(2){width:16px;margin-left:auto}
25/* 全屏覆盖菜单 */
26.fullmenu{position:fixed;inset:0;z-index:1100;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:40px 8vw;clip-path:circle(0% at calc(100% - 56px) 40px);transition:clip-path .6s var(--eo);pointer-events:none}
27.fullmenu.open{clip-path:circle(150% at calc(100% - 56px) 40px);pointer-events:auto}
28.fm-close{position:absolute;top:24px;right:32px;width:44px;height:44px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s}
29.fm-close:hover{background:var(--orange);border-color:var(--orange)}
30.fm-nav{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
31.fm-links{list-style:none}
32.fm-links li{overflow:hidden}
33.fm-links a{display:inline-flex;align-items:baseline;gap:14px;color:#fff;font-family:var(--ff);font-size:clamp(1.6rem,4vw,2.6rem);font-weight:600;text-transform:uppercase;padding:6px 0;transition:color .3s;opacity:0;transform:translateY(20px)}
34.fullmenu.open .fm-links a{opacity:1;transform:translateY(0);transition:opacity .5s var(--eo),transform .5s var(--eo),color .3s}
35.fullmenu.open .fm-links li:nth-child(1) a{transition-delay:.15s}
36.fullmenu.open .fm-links li:nth-child(2) a{transition-delay:.22s}
37.fullmenu.open .fm-links li:nth-child(3) a{transition-delay:.29s}
38.fullmenu.open .fm-links li:nth-child(4) a{transition-delay:.36s}
39.fullmenu.open .fm-links li:nth-child(5) a{transition-delay:.43s}
40.fm-links a:hover{color:var(--orange)}
41.fm-links a .num{font-size:.4em;color:var(--orange);font-family:var(--fm)}
42.fm-info{color:rgba(255,255,255,.5)}
43.fm-info h4{color:#fff;font-size:14px;letter-spacing:2px;text-transform:uppercase;margin-bottom:16px}
44.fm-info p{font-size:14px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.fm-info p svg{width:16px;height:16px;color:var(--orange)}
45/* Hero(分屏 + 大网格) */
46.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink)}
47.hero-img{position:absolute;inset:0;background:linear-gradient(135deg,var(--ink) 0%,#2a2e33 50%,var(--concrete-d) 100%)}
48.hero-img::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px}
49.hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,31,36,.92) 0%,rgba(28,31,36,.4) 50%,rgba(28,31,36,.6) 100%)}
50.hero-c{position:relative;z-index:2;max-width:1300px;margin:0 auto;padding:0 40px 80px;width:100%}
51.hero-ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff);font-size:13px;letter-spacing:4px;text-transform:uppercase;color:var(--orange);font-weight:600;margin-bottom:20px}
52.hero-ey::before{content:'';width:36px;height:2px;background:var(--orange)}
53.hero h1{font-family:var(--ff);font-size:clamp(2.2rem,5vw,4rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:20px;text-transform:uppercase;letter-spacing:-.5px}
54.hero h1 .hi{color:var(--orange)}
55.hero p{font-size:1.05rem;color:rgba(255,255,255,.7);max-width:560px;margin-bottom:30px;line-height:1.7}
56.hero-btns{display:flex;gap:14px;flex-wrap:wrap}
57.hbtn{display:inline-flex;align-items:center;gap:8px;padding:15px 32px;font-size:13px;font-weight:600;font-family:var(--ff);text-transform:uppercase;letter-spacing:1px;transition:all .35s var(--ease);border:none;cursor:pointer}
58.hbtn svg{width:16px;height:16px}
59.hbtn-p{background:var(--orange);color:#fff}.hbtn-p:hover{background:var(--orange-l);transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,111,0,.35)}
60.hbtn-o{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.3)}.hbtn-o:hover{background:rgba(255,255,255,.08);border-color:var(--orange)}
61.hero-scroll{position:absolute;bottom:30px;right:40px;color:rgba(255,255,255,.4);font-family:var(--ff);font-size:11px;letter-spacing:3px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2;writing-mode:vertical-rl}
62.hero-scroll .ln{width:1px;height:50px;background:linear-gradient(var(--orange),transparent)}
63/* 区块 */
64.sec{padding:96px 40px;max-width:1300px;margin:0 auto}
65.sec-dark{background:var(--ink);color:rgba(255,255,255,.8)}
66.sec-dark h2,.sec-dark h3{color:#fff}
67.sec-head{margin-bottom:48px}
68.sec-ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--orange);font-weight:600;margin-bottom:14px}
69.sec-ey::before{content:'';width:28px;height:2px;background:var(--orange)}
70.sec-head h2{font-family:var(--ff);font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--ink);text-transform:uppercase;letter-spacing:-.5px;margin-bottom:12px;font-weight:700}
71.sec-dark .sec-head h2{color:#fff}
72.sec-head p{color:var(--text2);font-size:1rem;max-width:580px}.sec-dark .sec-head p{color:rgba(255,255,255,.6)}
73.sec-head.row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
74.sec-head.row p{margin:0}
75.pb{padding:140px 40px 70px;background:var(--ink);color:#fff;position:relative;overflow:hidden;text-align:center}
76.pb::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px}
77.pb-c{position:relative;z-index:1;max-width:1240px;margin:0 auto}
78.pb .ey{font-family:var(--ff);font-size:13px;letter-spacing:4px;text-transform:uppercase;color:var(--orange);font-weight:600;margin-bottom:14px}
79.pb h1{font-family:var(--ff);font-size:clamp(2rem,4vw,3rem);color:#fff;text-transform:uppercase;letter-spacing:-.5px;margin-bottom:10px;font-weight:700}
80.pb p{color:rgba(255,255,255,.6);font-size:1rem}
81.pb+.sec{padding-top:64px}
82/* 大图像网格 */
83.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
84.proj-card{position:relative;border-radius:0;overflow:hidden;background:var(--concrete-d);min-height:280px;display:flex;align-items:flex-end;padding:24px;text-decoration:none;color:#fff;transition:all .4s var(--ease);border:1px solid rgba(255,255,255,.06)}
85.proj-card.big{grid-column:span 2;grid-row:span 2;min-height:auto}
86.proj-card .pj-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--concrete),var(--ink));opacity:.9;transition:opacity .4s}
87.proj-card:hover .pj-bg{opacity:.7}
88.proj-card .pj-bg svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90px;height:90px;color:rgba(255,255,255,.1);transition:all .4s}
89.proj-card .pj-bg .pj-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
90.proj-card:hover .pj-bg .pj-img{transform:scale(1.05)}
91.proj-card:hover .pj-bg svg{color:rgba(255,111,0,.25);transform:translate(-50%,-50%) scale(1.1)}
92.proj-card .pj-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,31,36,.95),transparent 60%)}
93.proj-card .pj-c{position:relative;z-index:2;width:100%}
94.proj-card .pj-tag{display:inline-block;font-family:var(--ff);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--orange);background:rgba(255,111,0,.12);padding:3px 10px;margin-bottom:10px;font-weight:600}
95.proj-card h3{font-family:var(--ff);font-size:clamp(1.1rem,2vw,1.4rem);color:#fff;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-weight:600}
96.proj-card p{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:10px}
97.proj-card .pj-meta{display:flex;gap:14px;font-family:var(--ff);font-size:11px;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:1px}
98.proj-card .pj-meta span{display:inline-flex;align-items:center;gap:4px}
99.proj-card .pj-meta svg{width:12px;height:12px;color:var(--orange)}
100/* 业务卡片 */
101.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
102.svc-card{background:var(--surface);padding:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:all .35s var(--ease);text-decoration:none;color:inherit;display:flex;flex-direction:column;position:relative;overflow:hidden}
103.svc-card::before{content:'';position:absolute;top:0;left:0;width:0;height:3px;background:var(--orange);transition:width .35s var(--eo)}
104.svc-card:hover{background:var(--ink);color:rgba(255,255,255,.8)}
105.svc-card:hover::before{width:100%}
106.svc-card:hover h3{color:#fff}
107.svc-card .num{position:absolute;top:14px;left:14px;z-index:3;font-family:var(--ff);font-size:12px;color:#fff;font-weight:600;letter-spacing:2px;margin:0;padding:4px 10px;background:rgba(255,111,0,.85)}
108.svc-card .ic{width:100%;height:180px;display:flex;align-items:center;justify-content:center;margin:0;color:var(--orange);position:relative;overflow:hidden;background:var(--concrete-d)}
109.svc-card .ic svg{width:48px;height:48px;color:var(--orange)}
110.svc-card .ic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s}
111.svc-card:hover .ic img{transform:scale(1.06)}
112.svc-card h3{font-family:var(--ff);font-size:19px;color:var(--ink);margin:20px 0 10px;padding:0 30px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
113.svc-card p{font-size:13.5px;line-height:1.65;margin-bottom:14px;padding:0 30px}
114.svc-card .more{display:inline-flex;align-items:center;gap:5px;margin:auto 30px 24px;font-family:var(--ff);font-size:11px;text-transform:uppercase;letter-spacing:1.5px;font-weight:600;color:var(--orange)}
115.svc-card .more svg{width:13px;height:13px;transition:transform .3s}
116.svc-card:hover .more svg{transform:translateX(3px)}
117/* 统计带 */
118.stat-band{background:var(--ink);padding:0}
119.stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}
120.stat-item{padding:48px 24px;text-align:center;border-right:1px solid rgba(255,255,255,.06);position:relative}
121.stat-item:last-child{border-right:none}
122.stat-num{font-family:var(--ff);font-size:clamp(2.4rem,4.5vw,3.4rem);font-weight:700;color:var(--orange);line-height:1}
123.stat-num .u{font-size:.35em;color:rgba(255,255,255,.5);font-weight:400;margin-left:4px}
124.stat-lbl{font-family:var(--ff);font-size:12px;color:rgba(255,255,255,.5);letter-spacing:2px;text-transform:uppercase;margin-top:10px}
125/* 资讯 */
126.news-wrap{max-width:900px;margin:0 auto}
127.news-row{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;align-items:center;transition:all .3s}
128.news-row:hover{padding-left:10px}.news-row:hover .nt{color:var(--orange)}
129.news-dt{text-align:center;min-width:68px;flex-shrink:0;background:var(--concrete);padding:12px}
130.news-dt .d{font-family:var(--ff);font-size:1.7rem;font-weight:700;color:var(--ink);line-height:1}
131.news-dt .m{font-family:var(--ff);font-size:10px;color:var(--text3);letter-spacing:2px;text-transform:uppercase;margin-top:2px}
132.news-bd{flex:1;min-width:0}
133.news-row .nt{font-family:var(--ff);font-size:17px;color:var(--ink);font-weight:600;margin-bottom:6px;transition:color .3s;line-height:1.4}
134.news-row p{font-size:13px;color:var(--text2);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}
135.news-meta{display:flex;gap:12px;font-family:var(--ff);font-size:11px;color:var(--text3);text-transform:uppercase;letter-spacing:1px}
136.news-meta .tag{color:var(--orange)}
137/* 文章 */
138.art-wrap{max-width:840px;margin:0 auto;background:var(--surface);padding:48px;border-top:3px solid var(--orange)}
139.art-h{text-align:center;margin-bottom:32px;padding-bottom:26px;border-bottom:1px solid var(--line)}
140.art-h .tag{display:inline-block;font-family:var(--ff);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--orange);background:rgba(255,111,0,.08);padding:3px 12px;margin-bottom:16px;font-weight:600}
141.art-h h1{font-family:var(--ff);font-size:clamp(1.5rem,3vw,2.1rem);color:var(--ink);line-height:1.4;margin-bottom:14px;font-weight:700}
142.art-m{display:flex;justify-content:center;gap:18px;color:var(--text3);font-size:13px;font-family:var(--ff);text-transform:uppercase;letter-spacing:1px}
143.art-m span{display:inline-flex;align-items:center;gap:5px}
144.art-m svg{width:12px;height:12px}
145.art-b{color:var(--text);line-height:1.95;font-size:1rem}.art-b p{margin-bottom:1.2rem}
146.art-b h2,.art-b h3{color:var(--ink);margin:1.8rem 0 .8rem;padding-left:14px;border-left:4px solid var(--orange)}
147.art-nav{display:flex;justify-content:space-between;margin-top:38px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap;gap:1rem}
148.art-nav a{color:var(--text2);font-size:.9rem}.art-nav a:hover{color:var(--orange)}
149/* 关于 */
150.ab-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
151.ab-card{padding:40px;border:1px solid var(--line);margin:-1px 0 0 -1px;background:var(--surface);transition:all .3s}
152.ab-card:hover{background:var(--ink);color:rgba(255,255,255,.8)}.ab-card:hover h3{color:#fff}
153.ab-card .ic{width:52px;height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:var(--orange)}
154.ab-card .ic svg{width:32px;height:32px}
155.ab-card h3{font-family:var(--ff);font-size:19px;color:var(--ink);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}
156.ab-card p{font-size:14px;line-height:1.7}
157/* 联系 */
158.ct-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;max-width:1040px;margin:0 auto}
159.ct-info{background:var(--surface);padding:26px;margin-bottom:14px;display:flex;gap:16px;align-items:flex-start;border-left:3px solid var(--orange);transition:all .3s}
160.ct-info:hover{box-shadow:0 8px 24px rgba(0,0,0,.06)}
161.ct-info .ic{width:44px;height:44px;background:rgba(255,111,0,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
162.ct-info .ic svg{width:22px;height:22px;color:var(--orange)}
163.ct-info .lb{font-family:var(--ff);font-size:11px;color:var(--text3);letter-spacing:2px;text-transform:uppercase;margin-bottom:4px;font-weight:600}
164.ct-info .vl{color:var(--ink);font-weight:600}
165.ct-form{background:var(--surface);padding:32px;display:flex;flex-direction:column;gap:14px;border-top:3px solid var(--orange)}
166.ct-form .ft{font-family:var(--ff);font-size:1.2rem;color:var(--ink);margin-bottom:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
167.fr{display:grid;grid-template-columns:1fr 1fr;gap:14px}
168.ct-form input,.ct-form textarea,.ct-form select{background:#f9f9f7;border:1px solid var(--line);padding:13px 16px;color:var(--text);font-family:inherit;font-size:14px;transition:all .3s;width:100%}
169.ct-form input:focus,.ct-form textarea:focus{outline:none;border-color:var(--orange)}
170.ct-form input::placeholder,.ct-form textarea::placeholder{color:var(--text3)}
171.ct-form textarea{resize:vertical}
172.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;font-size:13px;font-weight:600;font-family:var(--ff);text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s var(--ease);text-decoration:none;border:none}
173.btn-p{background:var(--orange);color:#fff}.btn-p:hover{background:var(--orange-l);transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,111,0,.3)}
174.btn-o{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn-o:hover{background:var(--ink);color:#fff}
175/* 分页 */
176.pg{display:flex;justify-content:center;gap:6px;margin-top:34px;flex-wrap:wrap}
177.pg a,.pg span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--text2);font-family:var(--ff);font-size:14px;text-decoration:none;transition:all .3s;background:var(--surface)}
178.pg a:hover{border-color:var(--orange);color:var(--orange)}.pg .cur{background:var(--orange);color:#fff;border-color:var(--orange)}
179.pagination{display:flex;justify-content:center;gap:6px;margin-top:34px;flex-wrap:wrap}
180.pagination a,.pagination span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--text2);font-family:var(--ff);font-size:14px;text-decoration:none;transition:all .3s;background:var(--surface)}
181.pagination a:hover{border-color:var(--orange);color:var(--orange)}.pagination .current{background:var(--orange);color:#fff;border-color:var(--orange)}
182/* 相关 */
183.rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-top:18px}
184.rel-card{background:var(--surface);padding:18px;text-decoration:none;color:inherit;display:block;border-left:3px solid var(--line);transition:all .3s}
185.rel-card:hover{border-left-color:var(--orange)}.rel-card h4{font-family:var(--ff);font-size:14px;color:var(--ink);margin-bottom:5px;line-height:1.4}.rel-card p{font-size:12px;color:var(--text3)}
186/* 页脚 */
187.ft-block{background:var(--ink);color:rgba(255,255,255,.5);padding:56px 40px 24px}
188.ft-in{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;margin-bottom:30px}
189.ft-brand .nm{font-family:var(--ff);font-size:20px;color:#fff;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:1px}
190.ft-brand .nm svg{width:26px;height:26px;color:var(--orange)}
191.ft-brand p{color:rgba(255,255,255,.4);font-size:13px;max-width:320px;line-height:1.7}
192.ft-col h5{color:rgba(255,255,255,.8);font-family:var(--ff);font-size:12px;letter-spacing:2px;margin-bottom:16px;text-transform:uppercase;font-weight:600}
193.ft-col a{display:block;color:rgba(255,255,255,.4);font-size:13px;padding:5px 0;transition:color .2s}.ft-col a:hover{color:var(--orange)}
194.ft-bot{max-width:1300px;margin:0 auto;border-top:1px solid rgba(255,255,255,.06);padding-top:20px;
194display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
195.ft-copy{color:rgba(255,255,255,.3);font-size:12px;font-family:var(--ff);letter-spacing:1px;text-transform:uppercase}
196/* reveal */
197.js .rv{opacity:0;transform:translateY(28px)}
198.rv.in{opacity:1;transform:translateY(0);transition:opacity .7s var(--eo),transform .7s var(--eo)}
199.no-js .rv,.no-js .rv1,.no-js .rv2,.no-js .rv3,.no-js .rv4{opacity:1!important;transform:none!important}
200.rv1{transition-delay:.08s}.rv2{transition-delay:.16s}.rv3{transition-delay:.24s}.rv4{transition-delay:.32s}
201/* 列表/标签页三列卡片(对照 PHP list.php/tag.php 内联样式) */
202.alist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
203.alist-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:all .3s;display:flex;flex-direction:column}
204.alist-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.12)}
205.alist-cover{width:100%;height:180px;object-fit:cover;display:block}
206.alist-ph{width:100%;height:180px;background:linear-gradient(135deg,#334155,#64748b);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.4)}
207.alist-ph svg{width:48px;height:48px}
208.alist-bd{padding:18px 20px;flex:1;display:flex;flex-direction:column}
209.alist-bd h3{font-size:1rem;font-weight:700;margin-bottom:8px;line-height:1.4;color:#0f172a}
210.alist-bd p{font-size:.875rem;color:#64748b;margin-bottom:12px;flex:1;line-height:1.6}
211.alist-meta{display:flex;align-items:center;gap:10px;font-size:.75rem;color:#64748b}
212.alist-meta .tag{padding:2px 10px;background:#dbeafe;color:#2563eb;border-radius:4px;font-weight:500}
213/* 页脚友链(对照 PHP footer.php 内联样式) */
214.ft-blogroll{max-width:1200px;margin:0 auto;padding:16px 20px;text-align:center;border-bottom:1px solid rgba(255,255,255,0.08);font-size:14px}
215.ft-blogroll span{color:#888;margin-right:10px}
216.ft-blogroll a{color:#999;margin:0 6px;text-decoration:none}
217.ft-blogroll a:hover{color:var(--orange)}
218@media(max-width:1024px){.proj-grid{grid-template-columns:repeat(2,1fr)}.proj-card.big{grid-column:span 2;grid-row:auto}.fm-nav{grid-template-columns:1fr}.ab-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.ft-in{grid-template-columns:1fr 1fr}.alist-grid{grid-template-columns:repeat(2,1fr)}}
219@media(max-width:768px){.topbar{padding:14px 20px}.tb-cta{display:none}.proj-grid{grid-template-columns:1fr}.proj-card.big{grid-column:auto}.svc-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr}.stat-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}.sec{padding:60px 20px}.hero{min-height:auto;padding-top:100px}.hero-c{padding:0 20px 50px}.hero-scroll{display:none}.hero-btns{flex-direction:column}.hbtn{width:100%;justify-content:center}.fr{grid-template-columns:1fr}.ct-grid{grid-template-columns:1fr}.fm-links a{font-size:1.5rem}.alist-grid{grid-template-columns:1fr}}
220</style></head><body><div class="topbar" id="cstTopbar"><a href="/" class="tb-brand"><span class="lg"><svg viewBox="0 0 24 24"><path d="M4 21V9l8-6 8 6v12" fill="none" stroke="#fff" stroke-width="1.8"/><path d="M9 21v-6h6v6" fill="none" stroke="#fff" stroke-width="1.6"/><line x1="4" y1="21" x2="20" y2="21" stroke="#fff" stroke-width="1.8"/></svg></span> <span class="nm">画龙点睛园林<small>CONSTRUCTION</small></span></a><div class="tb-tools"><a href="/feedback.html" class="tb-cta"><svg viewBox="0 0 16 16"><path d="M2 4h12v8H2z" fill="none" stroke="currentColor" stroke-width="1.4"/><polyline points="2,4 8,9 14,4" fill="none" stroke="currentColor" stroke-width="1.4"/></svg><span>合作咨询</span></a> <button class="burger" id="cstBurger" aria-label="菜单"><span></span><span></span><span></span></button></div></div><div class="fullmenu" id="cstFullmenu"><button class="fm-close" id="cstFmClose" aria-label="关闭"><svg viewBox="0 0 16 16"><line x1="3" y1="3" x2="13" y2="13" stroke="currentColor" stroke-width="1.6"/><line x1="13" y1="3" x2="3" y2="13" stroke="currentColor" stroke-width="1.6"/></svg></button><div class="fm-nav"><ul class="fm-links"><li><a href="/"><span class="num">01</span>首页</a></li><li><a href="/items.html"><span class="num">02</span>业务</a><ul style="margin-top:8px;padding-left:20px;list-style:none"><li style="margin-bottom:4px"><a href="/items/33f920961ba46a0a7f4873ea44550702.html" style="font-size:14px;opacity:.8">— 园林绿化养护</a></li><li style="margin-bottom:4px">
220<a href="/items/df859ec5a3ae94ea72ad021a09f3fc38.html" style="font-size:14px;opacity:.8">— 假山喷泉制作</a></li><li style="margin-bottom:4px"><a href="/items/95dcdf561c9bde95ece8713ed2a75866.html" style="font-size:14px;opacity:.8">— 屋顶绿化</a></li><li style="margin-bottom:4px"><a href="/items/aa055cb666ee4c43f67fb32b61d0e801.html" style="font-size:14px;opacity:.8">— 公园景观设计</a></li><li style="margin-bottom:4px"><a href="/items/64d9380ce431c6d9f5853497a4ba5d1d.html" style="font-size:14px;opacity:.8">— 苗木花卉批发</a></li><li style="margin-bottom:4px"><a href="/items/8ee1a73ebeaabb1f007d0db384539217.html" style="font-size:14px;opacity:.8">— 庭院景观设计</a></li><li style="margin-bottom:4px"><a href="/items/4403f0cc08c7d66ebfa42f9a9133966b.html" style="font-size:14px;opacity:.8">— 小区绿化养护</a></li><li style="margin-bottom:4px"><a href="/items/f423b3259427708e6c52dd570d2f2109.html" style="font-size:14px;opacity:.8">— 道路绿化施工</a></li><li style="margin-bottom:4px"><a href="/items/2fd1910d3bf8de4016ad7149dd77b527.html" style="font-size:14px;opacity:.8">— 园林景观设计</a></li><li><a href="/items.html" style="font-size:12px;opacity:.6;color:var(--yellow)">查看全部业务 →</a></li></ul></li><li><a href="/cat/1.html"><span class="num">03</span>资讯</a></li><li><a href="/enterprise.html"><span class="num">04</span>关于</a></li><li><a href="/feedback.html"><span class="num">05</span>联系</a></li></ul><div class="fm-info"><h4>联系方式</h4><p><svg viewBox="0 0 16 16"><path d="M2 4h12v8H2z" fill="none" stroke="currentColor" stroke-width="1.4"/><polyline points="2,4 8,9 14,4" fill="none" stroke="currentColor" stroke-width="1.4"/></svg>[email protected]</p><p><svg viewBox="0 0 16 16"><circle cx="8" cy="8" r="6" fill="none" stroke="currentColor" stroke-width="1.3"/><path d="M8 5v3l2 1.5" fill="none" stroke="currentColor" stroke-width="1.3"/></svg>周一至周六 8:00-18:00</p><p><svg viewBox="0 0 16 16"><path d="M3 14V7l5-4 5 4v7" fill="none" stroke="currentColor" stroke-width="1.3"/></svg>建筑工程 · 市政施工 · 装饰装修</p></div></div></div><div class="pb"><div class="pb-c"><div class="ey">Industry News</div><h1>行业资讯</h1><p>建筑工程 · 行业动态 · 政策解读</p></div></div><section class="sec"><div class="news-wrap"><div class="sec-head" style="margin-bottom:24px"><span class="sec-ey">Latest News</span><h2>最新资讯</h2></div><div class="alist-grid"><a class="alist-card" href="/construction/239166.html"><img class="alist-cover" src="https://pics1.baidu.com/feed/d833c895d143ad4b03959860816376a2a50f0641.jpeg@f_auto?token=dd918772d3ec1dbf799cd04fcde7b862" alt="园林景观设计——自然与艺术的完美融合" loading="lazy"><div class="alist-bd"><h3>园林景观设计——自然与艺术的完美融合</h3><p>园林景观设计是将自然界中的美景和人工建筑巧妙结合的一种技术,它不仅是美化生活环境的艺术,更是提升生活质量的重要因子。随着人们生活水平的提高,对居住环境的要求也越来越高,如何在有限的空间内创造出既美观…</p><div class="alist-meta"><span class="tag">园林景观设计</span> <span>2026-10-03</span></div></div></a><a class="alist-card" href="/build/239165.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t047bdfdf2651531baa.jpg" alt="道路绿化施工的关键点解读:绿色生态新篇章" loading="lazy"><div class="alist-bd"><h3>道路绿化施工的关键点解读:绿色生态新篇章</h3><p>在城市化进程不断加速的背景下,如何平衡经济发展与环境保护的关系成为了亟待解决的问题。其中,道路绿化施工作为改善城市环境质量的重要手段之一,正逐渐被公众和相关部门所重视。本文将对道路绿化的现状、关键点…</p><div class="alist-meta"><span class="tag">道路绿化施工</span> <span>2026-10-03</span></div></div></a><a class="alist-card" href="/infrastructure/239164.html"><img class="alist-cover" src="https://img5.jc001.cn/img/450/1847450/5ef4b674bd9e2.jpg" alt="生态之花:市政绿化工程的魅力" loading="lazy"><div class="alist-bd"><h3>生态之花:市政绿化工程的魅力</h3><p>引言
221
222随着城市化进程的加速,人们越来越意识到绿色环境的重要性。在这样的背景下,市政绿化工程成为了提升市容市貌、改善居民生活质量的重要手段。
223
224绿化建设的现状与趋势
225
226近年来,各地政府纷纷加大了对市…</p><div class="alist-meta"><span class="tag">市政绿化工程</span> <span>2026-10-03</span></div></div></a><a class="alist-card" href="/contractor/239163.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t043d1c0ea97b8c6687.jpg" alt="福建园林绿化的魅力与实践" loading="lazy"><div class="alist-bd"><h3>福建园林绿化的魅力与实践</h3><p>近年来,福建园林绿化公司在推动生态文明建设和提升城市品质方面发挥了重要作用。这些公司在福建这片充满古韵的土地上,以独特的绿意为人们描绘出一幅幅生态画卷。
227
228福建园林绿化的现状
229
230福建是一个地形复杂、…</p><div class="alist-meta"><span class="tag">福建园林绿化公司</span> <span>2026-10-03</span></div></div></a><a class="alist-card" href="/engineering/239162.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t044f10ff2e2ecf16ca.jpg" alt="小区绿化养护,打造家门口的小公园" loading="lazy"><div class="alist-bd"><h3>小区绿化养护,打造家门口的小公园</h3><p>在快节奏的生活环境中,人们越来越重视精神的放松和居住环境的质量。一个好的居住环境能够带来愉悦的心情,并且对身心健康有着不可忽视的好处。今天就来和大家一起探讨一下如何通过小区绿化的养护,让我们的家门附…</p><div class="alist-meta"><span class="tag">小区绿化养护</span> <span>2026-10-03</span></div></div></a><a class="alist-card" href="/engineering/203582.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t044442fff91c1313f8.jpg" alt="城市绿化工程:提升公共空间绿色品质" loading="lazy"><div class="alist-bd"><h3>城市绿化工程:提升公共空间绿色品质</h3><p>在快节奏的城市发展中,我们似乎越来越忽略了与自然亲近的机会。近年来,随着环保意识的增强和人们对美好生活的追求,
230市政绿化工程成为了不可或缺的一部分。
231
232绿化工程的意义
233
234绿化工程不仅仅是简单的植树造林…</p><div class="alist-meta"><span class="tag">市政绿化工程</span> <span>2026-10-02</span></div></div></a><a class="alist-card" href="/construction/203581.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t048763f5eb545ce041.jpg" alt="福建园林绿化公司:与自然共享美好" loading="lazy"><div class="alist-bd"><h3>福建园林绿化公司:与自然共享美好</h3><p>当代城市中的一抹绿
235
236园林绿化的独特价值
237
238当代城市中,随着人们对于生活质量要求的不断提升,一座城市的颜值往往也成了评判的标准之一。福建园林绿化公司在这样的背景下应运而生并蓬勃发展。它们在为城市增添…</p><div class="alist-meta"><span class="tag">福建园林绿化公司</span> <span>2026-10-02</span></div></div></a><a class="alist-card" href="/build/203580.html"><img class="alist-cover" src="https://5b0988e595225.cdn.sohucs.com/images/20200425/cd5e95b7332f4247b1d44aa8d22c3f3f.jpeg" alt="园林景观设计:让大自然融入城市生活的艺术" loading="lazy"><div class="alist-bd"><h3>园林景观设计:让大自然融入城市生活的艺术</h3><p>在快节奏的城市生活中,人们越来越渴望与自然亲近。园林景观设计就像一幅幅精心绘制的画卷,在忙碌中带来一份宁静,为钢筋水泥构筑的城市注入了绿色生机。
239
240绿色生态与建筑融合
241
242随着社会对可持续发展和环保意…</p><div class="alist-meta"><span class="tag">园林景观设计</span> <span>2026-10-02</span></div></div></a><a class="alist-card" href="/infrastructure/203579.html"><img class="alist-cover" src="https://p0.so.qhimg.com/t04014eda559bf27f3a.jpg" alt="绿意盎然:探索小区绿化养护的新篇章" loading="lazy"><div class="alist-bd"><h3>绿意盎然:探索小区绿化养护的新篇章</h3><p>随着城市化进程的加快,社区环境质量越来越受到人们的关注。特别是在居住社区中,绿化养护不仅关乎日常生活的舒适度,更影响着居民的心情与健康。小区ç
242»¿åŒ–养护如何在新时代焕发新活力?让我们一探究竟。
243
244近年来…</p><div class="alist-meta"><span class="tag">小区绿化养护</span> <span>2026-10-02</span></div></div></a><a class="alist-card" href="/contractor/203578.html"><img class="alist-cover" src="https://pic.bestb2b.com/04c5ca82ecc05041021d1c6d95b549b7.jpg" alt="道路绿化施工中的新趋势" loading="lazy"><div class="alist-bd"><h3>道路绿化施工中的新趋势</h3><p>随着城市化进程的不断加快,我们的街道、环路和交通要道被赋予了更多的使命——不仅是连接不同区域、方便人们出行的空间,更是承载着生态和谐与美化环境重任的重要场所。这其中,道路绿化施工作为提升城市美学的关…</p><div class="alist-meta"><span class="tag">道路绿化施工</span> <span>2026-10-02</span></div></div></a></div><div class="pg"><span class="cur">1</span> <a href="/cat/2.html">2</a> <a href="/cat/2.html">›</a></div></div></section><footer class="ft-block"><div class="ft-blogroll"><span>友情链接:</span> <a href="http://wap.szktcool.net.cn" title="科酷空调" target="_blank" rel="dofollow">科酷空调</a><a href="http://m.glyizhu.com" title="南庭艺筑装饰" target="_blank" rel="dofollow">南庭艺筑装饰</a><a href="http://m.0410zxw.com" title="丹东瑞隆装饰" target="_blank" rel="dofollow">丹东瑞隆装饰</a><a href="http://wap.qxnhl.com" title="艺库空间装饰" target="_blank" rel="dofollow">艺库空间装饰</a><a href="http://wap.bzxgejf.cn" title="谁拔装潢设计" target="_blank" rel="dofollow">谁拔装潢设计</a><a href="http://wap.sz-kml.com" title="卡米洛装饰" target="_blank" rel="dofollow">卡米洛装饰</a><a href="http://www.sxhdjg.cn" title="河东建工" target="_blank" rel="dofollow">河东建工</a><a href="http://wap.hntymjg.cn" title="天宇膜结构" target="_blank" rel="dofollow">天宇膜结构</a><a href="http://www.xiayugongyi.com" title="德堡装饰" target="_blank" rel="dofollow">德堡装饰</a><a href="http://m.1nm7d.cn" title="联杰装潢设计" target="_blank" rel="dofollow">联杰装潢设计</a><a href="http://m.zyzsr.cn" title="装雅装饰" target="_blank" rel="dofollow">装雅装饰</a><a href="http://m.qhmiaojing.com" title="妙景园林景观" target="_blank" rel="dofollow">妙景园林景观</a><a href="http://wap.qxfsjz.cn" title="群需建筑防水" target="_blank" rel="dofollow">群需建筑防水</a><a href="http://www.cqdryy.com" title="唯楷电竞装饰" target="_blank" rel="dofollow">唯楷电竞装饰</a><a href="http://m.yfztool.com" title="壹智能工程" target="_blank" rel="dofollow">壹智能工程</a><a href="http://m.dgyl.com.cn" title="滇桂园林" target="_blank" rel="dofollow">滇桂园林</a><a href="http://wap.lingdianzs.com" title="藁城零点装饰" target="_blank" rel="dofollow">
244藁城零点装饰</a><a href="http://m.njyaoqing.com" title="耀青幕墙工程" target="_blank" rel="dofollow">耀青幕墙工程</a><a href="http://m.mfsvv.com" title="华睿图工程建设" target="_blank" rel="dofollow">华睿图工程建设</a><a href="http://wap.scntcl.com" title="圣熙机电工程" target="_blank" rel="dofollow">圣熙机电工程</a></div><div class="ft-in"><div class="ft-brand"><div class="nm"><svg viewBox="0 0 24 24"><path d="M4 21V9l8-6 8 6v12" fill="none" stroke="currentColor" stroke-width="1.8"/><path d="M9 21v-6h6v6" fill="none" stroke="currentColor" stroke-width="1.6"/><line x1="4" y1="21" x2="20" y2="21" stroke="currentColor" stroke-width="1.8"/></svg><span>画龙点睛园林</span></div><p>建筑工程、市政施工与装饰装修综合建设服务商,承建各类工业与民用建筑项目,以匠心铸就品质工程,安全高效交付每一个项目。</p></div><div class="ft-col"><h5>业务</h5><a href="/items.html">园林景观设计</a><a href="/items.html">小区绿化养护</a><a href="/items.html">市政绿化工程</a><a href="/items.html">福建园林绿化公司</a></div><div class="ft-col"><h5>导航</h5><a href="/">首页</a> <a href="/cat/1.html">行业资讯</a> <a href="/enterprise.html">关于我们</a> <a href="/feedback.html">联系我们</a></div><div class="ft-col"><h5>联系</h5><a href="mailto:[email protected]">[email protected]</a> <a style="cursor:default;color:rgba(255,255,255,.4)">周一至周六 8:00-18:00</a> <a style="cursor:default;color:rgba(255,255,255,.4)">建筑·市政·装饰·钢构</a></div></div><div class="ft-bot"><div class="ft-copy">&copy; 2026 画龙点睛园林 · 建筑工程 · 市政施工 · 装饰装修</div></div></footer>
244<script src="/js/ads.js?v=1" async></script>
244<script>document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js")</script>
244<script>(function(){
245var tb=document.getElementById('cstTopbar');
246function onS(){if(tb)tb.classList.toggle('scrolled',window.scrollY>50);}
247window.addEventListener('scroll',onS,{passive:true});onS();
248var burger=document.getElementById('cstBurger'),fm=document.getElementById('cstFullmenu'),close=document.getElementById('cstFmClose');
249if(burger&&fm){burger.addEventListener('click',function(){fm.classList.add('open');document.body.style.overflow='hidden';});}
250if(close&&fm){close.addEventListener('click',function(){fm.classList.remove('open');document.body.style.overflow='';});}
251if(fm){document.addEventListener('keydown',function(e){if(e.key==='Escape'&&fm.classList.contains('open')){fm.classList.remove('open');document.body.style.overflow='';}});}
252function fallback(){
253var o=new IntersectionObserver(function(es){es.forEach(function(en){if(en.isIntersecting){en.target.classList.add('in');o.unobserve(en.target);}});},{threshold:0,rootMargin:'0px 0px -5% 0px'});
254var allRv=[].slice.call(document.querySelectorAll('.rv'));allRv.forEach(function(el){o.observe(el)});setTimeout(function(){allRv.forEach(function(el){if(!el.classList.contains('in'))el.classList.add('in');});},1500);
255document.querySelectorAll('[data-count]').forEach(function(el){var t=parseFloat(el.getAttribute('data-count'));var s=el.getAttribute('data-suffix')||'';var io=new IntersectionObserver(function(es){es.forEach(function(en){if(en.isIntersecting){var c=0,ti=setInterval(function(){c+=t/40;if(c>=t){c=t;clearInterval(ti);}el.innerHTML=Math.floor(c)+s;},30);io.unobserve(en.target);}},{threshold:.5});io.observe(el);});});
256}
257if(typeof gsap==='undefined'){fallback();return;}
258gsap.registerPlugin(ScrollTrigger);
259gsap.utils.toArray('.rv').forEach(function(el){ScrollTrigger.create({trigger:el,start:'top 88%',once:true,onEnter:function(){el.classList.add('in');}});});
260gsap.utils.toArray('[data-count]').forEach(function(el){var t=parseFloat(el.getAttribute('data-count'));var s=el.getAttribute('data-suffix')||'';var o={v:0};ScrollTrigger.create({trigger:el,start:'top 85%',once:true,onEnter:function(){gsap.to(o,{v:t,duration:2,ease:'power2.out',onUpdate:function(){el.innerHTML=Math.floor(o.v)+s;}});}});});
261if(document.querySelector('.proj-grid')){ScrollTrigger.create({trigger:'.proj-grid',start:'top 80%',once:true,onEnter:function(){gsap.fromTo('.proj-grid .proj-card',{y:40,opacity:0},{y:0,opacity:1,duration:.6,stagger:.08,ease:'power2.out'});}});}
262if(document.querySelector('.svc-grid')){ScrollTrigger.create({trigger:'.svc-grid',start:'top 85%',once:true,onEnter:function(){gsap.fromTo('.svc-grid .svc-card',{y:30,opacity:0},{y:0,opacity:1,duration:.5,stagger:.06,ease:'power2.out'});}});}
263})();</script>
263<script>(function(){
264if(window.__msgFormBound)return;window.__msgFormBound=1;
265function isMsgForm(f){
266if(!f||f.tagName!=='FORM')return false;
267if(f.hasAttribute('data-fake-submit'))return true;
268var os=f.getAttribute('onsubmit')||'';
269if(os.indexOf('return false')<0)return false;
270return !!(f.querySelector('textarea')||f.querySelector('[name="name"],[name="phone"],[name="email"],[name="contact"],[name="message"],[name="content"]'));
271}
272function addHoneypot(f){
273if(f.querySelector('input[name="_gotcha"]'))return;
274var i=document.createElement('input');
275i.type='text';i.name='_gotcha';i.tabIndex=-1;i.autocomplete='off';i.setAttribute('aria-hidden','true');
276i.style.cssText='position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden';
277f.appendChild(i);
278}
279function val(f,names){
280for(var i=0;i<names.length;i++){var el=f.querySelector('[name="'+names[i]+'"]');if(el&&el.value&&el.value.trim())return el.value.trim();}
281return '';
282}
283function extras(f){
284var defs=[['type','咨询类型'],['company','公司'],['org','单位'],['dept','科室'],['intent','意向'],['address','地址'],['from','出发地'],['to','目的地'],['checkin','入住日期'],['checkout','退房日期']];
285var out=[];
286for(var i=0;i<defs.length;i++){var v=val(f,[defs[i][0]]);if(v)out.push('['+defs[i][1]+'] '+v);}
287return out;
288}
289function note(f,msg,ok){
290var old=f.parentNode.querySelector('.msg-form-note');if(old)old.parentNode.removeChild(old);
291var d=document.createElement('div');d.className='msg-form-note';
292d.style.cssText='margin:10px 0;padding:10px 14px;border-radius:6px;font-size:14px;text-align:center;'+(ok?'background:#d4edda;color:#155724;border:1px solid #c3e6cb':'background:#f8d7da;color:#721c24;border:1px solid #f5c6cb');
293d.textContent=msg;
294f.parentNode.insertBefore(d,f);
295}
296function done(f){
297var d=document.createElement('div');
298d.style.cssText='padding:20px;border-radius:8px;background:#d4edda;color:#155724;border:1px solid #c3e6cb;text-align:center;font-size:15px';
299d.textContent='✔ 提交成功,我们会尽快与您联系!';
300f.parentNode.replaceChild(d,f);
301}
302function submit(f){
303if(f.getAttribute('data-msg-sending'))return;
304f.setAttribute('data-msg-sending','1');
305var name=val(f,['name','your-name','username']);
306var contact=val(f,['contact','phone','tel','mobile']);
307var email=val(f,['email','mail']);
308if(email){contact=contact?contact+' / '+email:email;}
309var content=val(f,['content','message','msg','body']);
310if(!content){var ta=f.querySelector('textarea');if(ta&&ta.value)content=ta.value.trim();}
311var ex=extras(f);if(ex.length)content=(content?content+'\n':'')+ex.join('\n');
312var g=f.querySelector('input[name="_gotcha"]');
313var payload={name:name,contact:contact,content:content,source_url:location.href,_gotcha:g?g.value:''};
314fetch('/api/message',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify(payload)})
315.then(function(r){return r.json();})
316.then(function(r){
317if(r&&r.code===0){done(f);}
318else{note(f,(r&&r.message)||'提交失败,请稍后再试',false);f.removeAttribute('data-msg-sending');}
319})
320.catch(function(){note(f,'网络异常,请稍后再试',false);f.removeAttribute('data-msg-sending');});
321}
322function scan(){
323var fs=document.querySelectorAll('form');
324for(var i=0;i<fs.length;i++){if(isMsgForm(fs[i]))addHoneypot(fs[i]);}
325}
326if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',scan);}else{scan();}
327document.addEventListener('submit',function(e){
328var f=e.target;
329if(isMsgForm(f)){e.preventDefault();submit(f);}
330},true);
331})();</script>
331</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.