﻿*{ margin:0; padding:0; box-sizing: border-box; transition-property: all;-ms-transition-property: all;-moz-transition-property: all; -webkit-transition-property: all; -o-transition-property: all;}
body{   font-family: "microsoft yahei"; color:#333; font-size:0.9rem; background: #FFFFFF; line-height: 26px; min-width: 1360px;}
a{ text-decoration: none; -webkit-transition: all ease .35s;  -moz-transition: all ease .35s; transition: all .35s ease; border:none; color: #333;}
a:focus { outline: 0 }
a:hover{ color: #3879bd;}
img{ border:none; -webkit-transition: all ease .35s;  -moz-transition: all ease .35s; transition: all ease .35s;}
ul,li{ list-style:none;}
.clear{ clear:both;}
.clearfix{ clear:both;}
p{ margin:0 auto; padding:0;}
.padding5{ padding:5px;}
.padding10{ padding:10px;}
.padding15{ padding:15px;}
.padding20{ padding:20px;}
.padding30{ padding:30px;}
.padding40{ padding:40px;}
.fr{ float:right;}
.fl{ float:left; }
.paddingright{ padding-right:10px;}
.paddingleft{ padding-left:10px;}
.undis{ display:block;  background-size: cover;}
.dis{ display:none !important;  }
.pr5{ padding-right:5px;}
.red{ color:#f00;}
.fff{ color:#fff;}
.pdt30{ padding-top: 30px;}
.txtcenter{ text-align: center;}
.container{ width:1360px;  margin: 0 auto;}
.flex {display: flex; flex-wrap: wrap;}
.flex-center { display: flex; align-items: center; justify-content: space-between;}
.flex-center2 { display: flex; align-items: center; justify-content:flex-start;}
.flex-center4 { display: flex; align-items: flex-end; justify-content:flex-end;}
.flex-center1 { display: flex; align-items: center; justify-content: center;}
.flex-center-contain { justify-content: space-between;}
.flex-center-contain1 { justify-content: space-between; align-items: center; }
.flex-center-contain2 { align-items: center; }
.flex-center-contain3 {   align-items: flex-start; justify-content: space-between;}
em,i{ font-style: normal;}
h1,h2,h3,h4,h5,b,strong{ color: #111111;}
html {
    scroll-behavior: smooth;
}
::-webkit-scrollbar {
  width: 6px;
  height:5px;
}


::-webkit-scrollbar-track {
  background-color: #f5f5f5;
  border-radius: 10px;
}


::-webkit-scrollbar-thumb {
  background-color: #888;
  border-radius: 10px;
}


::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

#home .home,
#products .products,
#solution .solution,
#application .application,
#contact .contact,
#service .service,
#newsT .newsT,
#newsT1 .newsT1,
#dzxq .dzxq,
#about .about{ color: #3879bd; border-bottom:3px solid #3879bd;}

.post-info{
  padding: 30px 0;
  line-height: 26px;
  font-size: 1rem;
  color: #333;
  word-break: break-word;
}

.post-info img{
  max-width: 100%;
  height: auto;
  display: block;
  margin: 20px auto;
  border-radius: 6px;
}

.post-info h2{
  font-size: 1.6rem;
  line-height: 1.4;
  margin: 40px 0 20px;
  padding-left: 14px;
  border-left: 4px solid #3879bd;
  color: #222;
}

.post-info h3{
  font-size: 1.3rem;
  line-height: 1.4;
  margin: 32px 0 16px;
  color: #3879bd;
}

.post-info h4{
  font-size: 1.1rem;
  line-height: 1.4;
  margin: 24px 0 12px;
  color: #333;
}

.post-info p{
  margin: 0 0 18px;
  line-height: 30px;
  color: #333;
}

/* 强调文字 */
.post-info strong,
.post-info b{
  color: #3879bd;
  font-weight: bold;
}
.post-info ul{
  margin: 15px 0 20px 20px;
  padding: 0;
}

.post-info ul li{
  position: relative;
  margin-bottom: 10px;
  padding-left: 12px;
  line-height: 26px;
}

/* 自定义圆点 */
.post-info ul li::before{
  content: "";
  position: absolute;
  left: -12px;
  top: 11px;
  width: 6px;
  height: 6px;
  background: #3879bd;
  border-radius: 50%;
}
.post-info ol{
  margin: 15px 0 20px 22px;
  padding: 0;
}

.post-info ol li{
  margin-bottom: 10px;
  line-height: 26px;
}

.post-info table{
  width: 100%;
  border-collapse: collapse;
  margin: 25px 0;
  font-size: 0.95rem;
}

/* 表头 */
.post-info table th{
  background: #fdf1f2;
  color: #3879bd;
  font-weight: bold;
  padding: 12px 10px;
  border: 1px solid #e5e5e5;
  text-align: left;
}

/* 单元格 */
.post-info table td{
  padding: 12px 10px;
  border: 1px solid #e5e5e5;
  line-height: 24px;
  color: #333;
}

/* 隔行变色 */
.post-info table tr:nth-child(even) td{
  background: #fafafa;
}

.post-info blockquote{
  margin: 25px 0;
  padding: 16px 20px;
  background: #fff6f7;
  border-left: 4px solid #3879bd;
  color: #555;
  line-height: 28px;
}


.HeaderM{ display: none;}


input,button,select,textarea{ outline:none; font-family: "arial, helvetica, sans-serif";}
textarea{resize:none;}
input[type="button"], input[type="submit"], input[type="reset"],input[type="text"] {-webkit-appearance: none; font-weight:normal;}
input[type="button"], input[type="submit"], input[type="reset"]{ cursor: pointer;}
a,button{ cursor: pointer;}
#warp{ width:100%; height:auto; overflow: hidden;}

header.current{ position: fixed; left: 0; top: 0; box-shadow: 3px 3px 20px 0 rgba(0,0,0,.1); z-index: 999;}


header{ width: 100%; padding: 20px 0; background: #FFFFFF;}
header .logo{ width: 211px; height: 70px;}
header .logo a{ display: block; width: 211px; height: 70px; background: url(../images/logo.svg) no-repeat; background-size:cover}
header .logo a h1{ display: none;}

.hearch{width: 237px;height: 42px;background: #FFFFFF;border-radius: 50px; padding: 3px; border: 1px solid #333333;}
.hearch input{ width: calc(100% - 34px);border: none; background: none; padding: 0 15px;}
.hearch button{ width: 34px; height: 34px; background: #3879bd; color: #FFFFFF; border: none; border-radius: 50%; font-size: 1.1rem;}


header nav.Hnav{
  height: 100%;
}

header nav.Hnav > ul{
  height: 100%;
  align-items: center;
}

header nav.Hnav li{
  padding: 0 25px;
  font-size: 1.1rem;
  height: 45px;
  line-height: 45px;
  position: relative;
}

header nav.Hnav li a{
  color: #333;
  display: inline-block;
  transition: all .25s ease;
}

header nav.Hnav li a:hover{
  color: #3879bd;
}

/* 一级下拉 */
header nav.Hnav li ul{
  display: none;
  position: absolute;
  left: 0;
  top: 45px;
  z-index: 999;
  width: 240px;
  background: #fff;
  border-top: 3px solid #3879bd;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
  overflow: visible;
}

header nav.Hnav li:hover > ul{
  display: block;
}

header nav.Hnav li ul li{
  height: 44px;
  line-height: 44px;
  font-size: 0.9rem;
  border-bottom: 1px solid #eee;
  padding: 0;
  position: relative;
}

header nav.Hnav li ul li:last-child{
  border-bottom: none;
}

header nav.Hnav li ul li a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 44px;
  line-height: 44px;
  padding: 0 16px;
  font-weight: normal;
  font-size: 0.9rem;
  color: #333;
  white-space: nowrap;
}

header nav.Hnav li ul li a i{
  font-size: 14px;
  color: #999;
  transition: all .25s ease;
}

header nav.Hnav li ul li:hover > a{
  background: #3879bd;
  color: #fff;
}

header nav.Hnav li ul li:hover > a i{
  color: #fff;
}

/* 二级下拉 */
header nav.Hnav li ul li ul{
  display: none;
  position: absolute;
  left: 240px;
  top: -3px;
  width: 240px;
  background: #fff;
  border-top: 3px solid #3879bd;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
}

header nav.Hnav li ul li:hover > ul{
  display: block;
}

header nav.Hnav li ul li ul li a{
  background: #fff;
  color: #333;
}

header nav.Hnav li ul li ul li:hover > a{
  background: #3879bd;
  color: #fff;
}



/**banner**/
.main_visual .owl-carousel,.main_visual .owl-stage-outer,.main_visual .owl-stage,.main_visual .owl-carousel .owl-item{width: 100%; height: auto;}
.main_visual .owl-carousel .item{width: 100%;height: auto; background-repeat: no-repeat; background-position: center center;-webkit-background-size: cover; background-size: cover;}
.main_visual .owl-carousel .item img{ width: 100%; height: auto;}
.main_visual .owl-prev,.main_visual .owl-next{text-indent: -999em; overflow: hidden;}

.main_visual .owl-dots{ width: 100%; text-align: center; height: 4px; position:absolute; left: 0; bottom: 30px;  z-index: 999;}
.main_visual .owl-dots .owl-dot{display: inline-block;  margin:0 3px;}
.main_visual .owl-dots .owl-dot span{  display: inline-block; width: 60px; height: 4px; background:#ffffff; border-radius:6px; }
.main_visual .owl-dot.active span{ background:#3879bd; }
.main_visual .owl-controls{ height: 0;}

.home-products{ width: 100%; height: auto; background: url(../images/homeprobg.jpg) no-repeat center; background-size: cover; padding: 70px 0;}

.home-products-title{ height: 94px; position: relative;}
.home-products-title h2{font-family: SourceHanSansCN, SourceHanSansCN;
font-weight: 800;
font-size: 68px;
color: rgba(0,0,0,0.06); text-transform: uppercase; position: absolute; left: 0; top:0;}
.home-products-title-left{ padding-top: 20px;}
.home-products-title-left h3{ font-size: 3rem; position:relative; z-index: 333;}
.home-products-title-left em{ background: #106DBA; width: 95px; height: 10px; display: block; margin-top: 7px;}
.home-products-title a{ display: block; width: 238px; height: 77px; margin-top: -30px;}
.home-products-title a:hover{transform: translateY(-10px);}

.home-products-tab{ padding: 45px 0;}
.home-products-tab li{height: 57px; line-height: 57px; background: #FFFFFF;border-radius: 60px; padding: 0 50px; margin-right: 20px; font-size: 1.1rem; cursor: pointer;}


.home-products-container{}
.home-products-list{ display: flex; justify-content: space-between;}
.home-products-item{ width: 24%; background:#fff; border-radius: 6px;border: 2px solid #EDEDED; text-align: center; padding: 30px; cursor: pointer; transition: all ease .35s;}
.home-products-item b{ display: block; font-size: 1.5rem; height: 46px; line-height: 46px; overflow: hidden; text-align: left;}
.home-products-item em{ display: block; width: 38px;height: 6px;background: #106DBA;}
.home-products-item img{ width: 200px; height: 200px;}
.home-products-item a{ display: inline-block; height: 56px; line-height: 54px; padding: 0 25px; font-size: 1rem; background: #FFFFFF;border-radius: 100px;border: 1px solid #666666; }
.home-products-item a i{ margin-left: 15px;}
.home-products-item:hover{ background: url(../images/homeprodl.jpg) no-repeat center; background-size: cover; border-radius: 6px 30px 6px 30px;}
.home-products-item:hover b{ color: #ffffff;}
.home-products-item:hover a{ border-color:#ffffff; color:#3879bd}

.home-products-action{ line-height: 52px; margin-top: 30px; position:relative;}
.home-products-action-num{ font-size: 1.5rem; color: #666;}
.home-products-action-num .active{ color:#106DBA;}

.home-products-action-ap{ position:absolute; left:50%; top:0; margin-left:-75px;}
.home-products-action-ap a{ color: #666; font-size: 3rem; margin:0 30px;}
.home-products-action-ap a:hover{ color:#106DBA;}

.home-products-tab{
    padding: 45px 0;
    position: relative;
}

.home-products-tab-view{
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.home-products-tab-view::-webkit-scrollbar{
    display: none;
}

.home-products-tab-view.dragging{
    cursor: grabbing;
    user-select: none;
}

.home-products-tab-track{
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
}

.home-products-tab li{
    height: 57px;
    line-height: 57px;
    background: #FFFFFF;
    border-radius: 60px;
    padding: 0 50px;
    margin-right: 20px;
    font-size: 1.1rem;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all .3s ease;
}

.home-products-tab li.active{
    background: #106DBA;
    color: #fff;
}

/* 可选：拖动时避免误触文字选中 */
.home-products-tab,
.home-products-tab *{
    -webkit-tap-highlight-color: transparent;
}
.home-products-container {
    position: relative;
}

.home-products-panel {
    display: none;
}

    .home-products-panel.active {
        display: block;
    }

.home-products-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.home-products-item {
    width: 24%;
    background: #fff;
    border-radius: 6px;
    border: 2px solid #EDEDED;
    text-align: center;
    padding: 30px;
    cursor: pointer;
    transition: all ease .35s;
    display: none;
}

    .home-products-item.show {
        display: block;
    }

.home-products-tab li.active {
    background: #106DBA;
    color: #fff;
}



#prodCurrent{color: #3879bd;}


.home-advan{ width: 100%; min-height: 856px; background: url(../images/homeysbg.jpg) no-repeat center; background-size: cover; padding: 80px 0;}


.home-advan-list{ width: 940px; margin-top: 75px; gap: 15px; grid-template-columns: repeat(2, 1fr); /* 3 列 */  display: grid;}
.home-advan-item{ width: 100%; background: #FFFFFF; padding: 30px; transition: all .35s ease;}
.home-advan-item-top{ width: 100%;}
.home-advan-item-top-left{}
.home-advan-item-top-left b{ font-size: 1.8rem; line-height: 36px; margin-bottom: 10px; display: block;}
.home-advan-item-top-left p{ color: #666; font-size: 1.1rem; line-height: 25px;}


.home-advan-item-top-right{border: 1px solid #ECECEC; border-radius: 50%; text-align:center; width:100px; height:100px; display:flex; align-items:center; justify-content:center; }
.home-advan-item-top-right img{height: 52px; width: 52px;}


.home-advan-item h3{ font-size: 1.4rem; line-height: 52px; margin-top: 35px;}
.home-advan-item em{ display: block; width: 48px; height: 4px; background: #106DBA;}

.home-advan-item:hover{ background: #106DBA;}
.home-advan-item:hover b{ color: #ffffff;}
.home-advan-item:hover p{ color: #ffffff;}
.home-advan-item:hover h3{ color: #ffffff;}
.home-advan-item:hover em{ background: #ffffff;}
.home-advan-item:hover img{filter: brightness(0) invert(1);}


.home-blog{ width: 100%; padding: 70px 0;}

/* 首页新闻资讯 + 技术分享 */
.home-news-container{
  margin-top: 45px;
}

.home-news-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 38px;
}

.home-news-box{
  min-width: 0;
}

.home-news-title{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: 18px;
}

.home-news-title h2{
  position: relative;
  margin: 0;
  padding-left: 14px;
  font-size: 1.6rem;
  line-height: 30px;
  color: #3879bd;
  font-weight: 900;
}

.home-news-title h2:before{
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 7px;
  height: 4px;
  background: #3879bd;
}

.home-news-more{
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 8px;
  border: 1px solid #d1d5db;
  color: #888;
  font-size: 12px;
  line-height: 18px;
  text-decoration: none;
  background: #f7f7f7;
  transition: all .2s ease;
}

.home-news-more:hover{
  color: #106DBA;
  border-color: #106DBA;
  background: #fff;
}

.home-news-img{
  display: block;
  width: 100%;
  height: 140px;
  border-radius:10px;
  overflow: hidden;
  border: 1px solid #d8e0ea;
  background: #f5f7fa;
  margin-bottom: 12px;
}

.home-news-img img{
  display: block;
  width: 100%;
  height: 100%;
   border-radius:10px;
  object-fit: cover;
  transition: transform .35s ease;
}

.home-news-img:hover img{
  transform: scale(1.04);
}

.home-news-list{
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-news-list li{
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 32px;
  font-size: 15px;
  overflow: hidden;
}

.home-news-list li:before{
  content: "·";
  color: #333;
  font-weight: 900;
  flex: 0 0 auto;
  font-size: 18px;
  line-height: 1;
}

.home-news-list li a{
  flex: 1;
  min-width: 0;
  color: #333;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-news-list li a:hover{
  color: #3879bd;
}

.home-news-list li span{
  flex: 0 0 auto;
  color: #333;
  font-size: 14px;
  white-space: nowrap;
}


footer{ width: 100%; height: auto; background: url(../images/footer.jpg) no-repeat center; background-size: cover;}


.footer-box{ padding: 50px 0 25px 0;}
.footer-box-left{ width: 450px;}
.footer-box-left .flogo{ width: 195px; height: 63px; margin-bottom: 30px;}
.footer-box-left .flogo a{ display: block; width: 195px; height: 63px; background: url(../images/flogo.jpg) no-repeat;}
.footer-box-left p{}


.footer-box-right{}
.footer-box-right dl{ margin-right: 80px;}
.footer-box-right dl dt{ font-weight: bold; color: #111111; font-size:1.3rem; line-height: 32px; border-bottom:1px solid #CCCCCC; padding-bottom: 10px;}
.footer-box-right dl dd{ margin-top: 10px;}
.footer-box-right dl dd a{ display: block; line-height: 30px;}






.footer-copy{ width: 100%; height: auto; padding: 20px 0; border-top: 1px solid #CCCCCC; text-align: center; font-size: 1rem;}
.footer-copy a{ margin-left: 10px; }


/* 悬浮容器 */
.customerList{
  position: fixed;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 999;
  pointer-events: none; /* 防止空白区域挡点击 */
}

.customerBox{
  display: flex;
  flex-direction: column;
  gap: 4px;
  pointer-events: auto; /* 允许内部按钮可点击 */
}

/* 每个客服按钮 */
.customerBox a{
  position: relative;
  width: 58px;
  height: 58px;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(0,0,0,0.10);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
  overflow: visible;
}

/* hover：浮起 + 主色 */
.customerBox a:hover{
  transform: translateY(-3px);
  border-color: rgba(56,121,189,0.38);
  box-shadow: 0 12px 28px rgba(0,0,0,0.14);
  background: linear-gradient(180deg, #ffffff 0%, #f1f7fd 100%);
}

/* 图标 */
.customerBox a i{
  font-size: 20px;
  line-height: 20px;
  color: #3879bd;
  transition: transform .22s ease;
}

.customerBox a:hover i{
  transform: scale(1.08);
}

/* 文案 */
.customerBox a p{
  margin: 6px 0 0;
  font-size: 11px;
  line-height: 11px;
  color: #333;
  transition: color .22s ease;
}

.customerBox a:hover p{
  color: #3879bd;
}

/* ===== 弹出信息（默认隐藏，hover 才显示） ===== */
.customerBox a .eso_divinfo{
  position: absolute;
  right: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%);
  background: #fff;
  border: 1px solid rgba(56,121,189,0.22);
  border-radius: 10px;
  padding: 10px;
  box-shadow: 0 14px 32px rgba(0,0,0,0.14);
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

/* hover 显示 */
.customerBox a:hover .eso_divinfo{
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(-2px);
}

/* 小箭头 */
.customerBox a .eso_divinfo::after{
  content: "";
  position: absolute;
  right: -7px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 7px solid #fff;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
}

/* 二维码图片更柔和 */
.customerBox a .eso_divinfo img{
  display: block;
  max-width: 120px;
  height: auto;
  border-radius: 8px;
}

/* 文字信息（邮箱/电话）更好看一点 */
.customerBox a[href^="mailto:"] .eso_divinfo,
.customerBox a[href^="tel:"] .eso_divinfo{
  font-size: 13px;
  line-height: 18px;
  color: #111827;
  font-weight: 700;
  padding: 10px 12px;
}

/* 返回顶部按钮可做强调 */
#back-to-top i{
  color: #ffffff;
}
#back-to-top{
  background: #3879bd;
  border-color: rgba(56,121,189,0.55);
}
#back-to-top p{
  color: #ffffff;
}
#back-to-top:hover{
  background: #2f69a4;
}

.optain{ display:none;}
.fposi{ display: none;}

.banner2{ width: 100%; color: #FFFFFF; height: 450px;}
.banner2info{ height: 100%; position: relative;}
.banner2info h1{ color: #FFFFFF; font-size: 2.6rem;}
.banner2info b{ color: #FFFFFF; font-size: 2.6rem;}

.webposi{ width: 100%; position: absolute; z-index: 333; left: 0; bottom: 0; line-height:24px; padding: 15px 0;}
.webposi i{ margin-right: 10px;}
.webposi a{ color: #FFFFFF;}

.main-menu{ width: 100%; height: 76px; line-height: 74px; border-bottom:2px solid #e5e5e5;}
.main-menu a{ font-size:1.1rem; margin: 0 30px;}
.main-menu a.active{ color: #3879bd; border-bottom:2px solid #3879bd;}

.about-company{ padding:80px 0;}
.about-left{ width:50%; padding-right:50px;}

.about-leftinfo{ width:100%; line-height:26px;}

.about-left-title{ width:100%; margin-bottom:40px;}
.about-left-title em{ display: block; color:#3879bd; text-transform: uppercase; font-weight: bold; font-size: 1.1rem; line-height: 30px;}
.about-left-title h2{ font-size: 2.3rem; line-height: 42px;}

.about-right{ width: 50%; height: auto;}
.about-rightimg{ width: 100%; height: auto;}

.about-even{ margin-top:80px; width: 100%; height: auto; background: url(../images/abevenbg.jpg) no-repeat center; background-size:cover; padding: 70px 0 160px 0;}
.about-even-box{ width: 100%; margin-top: 30px; }
.about-even-box img{ border-radius:8px;}

.main_visual1 .owl-carousel,
.main_visual1 .owl-stage-outer,
.main_visual1 .owl-stage,
.main_visual1 .owl-carousel .owl-item{width: 100%;height: 100%; }
.main_visual1 .main_visual1 .item{width: 100%;height: 100%; overflow: hidden; margin: 0 auto;}
.main_visual1 .owl-carousel .item img{ width: 100%;height: 100%; display: block;}
.main_visual1 .owl-prev,
.main_visual1 .owl-next{display: none; text-indent: -9999em;}
.main_visual1 .owl-dots{ width: 100%; text-align: center; height: 4px; position:absolute; left: 0; bottom: -30px; z-index: 999;}
.main_visual1 .owl-dots .owl-dot{display: inline-block; margin:0 6px;}
.main_visual1 .owl-dots .owl-dot span{ display: inline-block; width: 32px; height: 4px; background:#CCCCCC;}
.main_visual1 .owl-dot.active span{ background:#3879bd; }
.main_visual1 .owl-controls{ height: 0;}
.main_visual1 .owl-nav{ height: 0;}

.about-info{ padding: 30px 0; line-height: 26px;}
.about-info img{ max-width: 100%;}

.about-imglist{ gap: 25px; grid-template-columns: repeat(4, 1fr); display: grid; padding: 30px 0;}
.about-imglist dl{ width: 100%;}
.about-imglist dl dt{ width: 100%; height: auto; overflow: hidden; border-radius:8px 8px 0 0;}
.about-imglist dl dt img{ width: 100%; height: auto; border-radius:8px 8px 0 0;}
.about-imglist dl dt a:hover img{transform: scale(1.1); -webkit-transform: scale(1.1);}
.about-imglist dl dd{ width: 100%; height: 52px; line-height: 52px; overflow: hidden; text-align: center; background: #EEEEEE;}

.contact-box{ padding: 70px 0;}
.contact-map{ width: 100%; height: 500px; background: #f7f7f7;}

.contact-feedback{ padding-bottom: 70px;}
.contact-feedback-left{ width: 50%; padding-right: 120px;}
.contact-feedback-left p{ font-size: 1.1rem; line-height: 28px; margin-top: 60px;}

.contact-feedback-right{ width: 50%; }
.contact-feedback-right input{ width: 100%; margin-top: 15px; border: none; border-bottom:2px solid #EEEEEE; line-height: 48px; height: 48px;} 
.contact-feedback-right textarea{ width: 100%; margin-top: 15px; border: none; border-bottom:2px solid #EEEEEE; line-height: 28px; height: 100px;}
.contact-feedback-right button{ background: #3879bd; height: 43px; line-height: 43px; border-radius:30px; margin-top: 30px; color: #FFFFFF; font-size: 1rem; padding: 0 50px; border: none;}
.contact-feedback-right button:hover{ background: #111111;}

.contact-job{ padding:40px 0 70px 0;}
.job-list{ display: grid; gap: 18px; }

.job-item{
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 12px;
  padding: 22px 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.job-item:hover{
  transform: translateY(-2px);
  border-color: rgba(56,121,189,.38);
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
}

.job-main h3{ margin: 0; font-size: 1.15rem; line-height: 28px; }
.job-meta{
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px 18px;
  color: #6b7280;
  font-size: .9rem;
}
.job-meta i{ margin-right: 6px; color: #3879bd; }

.job-desc{
  margin: 12px 0 0;
  color: #374151;
  line-height: 24px;
  max-width: 820px;
}

.job-action{ flex: 0 0 auto; }

.btn-mail{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 44px;
  padding: 0 18px;
  border-radius: 10px;
  background: #3879bd;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  transition: transform .18s ease, opacity .18s ease;
}
.btn-mail:hover{ transform: translateY(-1px); opacity: .92; color: #FFFFFF;}
.btn-mail i{ font-size: 1.2rem; }

.blog-list{ padding: 40px 0 70px 0;}

.blog-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.blog-card{
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 12px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.blog-card:hover{
  transform: translateY(-3px);
  border-color: rgba(56,121,189,.38);
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
}

.blog-thumb{ overflow: hidden; }
.blog-thumb img{
  width: 100%;
  height: auto;
  display: block;
  transform: scale(1);
  transition: transform .45s ease;
  will-change: transform;
}
.blog-card:hover .blog-thumb img{
  transform: scale(1.06);
}

.blog-body{ padding: 18px 18px 20px; }
.blog-meta{
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #6b7280;
  font-size: .9rem;
}
.blog-date i{ margin-right: 6px; color: #3879bd; }
.blog-view i{ margin-right: 6px; color: #3879bd; }

.blog-title{
  display: block;
  margin-top: 10px;
  font-size: 1.1rem;
  line-height: 28px;
  font-weight: 700;
  color: #111827;
  text-decoration: none;
  height: 28px;
  overflow: hidden;
}
.blog-title:hover{ color: #3879bd; }

.blog-excerpt{
  margin: 10px 0 0;
  color: #374151;
  line-height: 24px;
  height: 48px;
  overflow: hidden;
}

.blog-more{
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #3879bd;
  text-decoration: none;
  font-weight: 600;
}
.blog-more i{ font-size: 1.2rem; font-weight: 700; }
.blog-more:hover{ opacity: .85; }

.blog-show{padding: 40px 0 70px 0;}

.blog-show-header{
  padding-bottom: 18px;
  border-bottom: 1px solid #e7e7e7;
  margin-bottom: 22px;
}
.blog-show-header h1{
  margin: 0;
  font-size: 1.4rem;
  line-height: 1.35;
  color: #111827;
}
.blog-show-meta{
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: #6b7280;
  font-size: .92rem;
}
.blog-show-meta i{
  margin-right: 6px;
  color: #3879bd;
}

.blog-show-wrap{
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 26px;
}

.blog-show-main{
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 12px;
  padding: 22px 22px 18px;
}

.blog-show-content{
  color: #1f2937;
  line-height: 28px;
  font-size: 0.9rem;
}
.blog-show-content p{ margin: 0 0 14px; }
.blog-show-content h2{
  margin: 22px 0 10px;
  font-size: 1.25rem;
  line-height: 1.3;
  color: #111827;
}
.blog-show-content ul{
  margin: 10px 0 14px 18px;
  padding: 0;
}
.blog-show-content li{ margin: 6px 0; }
.blog-show-content blockquote{
  margin: 18px 0;
  padding: 12px 14px;
  border-left: 4px solid #3879bd;
  background: #eef5fc;
  color: #374151;
  border-radius: 8px;
}

.blog-show-nav{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #e7e7e7;
}
.blog-show-nav ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.blog-show-nav li{
  border: 1px solid #eee;
  border-radius: 12px;
  padding: 14px 14px;
  background: #fff;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.blog-show-nav li:hover{
  transform: translateY(-2px);
  border-color: rgba(56,121,189,.38);
  box-shadow: 0 12px 26px rgba(0,0,0,.08);
}
.blog-show-nav .nav-label{
  display: inline-block;
  font-size: .9rem;
  color: #6b7280;
}
.blog-show-nav li a{
  display: block;
  margin-top: 8px;
  font-weight: 700;
  color: #111827;
  line-height: 24px;
  text-decoration: none;
  max-height: 48px;
  overflow: hidden;
}
.blog-show-nav li:hover a{
  color: #3879bd;
}

.blog-show-side .side-box{
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 12px;
  padding: 16px;
  position: sticky;
  top: 90px;
}
.side-title{
  font-weight: 800;
  color: #111827;
  font-size: 1.05rem;
  padding-bottom: 12px;
  border-bottom: 1px solid #eee;
  margin-bottom: 14px;
}

.side-item{
  display: flex;
  gap: 12px;
  text-decoration: none;
  padding: 10px 0;
  border-bottom: 1px dashed #eee;
}
.side-item:last-child{ border-bottom: none; }

.side-thumb{
  flex: 0 0 auto;
  width: 120px;
  height: 80px;
  overflow: hidden;
  border-radius: 10px;
  background: #f3f4f6;
}
.side-thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1);
  transition: transform .35s ease;
}
.side-item:hover .side-thumb img{
  transform: scale(1.06);
}

.side-info{ flex: 1; min-width: 0; }
.side-name{
  color: #111827;
  font-weight: 700;
  line-height: 22px;
  max-height: 44px;
  overflow: hidden;
}
.side-date{
  margin-top: 6px;
  color: #6b7280;
  font-size: .9rem;
}
.side-date i{
  margin-right: 6px;
  color: #3879bd;
}

.application-main{padding: 40px 0 70px 0;}

.app-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.app-card{
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 14px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.app-card:hover{
  transform: translateY(-3px);
  border-color: rgba(56,121,189,.38);
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
}

.app-thumb{ overflow: hidden; }
.app-thumb img{
  width: 100%;
  height: auto;
  display: block;
  transform: scale(1);
  transition: transform .45s ease;
  will-change: transform;
}
.app-card:hover .app-thumb img{
  transform: scale(1.06);
}

.app-body{ padding: 18px 18px 20px; }

.app-title{
  display: block;
  font-size: 1.15rem;
  line-height: 28px;
  font-weight: 800;
  color: #111827;
  text-decoration: none;
}
.app-title:hover{ color: #3879bd; }

.app-desc{
  margin: 10px 0 0;
  color: #374151;
  line-height: 24px;
  height: 72px;
  overflow: hidden;
}

.app-more{
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #3879bd;
  text-decoration: none;
  font-weight: 700;
}
.app-more i{ font-size: 1.2rem; font-weight: 700; }
.app-more:hover{ opacity: .85; }

.application-list{padding: 40px 0 70px 0;}

.app-list{ display: grid; gap: 18px; }

.app-row{
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 18px;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 14px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.app-row:hover{
  transform: translateY(-3px);
  border-color: rgba(56,121,189,.38);
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
}

.app-row-pic{ overflow: hidden; background: #f3f4f6; }
.app-row-pic a{ display: block; }
.app-row-pic img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1);
  transition: transform .45s ease;
  will-change: transform;
}
.app-row:hover .app-row-pic img{ transform: scale(1.06); }

.app-row-info{
  padding: 18px 18px 20px 6px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.app-row-title{
  display: block;
  font-size: 1.25rem;
  line-height: 30px;
  font-weight: 800;
  color: #111827;
  text-decoration: none;
}
.app-row-title:hover{ color: #3879bd; }

.app-row-desc{
  margin: 10px 0 0;
  color: #374151;
  line-height: 24px;
  max-height: 24px;
  overflow: hidden;
}

.app-row-meta{
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  color: #6b7280;
  font-size: .92rem;
}
.app-row-meta i{ margin-right: 6px; color: #3879bd; }

.app-row-more{
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #3879bd;
  text-decoration: none;
  font-weight: 700;
  width: fit-content;
}
.app-row-more i{ font-size: 1.2rem; font-weight: 700; }
.app-row-more:hover{ opacity: .85; }

.application-show {
  padding: 40px 0 70px 0;
}

.app-show-title {
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 10px;
  font-weight: bold;
  color: #222;
}

.app-show-time {
  font-size: 0.9rem;
  color: #999;
  margin-bottom: 30px;
}

.app-show-content p {
  font-size: 0.9rem;
  line-height: 30px;
  color: #333;
}

.goods-menu{
  padding: 40px 0 70px 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.goods-menu dl{
  margin: 0;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  overflow: hidden;
  transition: all .3s ease;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}

.goods-menu dl:hover{
  transform: translateY(-6px);
  border-color: rgba(56,121,189,.28);
  box-shadow: 0 16px 34px rgba(0,0,0,.10);
}

.goods-menu dt{
  margin: 0;
  width: 100%;
  height: auto;
  background: #f8fafc;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.goods-menu dt img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}

.goods-menu dl:hover dt img{
  transform: scale(1.06);
}

.goods-menu dd{
  margin: 0;
  padding: 20px 22px 24px;
  text-align: center;
}

.goods-menu dd a{
  display: block;
  font-size: 1.12rem;
  line-height: 28px;
  font-weight: 800;
  color: #111827;
  text-decoration: none;
  transition: color .25s ease;
}

.goods-menu dd a:hover{
  color: #3879bd;
}

.goods-menu dd p{
  margin: 10px 0 0;
  font-size: 0.92rem;
  line-height: 24px;
  color: #6b7280;
  height: 48px;
  overflow: hidden;
}



.contact-title{ text-align:center;}
.contact-title h3{ font-size:2.2rem; line-height:42px;}
.contact-title em{ display:block; width:80px; height:6px; background:#3879bd; margin:0 auto; margin-top:15px;}