@charset "utf-8";

/* ==========================================
   1. 基础重置 (合并冗余)
   ========================================== */
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
html {
    width: 100%;
    min-height: 100%;
}
body {
    font-size: 100px;
    width: 100%;
    min-height: 100%;
    max-width: 640px;
    min-width: 320px;
    margin: 0 auto;
    font: .24rem/1.5 "PingFang SC", Helvetica, "Helvetica Neue", "microsoft yahei", Tahoma, Arial, sans-serif;
    color: #666;
    background: #fff;
    position: relative;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
body:before, body:after {
    content: "";
    width: 100%;
    height: 1rem;
    display: block;
}
img { border: 0; max-width: 100%; height: auto !important; display: inline; margin: 0 auto; }
ul, ol { list-style-type: none; }
em, s, i, b, h1, h2, h3, h4, h5, h6 { font-style: normal; font-weight: normal; }
.trans { transition: all .3s ease-in; }

/* 链接 */
a, a:link, a:visited, a:hover, a:active {
    color: #666;
    text-decoration: none;
    outline: none;
}
a:hover, a:active { color: #dc0000; }

/* 表单重置 */
input, button, select, textarea {
    outline: none;
    font-family: "PingFang SC", "Microsoft Yahei", Arial;
    font-size: .24rem;
    -webkit-appearance: none !important;
    border-radius: 0;
}
table { border-collapse: collapse; border-spacing: 0; }
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: #999; }
input:-moz-placeholder, textarea:-moz-placeholder { color: #999; }
input::-moz-placeholder, textarea::-moz-placeholder { color: #999; }
input:-ms-input-placeholder, textarea:-ms-input-placeholder { color: #999; }

/* 响应式根字号 */
@media only screen and (min-width: 641px) { html { font-size: 100px; } }
@media only screen and (max-width: 640px) { html { font-size: 100px; } }
@media only screen and (max-width: 540px) { html { font-size: 84.375px; } }
@media only screen and (max-width: 480px) { html { font-size: 75px; } }
@media only screen and (max-width: 414px) { html { font-size: 64.6875px; } }
@media only screen and (max-width: 400px) { html { font-size: 62.5px; } }
@media only screen and (max-width: 375px) { html { font-size: 58.5938px; } }
@media only screen and (max-width: 360px) { html { font-size: 56.25px; } }
@media only screen and (max-width: 320px) { html { font-size: 50px; } }

/* ==========================================
   2. 公用样式 & 布局辅助
   ========================================== */
.container { margin: 0 auto; }
.fl { float: left; }
.fr { float: right; }
.hidden { display: none; }
.clear, .clearfix:after { content: ""; display: block; clear: both; width: 100%; height: 0; line-height: 0; font-size: 0; }
.blue { color: #28a5f4; }
.pb1 { padding-bottom: 0.1rem; }
.pb2 { padding-bottom: 0.2rem; }
.pb3 { padding-bottom: 0.3rem; }
.pb4 { padding-bottom: 0.4rem; }
.pb5 { padding-bottom: 0.5rem; }

/* 图标 */
.icon {
    background: url(../images/icon.png) no-repeat;
    display: inline-block;
    background-size: 2.4rem auto;
    vertical-align: middle;
}
.iconn {
    background: url(../images/iconn.png) no-repeat;
    background-size: 1.4rem auto;
    vertical-align: middle;
}
.icon, .iconbef:before, .iconbef:after { content: "\20"; display: block; }

/* ==========================================
   3. 头部导航 (Header & Nav)
   ========================================== */
.header {
    max-width: 640px;
    min-width: 320px;
    height: 1rem;
    margin: 0 auto;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    box-shadow: 0 0 0.2rem rgba(0, 0, 0, .1);
    z-index: 99999;
    clear: both;
}
.header .logo { float: left; text-align: center; display: block; color: #000; font-size: .32rem; }
.header .logo img { display: block; height: .7rem; float: left; margin-top: .1rem; margin-left: .15rem; }
.header .logo .sitename { float: left; padding-top: .12rem; margin-left: .15rem; font-family:system-ui,sans-serif;}
.header .logo .sitename h1 { font-size: .32rem;text-align: left;font-weight:500;white-space: nowrap; }
.header .logo .sitename h2 { font-size: .30rem; color: #333; text-align: left;font-weight: bold;white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.header .logo .sitename p { font-size: .20rem; color: #333; }
.header #nav { width: .45rem; height: 50%; position: absolute; right: 3%; top: .32rem; text-align: center; cursor: pointer; }
.header .nav { width: .39rem; height: .36rem; background-position: -.5rem -1.2rem; }
.header .close { background-position: -2.06rem 0; width: .34rem; height: .34rem; cursor: pointer; position: absolute; right: 20%; top: -0.02rem; text-align: center; }
.header .top-tel { display: none; padding: .1rem 1% 5px 1%; margin-top: 10px; border-radius: 5px; float: right; }
.header .top-tel u { display: inline-block; vertical-align: top; margin-top: 10px; overflow: hidden; width: 50px; height: 50px; margin-right: 10px; background: url(../images/top_tel.png) center no-repeat; }
.header .top-tel span { display: inline-block; font-size: 30px; font-weight: bold; line-height: 24px; padding-top: 0px; color: #ed5759; }
.header .top-tel p { display: block; text-align: left; text-indent: 1px; font-size: 14px; padding-top: 5px; color: #979797; }

/* 侧边栏导航 */
.subNav {
    position: fixed;
    width: 100%;
    height: 100%;
    right: 0;
    top: .99rem;
    z-index: 999999;
    max-width: 640px;
    min-width: 320px;
    background: rgb(17 24 39);
    transform: translateX(7rem);
}
.subNav ul { margin-top: .3rem; }
.subNav li { width: 100%; display: block; line-height: 1rem; margin: 0 auto; position: relative; text-align: center; }
.subNav li a { margin: 0 auto; color: #fff; font-size: 0.34rem; text-align: center; padding: .05rem .15rem; }
.subNav.show { right: 0 !important; }
.subNavShow { transform: translateX(-48%); display: block; }
.subNavShow2 { transform: translateX(0); }

/* ==========================================
   4. 首页各区块
   ========================================== */
.index-banner { height: auto; }
.index-banner img { width: 100%; }

a.inquiry {
    background: #dc0000;
    color: #fff;
    font-size: .3rem;
    border-radius: .5rem;
    text-align: center;
    padding: .14rem;
    display: block;
    width: 90%;
    margin: 0.3rem auto 0.2rem;
}

.look_more {
    display: block;
    width: 6rem;
    height: .78rem;
    margin: 0 auto;
    font-size: .3rem;
    line-height: .78rem;
    text-align: center;
    color: #434343;
    background: #fff;
    border: .01rem solid #f0f0f0;
}

.page_title{padding-top: .5rem; padding-bottom:.5rem; display:block;}
.page_title .entit{position: relative;width: 80%;margin: 0 auto .12rem;font-size: .4rem;line-height: .4rem;color: #fb9d05;text-align:center;}
.page_title .tit{font-size: .5rem;font-weight: bold;line-height: .6rem;text-align:center;color: #dc0000; display:block;}
.page_title .tit span{display: inline-block;margin: 0 .3rem;}
.page_title .tit em{display: inline-block;width: 0.8rem;height: .02rem;margin-bottom: .1rem;background: #cecece;}

.product { padding-bottom: .2rem; }
.product ul { margin-left: .2rem; margin-top: .2rem; }
.product ul li { position: relative; float: left; display: block; width: 2.9rem; border: 1px solid #f0f0f0; margin-right: .2rem; margin-bottom: .2rem; }
.product ul li .img { width: 100%; height: 2.15rem; }
.product ul li .img img { display: block; width: 100%; height: 100%; border-radius: 20px; }
.product ul li .txt { background: #fff; }
.product ul li .txt .tit { font-size: .26rem; line-height: .6rem; text-align: center; color: #434343; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }

.workflow { width: 100%; padding: .2rem 0; }
.workflow ul { padding-top: 1%; }
.workflow ul li { width: 33.333%; height: auto; float: left; text-align: center; position: relative; }
.workflow ul li:after { content: ""; display: block; width: .3rem; height: .3rem; background: url(../images/arr.png) center no-repeat / cover; position: absolute; top: 30%; right: -.1rem; }
.workflow ul li:nth-child(3n+3):after { display: none; }
.workflow ul li img { width: 60%; margin: 0 auto; transition: all .5s; }
.workflow ul li:hover img { transform: scale(1.06); }
.workflow ul li h3 { font-size: .3rem; line-height: 1.8; }
.workflow ul li p { color: #ccc; font-size: 0.2rem; font-weight: 600; }

.faq { width: 100%; height: auto; background: #fff; padding-bottom: .2rem; }
.faq ul { clear: both; margin-top: .1rem; }
.faq ul li { display: block; width: 6rem; margin: 0 auto; border-top: .02rem dashed #ddd; line-height: .8rem; overflow: hidden; }
.faq ul li:first-child { border-top: none; }
.faq ul li .tit { float: left; width: 74%; font-size: .26rem; color: #575757; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
.faq ul li .time { float: right; width: 26%; font-size: .26rem; color: #575757; text-align: right; }
.faq .look_more { margin-top: .2rem; display: block; }

/* 城市链接 */
.city-hot { background: #f9f9f9; line-height: .1rem; padding: .15rem 0 0 .3rem; }
.city-hot strong { float: left; font-size: .02rem; color: #333241; font-weight: normal; }
.city-hot .cityhot { float: left; }
.city-hot a { color: #333241; font-size: .08rem; font-weight: bold; margin-right: .08rem; }
.city-hot a:hover, .city-hot a.terminal { color: #ef5231; }
.city-list { overflow: hidden; font-size: .08rem; line-height: .1rem; padding-top: .02rem; }
.city-list dt { float: left; width: .03rem; color: #333241; font-weight: bold; }
.city-list dd { font-size: 0; overflow: hidden; }
.city-list dd a { font-size: .02rem; color: #006a92; float: left; margin-right: .02rem; white-space: nowrap; }
.city-list dd a:hover, .city-list dd a.hot { color: #f32e00; text-decoration: underline; }
.cityLink { width: 100%; text-align: center; padding: .05rem; }
.cityLink a { font-size: .02rem; color: #333333; padding-right: 1%; }

/* 首页 About */
.index-about {
    width: 100%;
    padding: 38px 0;
    overflow: hidden;
    background: url(../images/aboutbg.jpg) center top no-repeat;
    background-size: cover;
    position: relative;
}
.index-about .bg-cover { background: rgb(17 24 39 / 0.9); inset: 0; position: absolute; display: block; }
.index-about .container { position: relative; z-index: 999; padding: .2rem; }
.index-about .atit { text-align: center; font-size: 20px; color: #fff; font-weight: bold; margin-top: -33px; position: relative; }
.index-about .atit span { font-size: 50px; line-height: 46px; font-weight: bold; color: rgba(255, 255, 255, .03); }
.index-about .cont { margin: 20px auto 15px; font-size: 14px; color: rgba(255, 255, 255, .65); line-height: .36rem; text-align: center; text-indent: 2em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 12; -webkit-box-orient: vertical; }
.index-about .kk { display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); gap: .3rem; }
.index-about .kk li { background-color: rgb(255 255 255 / 0.1); border-radius: .1rem; align-items: center; border: 1px solid rgba(255, 255, 255, .25); padding: .2rem; font-size: 18px; color: #fff; line-height: 30px; }
.index-about .kk li div { float: left; padding-right: 15px; }
.index-about .kk li div img { width: .8rem; }

/* ==========================================
   5. 内页通用 (Main, 列表, 分页)
   ========================================== */
.main { width: 100%; }
.main .showTit { width: 96%; margin: 0 auto; line-height: .4rem; padding: .5rem 2% .1rem; margin-bottom: .1rem; border-bottom: 1px dashed #ccc; text-align: center; }
.main .showTit h1 { color: #333333; font-size: .3rem; line-height: .35rem; margin-bottom: .05rem; }
.main .contxt { font-size: .24rem; line-height: .34rem; padding: 1% 3% 5%; }
.main .contxt .pic { width: 100%; }
.main .contxt .pic img { width: 100%; border-radius: 20px; }
.main .contxt p { line-height: .4rem; }

.caselist li { width: 47%; margin-left: 2%; margin-bottom: 2%; float: left; box-sizing: border-box; }
.caselist li a { display: block; }
.caselist li figure { width: 100%; padding-top: 75%; position: relative; overflow: hidden; }
.caselist li figure img { width: 100%; height: 100%; position: absolute; left: 0; top: 0; min-height: 100%; display: block; }
.caselist li h3 { height: .65rem; line-height: .65rem; text-align: center; font-size: 0.26rem; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }

.recom { padding-top: .2rem; transition: none; }
.recom ul { float: left; width: 100%; }
.recom ul li { height: 1.3rem; border-bottom: 1px solid #eeeeee; }
.recom ul li a { display: block; padding: .2rem .1rem; }
.recom ul li.item { position: relative; }
.recom ul li.item .img { width: 1.2rem; height: .9rem; float: left; margin-right: .15rem; padding: .04rem; border: 1px solid #f1f1f1; }
.recom ul li.item h3 { color: #000; height: .4rem; overflow: hidden; }
.recom ul li.item .dec { font-size: .2rem; color: #aaaaaa; line-height: .28rem; }

.newslist { padding: 0 3%; margin-top: 1.5rem; }
.newslist .item { width: 100%; border-bottom: 1px solid #eeeeee; }
.newslist .item * { transition: all .3s linear; }
.newslist .item a { padding: .3rem 0; width: 100%; display: block; }
.newslist .item img { width: 1.44rem; height: .96rem; display: block; margin-top: .06rem; float: right; margin-right: .1rem; }
.newslist .item h3 { font-size: .3rem; line-height: .36rem; max-height: .72rem; overflow: hidden; color: #000000; }
.newslist .item .dec { color: #999999; font-size: .2rem; margin-top: .08rem; }

.subCate { padding: 0 0 .2rem; }
.subCate a { width: 48%; margin: 0 1% .1rem; font-size: .22rem; height: .5rem; display: block; float: left; line-height: .5rem; text-align: center; color: #666; border: 1px solid #ddd; box-sizing: border-box; }
.subCate a.on { border-color: #dc0000; color: #dc0000; }

.pager { width: 100%; text-align: center; background: #f6f6f6; padding: .2rem 0; font-size: .2rem; }
.pager a, .pager span { width: auto; height: .4rem; line-height: .4rem; display: inline-block; background: #ccc; color: #fff; border-radius: 5px; padding: 0 .1rem; margin-right: 0.1rem; }
.pager a.current { background: #dc0000; }

.ptit { width: 100%; height: .85rem; background: #f1f1f1; line-height: .85rem; text-align: center; font-size: .35rem; font-weight: bold; }
.pview { width: 100%; background: #fff; padding-top: .2rem; }
.pview li { line-height: .55rem; padding: .1rem 0; font-size: .3rem; }
.pview li label { width: 1.5rem; display: inline-block; vertical-align: top; color: #666; }
.pview li .item { width: calc(100% - 1.8rem); display: inline-block; }
.pview li .item a.cat { line-height: .55rem; display: inline-block; margin-right: .3rem; padding: 0 .25rem; color: #dc0000; border: 1px solid #dc0000; border-radius: .15rem; }
.pview li .weixin_copy_btn { color: #0088e4; font-size: .25rem; padding: .06rem .2rem; border-radius: 0.2rem; margin-left: 0.1rem; border: 1px solid #0088e4; }
.pview li.phone_box { height: 1.2rem; line-height: 1.2rem; margin-top: 0.2rem; text-align: center; border-top: 1px dashed #ddd; }
.pview li.phone_box .phone_tubiao { vertical-align: text-bottom; }
.pview li.phone_box a span.phone_text { font-size: .35rem; color: #dc0000; }
.pview li.phone_box a span.phone_tip { font-size: .25rem; color: #888; vertical-align: top; }
.pcontent { padding-top: .35rem; font-size: .18rem; line-height: .35rem; }
.pcontent table { width: 100%; }
.pcontent table th { background: #f6f6f6; }
.pcontent table th, .pcontent table td { border: 1px solid #666; padding: .05rem; }

/* ==========================================
   6. 底部与工具栏、弹窗
   ========================================== */
.footer { text-align: center; width: 100%; background: #fff; }
.footer .copyright { width: 94%; margin: 0 auto; color: #c9c9c9; font-size: 0.14rem; line-height: .2rem; padding: 0.2rem 0; }
.footer .copyright a { color: #c9c9c9; }

/* 返回顶部 (已修复) */
#gotop { 
    width: 1rem; 
    height: 1rem; 
    background: url(../images/gotop.png) no-repeat center top; 
    background-size: 1rem auto; 
    position: fixed; 
    bottom: 20%; 
    right: 2%; 
    cursor: pointer; 
    z-index: 99999; 
}

#toolbar { position: fixed; bottom: 0; width: 100%; z-index: 99999; height: 1.1rem; left: 0; }
#toolbar ul { width: 100%; max-width: 640px; min-width: 320px; margin: 0 auto; background: #dc0000; }
#toolbar ul li { float: left; width: 50%; text-align: center; border: 1px solid #ac140f; border-left: 0; transition: all .3s ease-in-out 0s; }
#toolbar ul li:first-child { border-left: 1px solid #ac140f; }
#toolbar ul a { display: block; height: 1.1rem; line-height: 0.24rem; font-size: 0.26rem; padding-top: 0.2rem; }
#toolbar ul a span { text-align: center; color: #fff; display: block; font-size: 0.24rem; }
#toolbar ul a s { margin: 0 auto .12rem; width: 0.31rem; height: 0.32rem; display: block; background-position: -.76rem -.2rem; }
#toolbar ul li:nth-child(1) s { background-position: 0 -.2rem; }
#toolbar ul li:nth-child(2) s { background-position: -.38rem -.2rem; }
#toolbar ul li:hover { background: #ac140f; }

/* 微信弹窗 */
#wxnr { width: 100%; height: 100%; max-width: 640px; min-width: 320px; position: fixed; top: 0; z-index: 1000; display: none; background: rgba(0, 0, 0, .6); }
#wxnr .nrdf { margin: auto; position: absolute; top: 50%; left: 0; right: 0; width: 5rem; height: 5.6rem; padding: 0.6rem 0.3rem 0.3rem; margin-top: -2.5rem; text-align: center; background-color: rgba(255, 255, 255, 0.8); box-shadow: 0px 2px 6px #777; border-radius: 10px; }
#wxnr img { width: 2.3rem; height: 2.3rem; display: block; margin: 0 auto; }
#wxnr p { font-size: 0.24rem; line-height: 0.45rem; text-align: center; }
#wxnr i { position: absolute; top: 0.2rem; right: 0.2rem; width: 0.3rem; height: 0.3rem; font-size: 0.2rem; line-height: 0.3rem; text-align: center; color: #fff; font-weight: bold; background: #333; border-radius: 1rem; cursor: pointer; }
#wxnr span { display: inline-block; padding: 0.03rem 0.1rem; line-height: 0.35rem; background-color: #dc0000; color: #fff; border-radius: 0.05rem; cursor: pointer; }
#wxnr span.wx { padding-left: 0.4rem; background: url(../images/wx.png) 0.1rem center no-repeat / 0.28rem; }

#weixin { position: fixed; top: 50%; margin-top: -0.4rem; z-index: 9999999; font-size: 0.26rem; color: #fff; width: 90%; right: 5%; line-height: 0.8rem; text-align: center; background: rgba(0, 0, 0, 0.8); border: 2px solid #333; border-radius: 0.1rem; display: none; }

/* ==========================================
   7. PC端适配 (宽度 >= 1025px)
   ========================================== */
@media (min-width: 1025px) {
    body { max-width: inherit; }
    body:before, body:after { height: 0; }
    .container { width: 85%; margin: 0 auto; }
    
    .header { max-width: inherit; width: 85%; padding-top: .1rem; box-shadow: none; position: relative; }
    .header .top-tel { display: block; }
    .header #nav { display: none; }
    .subNav { position: relative; width: 100%; height: 100%; background: #fff; right: 0; top: 0; z-index: 0; max-width: inherit; min-width: inherit; transform: none; }
    .subNav ul { display: flex; margin: 0 auto; text-align: center; border-bottom: 1px dashed #ddd; }
    .subNav li { line-height: .6rem; }
    .subNav li:hover > a { background-color: #dc0000; color: #fff; border-radius: 20px; }
    .subNav li a { width: auto; font-size: 0.18rem; border-bottom: 0; color: #333; }
    
    .index-banner { background: url('/images/b1.jpg') center top / 100% 100% no-repeat; height: 5rem; border-top: 1px dashed #ddd; }
    a.inquiry { display: none; }
    .product { padding-top: 0; }
    .product ul li { width: 32%; }
    .product ul li:nth-child(3n) { margin-right: 0; }
    .product ul li .img { height: 3rem; }
    
    .index-about { padding: 78px 0; }
    .index-about .atit { font-size: 44px; }
    .index-about .atit span { font-size: 70px; }
    .index-about .cont { margin: 40px auto 35px; font-size: 16px; -webkit-line-clamp: 6; }
    .index-about .kk { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .index-about .kk li { padding: .2rem; font-size: 20px; }
    
    .workflow ul li { width: 16.5%; }
    .workflow ul li:nth-child(3n+3):after { display: block; }
    .workflow ul li:last-child:after { display: none; }
    .workflow ul li h3 { font-size: .22rem; line-height: 1.8; }
    
    .faq ul:after { content: ""; display: block; clear: both; }
    .faq ul li { width: 45%; float: left; }
    .faq ul li:nth-child(2n) { float: right; }
    
    .main { width: 90%; margin: 0 auto; }
    .caselist li { width: 30.6%; }
    .caselist li:nth-child(3n) { margin-right: 0; }
    .recom ul li { height: 1.6rem; }
    .recom ul li.item .img { width: 1.8rem; height: 1.2rem; }
    .subCate a { width: 31%; margin: .05rem 1%; font-size: .22rem; height: .5rem; }
    
    .about .pic { width: 5rem !important; float: left; padding-right: .5rem; }
    .article .pic { display: none; }
    .contact .pview { padding-top: 0; }
    .contact .pview li { line-height: .25rem; padding: .1rem 0; font-size: .2rem; }
    
    .pro .pic { width: 5rem !important; position: absolute; padding: 1.5rem .5rem 0; }
    .pro .probox { width: 9rem !important; float: right; padding-bottom: .6rem; }
    .probox .phone_box { display: none; }
    
    .pview li.wx { display: none; }
    .pview li.dh { display: block; }
    .pview .phone_box { display: none; }
    
    #gotop { width: .6rem; height: .6rem; background-size: .6rem auto; }
    #toolbar { display: none; }
}