/* ===== 佳鸿威科技 响应式前台样式 ===== */
:root{
  --navy:#0a2540; --navy-2:#0f3560; --navy-3:#154b85;
  --primary:#1769ff; --primary-d:#0b57e0; --cyan:#22d3ee;
  --orange:#ff7a18; --orange-d:#f06505;
  --text:#26313f; --text-2:#5a6573; --text-3:#8b95a3;
  --line:#e7edf5; --bg:#fff; --bg-gray:#f4f7fb;
  --radius:12px; --shadow:0 6px 24px rgba(16,42,74,.08); --shadow-2:0 14px 40px rgba(16,42,74,.14);
  --w:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;color:var(--text);background:var(--bg);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;user-select:none}
input,textarea{user-select:text}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:color .2s}
ul{list-style:none}
h1,h2,h3,h4{line-height:1.3;font-weight:700}
.container{max-width:var(--w);margin:0 auto;padding:0 20px}
.ico{width:20px;height:20px;flex:none}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:8px;font-size:15px;font-weight:600;border:1.5px solid transparent;cursor:pointer;transition:.25s;white-space:nowrap}
.btn .ico{width:17px;height:17px}
.btn-lg{padding:13px 30px;font-size:16px}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-d);transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,105,255,.32)}
.btn-orange{background:linear-gradient(135deg,var(--orange),#ff9444);color:#fff}
.btn-orange:hover{background:var(--orange-d);transform:translateY(-2px);box-shadow:0 10px 26px rgba(255,122,24,.35)}
.btn-outline{border-color:var(--primary);color:var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff}
.btn-ghost-light{border-color:rgba(255,255,255,.7);color:#fff}
.btn-ghost-light:hover{background:#fff;color:var(--navy)}
.btn-block{width:100%;justify-content:center}
.section{padding:64px 0}
.section-gray{background:var(--bg-gray)}
.section-nopad{padding:34px 0 60px}
.sec-head{text-align:center;margin-bottom:38px}
.sec-head h2{font-size:30px;color:var(--navy);position:relative;display:inline-block;padding-bottom:16px}
.sec-head h2:after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:54px;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--primary),var(--cyan))}
.sec-head span{display:block;font-size:13px;letter-spacing:3px;color:var(--text-3);margin-top:8px;font-weight:600}
.sec-head p{color:var(--text-2);margin-top:12px;font-size:15px}
.sec-head.light h2{color:#fff}
.sec-head.light span{color:rgba(255,255,255,.65)}
.sec-kicker{display:inline-block;color:var(--primary);font-size:13px;letter-spacing:3px;font-weight:700;margin-bottom:10px}

/* ===== 顶条 ===== */
.topbar{background:var(--navy);color:rgba(255,255,255,.82);font-size:13px}
.topbar-in{display:flex;justify-content:space-between;align-items:center;height:38px}
.topbar-right{display:flex;align-items:center;gap:10px}
.topbar-right b{color:var(--cyan)}
.topbar-right .sep{opacity:.4}
.topbar-right a:hover{color:var(--cyan)}

/* ===== 头部 ===== */
.header{background:#fff;box-shadow:0 2px 14px rgba(10,37,64,.06);position:sticky;top:0;z-index:200}
.header-in{display:flex;align-items:center;gap:30px;height:88px}
.logo{display:flex;align-items:center;gap:12px;flex:none}
.logo-img{height:62px;width:auto;display:block;border-radius:6px}
.logo-sub{font-size:13px;color:var(--cyan);letter-spacing:1.5px;font-weight:500;white-space:nowrap;border-left:2px solid var(--cyan);padding-left:12px;line-height:1.4}
.logo-mark{width:50px;height:50px;border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--navy-3));display:grid;place-items:center;box-shadow:0 8px 18px rgba(23,105,255,.3)}
.logo-mark svg{width:28px;height:28px}
.logo-text b{display:block;font-size:22px;color:var(--navy);letter-spacing:1px;line-height:1.2}
.logo-text small{font-size:10.5px;color:var(--text-3);letter-spacing:2.2px}
.header-search{flex:1;max-width:440px;margin-left:auto}
.header-search form{display:flex;border:2px solid var(--primary);border-radius:30px;overflow:hidden;background:#fff}
.header-search input{flex:1;border:0;outline:0;padding:10px 18px;font-size:14px;color:var(--text);background:transparent}
.header-search button{border:0;background:var(--primary);color:#fff;width:46px;cursor:pointer;display:grid;place-items:center}
.header-search button .ico{width:19px;height:19px}
.header-phone{display:flex;align-items:center;gap:10px;padding-left:24px;border-left:1px solid var(--line)}
.header-phone .ico{width:30px;height:30px;color:var(--orange)}
.header-phone small{display:block;font-size:12px;color:var(--text-3)}
.header-phone b{font-size:21px;color:var(--navy);letter-spacing:.5px}
.nav-toggle{display:none;background:none;border:0;color:var(--navy);cursor:pointer;padding:8px;flex-shrink:0;line-height:0;border-radius:6px;-webkit-tap-highlight-color:transparent}

/* ===== 主导航 ===== */
.mainnav{background:var(--navy);position:sticky;top:88px;z-index:190}
.nav-list{display:flex}
.nav-list>li{position:relative}
.nav-list>li>a{display:flex;align-items:center;height:54px;padding:0 21px;color:#eaf1fb;font-size:16px;font-weight:600;position:relative}
.nav-list>li>a:after{content:"";position:absolute;left:50%;bottom:0;width:0;height:3px;background:var(--cyan);transition:.25s;transform:translateX(-50%)}
.nav-list>li>a:hover,.nav-list>li>a.on{color:#fff;background:var(--navy-2)}
.nav-list>li>a:hover:after,.nav-list>li>a.on:after{width:100%}
.caret{width:6px;height:6px;border-right:2px solid rgba(255,255,255,.7);border-bottom:2px solid rgba(255,255,255,.7);transform:rotate(45deg);margin-left:7px;margin-top:-3px}
.submenu{position:absolute;top:100%;left:0;min-width:210px;background:#fff;border-radius:0 0 10px 10px;box-shadow:var(--shadow-2);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;z-index:50}
.nav-list>li:hover .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.submenu a{display:flex;align-items:center;padding:10px 14px;border-radius:8px;color:var(--text-2);font-size:14.5px;font-weight:500}
.submenu a .dot{width:7px;height:7px;border-radius:50%;background:var(--line);margin-right:10px;transition:.2s}
.submenu a:hover{background:#eef4ff;color:var(--primary)}
.submenu a:hover .dot{background:var(--primary);box-shadow:0 0 0 4px rgba(23,105,255,.15)}

/* ===== Hero ===== */
.hero{position:relative;height:540px;overflow:hidden;background:radial-gradient(1100px 620px at 82% -10%,#15447e 0%,var(--navy) 52%,#061a33 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(90,150,230,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(90,150,230,.07) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(900px 500px at 70% 30%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(900px 500px at 70% 30%,#000 30%,transparent 75%)}
.hero-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;pointer-events:none}
.hero .glow-a{width:420px;height:420px;right:-120px;top:-140px;background:radial-gradient(circle,rgba(34,211,238,.55),transparent 65%)}
.hero .glow-b{width:460px;height:460px;left:-160px;bottom:-220px;background:radial-gradient(circle,rgba(23,105,255,.5),transparent 65%);animation:glowPulse 7s ease-in-out infinite alternate}
@keyframes glowPulse{from{opacity:.35}to{opacity:.6}}
.hero-art{position:absolute;right:2%;top:50%;transform:translateY(-50%);width:46%;max-width:620px;z-index:2;animation:floatY 6s ease-in-out infinite alternate;filter:drop-shadow(0 30px 60px rgba(0,0,0,.35))}
.hero-art img{width:100%;display:block}
@keyframes floatY{from{transform:translateY(-52%)}to{transform:translateY(-47%)}}
.hero-slides{position:absolute;inset:0}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s;display:flex;align-items:center}
.hero-slide.active{opacity:1;visibility:visible}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:1}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,51,.85) 0%,rgba(6,26,51,.55) 50%,rgba(6,26,51,.25) 100%);z-index:2}
.hero-inner{position:relative;z-index:3}
.hero-copy{max-width:620px}
.hero-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(34,211,238,.12);border:1px solid rgba(34,211,238,.4);color:#9fe9f5;font-size:13.5px;padding:7px 16px;border-radius:30px;margin-bottom:22px;animation:rise .6s ease both}
.hero-tag .ico{width:15px;height:15px;color:var(--cyan)}
.hero-title{color:#fff;font-size:45px;font-weight:800;letter-spacing:1px;line-height:1.28;text-shadow:0 4px 24px rgba(0,0,0,.35);animation:rise .7s ease both}
.hero-sub{color:rgba(235,243,255,.92);font-size:18.5px;margin:18px 0 30px;max-width:560px;animation:rise .7s .12s ease both}
.hero-btns{display:flex;gap:16px;animation:rise .7s .24s ease both}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border:1.5px solid rgba(255,255,255,.35);background:rgba(10,37,64,.35);backdrop-filter:blur(4px);border-radius:50%;cursor:pointer;z-index:6;transition:.25s;display:flex;align-items:center;justify-content:center}
.hero-arrow .ico{width:20px;height:20px;color:#fff}
.hero-arrow.prev{left:22px}.hero-arrow.prev .ico{transform:rotate(180deg)}
.hero-arrow.next{right:22px}
.hero-arrow:hover{background:var(--primary);border-color:var(--primary)}
.hero-dots{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:6}
.hero-dots button{width:34px;height:4px;border-radius:2px;border:0;background:rgba(255,255,255,.4);cursor:pointer;transition:.25s}
.hero-dots button.on{background:var(--cyan);width:48px}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}

/* ===== 服务承诺条 ===== */
.features{background:#fff;box-shadow:var(--shadow);position:relative;z-index:10;margin-top:-34px;margin-left:auto;margin-right:auto;max-width:calc(var(--w) - 0px);border-radius:14px}
.features-in{display:grid;grid-template-columns:repeat(4,1fr)}
.feature-item{display:flex;align-items:center;gap:14px;padding:26px 28px;border-right:1px solid var(--line)}
.feature-item:last-child{border-right:0}
.feature-ico{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#eaf2ff,#dceaff);color:var(--primary);display:grid;place-items:center;flex:none}
.feature-ico .ico{width:25px;height:25px}
.feature-item b{display:block;font-size:16.5px;color:var(--navy)}
.feature-item small{color:var(--text-3);font-size:13px}

/* ===== 宣传视频 ===== */
.video-section{background:linear-gradient(180deg,#f4f7fb 0%,#fff 100%)}
.video-wrap{max-width:960px;margin:0 auto;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-2);background:#000}
.promo-video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
@media (max-width:768px){.video-wrap{border-radius:10px}}

/* ===== 视频案例 ===== */
.video-case-section{background:#fff}
.video-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.video-case-card{display:block;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-1);transition:transform .3s,box-shadow .3s}
.video-case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)}
.video-case-img{position:relative;aspect-ratio:16/9;overflow:hidden}
.video-case-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.video-case-card:hover .video-case-img img{transform:scale(1.06)}
.video-watermark{position:absolute;top:8px;right:10px;background:rgba(0,0,0,.45);color:#fff;font-size:11px;padding:2px 8px;border-radius:3px;letter-spacing:1px;z-index:2;pointer-events:none}
.video-wrap{position:relative;display:inline-block;width:100%}
.video-wrap .video-watermark{font-size:13px;padding:4px 12px}
.video-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.25);opacity:0;transition:opacity .3s}
.video-play .ico{width:44px;height:44px;color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
.video-case-card:hover .video-play{opacity:1}
.video-case-info{padding:14px 12px}
.video-case-info h3{font-size:14px;color:var(--navy);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.video-case-info p{font-size:12px;color:var(--text-3);line-height:1.5;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.video-more{display:inline-flex;align-items:center;gap:4px;color:var(--accent);font-size:12px;font-weight:600}
.video-more .ico{width:12px;height:12px}
.sec-more{text-align:center;margin-top:34px}
.case-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:30px;padding:16px 0}
.case-page-btn{padding:8px 20px;background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--text-1);font-size:14px;text-decoration:none;transition:.2s}
.case-page-btn:hover:not(.disabled){background:var(--blue);color:#fff;border-color:var(--blue)}
.case-page-btn.disabled{opacity:.4;pointer-events:none}
.case-page-info{font-size:14px;color:var(--text-2)}
.detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:30px 0 0;padding:20px 0;border-top:1px solid var(--line)}
.detail-wechat{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:8px;background:var(--navy);color:#fff;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:.2s}
.detail-wechat:hover{background:#1a3a5c}
.detail-wechat .ico{width:18px;height:18px}
.detail-wechat-pop{display:none;position:absolute;margin-top:12px;text-align:center}
.detail-wechat-pop.show{display:block}
.detail-wechat-pop img{width:110px;height:110px;border-radius:8px;background:#fff;padding:4px;box-shadow:0 4px 16px rgba(0,0,0,.15)}
.detail-wechat-pop small{display:block;margin-top:6px;color:var(--text-2);font-size:12px}
@media (max-width:992px){.video-case-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:576px){.video-case-grid{grid-template-columns:1fr}}

/* ===== 核心业务 ===== */
.biz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.biz-card{position:relative;padding:34px 30px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);overflow:hidden;transition:.3s}
.biz-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--primary),var(--cyan));transform:scaleX(0);transform-origin:left;transition:.35s}
.biz-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-2);border-color:transparent}
.biz-card:hover:before{transform:scaleX(1)}
.biz-ico{width:60px;height:60px;border-radius:14px;background:linear-gradient(135deg,var(--navy),var(--navy-3));color:#fff;display:grid;place-items:center;margin-bottom:18px;overflow:hidden}
.biz-ico .ico{width:30px;height:30px}
.biz-ico img{width:100%;height:100%;object-fit:cover}
.biz-card h3{font-size:20px;color:var(--navy);margin-bottom:8px}
.biz-card p{color:var(--text-2);font-size:14px;min-height:44px}
.biz-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.biz-tags em{font-style:normal;font-size:12.5px;color:var(--primary);background:#eef4ff;padding:3px 10px;border-radius:20px}

/* ===== Tabs / 产品卡片 ===== */
.tab-nav{display:flex;align-items:center;gap:8px;border-bottom:2px solid var(--line);margin-bottom:26px;flex-wrap:wrap}
.tab-nav button{border:0;background:none;padding:12px 22px;font-size:16px;font-weight:600;color:var(--text-2);cursor:pointer;position:relative;bottom:-2px}
.tab-nav button.on{color:var(--primary)}
.tab-nav button.on:after{content:"";position:absolute;left:14px;right:14px;bottom:-2px;height:3px;border-radius:2px;background:var(--primary)}
.tab-more{margin-left:auto;color:var(--primary);font-size:14px;font-weight:600}
.tab-pane{display:none}
.tab-pane.on{display:block;animation:fadeUp .35s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tab-empty{background:#fff;border:1px dashed var(--line);border-radius:10px;padding:40px;text-align:center;color:var(--text-3)}
.pro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pro-grid-4{grid-template-columns:repeat(4,1fr)}
.pro-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.3s}
.pro-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-2);border-color:transparent}
.pro-img{position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,#eef3fa,#dfe8f5);display:grid;place-items:center;overflow:hidden}
.pro-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.pro-card:hover .pro-img img{transform:scale(1.07)}
.pro-info{padding:14px 16px}
.pro-info h3{font-size:15.5px;color:var(--text);font-weight:600;line-height:1.5;min-height:46px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pro-card:hover .pro-info h3{color:var(--primary)}
.pro-model{display:inline-block;margin-top:8px;font-size:12.5px;color:var(--text-3);background:var(--bg-gray);padding:2px 9px;border-radius:5px}

/* ===== 关于 ===== */
.about-in{display:grid;grid-template-columns:1fr 400px;gap:54px;align-items:center}
.about-photo{position:relative;order:2}
.about-collage{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-2);background:var(--navy);aspect-ratio:1/1.02;padding:8px}
.about-collage img{width:100%;height:100%;object-fit:cover;border-radius:10px;transition:transform .4s ease}
.about-collage a:hover img,.about-collage img:hover{transform:scale(1.05)}
.about-collage-sm{aspect-ratio:1/1}
.about-video{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-2);background:#000;aspect-ratio:1/1.02}
.about-video-player{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}
.about-collage-sm .about-video-player{width:100%;height:100%;object-fit:cover;border-radius:10px;background:#000}
.about-video-box{position:relative;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-2);background:#000}
.about-video-box .about-video-player{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:contain;background:#000;border-radius:0}
.about-video-thumb{position:relative;width:100%;aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background:linear-gradient(135deg,#0d2137,#1a3a5c)}
.about-video-thumb img{max-width:52%;max-height:52%;object-fit:contain;filter:drop-shadow(0 4px 14px rgba(0,0,0,.35))}
.about-thumb-play{position:absolute;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:rgba(255,122,24,.92);color:#fff;box-shadow:0 8px 22px rgba(255,122,24,.5);transition:transform .25s}
.about-thumb-play .ico{width:30px;height:30px}
.about-video-thumb:hover .about-thumb-play{transform:scale(1.12)}
.about-video-label{height:40px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--navy);color:#fff;font-size:14px;font-weight:600;letter-spacing:1px}
.about-video-label .ico{width:18px;height:18px;color:var(--orange)}
.btn-chat{display:inline-flex;align-items:center;gap:6px;background:#25b34b;color:#fff;border:1px solid #25b34b;padding:0 22px;height:44px;border-radius:var(--radius);font-size:15px;font-weight:600;transition:.25s}
.btn-chat .ico{width:18px;height:18px}
.btn-chat:hover{background:#1d9c3f;border-color:#1d9c3f;color:#fff}
.about-badge{position:absolute;right:-20px;bottom:-22px;background:linear-gradient(135deg,var(--orange),#ff9d4d);color:#fff;border-radius:16px;padding:20px 28px;text-align:center;box-shadow:0 14px 34px rgba(255,122,24,.4)}
.about-badge b{font-size:38px;line-height:1}
.about-badge b span{font-size:18px}
.about-badge small{display:block;margin-top:4px;font-size:13px}
.about-text h2{font-size:30px;color:var(--navy);margin-bottom:16px}
.about-text>p{color:var(--text-2);margin-bottom:20px}
.about-points{display:grid;gap:12px;margin-bottom:28px}
.about-points li{display:flex;align-items:flex-start;gap:10px;color:var(--text-2);font-size:14.5px}
.about-points .ico{width:19px;height:19px;color:var(--primary);margin-top:3px}
.about-btns{display:flex;gap:14px}

/* ===== 案例 ===== */
.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.case-card{background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);transition:.3s;display:flex;flex-direction:column}
.case-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.case-img{aspect-ratio:4/3;overflow:hidden;background:#eef3fa}
.case-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.case-card:hover .case-img img{transform:scale(1.07)}
.case-info{padding:16px;flex:1;display:flex;flex-direction:column}
.case-info h3{font-size:15.5px;min-height:46px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.case-info p{font-size:13.5px;color:var(--text-3);margin:8px 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.case-more{margin-top:auto;color:var(--primary);font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.case-more .ico{width:15px;height:15px;transition:transform .2s}
.case-card:hover .case-more .ico{transform:translateX(4px)}

/* ===== 品牌 ===== */
.brands{background:linear-gradient(135deg,var(--navy),var(--navy-3));padding:56px 0}
.brand-list{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}
.brand-item{padding:11px 24px;border:1px solid rgba(255,255,255,.18);border-radius:30px;color:rgba(255,255,255,.88);font-size:14.5px;font-weight:600;letter-spacing:.5px;transition:.25s;background:rgba(255,255,255,.04)}
.brand-item:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-3px)}

/* ===== 新闻 ===== */
.news-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.news-box-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#f6f9ff,#fff)}
.news-box-head h3{font-size:18px;color:var(--navy);padding-left:12px;position:relative}
.news-box-head h3:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:4px;border-radius:2px;background:var(--primary)}
.news-box-head a{color:var(--text-3);font-size:13.5px}
.news-box-head a:hover{color:var(--primary)}
.news-list{padding:8px 22px 16px}
.news-list li{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px dashed var(--line);font-size:14.5px}
.news-list li:last-child{border-bottom:0}
.news-list a{flex:1;display:flex;align-items:center;gap:9px;color:var(--text-2);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.news-list a:hover{color:var(--primary)}
.news-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);flex:none;opacity:.7}
.news-list time{font-size:12.5px;color:var(--text-3);flex:none}

/* ===== CTA ===== */
.footer-cta{position:relative;background:var(--navy);padding:54px 0;overflow:hidden}
.footer-cta:before{content:"";position:absolute;inset:0;background-image:url('/assets/img/pattern.svg'),radial-gradient(600px 300px at 85% 50%,rgba(34,211,238,.22),transparent 70%);background-size:120px 120px,100% 100%}
.footer-cta-in{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cta-text h3{color:#fff;font-size:27px;margin-bottom:8px}
.cta-text p{color:rgba(255,255,255,.78)}
.cta-btns{display:flex;gap:14px}

/* ===== 页脚 ===== */
.footer{background:#071b33;color:rgba(255,255,255,.72);font-size:14px}
.footer-in{display:grid;grid-template-columns:2.1fr 1fr 1fr 1.2fr;gap:40px;padding:58px 20px 44px}
.logo-light .logo-text b{color:#fff}
.logo-light .logo-img{height:50px;background:#fff;padding:6px 12px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.f-desc{margin:18px 0 20px;line-height:1.8}
.f-contact p{display:flex;gap:9px;align-items:flex-start;margin-bottom:10px}
.f-contact .ico{width:17px;height:17px;color:var(--cyan);margin-top:4px}
.f-col h4{color:#fff;font-size:16px;margin-bottom:18px;position:relative;padding-left:13px}
.f-col h4:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:4px;border-radius:2px;background:var(--cyan)}
.f-col ul li{margin-bottom:11px}
.f-col ul a:hover{color:var(--cyan);padding-left:5px}
.f-qr{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.f-qr img{border-radius:10px;background:#fff;padding:5px}
.f-worktime{display:flex;gap:8px;align-items:center;margin-top:14px}
.f-worktime .ico{color:var(--cyan);width:17px;height:17px}
.copyright{border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:rgba(255,255,255,.55)}
.copyright-in{display:flex;justify-content:space-between;gap:14px;padding:16px 20px;flex-wrap:wrap}
.copyright a:hover{color:var(--cyan)}

/* ===== 浮动工具 ===== */
.float-tools{position:fixed;right:16px;bottom:90px;z-index:150;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-2)}
.ft-item{position:relative;width:64px;height:60px;background:#fff;color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11.5px;border-bottom:1px solid var(--line)}
.ft-item .ico{width:21px;height:21px;color:var(--primary)}
.ft-item:hover{background:var(--primary);color:#fff}
.ft-item:hover .ico{color:#fff}
.ft-wechat .ft-pop{position:absolute;right:74px;top:50%;transform:translateY(-50%) translateX(10px);background:#fff;padding:8px;border-radius:10px;box-shadow:var(--shadow-2);opacity:0;visibility:hidden;transition:.25s}
.ft-wechat:hover .ft-pop{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}
.ft-top{cursor:pointer;border:0}

/* ===== 内页 banner / 面包屑 ===== */
.page-banner{position:relative;height:240px;background:linear-gradient(135deg,var(--navy),var(--navy-3));display:flex;align-items:center;color:#fff;overflow:hidden}
.page-banner:before{content:"";position:absolute;inset:0;background-image:url('/assets/img/pattern.svg'),radial-gradient(700px 360px at 80% 0%,rgba(34,211,238,.25),transparent 70%);background-size:130px 130px,100% 100%;z-index:1}
.page-banner.has-img:before{display:none}
.banner-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:1}
.page-banner-mask{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,51,.8) 0%,rgba(6,26,51,.45) 60%,rgba(6,26,51,.2) 100%);z-index:1}
.page-banner-sm{height:170px}
.page-banner .container{position:relative;z-index:2}
.page-banner h1{font-size:34px;margin-bottom:8px}
.page-banner p{color:rgba(255,255,255,.8);max-width:680px}
.breadcrumb{padding:16px 20px;font-size:13.5px;color:var(--text-3);display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.breadcrumb a:hover{color:var(--primary)}
.breadcrumb i{font-style:normal;color:#c2ccd8}
.breadcrumb .ellipsis{max-width:320px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}

/* ===== 布局 ===== */
.layout{display:grid;grid-template-columns:268px 1fr;gap:28px;align-items:start}
.sidebar{position:sticky;top:150px}
.side-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:22px}
.side-box h3{background:var(--navy);color:#fff;padding:15px 20px;font-size:16px}
.side-nav a{display:flex;align-items:center;padding:13px 20px;border-bottom:1px solid var(--line);color:var(--text-2);font-weight:500;transition:.2s}
.side-nav a:before{content:"";width:6px;height:6px;border-radius:50%;background:#cdd7e4;margin-right:11px;transition:.2s}
.side-nav li:last-child a{border-bottom:0}
.side-nav a:hover,.side-nav a.on{background:#eef4ff;color:var(--primary)}
.side-nav a:hover:before,.side-nav a.on:before{background:var(--primary)}
.side-hot ul{padding:6px 20px 12px}
.side-hot li{padding:9px 0;border-bottom:1px dashed var(--line);font-size:14px}
.side-hot li:last-child{border:0}
.side-hot a{display:flex;align-items:flex-start;gap:8px;color:var(--text-2);line-height:1.5}
.side-hot a:hover{color:var(--primary)}
.side-contact{background:linear-gradient(160deg,var(--navy),var(--navy-3));border-radius:var(--radius);padding:26px 22px;text-align:center;color:#fff}
.side-contact h3{font-size:18px;margin-bottom:6px}
.side-contact p{color:rgba(255,255,255,.75);font-size:13.5px}
.side-contact b{display:block;font-size:26px;color:var(--cyan);margin:10px 0 2px;letter-spacing:.5px}
.side-contact small{display:block;margin-bottom:16px;color:rgba(255,255,255,.7)}
.side-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.side-wechat{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:8px;background:rgba(255,255,255,.12);color:#fff;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;border:1px solid rgba(255,255,255,.2);transition:.2s}
.side-wechat:hover{background:rgba(255,255,255,.22)}
.side-wechat .ico{width:18px;height:18px}
.side-wechat-pop{display:none;margin-top:12px;text-align:center}
.side-wechat-pop.show{display:block}
.side-wechat-pop img{width:120px;height:120px;border-radius:8px;background:#fff;padding:4px}
.side-wechat-pop small{display:block;margin-top:6px;color:rgba(255,255,255,.75);font-size:12px}

/* 文章列表 */
.article-list{background:#fff;border-radius:var(--radius)}
.article-list li{display:flex;gap:22px;padding:26px 4px;border-bottom:1px solid var(--line)}
.article-list li:first-child{padding-top:6px}
.al-img{width:230px;flex:none;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#eef3fa}
.al-img img{width:100%;height:100%;object-fit:cover;transition:.35s}
.al-img:hover img{transform:scale(1.06)}
.al-body{min-width:0}
.al-body h3 a{font-size:19px;color:var(--navy);font-weight:700}
.al-body h3 a:hover{color:var(--primary)}
.al-body p{margin:10px 0 14px;color:var(--text-2);font-size:14.5px}
.al-meta{display:flex;gap:20px;color:var(--text-3);font-size:13px;align-items:center}
.al-meta a{color:var(--primary);font-weight:600;margin-left:auto}
.empty-box{background:#fff;border:1px dashed #c8d5e6;border-radius:var(--radius);padding:70px 30px;text-align:center;color:var(--text-2)}
.empty-box a{color:var(--primary);font-weight:600}

/* 分页 */
.pager{display:flex;justify-content:center;gap:8px;margin-top:36px;flex-wrap:wrap}
.pager a,.pager span{min-width:40px;height:40px;padding:0 12px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text-2);font-size:14.5px}
.pager a:hover{border-color:var(--primary);color:var(--primary)}
.pager .current{background:var(--primary);border-color:var(--primary);color:#fff}
.pager .disabled{color:#c2ccd8;background:var(--bg-gray)}

/* ===== 详情 ===== */
.detail{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:38px 42px}
.detail-head{text-align:center;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}
.detail-head h1{font-size:27px;color:var(--navy);line-height:1.5}
.detail-meta{display:flex;justify-content:center;gap:22px;margin-top:14px;color:var(--text-3);font-size:13.5px;flex-wrap:wrap}
.model-tag{color:var(--primary)!important;background:#eef4ff;padding:2px 12px;border-radius:20px}
.detail-cover{margin:0 auto 26px;max-width:560px;border-radius:12px;overflow:hidden}
.detail-attach{background:#eef4ff;border-radius:10px;padding:13px 18px;margin-bottom:22px;display:flex;gap:9px;align-items:center;color:var(--primary)}
.rich-text{font-size:15.5px;line-height:2;color:var(--text)}
.rich-text p{margin:14px 0}
.rich-text h2,.rich-text h3{color:var(--navy);margin:26px 0 12px;padding-left:13px;position:relative;font-size:19px}
.rich-text h3:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:4px;border-radius:2px;background:var(--primary)}
.rich-text ul,.rich-text ol{margin:12px 0 12px 4px;padding-left:22px}
.rich-text ul{list-style:disc}
.rich-text ol{list-style:decimal}
.rich-text li{margin:8px 0}
.rich-text img{border-radius:10px;margin:16px auto;max-width:100%;height:auto}
.rich-text table{border-collapse:collapse;width:100%;margin:16px 0}
.rich-text td,.rich-text th{border:1px solid var(--line);padding:10px 12px}
.rich-text strong{color:var(--navy)}
.rich-text a{color:var(--primary);text-decoration:underline}
.prev-next{display:flex;justify-content:space-between;gap:20px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line);font-size:14.5px;flex-wrap:wrap}
.prev-next a{color:var(--text-2);max-width:48%}
.prev-next a:hover{color:var(--primary)}
.inquiry{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 42px;margin-top:24px}
.inquiry>h3{font-size:19px;color:var(--navy);margin-bottom:20px}
.inquiry>h3 b{color:var(--orange)}
.inquiry-form{display:block}
.inquiry-form label{display:block;font-size:14px;color:var(--text-2);margin-bottom:14px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.inquiry-form input,.inquiry-form textarea{width:100%;margin-top:6px;border:1.5px solid var(--line);border-radius:9px;padding:11px 14px;font-size:14.5px;font-family:inherit;outline:none;transition:.2s;background:#fbfcfe}
.inquiry-form input:focus,.inquiry-form textarea:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px rgba(23,105,255,.1)}
.form-msg{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}
.form-msg.ok{background:#e8f8ef;color:#168a4a;border:1px solid #b9e8cb}
.form-msg.err{background:#fdeeee;color:#d34141;border:1px solid #f5c6c6}

/* ===== 单页 ===== */
.container-narrow{max-width:960px}
.page-content{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:42px 48px}
.page-cover{margin-bottom:26px;border-radius:12px;overflow:hidden}

/* ===== 联系页 ===== */
.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:36px 0}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 22px;text-align:center;transition:.3s}
.contact-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}
.contact-card.highlight{background:linear-gradient(150deg,var(--navy),var(--navy-3));color:#fff;border-color:transparent}
.cc-ico{width:56px;height:56px;border-radius:50%;background:#eef4ff;color:var(--primary);display:grid;place-items:center;margin:0 auto 14px}
.cc-ico .ico{width:27px;height:27px}
.contact-card.highlight .cc-ico{background:rgba(255,255,255,.14);color:var(--cyan)}
.contact-card h3{font-size:17px;margin-bottom:8px}
.contact-card p{font-size:14.5px;color:var(--text-2);line-height:1.9}
.contact-card.highlight p{color:rgba(255,255,255,.85)}
.contact-main{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;margin-bottom:60px}
.contact-info-col,.contact-form-col{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px}
.contact-info-col h2{color:var(--navy);font-size:23px;margin-bottom:22px}
.ci-list li{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line);align-items:flex-start}
.ci-list .ico{width:22px;height:22px;color:var(--primary);margin-top:3px}
.ci-list b{display:block;color:var(--navy);margin-bottom:2px}
.map-box{margin-top:22px}
.map-ph{border-radius:12px;background:linear-gradient(135deg,#eaf2fb,#d7e5f6);padding:48px 24px;text-align:center;color:var(--navy-2)}
.map-ico{width:42px;height:42px;color:var(--orange);margin:0 auto 10px}
.map-ph span{font-size:13px;color:var(--text-3)}
.contact-form-col h3{font-size:20px;color:var(--navy);margin-bottom:20px}
/* 右侧4个联系卡片 */
.contact-cards-side{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.cc-side{display:flex;gap:10px;align-items:flex-start;background:#f6f9ff;border-radius:10px;padding:14px;border:1px solid var(--line)}
.cc-side.highlight{background:linear-gradient(135deg,#fff5f0,#ffe8d9);border-color:#ffd0b0}
.ccs-ico{width:36px;height:36px;border-radius:9px;background:var(--primary);color:#fff;display:grid;place-items:center;flex:none}
.cc-side.highlight .ccs-ico{background:var(--orange)}
.ccs-ico .ico{width:18px;height:18px}
.cc-side h4{font-size:14px;color:var(--navy);margin-bottom:3px}
.cc-side p{font-size:12.5px;color:var(--text-2);line-height:1.5;margin:0}
.cc-side p b{color:var(--orange);font-size:14px}
/* 右侧快捷导航 */
.side-quick-nav{background:#f6f9ff;border-radius:10px;padding:20px;margin-bottom:18px}
.side-quick-nav h3{font-size:16px;color:var(--navy);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.side-nav-list{list-style:none;padding:0;margin:0}
.side-nav-list li{margin-bottom:2px}
.side-nav-list a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--text);font-size:14.5px;transition:.2s}
.side-nav-list a:hover{background:var(--primary);color:#fff}
.side-nav-list .ico{width:16px;height:16px;color:var(--primary);transition:.2s}
.side-nav-list a:hover .ico{color:#fff}
/* 右侧电话卡片 */
.side-phone-card{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,var(--navy),var(--navy-3));border-radius:12px;padding:18px 20px;margin-bottom:20px;color:#fff}
.sp-ico{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none}
.sp-ico .ico{width:24px;height:24px;color:var(--cyan)}
.sp-body small{display:block;font-size:12px;color:rgba(255,255,255,.7);margin-bottom:4px}
.sp-num{font-size:24px;font-weight:700;color:#fff;letter-spacing:1px;line-height:1.2}
.sp-name{display:block;font-size:13px;color:rgba(255,255,255,.8);margin-top:2px}
.form-title{margin-top:8px}
/* 底部地图 */
.map-embed{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:60px;background:#fff}
.map-title{display:flex;align-items:center;gap:8px;font-size:18px;color:var(--navy);padding:16px 22px;background:#f6f9ff;border-bottom:1px solid var(--line);margin:0}
.map-title .ico{width:22px;height:22px;color:var(--orange)}
.map-frame{line-height:0}
.map-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 22px;background:#f6f9ff;border-top:1px solid var(--line);font-size:14px;color:var(--text-2)}
.map-btn{color:var(--primary);font-weight:600;white-space:nowrap}
.map-btn:hover{color:var(--primary-d)}
.map-btns{display:flex;gap:18px;flex-wrap:wrap}
/* 左侧快捷导航 */
.side-quick-nav-left{background:#f6f9ff;border-radius:10px;padding:20px;margin-top:24px}
.side-quick-nav-left h3{font-size:16px;color:var(--navy);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.side-quick-nav-left .side-nav-list{display:grid;grid-template-columns:1fr 1fr;gap:4px}
/* 微信二维码卡片 */
.side-wechat-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px}
.side-wechat-card img{width:110px;height:110px;border-radius:8px;flex:none;background:#f6f9ff;padding:4px}
.side-wechat-card h4{font-size:16px;color:var(--navy);margin-bottom:6px}
.side-wechat-card p{font-size:13px;color:var(--text-2);line-height:1.6}
/* 关于我们介绍 */
.about-intro{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;margin-bottom:28px}
.sec-title{font-size:22px;color:var(--navy);margin-bottom:18px;padding-left:14px;border-left:4px solid var(--primary)}
.about-intro-body{font-size:15px;color:var(--text);line-height:1.9}
.about-intro-body p{margin-bottom:14px}
/* 在线留言整行 */
.message-row{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;margin-bottom:28px}
.message-row .form-title{font-size:20px;color:var(--navy);margin-bottom:20px;padding-left:14px;border-left:4px solid var(--primary)}
.inquiry-form-row .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:14px}
.inquiry-form-row button{margin-top:16px}
@media (max-width:600px){
  .inquiry-form-row .form-grid{grid-template-columns:1fr}
  .side-quick-nav-left .side-nav-list{grid-template-columns:1fr}
}

/* ===== 搜索 / 404 ===== */
.search-title{font-size:22px;color:var(--navy);margin-bottom:24px}
.search-title b{color:var(--primary)}
.error-page{text-align:center;padding:70px 20px}
.error-page b{font-size:110px;font-weight:800;background:linear-gradient(135deg,var(--primary),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}
.error-page h2{font-size:26px;color:var(--navy);margin:18px 0 10px}
.error-page p{color:var(--text-2);margin-bottom:26px}
.error-page .btn{margin:0 8px}

/* ===== 响应式 ===== */
@media (max-width:1100px){
  .pro-grid,.case-grid{grid-template-columns:repeat(3,1fr)}
  .about-in{grid-template-columns:1fr 380px;gap:34px}
  .hero-art{display:none}
  .hero-copy{max-width:100%}
}
@media (max-width:992px){
  .header-search{display:none}
  .header-phone{margin-left:auto;flex-shrink:0}
  .logo-sub{display:none}
  .nav-toggle{display:block;margin-left:10px}
  .nav-toggle .ico{width:30px;height:30px}
  .mainnav{top:88px}
  .nav-list{position:fixed;top:142px;left:0;right:0;bottom:0;background:var(--navy);flex-direction:column;padding:10px 0;overflow-y:auto;transform:translateX(105%);transition:.3s;z-index:300}
  .nav-list.open{transform:none}
  .nav-list>li>a{height:52px;font-size:17px;padding:0 26px}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;background:var(--navy-2);border-radius:0;box-shadow:none;min-width:0;padding:0;display:none}
  .nav-list>li.open .submenu{display:block}
  .submenu a{color:rgba(255,255,255,.85)}
  .caret{margin-left:auto}
  .hero{height:430px}
  .hero-title{font-size:34px}
  .hero-sub{font-size:16px}
  .features-in{grid-template-columns:1fr 1fr}
  .feature-item:nth-child(2){border-right:0}
  .biz-grid{grid-template-columns:1fr 1fr}
  .about-in{grid-template-columns:1fr}
  .about-photo{order:0}
  .about-photo{max-width:480px}
  .case-grid,.pro-grid,.pro-grid-4{grid-template-columns:repeat(3,1fr)}
  .news-cols{grid-template-columns:1fr}
  .footer-in{grid-template-columns:1fr 1fr}
  .contact-cards{grid-template-columns:1fr 1fr}
  .contact-main{grid-template-columns:1fr}
  .layout{grid-template-columns:1fr}
  .sidebar{position:static}
}
@media (max-width:640px){
  body{font-size:14px}
  .section{padding:44px 0}
  .topbar{display:none}
  .header-in{height:74px;gap:10px;padding:0 14px}
  .logo-mark{width:40px;height:40px}
  .logo-img{height:40px}
  .logo{gap:0}
  .logo-sub{font-size:10px;letter-spacing:.5px;padding-left:8px}
  .logo-text b{font-size:16px;white-space:nowrap}
  .logo-text small{display:none}
  .header-phone{padding-left:10px;gap:6px}
  .header-phone .ico{width:22px;height:22px}
  .header-phone b{display:none}
  .header-phone small{display:none}
  .nav-toggle{margin-left:2px;padding:7px}
  .mainnav{top:74px}
  .nav-list{top:74px}
  .hero{height:380px}
  .hero-title{font-size:26px}
  .hero-sub{font-size:14.5px;margin:12px 0 22px}
  .hero-btns{flex-direction:column;align-items:flex-start;gap:10px}
  .hero-arrow{display:none}
  .features{margin-top:-26px;border-radius:12px}
  .features-in{grid-template-columns:1fr}
  .feature-item{border-right:0;border-bottom:1px solid var(--line)}
}

/* ===== 推荐内容网格 ===== */
.rec-box{margin-top:36px;padding:24px;background:#f8fafc;border-radius:12px;border:1px solid #e5e7eb}
.rec-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}
.rec-head h3{margin:0;font-size:18px;color:#111827;position:relative;padding-left:14px}
.rec-head h3::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:18px;background:#1769ff;border-radius:2px}
.rec-pager{display:flex;align-items:center;gap:10px}
.rec-btn{display:inline-block;padding:5px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#374151;background:#fff;text-decoration:none;transition:all .15s}
.rec-btn:hover:not(.disabled){border-color:#1769ff;color:#1769ff;background:#eef2ff}
.rec-btn.disabled{color:#9ca3af;cursor:not-allowed;background:#f3f4f6}
.rec-page-info{font-size:13px;color:#6b7280}
.rec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rec-card{display:block;text-decoration:none;background:#fff;border-radius:6px;overflow:hidden;border:1px solid #e5e7eb;transition:all .2s}
.rec-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.08);border-color:#1769ff}
.rec-img{aspect-ratio:16/10;overflow:hidden;background:#f3f4f6;display:flex;align-items:center;justify-content:center}
.rec-img img{width:100%;height:100%;object-fit:cover;display:block}
.rec-noimg{color:#9ca3af;font-size:12px}
.rec-title{padding:8px 10px;font-size:12.5px;color:#374151;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:42px}
.rec-card:hover .rec-title{color:#1769ff}
@media (max-width:900px){
  .rec-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:540px){
  .rec-grid{grid-template-columns:1fr}
  .rec-head{flex-direction:column;gap:10px;align-items:flex-start}
}
@media (max-width:768px){
  .sec-head h2{font-size:23px}
  .biz-grid{grid-template-columns:1fr;gap:14px}
  .case-grid,.pro-grid,.pro-grid-4{grid-template-columns:1fr 1fr;gap:12px}
  .pro-info{padding:10px}
  .pro-info h3{font-size:14px;min-height:42px}
  .about-badge{right:8px;bottom:-18px;padding:14px 18px}
  .about-badge b{font-size:28px}
  .article-list li{flex-direction:column;gap:14px}
  .al-img{width:100%}
  .al-meta a{margin-left:0}
  .detail,.page-content,.inquiry,.contact-info-col,.contact-form-col{padding:24px 18px}
  .detail-head h1{font-size:21px}
  .form-row{grid-template-columns:1fr}
  .contact-cards{grid-template-columns:1fr}
  .footer-in{grid-template-columns:1fr;gap:28px}
  .footer-cta-in{flex-direction:column;align-items:flex-start}
  .cta-text h3{font-size:21px}
  .float-tools{right:8px;bottom:70px}
  .ft-item{width:52px;height:50px;font-size:10.5px}
  .float-tools .ft-item span{display:none}
  .float-tools .ft-item{height:46px}
}
