*{ box-sizing: border-box; padding: 0px; margin: 0px;}
a{ color: #333;}
li{list-style: none;}
.img_wrap_43{ position: relative; padding-bottom: 75%;  overflow: hidden; text-align: left;  }
.img_wrap_43 img{width: 100%; height: 100%; position: absolute; object-fit:cover;transition: all 0.5s; }
.img_wrap_169{ position: relative; padding-bottom: 56.25%;  overflow: hidden; text-align: left;  }
.img_wrap_169 img{width: 100%; height: 100%; position: absolute; object-fit: cover;transition: all 1s; }
:root { --primary-color: rgb(71, 133, 233);   --secondary-color:  rgb(28, 51, 197);--primary-color-09: rgba(71, 133, 233,0.9);}
/*:root { --primary-color: rgb(45, 160, 243);   --secondary-color: dodgerblue;}*/
/*:root { --primary-color: #113485;   --secondary-color: dodgerblue;}*/
body{background: #fff; }
header{ position: fixed; top:0px; left: 50%; transform: translateX(-50%);  width: 100%; transition: height 0.3s ease, padding 0.3s ease; z-index: 1000;width: 100%; z-index: 20; background:rgba(0,0,0,0.3)  !important; box-shadow: 0 0 20px rgba(0,0,0,0.1); padding: 1rem; }
@media screen and (min-width: 1440px) {
    header.container-fluid .index-header,footer.container-fluid .row,.wrap{max-width: 1440px; margin: 0 auto;}
    main.container-fluid .index-content,.submenu-dl{max-width: 1440px; margin: 0 auto; overflow: hidden;}
}
#logo img{ max-height: 66px;}
#logo_m{ display: none;}
#logo_m img{ max-height: 60px;}
#menu{ display: flex; }
#menu ul li {}
#menu ul li .menutitle{ display: block;  padding: 0 20px; font-size: 1rem; color: #fff; text-decoration: none;  }
#menu ul li .menutitle:hover{ color: var(--primary-color); }
#menu ul li:not(:first-child):not(:last-child) .menutitle::after { content: ' '; width: 9px; height: 9px; display: inline-block; margin-left: 2px; background: url("../images/down.png") no-repeat center right;}
#menu ul{ margin: 0px; }
#index-tel .tel{display: flex; justify-content: end;  text-align: right; align-items: center; font-size: 24px; color: var(--primary-color); text-indent: 2.6rem;}
#index-tel .tel i{ margin-right: 5px;  font-size: 26px; ; align-content: center;   }
#index-tel .tel span{ background: url("../images/index-tel.png") no-repeat left center; background-size: contain; font-family: Arial, Helvetica, Verdana, 'Microsoft YaHei'; font-weight: bold; }
.submenu{ display: none; text-align: left; position: absolute; left: 0; overflow: hidden; border-top: 1px solid #ededed;  color: #333; top: 90px; width: 100%;height: auto; z-index: 9999;  background: #fff;  left: 50%; transform: translateX(-50%); border-bottom:4px solid var(--primary-color); }
.submenu-dl{ padding: 3% 1%; line-height: 30px; overflow: hidden;}
.submenu-dl .left{ width: 23%;  text-align: left;}
.submenu-dl .left h3{ font-size: 1.75rem;}
.submenu-dl .left p.title{ font-size: 1rem;}
.submenu-dl .left p.phone{ font-size: 1.5rem;  text-align: left; color: var(--primary-color); font-weight: bold; margin: 10px 0px;}
#menu .submenu .submenu-dl .left a{ padding: 8px 20px; background: var(--primary-color);  color: #fff;  font-size: 0.9rem; border-radius: 2px;text-decoration: none;  }
#menu .submenu .submenu-dl .left a:hover{ background: var(--primary-color-09) }
.submenu-dl .right{ flex: 1;  display: flex; justify-content: start; align-content: center; align-items: center; }
.submenu-dl .right a{ width: 25%; margin-right: 20px;  text-decoration: none; overflow: hidden;}
.submenu-dl .right a .img{width: 100%; height: 146px;  border-radius: 5px; display: block; overflow: hidden;}
.submenu-dl .right a img{width: 100%; height: 100%; object-fit: cover; border-radius: 5px; transition: all 1s }
.submenu-dl .right a h3{ font-size: 1rem; text-align: center; margin-top: 10px; color: #333; text-decoration: none; }
.submenu-dl .right a:hover h3{ color: var(--primary-color);}
.submenu-dl .right a:hover img{ transform: scale(1.1);}
/*滑动时header*/
.header_scroll{ padding: 10px 0px!important;}
.header_scroll #logo img{ transform: scale(0.95); transition: all 0.3s}
.header_scroll .tel{ padding: 0px 10px;}
.header_scroll{ padding-top: 0.5rem; padding-bottom: 0.5rem}
@media screen and (max-width: 576px) {
    .header_scroll #logo img{ transform: scale(0.9); padding-left: 0px;}
    #logo_m{ display: block;}
    #logo{ display: none;}
}
/** mobile header **/
.mobile-ul{ position: fixed; width: 100%; top:0px; left: 0;  height: 0px;  overflow: hidden; -webkit-transition: all 0.5s; transition: all 0.5s;   background: #ffffff;}
.mobile-ul li,.mobile-ul li a ul li{ width: 100%; display: block;  border-bottom: 1px solid #f1f1f1;}
.mobile-ul a{
    display: block;
    margin: 0 20px;
    padding: 10px 0px;
    text-align: left;
    color: #333;
    text-decoration: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.mobile-ul > li:first-child {
    border-top: 1px solid #f1f1f1;
}
.mobile-ul li:hover > a, .mobile-ul li.active > a {
    color: #113485;
}
.mobile-ul li a i {
    float: right;
    width: 10px;height: 10px;
    width: 5%;
}
.mobile-ul li ul {
    border-top: 1px solid #f1f1f1;
    display: none;
}
.mobile-ul li ul a h3{
    font-size: 1rem;
    padding-bottom: 0;
    margin-bottom: 0;
    color: #333;
}
.switch{ position: absolute; top:25px; right: 20px;  width: 20px; height: 20px; cursor: pointer; z-index: 9999; }
.switch i{  display: block; width: 100%;  height: 1px; background: #333; font-weight: normal;-webkit-transition: all 0.5s; transition: all 0.5s; position: relative; }
.mobile-show .switch i:nth-child(2) {opacity: 0;}
.mobile-show .switch i:nth-child(1) {top: 7px; -webkit-transform: rotate(45deg);transform: rotate(45deg);}
.mobile-show .switch i:nth-child(3) { bottom: 7px;-webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
.mobile-show  .mobile-ul{ height: 100vh!important; padding-top: 100px !important;}
/** nav */
nav.container-fluid{padding: 0px; margin: 0px;}
nav{ padding: 0px; margin: 0px;}
nav .swiper-slide img{ width: 100%;}
nav .swiper-slide img {
    transform: scale(1.1);
    transition: transform 5s ease;
}
nav .swiper-slide-active img {
    transform: scale(1);
}

nav .swiper-button-next{ color: #ffffff; }
nav .swiper-button-prev{ color: #ffffff; }
nav .swiper-pagination .swiper-pagination-bullet{width: 30px; height: 8px; border-radius: 0px; background: #000; opacity: 0.4 }
nav .swiper-pagination .swiper-pagination-bullet-active{background: var(--primary-color); opacity: 1}
@media screen and (max-width: 900px) {
    header{ background: #fff!important;}
    nav.container-fluid{ margin-top: 82px;}
    .switch i{ background: var(--primary-color);}
    .index-title{ font-size: 2rem!important;}
}
/**main**/
main{ }
main.container-fluid{width: 99%!important; padding: 0px 0.5%!important;}
/** section **/
.index-module{  text-align: center; padding: 1.5rem 0px;}
.index-module:nth-child(odd){ background: #f6f6f6}
.index-news{ background: #f6f6f6!important;}
.index-module:nth-child(even){ background: #fff}
/** index-title **/
.index-title{position: relative; line-height: 50px; font-size: 2.5rem; padding: 1rem 0px; }
b.text-color{ color:rgb(255,59,14,0.7)}
.index-title i{ position: absolute;top:0px; left:50%;transform: translateX(-50%); color: rgba(51,51,51,0.03); font-size: 3rem;  font-weight: bold; font-style: normal;}
.index-title span{ display: block; font-size: 1rem; color: #666; line-height: 1.5rem; margin: 0.5rem 0px; }
.index-title:after{ content: ' '; position: absolute; bottom:0px; left: 50%; width: 100%; height: 13px; transform: translateX(-50%); color: #5c5ce0; background: url("../images/icon-title.png") no-repeat center;}
/** index-content **/
.index-content{ padding: 1rem 0px; flex-wrap: wrap;}
/** index-product **/
.index-product a {display: block; background: #ffffff; text-align: left; color: #333; text-decoration: none; transition: all 0.5s;}
.index-product a h3{  margin: 10px 10px;  line-height: 40px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 1rem; border-bottom: 1px dotted #999; text-align: left; }
.index-product a p{ padding: 0px 10px 10px;  font-size: 0.8rem; text-align: right;}
.index-product a p i{ float: right; margin-left: 2px; color: #333; }
.index-product a:hover{ background: var(--primary-color); color: #ffffff;}
.index-product a:hover img{ transform: scale(1.1) }
.index-product a:hover p i{ color: #fff; }
.swiper-button{ margin-top: 1rem; }
.swiper-button ul{display: flex; justify-content: center; padding: 0px;}
.swiper-button ul li {list-style: none; margin-right: 5px;}
.swiper-button ul li a{ display: block;  width: 36px; height: 36px; text-align: center; line-height: 36px; color: #ffffff; background: #8a8a8a; }
.swiper-button ul li a i{display: inline-block; transition: all 0.3s;}
.swiper-button ul li a:hover{ background: #113485;}
.swiper-button ul li a:hover i{ transform: scale(1.5);}
.swiper-button ul li a.swiper-button-more:hover i{ transform: rotate(180deg);}
/** ys **/
.ys{ width: 24%; background: #fff;padding-bottom: 3%; cursor: pointer; transition: all 0.5s; position: relative;}
.ys div:nth-child(2n){ padding: 2% 0;}
.ys-title{ font-size: 1.5rem; font-weight: 500; margin-top: 20px; color:#333;}
.ys-dec{ font-size: 1rem; color: rgba(0,0,0,.3);}
.ys-bootom{display: block; width: 30px; height: 30px;  background: url("../images/icon-title.png") no-repeat center; }
.ys-img{ width: 100%; z-index: 1; }
.ys-img img{ width: 100%; height: auto; }
.ys-icon{ display: block; width: 80px; height: 80px; line-height: 70px; z-index: 2; background: var(--secondary-color); border-radius: 100%; margin-top: -40px; text-align: center; color: #fff; box-shadow: 0px 0px 2px  2px grey; font-size: 40px; }
.ys:hover::before{ content:' '; width: 100%; height: 100%; position: absolute; top:0px; left: 0px; background: rgba(0,0,0,0.3); z-index: 9999; }
.ys:hover .ys-icon{ animation: bounce 3s ease-in-out infinite;}
@keyframes bounce {
    0%, 20%, 100% {
        transform: scaleX(1); /* 正常状态 */
    }
    10% {
        transform: scaleX(-1); /* 左右翻转 */
    }
    15% {
        transform: scaleX(1); /* 恢复正常 */
    }
}
.ys-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    padding: 10%!important;
    justify-content: center;
    align-items: center;
    color: white;
    opacity: 0;
    background: rgba(0, 0, 0, 0.5);
    transition: opacity 1s;
    z-index: 9999;
}
.ys:hover .ys-overlay {
    opacity: 1;
}
@media (max-width: 768px) {
    .ys {
        width: 48%; /* 中等屏幕下每行显示 2 个 */
        margin-bottom: 3%;
    }
    .ys-icon{width: 80px; height: 80px; line-height: 70px; }
}
/*@media (max-width: 768px) {*/
/*    .ys {*/
/*        width: 100%; !* 小屏幕下每行显示 1 个 *!*/
/*        margin-bottom: 3%;*/
/*    }*/
/*    .ys-icon{width: 80px; height: 80px; line-height: 60px; }*/
/*}*/
/** about **/
.index-about .left{ width: 50%; text-align: left;}
.index-about .left h3 { font-size: 2.5rem; color: var(--primary-color); font-style: italic; text-transform: uppercase; position: relative;display: inline-block; padding-right: 10px; overflow: hidden; font-family: Arial, Helvetica, Verdana, 'Microsoft YaHei'; font-weight: bold;}
.index-about .left h3::before { content: ''; position: absolute; top: 0;  left: -100%; width: 100%;height: 100%; background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);animation: highlight 3s 100 linear;}
@keyframes highlight {
    0% {
        left: -100%;
    }
    100% {
        left: 200%;
    }
}
.index-about .left h4{ margin: 10px 0px; font-size: 1.2rem; color: #666; font-style: italic;}
.index-about .left h4:after{ content: ' '; background: var(--primary-color); width: 70px; height: 4px; display: block; margin-top: 10px;}
.index-about .left p{ margin: 10px 0px 30px 0px; color: #666; line-height: 30px;}
.index-about .left a{ display: inline-block; padding: 8px 50px; background:var(--primary-color); border-radius: 30px; color: #ffffff; text-decoration: none; cursor: pointer;  position: relative; transition: all 0.3s;}
.index-about .left a i{ margin-left: 10px;  font-size:1rem; }
.index-about .left a:hover{ font-size: 1.1rem; }
.index-about .left a::before{ content: ' '; position: absolute; top:0; left: -100%; width: 100%; height: 100%; background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0) 100%);animation: highlight 1s 100 linear; animation-delay: 2s;}
.index-about .right{ width: 45%;  overflow: hidden; }
.index-about .right img{ width: 95%; height: 95%; box-shadow: 0px 0px 10px 2px #c1c1c1; transition: all 1s; }
.index-about .right img:hover{ transform: scale(1.1); cursor: pointer;}
@media (max-width: 890px) {
    .index-about .index-content{ flex-direction: column!important;}
    .index-about .left{ width: 100%; order:2; padding-top: 1rem; text-align: center;}
    .index-about .left h4:after{  margin: 1rem auto; }
    .index-about .right{ width: 100%; order:1;}
    .index-about .left h3{font-size: 2rem; padding: 0px; margin: 0;}
    .index-about .left p{ padding: 0 0.5rem; text-align: left!important;}
}

/** ad-1 **/
.ad-1{ padding: 3% 0px; display: flex; justify-content: space-around; align-items: center; background: url("../images/ad-1.webp?3") no-repeat fixed!important; background-size: cover!important; color: #fff;  position: relative;}
.ad-1 .left p{ font-size:  1.2rem}
.ad-1 .left h3{ font-size: 2rem;}
.ad-1 .right{ }
.ad-1 .right p{font-size: 1rem; line-height: 30px; }
.ad-1 .right p b{ font-size: 2rem;}
.ad-1 .right a{display: inline-block; padding: 5px 50px; font-size:1.2rem;  color: #fff; text-decoration: none; background: var(--primary-color); color: #fff; border: 1px solid var(--primary-color); border-radius: 5px; transition: all 0.3s;}
.ad-1 .right a:hover{ transform: scale(1.1) }
@media (max-width: 890px) {
    .ad-1{ display: flex; flex-direction: column; text-align: center!important;}
}
.ad-1::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 0;
}

.ad-1 .left,
.ad-1 .right {
    position: relative;
    z-index: 1;
}
/** index-news **/
.index-news{}
.index-news .index-content {
    display: flex;
    flex-wrap: wrap;
}
.index-news .left{ width: 45%; align-self: stretch; min-height: 100%; background: #fff;}
.index-news-swiper-1 .swiper-pagination .swiper-pagination-bullet-active{ width: 38px; border-radius: 5px; background: var(--primary-color); }
.index-news .left a {display: block; background: #ffffff; text-align: left; color: #333; text-decoration: none; transition: all 0.5s;}
.index-news .left .content{ display: flex; justify-content: space-between; align-items: center;}
.index-news .left .content .cleft{ padding:0 10px; text-align: center; border-right: solid 1px #ccc; color: #666; }
.index-news .left .content .cleft b{display: block; font-size: 35px;}
.index-news .left .content .cright{ flex: 1;}
.index-news .left a h3{  margin: 10px 10px;  line-height: 40px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 16px; border-bottom: 1px dotted #999; }
.index-news .left a p{ padding: 0px 10px 10px;  font-size: 14px; text-align: right;}
.index-news .left a p i{ float: right; margin-left: 5px; color: #333; }
.index-news .left a:hover{  color: var(--primary-color);}
.index-news .left a:hover img{ transform: scale(1.1) }
.index-news .swiper-pagination{ text-align: right; }
.index-news .right{ width: 54%; align-self: stretch; min-height: 100%; background: #fff;}
.index-news .right li a{ display: flex; position: relative; padding: 20px 10px; text-align: left; color: #333; text-decoration: none; background: #fff; }
.index-news .right li a h3{ font-size: 16px; font-size: 1.1rem; }
.index-news .right li a p{ font-size: 14px; color: #666; }
.index-news .right li a i{ display: block; font-size: 12px;  color: #999; font-style: normal;}
.index-news .right li a:hover{ background: var(--primary-color); color: #fff;}
.index-news .right li a:hover p,.index-news .right li a:hover i{color: #fff;}
@media (max-width: 1000px) {
    .index-news .index-content{flex-direction: column;}
    .index-news .left,.index-news .right{ width: 100%;}
    .index-news .right ul{ padding: 0px;}
    .index-news .right li a p{display: none;}
}
/* case */
.gallery {
    display: flex;
    gap: 5px;
    transition: all 0.5s ease-in-out;
    min-height: 480px;
}

.gallery-item {
    flex: 1.5;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    min-height: 480px;
    max-height: 600px;
    transition: flex 0.5s ease-in-out;
}
.gallery-item::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 0;
}
/* 默认中间项放大 */
.gallery-item.active {
    flex: 4;
}

/* 鼠标悬停时，当前项缓缓变大 */
.gallery-item:hover {
    flex: 4;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 2s ease-in-out; /* 变大动画更柔和 */
}

.gallery-item.active img {
    transform: scale(1.2);
}

/* 悬停时缓缓放大 */
.gallery-item:hover img {
    transform: scale(1.15); /* 稍微放大一点 */
}


.text-content {
    position: absolute;
    top: 10%;
    left: 5%;
    width: 90%;
    color: white;
    padding: 20px 10px;
    margin: 0;
    text-align: left;
    transition: opacity 0.3s ease-in-out;
}

.gallery-item .title {
    font-size: 1.3rem;
    margin-bottom: 10px;
    font-weight: bold;
}

.description {
    font-size: 0.8rem;
    margin: 0;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/* 悬停或默认 active 时，文字描述可见 */
.gallery-item:hover .description,
.gallery-item.active .description {
    opacity: 1;
}
@media (max-width: 890px) {
    .index-cases{display: none;}
}

/** footer **/
footer{ border-top: 1px solid #dddee0;  background: #242424;}
footer .top{ padding: 3% 0px;}
footer .row{}
footer .left{max-width: 25%;  overflow: hidden; color: #fff; opacity: 0.5}
footer .left img{ width: 100%; margin-bottom: 1rem;}
footer .left p{ font-size: 0.9rem; line-height: 1rem; padding-left: 1rem; }
footer .left p a{ color: #fff; text-decoration: none; }
footer .middle{flex: 1;}
footer .middle ul a{ text-decoration: none;}
footer .middle a:hover{ color: #fff;opacity: 0.9!important;}
footer .middle a.title{  font-size: 1.2rem; color: #fff;  font-weight: 500;}
footer .middle a.title:after{ content: ' '; width: 2rem; height: 2px ;background: var(--primary-color); display: block; margin-top: 0.5rem; margin-bottom: 1.25rem;  transition: all .3s ease-in-out;}
footer .middle a.subtitle{ font-size: 0.9rem; color: #fff; opacity: .5;}
footer .middle a.title:hover:after{ width: 4rem; }
footer .right{width: 27%; display: flex; justify-content: center;}
footer .right .img-wrap{ margin-right: 5%;}
footer .right .img-wrap img{width: 120px; height: 120px; cursor: pointer;}
footer .right .img-wrap b{ color: #fff; display: block; text-align: center; margin-top: 0.5rem; font-weight: normal; font-size: 0.9rem; }
footer .bootom{display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #dddee0; padding: 1% 0px; font-size: 0.9rem; color: #fff; opacity: 0.5}
footer .bootom a{ text-decoration: none; color: #fff;opacity: 0.8}
footer div.bootom a.icp:hover{ opacity: 1!important;}
@media (max-width: 1000px) {
    footer .left{ max-width: 100%!important; flex: 1; text-align: center; }
    footer .right,footer .middle{ display: none!important;}
    footer .bootom{ flex-direction: column!important; padding: 1rem 0;}
    footer .left p{ font-size: 0.9rem; line-height: 1rem; padding-left: 0rem; }
}
/**  sub-common **/
.subnav-content{ display: flex; flex-direction: column; justify-content: center; align-items: center;  background-size: cover;background-position: center; height: 400px; color: #fff; position: relative;    background: linear-gradient(rgba(0,0,0,0.1), rgba(0,0,0,0.1)), url(../images/sub-nav.webp) no-repeat center;
 }
.subnav-content h3{ font-size: 1.5rem; z-index: 1; margin-bottom: 0;}
.subnav-content h3::after{content: ''; display: block; width: 2rem; height: 2px; background: #999;  margin: 10px auto; transition: all 0.3s;z-index: 1; }
.subnav-content p{ font-size: 1rem;z-index: 1;}
.subnav-content:hover h3::after{ width: 4rem ;z-index: 1;}
.subnav-content i{ position: absolute; bottom: 10%; z-index: 1; animation: move 0.7s cubic-bezier(.435, 0.03, 0.45, 0.96) 0.2s infinite alternate; font-size: 1.8rem;}
@keyframes move {
    from {
        transform: translateY(0);
        opacity: 0;
    }
    to {
        transform: translateY(-20px);
        opacity: 1;
    }
}
.subnav-content::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: 0;
}
.crumb-content{background: #eef2f5; }
.crumb-content .wrap{ display: flex; justify-content: space-between; align-items: center; font-size: 1rem; align-content: center; }
.crumb-content a{ text-decoration: none;color: #666;}
.crumb-content a:hover{ color: var(--primary-color);}
.crumb-content ul{display: flex; justify-content: center; align-items: center; margin: 0; padding: 0;}
.crumb-content ul li{ padding: 1rem 0px; }
.crumb-content ul li a{ padding: 0 1rem; position: relative; font-size: .9rem;}
.crumb-content ul li:not(:last-child) a::after{ content: ''; background:#ccc; position: absolute; right: 0; top:0;  width: 1px; height: 1rem; background: #ccc;   display: inline-block; }
.crumb-content dl{display: flex; justify-content: center; align-items: center;  margin: 0;}
.crumb-content dl dt a{ font-size: 0.9rem;  font-style: normal; color: #666;position: relative; font-weight: normal; }
.crumb-content dl dt:not(:last-child) a::after{ content: '>'; margin:0 10px; display: inline-block; }
.crumb-content dl a i{ color: #666; font-size: 1rem; margin-right: 5px;}
@media (max-width: 890px) {
    .crumb-content{ display: none;}
    .subnav-content{ height: 220px;}
}
/** subpage-common **/
.main-product{ background: #f9f9f9; }
.subpage-common{ padding: 1rem 0;}
.subpage-common .top{ background: #fff; padding: 1rem; }
.subpage-common .top .left{ width: 40%; margin-right: 3%;}
.subpage-common .top .right{ flex: 1; color: #333;}
.subpage-common .top .right h3{ font-size: 2rem; padding: 1rem 0; }
.subpage-common .top .right .title{ font-size: 1rem; color: var(--primary-color); padding: 0.5rem 0;  }
.subpage-common .top .right .keywords{ font-size: .9rem; color: #333; line-height: 1.5rem;}
.subpage-common .top .right .bj{ display: inline-block; padding: 0.8rem 4rem; background: var(--primary-color); color: #fff; text-decoration: none; border-radius: 5px;}
.subpage-common .top .right .bj:hover{ background: var(--primary-color-09)}
.subpage-common .top .right .zx{ display: inline-block; margin-left: 2rem; text-decoration: none;background: url("../images/telphone2.png") no-repeat left center; background-size: 45px; padding-left: 56px; font-size: 0.9rem; color: #333; line-height: 26px;}
.subpage-common .top .right .zx b{font-size: 2rem; font-family: Arial, Helvetica, Verdana, 'Microsoft YaHei'; color:var(--primary-color); }
.subpage-common .bottom{ padding: 1rem 0px; background: #f9f9f9; }
.subpage-common .bottom .left{ width: 78%; background: #fff; }
.subpage-common .bottom .left .title{ background: #eef2f5; color: #fff;  }
.subpage-common .bottom .left .title a{ display: inline-block; padding: 0.8rem 2rem;  color: #333; font-size: 1.2rem; text-decoration: none; }
.subpage-common .bottom .left .title a.active,.subpage-common .bottom .left .title a:hover{  background: var(--primary-color); color: #fff; }
.subpage-common .bottom .left .content{ padding: 1rem; line-height: 1.8rem;}
.subpage-common .bottom .right{ width: 20%; }
.subpage-common .bottom .right .title{  background: var(--primary-color); padding: 0.8rem 2rem; color: #fff; font-size: 1.2rem;}
.subpage-common .bottom .right .title i{ margin-right: 0.5rem; }
.subpage-common .bottom .right_top .content{ background: #fff; padding: 1rem; }
.subpage-common .bottom .right_top .content ul{padding: 0; margin: 0; display: flex; flex-direction: column; justify-content: space-between; align-items: start; }
.subpage-common .bottom .right_top .content ul li{ padding: 0; margin: 3px 0; display: block; width: 100%;}
.subpage-common .bottom .right_top .content ul li a{ display: block;  padding: 0.7rem 0; text-decoration: none; color: #333; background: #f9f9f9; text-indent: 1rem; }
.subpage-common .bottom .right_top .content ul li a:hover{ background: var(--primary-color); color: #fff;}
.subpage-common .bottom .right_middle{}
.subpage-common .bottom .right_middle .title{  text-align: center; padding: 1rem; letter-spacing: 2px;}
.subpage-common .bottom .right_middle .title i{ display: block; font-style: normal; font-size: 1rem;}
.subpage-common .bottom .right_middle .content{ background: #fff; padding: 1rem 0.5rem;}
.subpage-common .bottom .right_middle .content p{ margin-bottom: 0.5rem; font-size: 0.9rem;}
.subpage-common .bottom .right_middle .content p.tel{ font-size: 0.8rem; }
.subpage-common .bottom .right_middle .content p.tel b{ font-size: 2rem;color: #595959; }
.subpage-common .bottom .right_img{ overflow: hidden; margin: 1rem 0;  }
.subpage-common .bottom .right_img .content{ padding: 0.2rem; background: #fff; border:1px solid #eee;}
.subpage-common .bottom .right_img img{ width: 100%; }
.index-productinfo-swiper .swiper-pagination .swiper-pagination-bullet-active{ width: 1.5rem; border-radius: 5px; background: var(--primary-color); }
.page{
    width:100%;
    padding: 20px 0;
}
.pagination{
    display: flex;
    justify-content: center;
    align-items: center;
}
.pagination li{
    border: 1px solid #ddd;
    margin-left: 5px;
    cursor: pointer;
    line-height: 30px;
}
.pagination li.disabled span{
    display: none;
}
.pagination li a{
    display: block;
    padding: 0 10px;
    text-decoration: none;
    color: #333!important;
}
.pagination li.active,.pagination li a:hover{
    padding: 0 10px;
    background: var(--primary-color);
    color: #fff!important;
}
@media (max-width: 890px) {
    .subpage-common .bottom {padding: 0rem;}
    .subpage-common .bottom .left{ width: 100%;}
    .subpage-common .bottom > .right{display: none;}
    .main-product .subpage-common .top{ flex-direction: column;}
    .main-product .subpage-common .top .left{ width: 100%;}
    .main-product .subpage-common .top .right h3{padding-bottom: 0;}
    .main-product .subpage-common .top .right .title{padding-bottom: 0;}
    .main-product .subpage-common .top .right .bj{ display: none;}
    .main-product .subpage-common .top .right .zx{ margin-left: 0; }
    #news-list ul li a .left{ width: 30% !important;}
    #news-list ul li a .right h3{ font-size: 1rem!important;}
    #news-list ul li a .right p.time,#news-list ul li a .right p.time i{ font-size: 0.8rem!important;}
    #news-list ul li a .right{ padding: 1rem!important;}
    #news-list ul li a .right p.desc{display: none;}

}

/** product **/
#product-list{; margin: 0;padding: 0;  }
#product-list ul{display: flex; flex-wrap: wrap; justify-content:  space-between; align-items: center; margin: 0; padding: 0; gap: 10px;}
#product-list ul li{ list-style: none; flex: 0 1 calc(33.333% - 10px);  overflow: hidden; }
#product-list ul li a {display: block; background: #ffffff; text-align: left; color: #333; text-decoration: none; transition: all 0.5s;}
#product-list ul li a h3{  margin: 10px 10px;  line-height: 40px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 1rem; border-bottom: 1px dotted #999; text-align: left; }
#product-list ul li a p{ padding: 0px 10px 10px;  font-size: 0.8rem; text-align: right;}
#product-list ul li a p i{ float: right; margin-left: 2px; color: #333; }
#product-list ul li a:hover{ background: var(--primary-color); color: #ffffff;}
#product-list ul li a:hover img{ transform: scale(1.1) }
#product-list ul li a:hover p i{ color: #fff; }
/* 让空位留出来，避免填满 */
#product-list ul::after {
    content: "";
    flex: 0 1 calc(33.333% - 10px); /* 伪元素占位，避免最后一行居中 */
    visibility: hidden;
}
@media (max-width: 890px) {
    #product-list ul li {
        flex: 0 1 calc(50% - 10px); /* 每行两个，保留间距 */
    }
    #product-list ul::after {
        flex: 0 1 calc(50% - 10px); /* 伪元素也要改成两列占位 */
    }
}

/** news **/
#news-list{margin: 0;padding: 0;  padding: 1rem; }
#news-list ul{display: flex; flex-direction: column;  justify-content:  start; align-items: stretch;  margin: 0; padding: 0;}
#news-list ul li{ list-style: none;  flex: 1; border-bottom: 1px solid #ccc; }
#news-list ul li:last-child{border: none;}
#news-list ul li a {display: flex;  justify-content: start; align-items: stretch;  background: #ffffff; text-align: left; color: #333; text-decoration: none; transition: all 0.5s; }
#news-list ul li a .left{ width: 20%;  align-self: center;}
#news-list ul li a .right{ flex: 1; flex-direction: column; justify-content: start; align-items: center;align-content: center;  padding: 1rem 2rem; }
#news-list ul li a .right h3{ font-size: 1.1rem; font-weight: bold; }
#news-list ul li a .right p.time{ font-size: 0.9rem; color: #999; padding: 0.2rem 0;  }
#news-list ul li a .right p.time i{ font-size: 0.9rem; color: #999; margin-right: 5px; color: var(--primary-color); }
#news-list ul li a .right p.desc{ font-size: 0.9rem; line-height: 1.5rem; margin: 0px; }
#news-list ul li a:hover h3{ color: var(--primary-color); }
#news-list ul li a:hover .left .img_wrap_169 img{ transform: scale(1.1); }
/** news-info **/
#news-info{margin: 0; padding: 4rem 2rem; }
#news-info h3{ text-align: center;}
#news-info p.time{display: block; background: #f9f9f9; border: 1px solid #ccc; padding: 0.5rem 0; text-align: center; margin: 1.5rem 0; color: #999; font-size: 0.8rem;}
#news-info p.time i{ font-size: 1rem; color: #999; margin-right: 5px; color: var(--primary-color); }
#news-info p.img{ text-align: center; max-width: 100%; height: auto;}
#news-info p.img img{ max-width: 100%;}
#news-info p.desc{ font-size: 0.8rem; line-height: 1.5rem; }
/** about **/
#about{margin: 0;padding: 0;  padding: 1rem; }
#about p.img{ text-align: center;  }
#about p.img img{ max-width: 100%; }
#about .desc{ padding:1rem;  line-height: 1.8rem; }
.company-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 8rem; /* 适当增加高度，确保不会太紧凑 */
}

.company-container h3 {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0.3rem 0;
    color: #444;
    line-height: 1.5;
}

.company-container h4 {
    font-size: 0.8rem;
    font-weight: 500;
    margin: 0.3rem 0;
    color: #555;
    letter-spacing: 0.1rem;
    line-height: 1.5;
}

/* 适配小屏幕，确保文字不会过大 */
@media (max-width: 768px) {
    html {
        font-size: 14px; /* 在小屏幕上稍微缩小基准大小 */
    }

    .company-container {
        height: 6.5rem; /* 在小屏幕上减少高度 */
    }

    .company-container h3 {
        font-size: 1.4rem; /* 适当缩小标题 */
    }

    .company-container h4 {
        font-size: 0.8rem;
    }
    #news-info{margin: 0; padding: 1rem; }
}
/** contact **/
#contact{margin: 0;padding: 0;  padding: 2rem 1rem; }
#contact .top{ display: flex; justify-content: end; align-items: center; }
#contact .top .left{color: #555; width: 55%; padding-left: 2rem; }
#contact .top .left img{ width: 150px; }
#contact .top h3{ font-weight: bold; color: #444; letter-spacing: 4px;}
#contact .top h4{ font-size: 0.6rem; font-weight: bold; color: #444; margin-bottom: 2rem;}
#contact .top .right form{ display: flex; flex-direction: column; gap: 10px;}
#contact .top .right input{ padding: 0.6rem 0.8rem; border: 1px solid rgba(224, 224, 224, 1); font-size: 1rem; outline: none;  background: #f9f9f9; border-radius: 1px; color: #666;}
#contact .top .right textarea{ padding: 0.6rem 0.8rem; border: 1px solid rgba(224, 224, 224, 1); font-size: 1rem; height: 5rem;  outline: none;  background: #f9f9f9; border-radius: 1px; color: #666;}
#contact .top .right .name-tel{ display: flex; justify-content: space-between; align-content: center; align-content: center; gap: 1rem;  }
#contact .top .right .name-tel input{  width: 50%;  background: #f9f9f9;}
#contact .top .right .captcha-img{ display: flex; justify-content: start; align-content: center; align-content: center; gap: 1rem;  }
#contact .top .right .captcha-img .img-wrap{ display: flex; justify-content: center; align-content: center; align-items: center; }
#contact .top .right .captcha-img img{ width: 100%; max-height: 2.5rem; vertical-align: middle; }
#contact .top .right #submit{ background: var(--primary-color); color: #fff;}
#contact .top .right #submit:hover{ background: var(--primary-color-09); color: #fff;}
#map{ background: palegoldenrod; width: 100%; height: 500px;}

@media (max-width: 768px) {
    #contact .top{ flex-direction: column;}
    #contact .top .left{ width: 100%; padding-left: 0;}
    #contact .top .right{ width: 100%; margin-top: 1rem;}
}





    /**  tools **/
.global-right {
    position: fixed;
    right: 0px;
    width: 50px;
    background: black;
    z-index: 1000;
    top: 50%;
    display: none; /* 默认隐藏工具栏 */
    flex-direction: column;
    align-items: flex-end;
    transition: opacity 0.3s ease; /* 动画过渡 */
    opacity: 0; /* 默认透明 */
}

.global-right.visible {
    display: flex; /* 滚动时显示工具栏 */
    opacity: 1; /* 变为完全不透明 */
}


.global-right .item {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 50px; /* 默认宽度 */
    height: 50px;
    background: #000;
    opacity: 0.8;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
    transition: all 0.3s ease; /* 保留动画效果 */
    font: 14px Arial, sans-serif;
    white-space: nowrap;
    border: 1px solid #333333;
}

.global-right .item svg {
    width: 50px; /* 固定图标宽度 */
    height: 30px; /* 固定图标高度 */
    flex-shrink: 0; /* 防止图标缩小 */
    margin-right: 10px; /* 图标与文字的间距 */
    transition: margin-right 0.3s ease; /* 动画过渡效果 */
}

.global-right .item span {
    opacity: 0; /* 默认隐藏文字 */
    display: inline-block; /* 保证文字占位 */
    transition: opacity 0.3s ease, transform 0.3s ease; /* 添加渐显与移动动画 */
    transform: translateX(-10px); /* 初始文字左移 */
    color: #fff;
}

.global-right .item:hover:not(:last-child) {
    background: #333; /* 悬停时更改背景色 */
    opacity: 1; /* 悬停时完全不透明 */
    width: auto; /* 宽度自适应文字长度 */
    padding-right: 10px; /* 添加右侧内边距 */
}

.global-right .item:last-child:hover,.global-right .item:nth-child(3):hover,.global-right .item:nth-child(5):hover{
    /* 如果需要，最后一个 item 的悬停样式可以单独定义 */
    background: #333; /* 保持背景色更改 */
    opacity: 1; /* 保持不透明 */
    width: 50px; /* 保持固定宽度 */
    padding-right: 0; /* 移除内边距 */
}

.global-right .item:hover span {
    opacity: 1; /* 文字渐显 */
    transform: translateX(0); /* 文字位置复位 */
}

.qr-popup {
    display: none;
    position: absolute;
    top: 50%;
    left: -122px;
    transform: translateY(-50%);
    background: #fff;
    border: 1px solid #ccc;
    padding: 10px;
    border-radius: 5px;
    z-index: 2000;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.qr-popup svg {
    width: 100px;
    height: 100px;
}

.qr-code:hover + .qr-popup {
    display: block;
}

.global-right .email:hover {
    background: #555;
}

.global-right .phone:hover {
    background: #777;
}

/* 媒体查询：在小屏设备（如手机）上隐藏二维码 */
@media (max-width: 600px) {
    .global-tools{display: none;!important;}
    .global-right .qr-code {
        display: none; /* 隐藏二维码按钮 */
    }
    .qr-popup {
        display: none; /* 隐藏二维码弹出框 */
    }
}
