html,
body {
  width: 100%;
  height: 100%;
  position: relative;
}
html .iconfont,
body .iconfont {
  font-size: 1em;
}
:root {
  --swiper-theme-color: #fff !important;
  --swiper-pagination-bullet-width: 10px !important;
  --swiper-pagination-bullet-height: 10px !important;
  --swiper-pagination-bullet-inactive-opacity: 0.5;
  --swiper-pagination-bullet-inactive-color: #fff;
}
.home-page {
  background-color: #f7f8fb;
}
.layout {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  --header-height: 0.8rem;
  --menuHeight: 0.8rem;
}
.layout > div {
  width: 100%;
}
.layout .layout-main {
  flex: 1;
}
.header {
  position: fixed;
  top: 0;
  z-index: 20;
  width: 100%;
  transition: 0.3s;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  --text-color: rgba(255, 255, 255, 0.6);
  --text-color-hover: #fff;
  --divider-color: #fff;
}
.header.is-fixed {
  background-color: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  --text-color: #555;
  --text-color-hover: #000;
  --divider-color: #000;
}
.header.is-fixed .logo .normal {
  display: block;
}
.header.is-fixed .logo .white {
  display: none;
}
.header.grey {
  --text-color: #555;
  --text-color-hover: #000;
  --divider-color: #000;
  border-bottom: 1px solid #ddd;
}
.header.grey .logo .normal {
  display: block;
}
.header.grey .logo .white {
  display: none;
}
.header .container {
  height: var(--header-height);
  display: flex;
  align-items: center;
  position: relative;
}
.header .logo {
  max-width: 1rem;
  height: 0.4rem;
}
.header .logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.header .logo .normal {
  display: none;
}
.header .logo .white {
  display: block;
}
.header .header-nav {
  flex: 1;
  align-self: stretch;
}
.open-nav-menu {
  display: none;
}
@media (max-width: 1024px) {
  .open-nav-menu {
    display: block;
    width: 0.5rem;
    height: 0.4rem;
    border-radius: 0.03rem;
    margin-left: 0.2rem;
    position: relative;
  }
  .open-nav-menu i,
  .open-nav-menu::before,
  .open-nav-menu::after {
    content: "";
    width: 80%;
    height: 2px;
    background-color: var(--text-color);
    border-radius: 1px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    max-height: 100%;
    transition: 0.3s;
  }
  .open-nav-menu::before {
    transform: translateY(-6px);
  }
  .open-nav-menu::after {
    transform: translateY(6px);
  }
  .open-nav-menu.active {
    background-color: #03a8e7;
  }
  .open-nav-menu.active i {
    opacity: 0;
    background-color: #fff;
  }
  .open-nav-menu.active::before {
    transform: translateY(0) rotate(-45deg);
    background-color: #fff;
  }
  .open-nav-menu.active::after {
    transform: translateY(0) rotate(45deg);
    background-color: #fff;
  }
  .open-nav-menu:active {
    background-color: rgba(0, 0, 0, 0.3);
  }
}
@media (min-width: 1025px) {
  .header-nav .ul {
    display: flex;
    justify-content: center;
    height: 100%;
    padding-top: 4px;
  }
  .header-nav .ul li {
    max-width: 2rem;
    margin: 0 0.3rem;
  }
  .header-nav .header-nav-item {
    position: relative;
  }
  .header-nav .header-nav-item.active em a,
  .header-nav .header-nav-item:hover em a {
    color: var(--text-color-hover);
  }
  .header-nav .header-nav-item.active em a::before,
  .header-nav .header-nav-item:hover em a::before {
    width: 100%;
  }
  .header-nav .header-nav-item em {
    display: block;
  }
  .header-nav .header-nav-item em a {
    height: calc(var(--header-height) - 4px);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    line-height: 1.5;
    color: var(--text-color);
    font-weight: 400;
    transition: 0.3s;
    position: relative;
  }
  .header-nav .header-nav-item em a::before {
    content: '';
    width: 0;
    height: 2px;
    position: absolute;
    left: 0;
    bottom: 0;
    transition: 0.3s;
    background-color: var(--text-color-hover);
    z-index: 2;
  }
  .header-nav .header-nav-item.active em a {
    color: var(--text-color-hover);
  }
  .header-nav .sub {
    position: absolute;
    left: 50%;
    top: 100%;
    min-width: 100%;
    min-width: 1.2rem;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
  }
  .header-nav .sub a {
    display: block;
    line-height: 42px;
    color: #fff;
    transition: 0.3s;
    text-align: center;
    font-size: 0.13rem;
    white-space: nowrap;
    padding: 0 10px;
  }
  .header-nav .sub a:hover {
    background-color: #03a8e7;
  }
}
@media (max-width: 1024px) {
  .header-nav {
    position: fixed;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    display: flex;
    justify-content: flex-end;
    overflow-y: auto;
    background-color: rgba(0, 0, 0, 0.5);
    transition: 0.3s;
    visibility: hidden;
    opacity: 0;
    padding: 0;
  }
  .header-nav.active {
    visibility: visible;
    opacity: 1;
  }
  .header-nav.active .ul {
    transform: translateX(0);
  }
  .header-nav .ul {
    background-color: #fff;
    width: 90%;
    max-width: 360px;
    padding: 1rem 0.2rem 0;
    transform: translateX(100%);
    transition: 0.3s;
    transition-delay: 0;
  }
  .header-nav .open-nav-menu {
    position: absolute;
    right: 0.3rem;
    top: 0.3rem;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 2;
  }
  .header-nav .header-nav-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  .header-nav .header-nav-item em {
    display: block;
  }
  .header-nav .header-nav-item em a {
    display: block;
    min-height: 0.8rem;
    display: flex;
    align-items: center;
    width: 100%;
    color: rgba(0, 0, 0, 0.8);
  }
  .header-nav .header-nav-item.has-sub em {
    position: relative;
    display: flex;
    align-items: center;
  }
  .header-nav .header-nav-item.has-sub em i {
    width: 0.15rem;
    height: 0.15rem;
    border-top: 2px solid rgba(0, 0, 0, 0.3);
    border-right: 2px solid rgba(0, 0, 0, 0.3);
    transform: rotate(45deg);
    transition: 0.3s;
  }
  .header-nav .header-nav-item.has-sub em::after {
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    z-index: 2;
  }
  .header-nav .header-nav-item.has-sub em.active i {
    transform: rotate(135deg);
  }
  .header-nav .header-nav-item em {
    display: flex;
  }
  .header-nav .header-nav-item em .iconfont {
    display: none;
    transition: 0.3s;
  }
  .header-nav .header-nav-item em a {
    flex: 1;
  }
  .header-nav .header-nav-item .sub {
    padding: 0 0.1rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    display: none;
  }
  .header-nav .header-nav-item .sub dl {
    padding: 0.2rem 0;
  }
  .header-nav .header-nav-item .sub a {
    color: rgba(0, 0, 0, 0.8);
    line-height: 0.6rem;
  }
}
.header-right {
  display: flex;
  margin-right: -0.1rem;
  align-self: center;
  align-items: center;
  gap: 0.1rem;
}
.header-right .item {
  display: flex;
  align-items: center;
  position: relative;
}
.header-right .item:focus-within .sub,
.header-right .item:hover .sub {
  visibility: visible;
}
.header-right .item:focus-within .sub-inner,
.header-right .item:hover .sub-inner {
  transform: translateY(0);
  opacity: 1;
}
.header-right .item .btn {
  color: var(--text-color);
  padding: 0.1rem 0.1rem;
  border-radius: 0.05rem;
  display: flex;
  align-items: baseline;
  line-height: 1;
  transition: 0.3s;
  cursor: pointer;
  gap: 0.09rem;
}
.header-right .item .btn:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
.header-right .item .btn .icon {
  font-size: 1.0625em;
  margin-top: -0.15em;
}
.header-right .item .sub {
  position: absolute;
  right: 0;
  top: 100%;
  padding-top: 0.1rem;
  visibility: hidden;
  transition: 0.3s;
  --icon-position-right: 1.5rem;
}
.header-right .item .sub-inner {
  transform: translateY(-10px);
  opacity: 0;
  transition: 0.3s;
  box-shadow: 0 0 10px 1px rgba(255, 255, 255, 0.1);
  border-radius: 0.1rem;
}
.header-right .item .sub-inner::before {
  content: '';
  width: 0;
  height: 0;
  border: 0.1rem solid transparent;
  border-bottom-color: #fff;
  position: absolute;
  right: var(--icon-position-right);
  top: -0.18rem;
}
.header-right .divider {
  content: '';
  width: 1px;
  height: 1em;
  background-color: var(--divider-color);
  opacity: 0.2;
  align-self: center;
}
.header-right .divider:last-of-type {
  display: none;
}
@media (max-width: 1024px) {
  .header-right {
    margin-left: auto;
  }
  .header-right .item .btn .icon {
    margin-right: 0.1rem;
  }
  .header-right .item .sub {
    padding-top: 0.15rem;
  }
  .header-right .item .sub-inner::before {
    top: -0.18rem;
  }
  .header-right .divider {
    margin: 0 0.1rem;
  }
}
.header-search {
  --icon-position-right: 0.1rem;
  position: relative;
  margin-bottom: 0.25rem;
}
.header-search input {
  width: 2.6rem;
  height: 0.4rem;
  border: 0;
  border-radius: 0.04rem;
  padding: 0 0.16rem;
  padding-right: 0.4rem;
}
.header-search input::placeholder {
  color: rgba(153, 153, 153, 0.502);
}
.header-search a {
  position: absolute;
  right: 0.14rem;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  width: 1em;
  height: 1em;
}
@media (max-width: 1024px) {
  .header-search input {
    width: 3.6rem;
    height: 0.8rem;
    border-radius: 0.1rem;
  }
  .header-search a {
    right: 1em;
  }
}
.header-language {
  position: relative;
}
.header-language:hover .dropdown {
  transform: translate(-50%, 0);
  opacity: 1;
  visibility: visible;
}
.header-language:hover .trigger {
  background-color: rgba(0, 0, 0, 0.3);
}
.header-language .trigger {
  display: flex;
  align-items: center;
  border-radius: 0.2rem;
  cursor: pointer;
  transition: 0.3s;
  color: var(--text-color);
  gap: 0.09rem;
  line-height: 1;
  padding: 0.1rem;
}
.header-language .trigger .icon {
  font-size: 1.125em;
  flex-shrink: 0;
  margin-top: -0.2em;
}
.header-language .trigger span {
  flex: 1;
  min-width: 0.25rem;
}
.header-language .trigger .arrow {
  transition: 0.3s;
  margin-top: -0.2em;
}
.header-language .dropdown {
  position: absolute;
  width: 100%;
  min-width: 1.2rem;
  left: 50%;
  top: 100%;
  padding-top: 0.1rem;
  transition: 0.3s;
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, -0.1rem);
}
.header-language .dropdown-menu {
  background-color: #fff;
  box-shadow: 0 0 10px 1px rgba(255, 255, 255, 0.1);
  border-radius: 0.04rem;
  padding: 0.1rem;
  position: relative;
}
.header-language .dropdown-menu::before {
  content: '';
  width: 0;
  height: 0;
  border: 0.1rem solid transparent;
  border-bottom-color: #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -0.18rem;
}
.header-language .dropdown-menu a {
  line-height: 0.4rem;
  text-align: center;
  display: block;
  border-radius: 0.1rem;
  transition: 0.3s;
}
.header-language .dropdown-menu a:hover {
  color: #00c4f2;
  background-color: #eee;
}
@media (max-width: 1024px) {
  .header-language .trigger {
    height: 0.6rem;
    padding: 0 0.2rem;
    border-radius: 0.3rem;
  }
  .header-language .dropdown-menu a {
    line-height: 0.6rem;
  }
}
.Pages {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 400;
  margin-top: 1rem;
  font-size: 0.75em;
}
.Pages .p_cur,
.Pages .p_count,
.Pages .p_total,
.Pages .p_jump,
.Pages .a_end,
.Pages .a_first {
  display: none;
}
.Pages .p_page {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0;
}
.Pages a {
  min-width: 0.48rem;
  height: 0.48rem;
  line-height: 0.48rem;
  text-align: center;
  display: inline-block;
  transition: all 0.2s linear;
  border-radius: 0.1rem;
  padding: 0 0.13rem;
  background: #F1F1F6;
  font-size: 0.16rem;
  color: #666;
  margin: 0 2px;
}
.Pages a.disable {
  cursor: default;
  opacity: 0.5;
  pointer-events: none;
}
.Pages a.a_cur {
  background: #00c4f2;
  color: #fff;
}
.Pages .a_prev {
  width: 0.8rem;
  text-align: center;
  margin-right: 0.18rem;
  transform: rotate(180deg);
  color: #888;
}
.Pages .a_next {
  width: 0.8rem;
  text-align: center;
  color: #888;
  margin-left: 0.18rem;
}
@media (max-width: 1024px) {
  .Pages a {
    font-size: 0.2rem;
  }
}
.primary-page {
  padding-bottom: 0.4rem;
}
.html-content {
  overflow: hidden;
  text-align: justify;
  color: #333;
}
.html-content p,
.html-content h1,
.html-content h2,
.html-content h3,
.html-content h4 {
  margin: 1em 0;
}
.html-content p {
  line-height: 2;
}
.html-content table {
  max-width: 100% !important;
}
.nodata {
  padding: 12px 14px 12px 10px;
  border: 1px #EEE solid;
  background-color: #FFF;
  margin-top: 0.3rem;
}
.nodata .datain {
  display: flex;
  justify-content: center;
  align-items: center;
}
.nodata .icon {
  width: 0.6rem;
  height: 0.6rem;
  background: url(../images/no-data.png) center / contain no-repeat;
  flex-shrink: 0;
  margin-right: 0.2rem;
}
.nodata .datatext {
  color: #4a4a4a;
  font-size: 0.75em;
}
.bottom {
  background-color: #000000;
  background-image: url(../images/bottom_bg.jpg);
  background-size: cover;
  background-position: center;
  padding: 0.8rem 0 0.7rem;
}
.bottom .container {
  display: flex;
}
.bottom .left-wrap {
  flex: 1;
  border-right: 1px solid rgba(236, 236, 236, 0.2);
}
.bottom .right-wrap {
  padding-left: 0.65rem;
  width: 5.1rem;
}
.bottom .company-info {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.bottom .company-info .phone {
  margin-bottom: 0.2rem;
}
.bottom .company-info .phone a {
  color: #fff;
  font-size: 0.34rem;
  font-weight: bold;
}
.bottom .company-info .ul {
  margin-top: auto;
  padding-top: 0.35rem;
  position: relative;
}
.bottom .company-info .ul li {
  display: flex;
  color: #ffffff;
  opacity: 0.3;
  line-height: 1.5;
}
.bottom .company-info .ul li .label {
  width: 1.25rem;
  flex-shrink: 0;
}
.bottom .company-info .ul li .des {
  flex: 1;
}
.bottom .company-info .ul li .des span {
  margin-bottom: 10px;
  display: inline-block;
}
.bottom .company-info .share {
  display: flex;
  gap: 0.3rem;
}
.bottom .company-info .share .item {
  position: relative;
}
.bottom .company-info .share .item:hover .sub {
  visibility: visible;
}
.bottom .company-info .share .item:hover .sub .img {
  opacity: 1;
  transform: translateY(0);
}
.bottom .company-info .share .sub {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  padding-bottom: 0.1rem;
  visibility: hidden;
  transition: 0.3s;
}
.bottom .company-info .share .sub .img {
  width: 110px;
  height: 110px;
  opacity: 0;
  transform: translateY(0.1rem);
  transition: 0.3s;
}
.bottom .company-info .share .iconfont {
  font-size: 0.28rem;
  color: rgba(255, 255, 255, 0.5);
}
.bottom .qrcode {
  text-align: center;
  margin-left: 0.8rem;
}
.bottom .qrcode .title {
  font-size: 1.25em;
  color: #222222;
  margin-bottom: 14px;
}
.bottom .qrcode .img {
  width: 110px;
  height: 110px;
  background-color: #ffffff;
}
.bottom .qrcode .img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.bottom .qrcode .text {
  line-height: 0.19rem;
  color: #ffffff;
  margin-top: 0.2rem;
}
.bottom .copyright {
  color: rgba(236, 236, 236, 0.3);
  margin-top: 0.7rem;
  line-height: 1.5;
}
.bottom .copyright a {
  color: rgba(236, 236, 236, 0.3);
}
.bottom .copyright a:hover {
  color: #fff;
}
.bottom .copyright img {
  vertical-align: middle;
  width: 1.14em;
  height: 1,14em;
  object-fit: contain;
  margin-top: -0.15em;
  margin-left: 0.05rem;
}
@media (min-width: 1025px) {
  .bottom .nav {
    flex: 1;
    display: flex;
    gap: 0.7rem;
  }
  .bottom .nav li em {
    margin-bottom: 0.3rem;
    display: block;
  }
  .bottom .nav li em a {
    font-size: 1.125em;
    color: #ffffff;
    font-weight: bold;
  }
  .bottom .nav li .sub a {
    color: rgba(255, 255, 255, 0.3);
  }
  .bottom .nav li .sub a:hover {
    color: #fff;
  }
  .bottom .nav li .sub dd + dd {
    margin-top: 0.13rem;
  }
}
@media (max-width: 1024px) {
  .bottom .container {
    flex-direction: column;
  }
  .bottom .right-wrap {
    width: 100%;
    padding-left: 0;
  }
  .bottom .left-wrap {
    border-right: 0;
    margin-bottom: 0.5rem;
  }
  .bottom .company-info {
    padding-left: 0;
    max-width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-bottom: 0.3rem;
  }
  .bottom .company-info .ul {
    text-align: left;
  }
  .bottom .company-info .ul li .label {
    width: 2rem;
  }
  .bottom .nav {
    display: block;
  }
  .bottom .nav li {
    margin-left: 0 !important;
    margin-bottom: 0.2rem;
    border: 1px solid #efefef;
    padding: 0 0.2rem;
  }
  .bottom .nav .has-sub em {
    position: relative;
    display: block;
    padding: 0.15rem 0;
  }
  .bottom .nav .has-sub em::after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }
  .bottom .nav em {
    padding: 0.15rem 0;
    display: block;
    margin-bottom: 0;
  }
  .bottom .nav em a {
    display: block;
    position: relative;
    color: #fff;
  }
  .bottom .nav em a::after {
    content: '';
    width: 0.2rem;
    height: 0.2rem;
    border-right: 3px solid #efefef;
    border-top: 3px solid #efefef;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: 0.3s;
  }
  .bottom .nav em.active a::after {
    transform: rotate(135deg);
  }
  .bottom .nav .sub {
    padding-top: 0.1rem;
    display: none;
    border-top: 1px solid #efefef;
  }
  .bottom .nav .sub dd {
    padding: 0.15rem 0;
  }
  .bottom .nav .sub dd a {
    color: #fff;
  }
  .bottom .nav .sub dd + dd {
    border-top: 1px solid #efefef;
  }
}
.menu {
  z-index: 5;
  position: relative;
}
.menu::before {
  content: '';
  width: 100%;
  height: 1px;
  background-color: #e5e5e5;
  position: absolute;
  left: 0;
  bottom: 0;
}
.menu .container {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.menu ul {
  display: flex;
  height: var(--menuHeight);
  gap: 0.56rem;
}
.menu ul li {
  height: 100%;
}
.menu ul li a {
  height: 100%;
  display: flex;
  align-items: center;
  color: #333333;
  line-height: 2;
  position: relative;
}
.menu ul li a::before {
  content: '';
  width: 0;
  height: 1px;
  background-color: #00c4f2;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: 0.3s;
}
.menu ul li a.active,
.menu ul li a:hover {
  color: #00c4f2;
}
.menu ul li a.active::before,
.menu ul li a:hover::before {
  width: 100%;
}
.menu .breadcurmb {
  display: flex;
  align-items: center;
  height: var(--menuHeight);
}
.menu .breadcurmb * {
  color: #7a7a87;
}
.menu .breadcurmb .iconfont {
  margin-right: 0.1rem;
  color: #555555;
  font-size: 0.75em;
}
.menu .breadcurmb .icon-right {
  margin: 0 0.12rem;
  color: #bbbbbb;
}
.menu .breadcurmb a {
  transition: 0.3s;
}
.menu .breadcurmb a:hover {
  color: #00c4f2;
}
@media (max-width: 1024px) {
  .menu .container {
    flex-direction: column;
    align-items: flex-start;
  }
  .menu .breadcurmb {
    padding: 0.2rem 0;
  }
  .menu ul {
    white-space: nowrap;
    overflow-y: auto;
    width: 100%;
    position: relative;
    gap: 0.26rem;
  }
}
.singlepage {
  padding: 1rem 0;
}
@media (max-width: 1024px) {
  .fp-section,
  .fp-tableCell {
    height: auto !important;
  }
}
body #fp-nav {
  right: 0.3rem;
  --border-color: #fff;
  --color: rgba(255, 255, 255, 0.3);
  --color-active: #ffffff;
}
body #fp-nav.white {
  --border-color: #888888;
  --color: #b8b8b8;
  --color-active: #888888;
}
body #fp-nav ul li {
  width: 23px;
  height: 23px;
  margin: 12px 0;
}
body #fp-nav ul li a {
  border: solid 1px transparent;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}
body #fp-nav ul li a span {
  width: 7px !important;
  height: 7px !important;
  margin: 0 !important;
  position: static;
  background-color: var(--color);
}
body #fp-nav ul li a.active {
  border-color: var(--border-color);
}
body #fp-nav ul li a.active span {
  background-color: var(--color-active);
}
.home-fullpage .home-animate {
  transition: transform 0.45s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.45s ease !important;
}
.home-fullpage .home-animate.is-hidden-before {
  transform: translateY(12px) !important;
  opacity: 0 !important;
  will-change: transform, opacity;
}
.home-banner {
  height: 100%;
}
.home-banner .swiper {
  height: 100%;
}
.home-banner .swiper-slide {
  position: relative;
}
.home-banner .video {
  position: absolute;
  inset: 0;
  background-color: #000;
}
.home-banner .video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.9s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.9s ease;
  transform: translateY(12px) scale(1.03);
  opacity: 0.75;
  will-change: transform, opacity;
}
.home-banner .img {
  position: absolute;
  inset: 0;
}
.home-banner .img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.9s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.9s ease;
  transform: translateY(12px) scale(1.03);
  opacity: 0.75;
  will-change: transform, opacity;
}
.home-banner .img .bac-pc {
  display: block;
}
.home-banner .img .ban-phone {
  display: none;
}
.home-banner .txt {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.302);
}
.home-banner .txt .container {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  transition: transform 0.9s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.9s ease;
  transform: translateY(12px);
  opacity: 0;
  will-change: transform, opacity;
}
.home-banner .txt .title {
  font-weight: bold;
  font-size: 0.48rem;
  line-height: 1.16666667;
  color: #ffffff;
}
.home-banner .txt .play {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  width: 0.8rem;
  height: 0.8rem;
  border: solid 1px rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  cursor: pointer;
  position: relative;
  margin-top: 0.1rem;
}
.home-banner .txt .play .iconfont {
  font-size: 0.875em;
}
.home-banner .txt .play::before {
  content: '';
  position: absolute;
  inset: 0.1rem;
  border-radius: 50%;
  border: solid 1px rgba(255, 255, 255, 0.7);
}
.home-banner .img img.is-hidden-before,
.home-banner .video video.is-hidden-before {
  transform: translateY(12px) scale(1.03) !important;
  transition: transform 0.45s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.45s ease !important;
  will-change: transform, opacity;
}
.home-banner .txt .container.is-hidden-before {
  transform: translateY(12px) scale(1.03) !important;
  opacity: 0 !important;
  transition: transform 0.45s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.45s ease !important;
  will-change: transform, opacity;
}
.home-banner .swiper-slide-active .img img {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.home-banner .swiper-slide-active .video video {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.home-banner .swiper-slide-active .txt .container {
  transform: translateY(0);
  opacity: 1;
}
.home-banner .swiper-slide-active.active .txt {
  background-color: transparent;
}
.home-banner .swiper-slide-active.active .txt .container {
  transition: transform 0.9s cubic-bezier(0.22, 0.9, 0.37, 1), opacity 0.9s ease;
  transform: translateY(12px);
  opacity: 0;
  will-change: transform, opacity;
}
.home-banner .swiper-pagination {
  left: 50% !important;
  transform: translateX(-50%);
  display: flex;
  justify-content: flex-start;
  bottom: 0.6rem !important;
  align-items: center;
  --swiper-pagination-bullet-horizontal-gap: 10px;
}
.home-banner .swiper-pagination .swiper-pagination-bullet {
  width: 13px;
  height: 13px;
  background: transparent;
  color: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}
.home-banner .swiper-pagination .swiper-pagination-bullet .iconfont {
  font-size: 10px;
}
.home-banner .swiper-pagination .swiper-pagination-bullet .icon-paused {
  display: none;
}
.home-banner .swiper-pagination .swiper-pagination-bullet .icon-dot {
  width: 10px;
  height: 10px;
  border: solid 2px #ffffff;
  border-radius: 50%;
}
.home-banner .swiper-pagination .swiper-pagination-bullet.active .icon-paused {
  display: block;
}
.home-banner .swiper-pagination .swiper-pagination-bullet.active .icon-play-circle {
  display: none;
}
.home-banner .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .icon-dot {
  background-color: #fff;
}
.home-banner .swiper-button-next,
.home-banner .swiper-button-prev {
  --swiper-navigation-size: 0.12rem;
  width: 0.5rem;
  height: 0.5rem;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  transition: 0.3s;
}
.home-banner .swiper-button-next:after,
.home-banner .swiper-button-prev:after {
  opacity: 0.2;
}
.home-banner .swiper-button-next:hover,
.home-banner .swiper-button-prev:hover {
  background-color: #00c4f2;
}
.home-banner .swiper-button-next:hover:after,
.home-banner .swiper-button-prev:hover:after {
  opacity: 1;
}
.home-banner .swiper-button-next {
  right: calc(50% - 8rem);
  top: auto;
  bottom: 0.6rem;
}
.home-banner .swiper-button-prev {
  left: auto;
  right: calc(50% - 8rem + 0.6rem);
  top: auto;
  bottom: 0.6rem;
}
.home-banner .mouse {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0.4rem;
  z-index: 2;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.1rem;
  animation: mouse-bob 2.6s ease-in-out infinite;
  -webkit-animation: mouse-bob 2.6s ease-in-out infinite;
  pointer-events: none;
}
.home-banner .mouse .iconfont {
  font-size: 0.32rem;
}
.home-banner .mouse span {
  animation: text-fade 2.6s ease-in-out infinite;
  -webkit-animation: text-fade 2.6s ease-in-out infinite;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .home-banner {
    height: 7.5rem;
  }
}
.home-title {
  font-size: 0.44rem;
  color: #303030;
  text-align: center;
  font-weight: bold;
}
.home-title.white {
  color: #fff;
}
.home-des {
  font-size: 1.125em;
  line-height: 1.66666667;
  color: #555555;
  text-align: center;
}
.home-des.white {
  color: rgba(255, 255, 255, 0.6);
}
.home-strengths {
  padding-top: var(--header-height);
  height: 100%;
}
.home-strengths .home-des {
  margin-bottom: 0.54rem;
}
.home-strengths .container {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  padding: 0.8rem 0 1rem;
}
.home-strengths .list {
  flex: 1;
  min-height: 0;
  display: flex;
  gap: 0.2rem;
  flex-wrap: wrap;
}
.home-strengths .item {
  flex: 1;
  min-width: 0.8rem;
  background: #f0f0f0;
  border-radius: 0.08rem;
  cursor: pointer;
  transition: all 0.6s cubic-bezier(0.22, 0.9, 0.37, 1);
  position: relative;
  overflow: hidden;
  background-image: url(../images/home_strengths_bg.jpg);
  background-size: auto 100% ;
  color: #222222;
}
.home-strengths .item .bg {
  opacity: 0;
  transition: 0.3s;
  position: absolute;
  inset: 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
}
.home-strengths .item .bg img {
  height: 100%;
  min-width: 100%;
  max-width: none;
  object-fit: cover;
}
.home-strengths .item .txt {
  position: absolute;
  inset: 0;
  z-index: 2;
  padding: 0.6rem 0.1rem 0.6rem 0.3rem;
  transition: 0.3s;
}
.home-strengths .item .index {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 0.1rem;
}
.home-strengths .item .title {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 0.1rem;
}
.home-strengths .item .content {
  opacity: 0;
  line-height: 1.5;
}
.home-strengths .item .info {
  position: relative;
}
.home-strengths .item .more {
  width: 0.3rem;
  height: 0.3rem;
  background-color: #00c4f2;
  border-radius: 0.3rem;
  position: absolute;
  left: 0;
  top: 0.1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
}
.home-strengths .item.active {
  flex: 3.3333;
  color: #fff;
  /* 可选：内部内容显示 */
}
.home-strengths .item.active .content {
  opacity: 0.5;
  visibility: visible;
  transition-delay: 0.6s;
  transition-duration: 0.3s;
}
.home-strengths .item.active .bg {
  opacity: 1;
}
.home-strengths .item.active .title {
  font-size: 1.5em;
}
.home-strengths .item.active .txt {
  padding: 0.6rem;
}
.home-strengths .item.active .more {
  opacity: 0;
}
.home-strengths .item:nth-child(1) {
  background-position: 0 0;
}
.home-strengths .item:nth-child(2) {
  background-position: calc((100% / 7) * 1) 0;
}
.home-strengths .item:nth-child(3) {
  background-position: calc((100% / 7) * 2) 0;
}
.home-strengths .item:nth-child(4) {
  background-position: calc((100% / 7) * 3) 0;
}
.home-strengths .item:nth-child(5) {
  background-position: calc((100% / 7) * 4) 0;
}
.home-strengths .item:nth-child(6) {
  background-position: calc((100% / 7) * 5) 0;
}
@media (max-width: 1024px) {
  .home-strengths .list {
    flex-wrap: wrap;
  }
  .home-strengths .item {
    flex: unset !important;
    width: 100%;
    color: #fff;
    /* 可选：内部内容显示 */
  }
  .home-strengths .item .txt {
    position: relative;
    z-index: 2;
  }
  .home-strengths .item .content {
    opacity: 0.5;
    visibility: visible;
    transition-delay: 0.6s;
    transition-duration: 0.3s;
  }
  .home-strengths .item .bg {
    opacity: 1;
  }
  .home-strengths .item .title {
    font-size: 1.5em;
  }
  .home-strengths .item .txt {
    padding: 0.6rem;
  }
  .home-strengths .item .more {
    opacity: 0;
  }
}
.home-product {
  padding-top: var(--header-height);
  height: 100%;
  background-size: cover;
  background-position: center;
}
.home-product .container {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  padding: 0.6rem 0 0.8rem;
}
.home-product .swiper {
  width: 100%;
  height: 100%;
  overflow: visible;
}
.home-product .swiper-slide {
  transition: 300ms;
  transform: scale(0.5) translateY(0.8rem) !important;
}
.home-product .swiper-slide-active,
.home-product .swiper-slide-duplicate-active {
  transform: scale(1) !important;
}
.home-product .swiper-slide-active .txt,
.home-product .swiper-slide-duplicate-active .txt {
  opacity: 1;
}
.home-product .swiper-slide-active .bg-title,
.home-product .swiper-slide-duplicate-active .bg-title {
  opacity: 1;
}
.home-product .swiper-container {
  flex: 1;
  min-height: 0;
  padding: 0 4.4rem;
}
.home-product .swiper-slide-prev {
  transform-origin: right center;
}
.home-product .swiper-slide-prev .img img {
  right: auto;
}
.home-product .swiper-slide-next {
  transform-origin: left center;
}
.home-product .swiper-slide-next .img img {
  left: auto;
}
.home-product a {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
}
.home-product .img {
  flex: 1;
  position: relative;
  max-height: 800px;
}
.home-product .img img {
  position: absolute;
  inset: 0 0 0 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
}
.home-product .txt {
  text-align: center;
  opacity: 0;
  transition: 300ms;
}
.home-product .txt .title {
  font-size: 1.5em;
  line-height: 1.5;
  color: #303030;
  margin-bottom: 0.13rem;
}
.home-product .txt .des {
  line-height: 1.5;
  letter-spacing: 0px;
  color: #555555;
  margin-bottom: 0.1rem;
}
.home-product .bg-title {
  white-space: nowrap;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -80%);
  font-size: 1.6rem;
  font-weight: bold;
  color: #ffffff;
  opacity: 0;
  transition: 0.3s;
}
@media (max-width: 1024px) {
  .home-product .swiper-container {
    padding: 0 ;
  }
  .home-product .img {
    padding-top: 62.5%;
  }
}
.home-case {
  padding-top: var(--header-height);
  height: 100%;
  background-size: cover;
  background-position: center;
}
.home-case .container {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  padding: 0.6rem 0 0.8rem;
}
.home-case .home-des {
  margin-bottom: 0.83rem;
}
.home-case .swiper {
  min-height: 0;
  width: 100%;
}
.home-case a {
  display: block;
  border-radius: 20px;
  border: solid 1px rgba(255, 255, 255, 0.2);
  background-color: rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(8px);
  padding: 0.5rem;
}
.home-case a:hover .more {
  opacity: 1;
}
.home-case .pic {
  position: relative;
  padding-top: 34.7826087%;
  overflow: hidden;
}
.home-case .pic img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  transition: 0.3s;
}
.home-case .pic img:hover {
  transform: scale(1.1);
}
.home-case .pic {
  border-radius: 10px;
  margin-bottom: 0.3rem;
}
.home-case .txt {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.home-case .title {
  font-size: 1.5em;
  color: #ffffff;
  font-weight: bold;
  margin-bottom: 0.1rem;
}
.home-case .des {
  line-height: 1.625;
  color: #ffffff;
  opacity: 0.5;
  margin-bottom: 0.35rem;
}
.home-case .more {
  display: flex;
  align-items: center;
  color: #ffffff;
  opacity: 0.5;
  gap: 0.08rem;
  margin-top: auto;
}
.home-case .swiper-pagination {
  position: static;
  padding-top: 0.3rem;
  display: flex;
  justify-content: center;
}
@media (max-width: 1024px) {
  .home-case a {
    padding: 0.3rem;
  }
}
.home-partner {
  padding-top: var(--header-height);
  height: 100%;
  background-color: #f5f5f5;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.home-partner .home-des {
  margin-bottom: 0.5rem;
}
.home-partner .wrapper {
  --logo-width: 280px;
  --logo-height: 100px;
  --gap: 0.4rem;
  --duration: 30s;
  --scroll-start: 0;
  --scroll-end: calc(-100% - var(--gap));
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  margin: auto;
  max-width: 1920px;
  margin: 0 auto;
  display: none;
  width: 100%;
}
.home-partner .wrapper.is-active {
  display: flex;
}
.home-partner .wrapper.is-active .marquee:nth-of-type(2n) .marquee__group {
  animation-duration: 50s;
}
.home-partner .wrapper.is-active .marquee:hover .marquee__group {
  animation-play-state: paused;
}
.home-partner .wrapper.is-active .marquee__group {
  animation: scrollLeft var(--duration) linear infinite;
  animation-play-state: running;
}
.home-partner .marquee {
  display: flex;
  overflow: hidden;
  user-select: none;
  gap: var(--gap);
  mask-image: linear-gradient(to right, hsla(0, 0%, 0%, 0), hsl(0, 0%, 0%) 10%, hsl(0, 0%, 0%) 90%, hsla(0, 0%, 0%, 0));
}
.home-partner .marquee__group {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: var(--gap);
}
.home-partner .wrapper .marquee:nth-child(even) {
  margin-left: calc(var(--logo-width) / -2);
}
.home-partner .item {
  width: var(--logo-width);
  height: var(--logo-height);
  background-color: #ffffff;
  border-radius: calc(var(--logo-height) / 2);
  overflow: hidden;
}
.home-partner .item a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.home-partner .item a img {
  position: absolute;
  object-fit: contain;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
}
@keyframes scrollLeft {
  from {
    transform: translateX(var(--scroll-start));
  }
  to {
    transform: translateX(var(--scroll-end));
  }
}
@media (max-width: 1024px) {
  .home-partner {
    padding-bottom: 0.6rem;
  }
  .home-partner .wrapper {
    --logo-width: 3rem;
    --logo-height: 1.2rem;
  }
}
.com-btn {
  --text-color: #fff;
  --border-color: #ffffff;
  --background-color: #222222;
  --hover-text-color: #ffffff;
  --hover-border-color: #00c4f2;
  --hover-background-color: #00c4f2;
  --min-width: 1.8rem;
  --height: 0.5rem;
  --padding: 0 0.2rem;
  --border-radius: 0.25rem;
  --font-size: 1em;
  min-width: var(--min-width);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  font-size: var(--font-size);
  color: var(--text-color);
  padding: var(--padding);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: var(--height);
  line-height: var(--height);
  transition: 0.3s;
  background-color: var(--background-color);
  cursor: pointer;
  gap: 0.05rem;
}
.com-btn:not([disabled="disabled"]):hover {
  border-color: var(--hover-border-color);
  color: var(--hover-text-color);
  background-color: var(--hover-background-color);
}
.com-btn[disabled="disabled"]:not([loading]) {
  cursor: not-allowed;
}
.com-btn[loading]::before {
  content: '';
  width: var(--font-size);
  height: var(--font-size);
  background-image: url(../images/loading.svg);
  margin-right: 0.05rem;
  animation: loading 1s linear infinite;
}
@media (max-width: 1024px) {
  .com-btn {
    --height: 0.54rem;
    --border-radius: 0.27rem;
  }
}
.home-news {
  padding-top: var(--header-height);
}
.home-news .home-des {
  margin-bottom: 0.51rem;
}
.home-news .swiper-slide {
  height: auto;
}
.home-news a {
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 0.4rem;
  overflow: hidden;
  background-color: #f0f2f6;
}
.home-news .pic {
  position: relative;
  padding-top: 72.72727273%;
  overflow: hidden;
}
.home-news .pic img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  transition: 0.3s;
}
.home-news .pic img:hover {
  transform: scale(1.1);
}
.home-news .txt {
  padding: 0.3rem;
}
.home-news .time {
  font-size: 1.125em;
  line-height: 1.66666667;
  color: #00c4f2;
  margin-bottom: 0.15rem;
}
.home-news .title {
  font-size: 1.125em;
  line-height: 1.66666667;
  height: 5em;
  color: #555555;
}
.home-news .swiper-action {
  padding-top: 0.4rem;
  display: flex;
  align-items: center;
}
.home-news .swiper-scrollbar {
  height: 2px;
  margin-right: 0.5rem;
  flex: 1;
}
.home-news .swiper-scrollbar .swiper-scrollbar-drag {
  background-color: #00c4f2;
}
.home-news .swiper-button-next,
.home-news .swiper-button-prev {
  --swiper-navigation-size: 0.12rem;
  --swiper-navigation-color: #888888;
  width: 0.5rem;
  height: 0.5rem;
  background-color: #f0f2f6;
  border-radius: 50%;
  transition: 0.3s;
  position: static;
  margin-left: 0.1rem;
}
.home-news .swiper-button-next:hover,
.home-news .swiper-button-prev:hover {
  --swiper-navigation-color: #ffffff;
}
.home-news .swiper-button-next:hover,
.home-news .swiper-button-prev:hover {
  background-color: #00c4f2;
}
.home-news .swiper-button-next:hover:after,
.home-news .swiper-button-prev:hover:after {
  opacity: 1;
}
@media (max-width: 1024px) {
  .home-news {
    padding-bottom: 0.6rem;
  }
}
@keyframes mouse-bob {
  0% {
    transform: translateX(-50%) translateY(0);
  }
  50% {
    transform: translateX(-50%) translateY(10px);
  }
  100% {
    transform: translateX(-50%) translateY(0);
  }
}
@keyframes wheel-move {
  0% {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
  60% {
    opacity: 0.2;
    transform: translateX(-50%) translateY(10px);
  }
  100% {
    opacity: 0;
    transform: translateX(-50%) translateY(14px);
  }
}
@keyframes text-fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
.banner {
  min-height: 4rem;
  position: relative;
}
.banner img {
  width: 100%;
  min-height: 4rem;
  display: block;
  object-fit: cover;
}
.banner .txt {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
}
.banner .txt h2 {
  font-size: 0.48rem;
  color: #ffffff;
  margin-bottom: 0.1rem;
}
.banner .txt h4 {
  color: #ffffff;
  opacity: 0.5;
  font-weight: normal;
}
.product-category {
  padding-top: 1.2rem;
}
.product-category-title {
  font-size: 0.44rem;
  color: #303030;
  text-align: center;
  font-weight: bold;
  margin-bottom: 0.07rem;
}
.product-category-des {
  line-height: 1.875;
  color: #555555;
  text-align: center;
  margin-bottom: 0.37rem;
}
.product-category-item {
  margin-bottom: 1.1rem;
}
.product-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.2rem;
}
.product-item {
  width: calc((100% - 0.6rem) / 4);
}
.product-item a {
  background-color: #f0f2f6;
  border-radius: 0.2rem;
  display: flex;
  flex-direction: column;
  padding: 0.3rem;
  height: 100%;
}
.product-item a:hover .pic img {
  transform: scale(1.1);
}
.product-item a:hover .txt .title {
  color: #00c4f2;
}
.product-item .pic {
  padding-top: 76.92307692%;
  position: relative;
  border-bottom: 1px solid #d5d5d5;
  margin-bottom: 0.28rem;
}
.product-item .pic img {
  position: absolute;
  inset: 0;
  margin: auto;
  max-width: calc(100% - 0.26rem);
  max-height: calc(100% - 0.26rem);
  object-fit: contain;
  transition: 0.3s;
}
.product-item .txt .title {
  font-size: 1.5em;
  color: #222222;
  font-weight: bold;
  margin-bottom: 0.08rem;
}
.product-item .txt .des {
  line-height: 1.5;
  color: #555555;
  height: 3em;
  margin-bottom: 0.24rem;
}
.product-item .txt .more {
  width: 0.3rem;
  height: 0.3rem;
  background-color: #00c4f2;
  border-radius: 0.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding-right: 0.03rem;
}
@media (max-width: 1024px) {
  .product-item {
    width: calc((100% - 0.2rem) / 2);
  }
}
.product-banner {
  background-image: url(../images/product_bg.jpg);
  background-size: cover;
  background-position: right bottom;
  height: 7rem;
  position: relative;
  overflow: hidden;
}
.product-banner .info {
  position: absolute;
  inset: 0;
  height: auto;
}
.product-banner .container {
  height: 100%;
  display: flex;
  align-items: center;
  padding: var(--header-height) 1.4rem 0;
}
.product-banner .txt {
  flex: 1;
}
.product-banner .txt .title {
  font-size: 0.44rem;
  color: #303030;
  font-weight: bold;
  margin-bottom: 0.03rem;
}
.product-banner .txt .des {
  font-size: 1.125em;
  line-height: 1.66666667;
  color: #555555;
}
.product-banner .img {
  width: 5rem;
  position: relative;
}
.product-banner .img img {
  position: absolute;
  inset: 0;
  margin: auto;
}
.product-banner .title-bg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.25em;
  font-size: 2.3rem;
  color: #ffffff;
  opacity: 0.6;
  font-weight: bold;
  line-height: 1;
  text-align: justify;
  text-align-last: justify;
  mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.3) 60%, rgba(0, 0, 0, 0));
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .product-banner {
    height: auto;
  }
  .product-banner .container {
    padding: var(--header-height) 0 0;
    flex-direction: column;
  }
  .product-banner .info {
    position: relative;
  }
  .product-banner .txt {
    padding-top: 0.5rem;
    position: relative;
  }
  .product-banner .img img {
    position: relative;
  }
}
.product-detail-tab {
  display: flex;
  justify-content: center;
  padding-top: 0.8rem;
  margin-bottom: 0.55rem;
}
.product-detail-tab-grid {
  display: flex;
  background-color: #f0f2f6;
  border-radius: 0.6rem;
  padding: 0.05rem;
}
.product-detail-tab .tab-item {
  min-height: 0.5rem;
  min-width: 2.2rem;
  padding: 0.1rem;
  text-align: center;
  color: #555555;
  font-size: 1.125em;
  border-radius: 0.6rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-detail-tab .tab-item.active {
  background-color: #fff;
  color: #00c4f2;
  font-weight: bold;
}
.product-detail-tab .tab-item:hover {
  color: #00c4f2;
}
@media (max-width: 1024px) {
  .product-detail-tab .tab-item {
    width: 30.33%;
  }
}
.product-detail-content {
  padding-bottom: 1.2rem;
}
.product-detail-content .html-content {
  padding: 0 1rem 0 0.8rem;
  margin-bottom: 0.55rem;
}
.product-detail-content .detail-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.1rem;
}
.product-detail-content .detail-list .detail-item:nth-child(5n + 1) {
  grid-row: span 3;
  height: 100%;
  flex-direction: column;
}
.product-detail-content .detail-list .detail-item:nth-child(5n + 1) .des {
  line-height: 1.75;
}
.product-detail-content .detail-item {
  display: flex;
  align-items: flex-start;
  gap: 0.25rem;
  background-color: #f0f2f6;
  border-radius: 0.1rem;
  padding: 0.48rem 0.4rem 0.4rem;
}
.product-detail-content .detail-item .index {
  font-size: 0.8rem;
  color: #00c4f2;
  font-weight: bold;
  font-style: italic;
  background-image: linear-gradient(to bottom, #00c4f2 0%, rgba(0, 196, 242, 0.5) 40%, rgba(0, 196, 242, 0.2) 60%, rgba(0, 196, 242, 0) 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  flex-shrink: 0;
  padding-right: 0.25rem;
  line-height: 1;
}
.product-detail-content .detail-item .title {
  font-size: 0.2rem;
  line-height: 1.4;
  color: #222222;
  font-weight: bold;
  margin-bottom: 0.14rem;
}
.product-detail-content .detail-item .des {
  line-height: 1.5;
  color: #222222;
}
.product-detail-content .product-detail-item {
  display: none;
}
@media (max-width: 1024px) {
  .product-detail-content .html-content {
    padding: 0;
  }
  .product-detail-content .detail-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 0.1rem;
  }
  .product-detail-content .detail-list .detail-item {
    flex-direction: column;
  }
}
.about {
  position: relative;
}
.about .menu {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.about-us {
  padding-top: calc(var(--menuHeight) + 1.2rem);
  padding-bottom: 1.2rem;
  background-size: cover;
  background-position: center;
}
.about-us h1 {
  text-align: center;
  font-size: 0.44rem;
}
.about-us .html-content {
  padding: 0 2.4rem;
}
.about-us .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
}
.about-us .list .item {
  width: calc((100% - 0.2rem) / 2);
  border: solid 1px #ffffff;
  background-color: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(4px);
  padding: 0.6rem 0.6rem 0.8rem;
  border-radius: 0.2rem;
  display: flex;
  gap: 0.6rem;
}
.about-us .list .item .txt {
  flex: 1;
}
.about-us .list .item .txt .title {
  font-size: 1.5em;
  color: #222222;
  font-weight: bold;
  margin-bottom: 0.1rem;
}
.about-us .list .item .txt .des {
  line-height: 1.5;
  color: #555555;
}
.about-us .list .item .icon {
  width: 0.4rem;
  height: 0.4rem;
  position: relative;
}
.about-us .list .item .icon img {
  position: absolute;
  inset: 0;
  margin: auto;
  max-height: 100%;
}
@media (max-width: 1024px) {
  .about-us {
    padding-top: calc(var(--menuHeight) * 2 + 1.2rem);
  }
  .about-us .html-content {
    padding: 0 ;
  }
  .about-us .list .item {
    width: 100%;
  }
}
.column-title {
  font-weight: bold;
  font-size: 0.44rem;
  color: #303030;
  text-align: center;
}
.column-title.white {
  color: #fff;
}
.column-des {
  line-height: 0.28rem;
  color: #303030;
  opacity: 0.6;
  text-align: center;
}
.column-des.white {
  color: #fff;
}
.company-vision {
  padding: 1.2rem 0;
}
.company-vision .column-title {
  margin-bottom: 0.5rem;
}
.company-vision .list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.2rem;
}
.company-vision .item {
  min-height: 1rem;
  border-radius: 0.2rem;
  overflow: hidden;
  background-color: #f0f2f6;
}
.company-vision .item:nth-child(5n + 1) {
  grid-column: span 2;
}
.company-vision .item .pic {
  min-height: 3rem;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.company-vision .item .pic img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
.company-vision .item .pic:hover img {
  transform: scale(1.1);
}
.company-vision .item .txt {
  padding: 0.4rem;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.company-vision .item .txt .icon {
  height: 0.4rem;
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0.3rem;
}
.company-vision .item .txt .icon img {
  max-height: 100%;
}
.company-vision .item .txt .info {
  margin-top: auto;
}
.company-vision .item .txt .info .title {
  font-size: 1.5em;
  color: #222222;
  font-weight: bold;
  margin-bottom: 0.1rem;
}
.company-vision .item .txt .info .des {
  line-height: 1.5;
  color: #555555;
}
@media (max-width: 1024px) {
  .company-vision .list {
    grid-template-columns: repeat(1, 1fr);
  }
  .company-vision .item {
    height: auto;
  }
  .company-vision .item:nth-child(5n + 1) {
    grid-column: span 1;
  }
}
.company-talent {
  background-size: cover;
  background-position: center;
  padding: 1.2rem 0 2rem;
}
.company-talent .column-title {
  margin-bottom: 0.05rem;
}
.company-talent .column-des {
  margin-bottom: 1.55rem;
}
.company-talent .list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
}
.company-talent .item {
  border: solid 1px rgba(255, 255, 255, 0.2);
  border-radius: 0.2rem;
  background-color: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(20px);
  color: #fff;
  padding: 0.6rem;
  min-height: 4rem;
  width: calc((100% - 0.2rem) / 2);
}
.company-talent .item .title {
  font-size: 1.5em;
  margin-bottom: 0.13rem;
}
.company-talent .item .des {
  line-height: 1.5;
  opacity: 0.6;
}
@media (max-width: 1024px) {
  .company-talent .item {
    width: 100%;
  }
}
.company-partner {
  padding: 1.2rem 0;
  background-color: #f0f2f6;
}
.company-partner .column-des {
  margin-bottom: 1rem;
}
.company-partner .swiper {
  height: 530px;
  padding-bottom: 0.7rem;
}
.company-partner .swiper-slide {
  height: calc((100% - 60px) / 4) !important;
  border-radius: 50px;
  background-color: #fff;
  position: relative;
  overflow: hidden;
}
.company-partner .swiper-slide img {
  position: absolute;
  inset: 0;
  margin: auto;
  max-height: 100%;
}
.company-partner .swiper-pagination {
  padding-top: 0.6rem;
  display: flex;
  bottom: 0;
  width: 100%;
  justify-content: center;
  --swiper-pagination-color: #00c4f2;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-inactive-color: #bbbbbb;
}
.company-case {
  padding: 1rem 0 1.2rem;
}
.company-case .case-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
}
.company-case .case-list .case-item {
  width: calc((100% - 0.2rem) / 2);
  border-radius: 0.2rem;
  overflow: hidden;
  position: relative;
  padding: 0.5rem;
  background: url('../images/case-bg.png') no-repeat center center / cover;
}
.company-case .case-list .case-item .case-img {
  position: relative;
  padding-bottom: calc(240 / 690 * 100%);
  height: 0;
  border-radius: 0.2rem;
  overflow: hidden;
}
.company-case .case-list .case-item .case-img img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
.company-case .case-list .case-item:hover .case-img img {
  transform: scale(1.1) translateY(-2px);
}
.company-case .case-list .case-item .case-info {
  padding-top: 0.2rem;
}
.company-case .case-list .case-item .case-info .case-title {
  font-size: 1.5em;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  color: #333;
}
.company-case .case-list .case-item .case-info .case-desc {
  font-size: 1em;
  line-height: 1.625;
  color: #555;
  margin-top: 0.05rem;
}
.company-case .case-list .case-item .case-info .more {
  font-size: 1em;
  line-height: 1.625;
  color: #555;
  margin-top: 0.4rem;
}
.company-case .case-list .case-item .case-info .more i {
  color: #bbb;
}
@media (max-width: 1024px) {
  .company-case .case-list .case-item {
    width: 100%;
  }
}
.case-detail {
  background: url('../images/case-bg3.png') no-repeat top center / cover;
}
.case-detail .container {
  max-width: 14.4rem;
  margin: 0 auto;
}
.case-detail .detail-title {
  font-size: 2.125em;
  padding-top: 1rem;
  color: #303030;
  font-weight: bold;
  text-align: center;
  padding-bottom: 0.3rem;
  border-bottom: solid 1px #fff;
}
.case-detail .detail-content {
  font-size: 1.125em;
  line-height: 1.55555556;
  color: #222;
  padding: 0.2rem 0;
}
.case-detail .detail-content p {
  margin-bottom: 0.2rem;
}
.case-detail .detail-content img {
  display: block;
  max-width: 100%;
  margin: 0.4rem auto;
}
.case-detail .detail-page {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.3rem 0 0.7rem;
  border-top: solid 1px #fff;
}
.case-detail .detail-page .prev,
.case-detail .detail-page .next {
  font-size: 1.125em;
  line-height: 2;
  color: #222;
  display: flex;
  align-items: center;
  gap: 0.15rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.case-detail .detail-page .a_back {
  font-size: 1em;
  height: 0.5rem;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
  background-color: #222;
  border-radius: 0.5rem;
  padding: 0 0.35rem;
}
.case-detail .detail-page .a_back i {
  font-size: 12px;
}
@media (max-width: 1024px) {
  .case-detail .detail-page {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
  }
}
.news {
  padding: 1rem 0 1.2rem;
}
.news .news-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
}
.news .news-list .news-item {
  width: 100%;
  border-radius: 0.2rem;
  overflow: hidden;
  position: relative;
  background: #F0F2F6;
  display: flex;
  align-content: stretch;
}
.news .news-list .news-item .news-img {
  flex-shrink: 0;
  width: 5.5rem;
  overflow: hidden;
}
.news .news-list .news-item .news-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
.news .news-list .news-item .news-info {
  flex: 1;
  padding: 0.5rem;
}
.news .news-list .news-item .news-info .news-title {
  font-size: 1.5em;
  color: #222;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  transition: all 0.3s;
}
.news .news-list .news-item .news-info .news-desc {
  font-size: 1em;
  line-height: 1.625;
  color: #555;
  margin-top: 0.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.news .news-list .news-item .news-info .more {
  color: #fff;
  margin-top: 0.8rem;
  background-color: #00C4F2;
  width: 0.3rem;
  height: 0.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.news .news-list .news-item .news-info .more i {
  color: #fff;
  font-size: 14px;
}
.news .news-list .news-item .news-date {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0.02rem;
  line-height: 1;
  padding: 0.5rem;
}
.news .news-list .news-item .news-date em {
  font-size: 3.125em;
  color: #222;
}
.news .news-list .news-item .news-date span {
  font-size: 1em;
  color: #888;
}
.news .news-list .news-item:hover img {
  transform: scale(1.1) translateY(-2px);
}
.news .news-list .news-item:hover .news-title {
  color: #00C4F2;
}
@media (max-width: 1024px) {
  .news .news-list .news-item {
    flex-direction: column;
  }
  .news .news-list .news-item .news-img {
    width: 100%;
  }
  .news .news-list .news-item .more {
    display: none !important;
  }
  .news .news-list .news-item .news-date {
    padding-top: 0;
  }
}
.news-detail .container {
  max-width: 14.4rem;
  margin: 0 auto;
}
.news-detail .detail-title {
  font-size: 2.125em;
  padding-top: 1rem;
  color: #303030;
  font-weight: bold;
  text-align: center;
  padding-bottom: 0.3rem;
}
.news-detail .detail-time {
  font-size: 1em;
  line-height: 1.625;
  color: #888;
  text-align: center;
  padding-bottom: 0.3rem;
  border-bottom: solid 1px #E5E5E5;
}
.news-detail .detail-content {
  font-size: 1.125em;
  line-height: 1.55555556;
  color: #222;
  padding: 0.3rem 0;
}
.news-detail .detail-content p {
  margin-bottom: 0.2rem;
}
.news-detail .detail-content img {
  display: block;
  max-width: 100%;
  margin: 0.4rem auto;
}
.news-detail .detail-page {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.3rem 0 0.7rem;
  border-top: solid 1px #E5E5E5;
}
.news-detail .detail-page .prev,
.news-detail .detail-page .next {
  font-size: 1.125em;
  line-height: 2;
  color: #222;
  display: flex;
  align-items: center;
  gap: 0.15rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.news-detail .detail-page .a_back {
  font-size: 1em;
  height: 0.5rem;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
  background-color: #222;
  border-radius: 0.5rem;
  padding: 0 0.35rem;
}
.news-detail .detail-page .a_back i {
  font-size: 12px;
}
@media (max-width: 1024px) {
  .news-detail .detail-page {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
  }
}
