/*
Theme Name: Bonray
Version: 1.0
Description: 三鸟科技提供一站式服务——网站搭建,谷歌SEO优化,谷歌竞价,谷歌SNS社媒营销等。
Author: 版权所有：三鸟科技
*/
@charset "utf-8";


* {
  box-sizing: border-box;
  line-height: 150%;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 300;
  font-size: min(16px, 18px);
}

:root {
  --i_color: #005caf;
  --i_color2: #333e48;
  --i_shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  --bc_color: #f7f7f7;
  --header_height: 0.68rem;
  --border_color: rgb(51, 51, 51, 0.2);
  --f_menu_height: 50px;
  --linear-gradien: linear-gradient(to bottom,
      transparent,
      rgba(1, 81, 151, 0.1));
}

@media screen and (max-width: 1440px) {
  :root {
    --header_height: 0.8rem;
  }
}

@media screen and (max-width: 1024px) {
  :root {
    --header_height: 0.6rem;
    --border_color: rgb(0 0 0 / 6%);
  }
}

.wrap {
  width: 83.33%;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
}

.wrap_l {
  margin-left: 8.335%;
}

.wrap_r {
  margin-right: 8.335%;
}

@media screen and (max-width: 1024px) {
  .wrap {
    width: 92%;
  }
}

@media screen and (max-width: 1600px) {
  .wrap_l {
    margin-left: 8.335%;
  }

  .wrap_r {
    margin-right: 8.335%;
  }
}

@media screen and (max-width: 1024px) {

  .wrap_l,
  .wrap_r {
    margin-left: 4%;
    margin-right: 4%;
  }
}

.top_wrap {
  width: 88.54%;
  margin: 0 auto;
  max-width: 1700px;
}

@media screen and (max-width: 1440px) {
  .top_wrap {
    width: 92%;
  }
}

@media screen and (max-width: 1024px) {
  .top_wrap {
    width: 96%;
  }
}

.language {
  position: relative;
  height: var(--header_height);
  display: flex;
  align-items: center;
}

.language p {
  font-size: 18px;
  color: #333;
  position: relative;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
  .language p {
    width: 36px;
    height: 36px;
    font-size: 16px;
  }
}

.language p.on {
  color: var(--i_color);
}

.language p::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0.3rem;
  height: 0.3rem;
  background: url(static/images/language.svg) no-repeat center;
  background-size: contain;
}

.language p::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 6px 0 6px;
  /* 这将创建一个朝下的三角形 */
  border-color: #333 transparent transparent transparent;
  /* 黑色在顶部，其余为透明 */
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -10px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.language p.on::before {
  border-top-color: var(--i_color);
}

.language_list {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 1.5rem;
  right: 0;
  background: #fff;
  z-index: 2016;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  padding: 0.16rem 0.2rem;
}

.language_list.on {
  opacity: 1;
  visibility: visible;
  top: var(--header_height);
}

.language_list dt>h6 {
  margin-bottom: 0.08rem;
  font-size: 0.17rem;
  font-weight: bold;
  white-space: nowrap;
}

.curr_lang {
  margin-bottom: 0.12rem;
  padding-bottom: 0.12rem;
  border-bottom: 1px solid #eee;
}

.lang_list a {
  display: block;
  padding: 0.06rem 0;
}

.lang_list span img {
  display: none;
}

.lang_list .trp-ls-language-name {
  padding-left: 0.3rem;
  font-size: 14px;
  position: relative;
}

.lang_list .trp-ls-language-name::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  width: 0.18rem;
  height: 0.18rem;
  box-sizing: border-box;
  border: 1px solid #aaa;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

.lang_list .trp-ls-language-name::after {
  display: none;
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0.06rem;
  width: 0.06rem;
  height: 0.06rem;
  background: var(--i_color);
  -webkit-border-radius: 50%;
  border-radius: 50%;
}

.lang_list li:hover .trp-ls-language-name::after,
.curr_lang .trp-ls-language-name::after {
  display: block;
}

.lang_list li:hover .trp-ls-language-name,
.curr_lang .trp-ls-language-name {
  color: var(--i_color);
}

/* header */
header {
  position: fixed;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2014;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 6px;
}

header.TopHeader {
  background: #fff;
}

@media screen and (max-width: 1024px) {
  header {
    background: #fff;
  }
}

.top_cont {
  position: relative;
}

.top {
  display: -webkit-flex;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 1024px) {
  .full_header {
    height: var(--header_height);
  }
}

/* logo */
.logo {
  display: -webkit-flex;
  display: flex;
  align-items: center;
  height: var(--header_height);
}

.logo a {
  display: -webkit-flex;
  display: flex;
  align-items: center;
}

.logo img {
  max-height: 0.6rem;
}

@media screen and (max-width: 1440px) {
  .logo img {
    max-height: 0.5rem;
  }
}

@media screen and (max-width: 1024px) {
  .logo img {
    max-height: 0.44rem;
  }
}

/* 导航 */
@media screen and (min-width: 1025px) {
  .i_nav {
    margin-left: auto;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    z-index: 2015;
    gap: 0 0.5rem;
  }

  .i_nav>li {
    position: relative;
  }

  .i_nav>li>a {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    font-size: 16px;
    color: #333;
    line-height: var(--header_height);
  }

  .i_nav>.current-menu-item>a,
  .i_nav>.current-category-ancestor>a,
  .i_nav>.current-post-ancestor>a,
  .i_nav>.current-menu-ancestor>a,
  .i_nav>.current-menu-parent>a,
  .i_nav>li:hover>a,
  .i_nav .curr>a {
    color: var(--i_color) !important;
  }

  .i_nav>li.menu-item-has-children>a {
    padding-right: 24px;
  }

  .i_nav>.menu-item-has-children>a::before {
    content: "";
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background: url("static/images/arrow_down_hollow_hei.svg") no-repeat center;
    background-size: 100%;
  }

  .i_nav .sub-menu {
    display: none;
    position: absolute;
    left: 0;
    background-color: var(--bc_color);
    border-top: 2px solid var(--i_color);
  }

  .i_nav .sub-menu li {
    position: relative;
    padding: 0 0.3rem;
    border-bottom: 1px solid var(--border_color);
  }

  .i_nav .sub-menu a {
    color: #333;
    display: block;
    font-size: 0.15rem;
    line-height: 0.44rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    position: relative;
    text-transform: capitalize;
  }

  .i_nav .sub-menu>li:hover {
    background: var(--i_color);
  }

  .i_nav .sub-menu>li:hover>a {
    color: #fff;
  }

  /* 箭头 */
  .i_nav .sub-menu li.menu-item-has-children {
    position: relative;
  }

  .i_nav .sub-menu li.menu-item-has-children::after {
    content: "";
    width: 20px;
    height: 20px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1em' height='1em' viewBox='0 0 48 48'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='m19 12l12 12l-12 12'/%3E%3C/svg%3E") no-repeat center;
    background-size: cover;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 2%;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }

  /* 三级 */
  .i_nav .sub-menu ul {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0%;
    background-color: var(--bc_color);
    text-align: center;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: -1;
  }

  .i_nav .sub-menu li:hover ul {
    opacity: 1;
    left: 100%;
  }
}

@media screen and (max-width: 1440px) {
  .i_nav {
    gap: 0 0.32rem;
  }

  .i_nav>li>a {
    font-size: 15px;
  }
}

@media screen and (max-width: 1366px) {
  .i_nav>li>a {
    font-size: 14px;
  }

  .i_nav {
    gap: 0 0.2rem;
  }
}

@media screen and (max-width: 1024px) {
  .i_nav {
    display: none;
    position: fixed;
    top: var(--header_height);
    left: 0;
    width: 100%;
    width: 100vw;
    max-height: calc(100vh - var(--header_height));
    background: #fff;
    overflow-y: auto;
  }

  /*滚动条*/
  .i_nav::-webkit-scrollbar {
    width: 3px;
    height: 8px;
  }

  .i_nav::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
    background: #555;
  }

  .i_nav::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
    border-radius: 0;
    background: #f1f1f1;
  }

  .i_nav>li {
    margin: 0 0 !important;
    border-bottom: 1px solid var(--border_color);
    position: relative;
  }

  .i_nav>.menu-item-has-children span {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 0.44rem;
    height: 0.44rem;
    box-sizing: border-box;
    background: url(static/images/arrow_down_hollow_hei.svg) no-repeat center;
    background-size: 0.18rem;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }

  .i_nav>.menu-item-has-children span.on {
    transform: rotate(180deg);
  }

  .i_nav>li>a {
    display: block;
    padding: 0 0.2rem;
    font-size: 14px;
    color: #222;
    line-height: 0.4rem;
  }

  .i_nav>li>.sub-menu {
    display: none;
  }

  .i_nav>li>.sub-menu li {
    position: relative;
  }

  .i_nav .sub-menu a {
    display: block;
    padding: 0 0.4rem;
    font-size: 0.15rem;
    color: #555;
    line-height: 0.4rem;
    position: relative;
  }

  .i_nav .sub-menu li:not(:last-child) {
    border-bottom: 1px solid var(--border_color);
  }
}

/* 移动端导航按钮 */
.nav_menu {
  /* position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%); */
  position: relative;
  width: 22px;
  height: 16px;
  display: none;
  cursor: pointer;
}

.nav_menu i {
  display: block;
  width: 100%;
  height: 3px;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  background: var(--i_color);
  border-radius: 0.1rem;
  transition: 0.5s;
}

.nav_menu::before,
.nav_menu::after {
  content: "";
  width: 100%;
  height: 3px;
  background: #333;
  position: absolute;
  left: 0;
  border-radius: 0.1rem;
  transition: 0.5s;
}

.nav_menu::before {
  top: 0;
}

.nav_menu::after {
  bottom: 0;
}

.nav_menu.on i {
  opacity: 0;
}

.nav_menu.on::before {
  transform: rotate(45deg);
  top: 50%;
  margin-top: -2px;
}

.nav_menu.on::after {
  transform: rotate(-45deg);
  top: 50%;
  margin-top: -2px;
}

@media screen and (max-width: 1024px) {
  .nav_menu {
    display: block !important;
    margin-left: 0.2rem;
  }
}

.top_r {
  margin-left: 0.7rem;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  height: var(--header_height);
}

.top_search_ico {
  margin-right: 15px;
  padding-right: 15px;
  border-right: 1px solid #ddd;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 1024px) {
  .top_search_ico {
    width: 36px;
    height: 36px;
  }
}

.top_search_ico iconify-icon {
  font-size: 0.22rem;
  color: #333;
}

/* search main */
.top_search {
  --search_height: 0.38rem;
}

.top_search {
  width: 100%;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.16rem 0;
  background: #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 6;
}

.top_search.on {
  visibility: visible;
  opacity: 1;
  top: 100%;
  box-shadow: 0 0.06rem 0.1rem rgb(0 0 0 / 8%);
}

.top_search form {
  width: 80%;
  margin: 0 auto;
  max-width: 5rem;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  border: 1px solid var(--i_color);
  overflow: hidden;
}

.top_search_ipt {
  width: calc(100% - var(--search_height) * 2);
  height: var(--search_height);
  box-sizing: border-box;
  padding: 0 0 0 0.12rem;
}

.top_search_btn {
  font-size: 0;
  color: #fff;
  width: calc(var(--search_height) * 2);
  height: var(--search_height);
  background: var(--i_color) url(static/images/search.svg) no-repeat center;
  background-size: 0.24rem;
  cursor: pointer;
}

@media screen and (max-width: 1200px) {}

@media screen and (max-width: 1024px) {
  .top_search.on {
    top: var(--header_height);
  }

  .top_r {
    margin-left: auto;
  }

  .top_search_ico {
    margin-right: 0.2rem;
  }

  .top_search_ico::before {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .top_search {
    --search_height: 0.34rem;
  }

  .top_search {
    padding: 0.12rem 0;
  }
}

@media screen and (max-width: 560px) {
  .top_search form {
    width: 94%;
  }
}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 560px) {}

header,
.top_cont,
.logo,
.i_nav>li,
.top_r {
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -ms-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all 0.7s ease;
}

.bottom_radio {
  border-radius: 0 0 40px 40px;
}

@media screen and (max-width: 1440px) {
  .bottom_radio {
    border-radius: 0 0 30px 30px;
  }
}

/* 首页banner */
.banner {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.banner .swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 2;
}

.banner .swiper-wrapper {
  display: flex;
  position: relative;
  width: 100%;
  z-index: 1;
}

.banner .swiper-slide {
  height: 0;
  padding-bottom: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  .banner .swiper-slide {
    padding-bottom: 50vh;
  }
}

@media screen and (max-width: 560px) {
  .banner .swiper-slide {
    padding-bottom: 40vh;
  }
}

.banner .swiper-slide>img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banner .swiper-slide video {
  position: absolute;
  left: -50px;
  top: 0;
  width: calc(100% + 100px);
  height: 102% !important;
  object-fit: contain;
  z-index: 2;
}

.banner-button-prev,
.banner-button-next {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  width: 50px;
  height: 50px;
  background: rgb(0 0 0 / 30%);
  font-size: 24px;
  color: #fff;
  z-index: 999;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  outline: none;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.banner-button-prev {
  left: -50px;
}

.banner-button-next {
  right: -50px;
}

.banner:hover .banner-button-prev {
  left: 0;
}

.banner:hover .banner-button-next {
  right: 0;
}

.banner-button-prev:hover,
.banner-button-next:hover {
  background-color: var(--i_color);
}

.banner-pagination {
  display: none;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  bottom: 0.2rem;
  text-align: center;
  z-index: 2;
}

.banner-pagination .swiper-pagination-bullet {
  width: 0.12rem;
  height: 0.12rem;
  display: inline-block;
  margin: 0 6px;
  background: #999;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
}

.banner-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

@media screen and (max-width: 1024px) {

  .banner-button-prev,
  .banner-button-next {
    width: 42px;
    height: 42px;
  }

  .banner-button-prev iconify-icon,
  .banner-button-next iconify-icon {
    font-size: 20px;
  }

  .banner-pagination {
    display: block;
  }

  .banner-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
  }
}

/* -------------------底部-------------------------- */
footer {
  background: url(static/images/bc_contact.webp) no-repeat center;
  background-size: cover;
}

.f_logo {
  display: block;
}

.f_logo img {
  max-width: 1rem;
  -webkit-filter: brightness(100);
  -moz-filter: brightness(100);
  -o-filter: brightness(100);
  -ms-filter: brightness(100);
  filter: brightness(100);
}

.f_cont {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.f_contact {
  width: 20%;
}

.f_menu {
  /* width: 10%; */
}

.f_form {
  width: 27%;
}

.f_cont li {
  margin-bottom: 0.12rem;
  font-size: 0.18rem;
  color: #333;
}

.f_cont li ul {
  display: none;
}

.f_cont a,
.f_cont p {
  font-size: 0.16rem;
  color: rgba(255, 255, 255, 0.7);
}

.f_media {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}

.f_media a {
  width: 0.38rem;
  height: 0.38rem;
  margin-right: 0.2rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
}

.f_media iconify-icon {
  font-size: 0.26rem;
  color: rgba(255, 255, 255, 0.5);
}

.f_media iconify-icon:hover {
  color: #ffff;
}

a.f_tit,
.f_tit {
  font-size: 0.24rem;
  color: #fff;
  font-weight: 400;
  margin-bottom: 0.3rem;
}

@media screen and (max-width: 1440px) {

  a.f_tit,
  .f_tit {
    font-size: 0.22rem;
    margin-bottom: 0.2rem;
  }

  .f_contact {
    padding-right: 0.3rem;
  }
}

@media screen and (max-width: 1024px) {
  .f_form {
    width: 100%;
  }

  .f_cont {
    padding: 0.3rem 0;
  }

  a.f_tit,
  .f_tit {
    font-size: 0.2rem;
    margin-bottom: 0.18rem;
  }

  .f_menu {
    display: none;
  }

  .f_contact {
    width: 100%;
  }
}

.f_cr {
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.f_cr .wrap {
  padding: 0.24rem 0;
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-wrap: wrap;
}

.f_cr p,
.f_cr a {
  font-size: 0.16rem;
  color: #fff;
  opacity: 0.6;
  position: relative;
}

.f_cr a {
  padding-left: 0.1rem;
  margin-left: 0.1rem;
  border-left: 1px solid rgba(255, 255, 255, 0.6);
}

.f_cr a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  .f_cr .wrap {
    padding: 0.16rem 0;
    gap: 6px 0;
  }

  .f_cr p,
  .f_cr a {
    width: 100%;
    font-size: 0.14rem;
    border: none;
  }

  footer {
    margin-bottom: 40px;
  }
}

#wpforms-1037 {
  --input_font_size: 16px;
  --input_height: 50px;
}

#wpforms-form-1037 {
  width: 100%;
}

#wpforms-1037 input,
#wpforms-1037 button {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
}

#wpforms-1037 .wpforms-field {
  display: grid;
  padding: 0;
  margin-bottom: 0.1rem;
  position: relative;
}

#wpforms-1037 .wpforms-field-label {
  font-size: 0;
}

#wpforms-1037 .wpforms-required-label {
  position: absolute;
  top: 0.1rem;
  left: 0.05rem;
  font-size: 0.16rem;
  color: #f00;
}

#wpforms-1037 .wpforms-field-container input,
#wpforms-1037 textarea {
  width: 100%;
  max-width: 100% !important;
  min-width: 100%;
  border: none !important;
  font-size: var(--input_font_size);
  color: #222;
  height: var(--input_height);
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.2);
  padding: 0 0.16rem;
  overflow: hidden;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  border-radius: 4px;
}

#wpforms-1037 .wpforms-field-container input:hover,
#wpforms-1037 textarea:hover {
  border-color: var(--i_color);
}

#wpforms-1037 input {
  line-height: var(--input_height);
}

#wpforms-1037 textarea {
  min-height: 1rem;
  line-height: 0.22rem;
  padding: 0.06rem 0.16rem;
}

#wpforms-1037 input::-webkit-input-placeholder,
#wpforms-1037 textarea::-webkit-input-placeholder {
  color: #eee;
  font-size: var(--input_font_size);
}

#wpforms-1037 input::-moz-placeholder,
#wpforms-1037 textarea::-moz-placeholder {
  color: #eee;
  font-size: var(--input_font_size);
}

#wpforms-1037 input::-ms-input-placeholder,
#wpforms-1037 textarea::-ms-input-placeholder {
  color: #eee;
  font-size: var(--input_font_size);
}

#wpforms-1037-field_1-error,
#wpforms-1037-field_2-error,
#wpforms-1037-field_3-error,
#wpforms-1037-field_4-error,
#wpforms-1037-field_5-error,
#wpforms-1037-field_6-error {
  position: absolute;
  font-size: 12px;
  color: #a90909;
}

#wpforms-1037 .wpforms-field-container {
  width: 100%;
}

#wpforms-1037 .wpforms-submit-container button {
  display: block;
  width: 100%;
  padding: 0.12rem 0.5rem;
  margin-top: 0.2rem;
  font-size: 18px;
  color: #fff;
  background: var(--i_color);
  cursor: pointer;
  position: relative;
  z-index: 2;
  transition: 0.5s ease;
  overflow: hidden;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}

#wpforms-1037 .wpforms-submit-container img {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 4px;
  z-index: 2;
}

#wpforms-1037 .wpforms-submit-container button::before {
  content: "";
  width: 200%;
  height: 200%;
  position: absolute;
  top: 100%;
  left: 50%;
  border-radius: 40%;
  transform: translateX(-50%);
  background: #2b8ee4;
  transition: 0.5s ease;
  z-index: -1;
}

#wpforms-1037 .wpforms-submit-container button:hover::before {
  top: -10%;
}

@media screen and (max-width: 1024px) {
  #wpforms-1037 .wpforms-field {
    width: 100%;
    position: relative;
  }

  #wpforms-1037 .wpforms-field-container {
    margin-right: 0;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  #wpforms-1037-field_1-container,
  #wpforms-1037-field_3-container {
    width: 100% !important;
  }

  #wpforms-1037 .wpforms-submit-container {
    margin: 0 auto;
  }
}

@media screen and (max-width: 560px) {

  #wpforms-1037-field_1-container,
  #wpforms-1037-field_2-container,
  #wpforms-1037-field_3-container {
    width: 100% !important;
  }
}

/* -----------------公用样式----------------- */
.i_tit {
  position: relative;
  overflow: hidden;
  text-align: center;
  z-index: 2;
}

.i_tit>h2 {
  font-size: 0.4rem;
  color: #222;
  position: relative;
  text-transform: capitalize;
}

.i_tit>p {
  font-size: 16px;
  color: #666;
  width: 70%;
  margin: 0.1rem auto 0;
}

.i_tit.left {
  text-align: left;
}

.i_tit.left>p {
  margin-left: 0;
}

.i_tit.white>h2 {
  color: #fff;
}

.i_tit.white>p {
  color: #fff;
}

@media screen and (max-width: 1440px) {
  .i_tit>h2 {
    font-size: 0.34rem;
  }
}

@media screen and (max-width: 1024px) {
  .i_tit>h2 {
    font-size: 0.24rem;
  }

  .i_tit>p {
    width: 100%;
    font-size: 15px;
  }
}

.row_tit {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3rem;
}

.i_more {
  position: relative;
  background: var(--i_color);
  color: #fff;
  padding: 15px;
  border-radius: 10px;
  width: 200px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}

.i_more.center {
  margin-left: auto;
  margin-right: auto;
}

.i_more span {
  font-size: 15px;
  text-transform: capitalize;
}

.i_more span.tooltip {
  position: absolute;
  top: 0;
  font-size: 14px;
  padding: 5px 8px;
  border-radius: 5px;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.i_more .tooltip::before {
  position: absolute;
  content: "";
  height: 8px;
  width: 8px;
  bottom: -3px;
  left: 50%;
  transform: translate(-50%) rotate(45deg);
}

.i_more:hover .tooltip {
  top: -45px;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.i_more .tooltip {
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.1);
}

.i_more:hover,
.i_more:hover .tooltip {
  background: linear-gradient(320deg, var(--i_color), var(--i_color2));
  color: #ffffff;
}

.i_more:hover .tooltip::before {
  background: var(--i_color);
}

.i_more_list {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.1rem 0.3rem;
}

@media screen and (max-width: 1024px) {
  .i_more {
    height: 40px;
  }
}

@media screen and (max-width: 560px) {
  .i_more_list a:nth-child(1) {
    margin-bottom: 0.1rem;
  }
}

.more {
  width: 0.36rem;
  height: 0.36rem;
  font-size: 0.24rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.bc {
  background: var(--bc_color);
}

.bc_color {
  background: var(--linear-gradien);
}

/* --------------------内页-------------------------------- */
.in_banner {
  width: 100%;
  position: relative;
}

.in_banner .img {
  position: relative;
  z-index: 3;
  overflow: hidden;
}

.in_banner .img::after {
  content: "";
  display: block;
  padding-bottom: 60vh;
}

.in_banner .img img {
  width: 101%;
  height: 101%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 959px) {
  .in_banner .img::after {
    padding-bottom: 30vh;
  }
}

/* Breadcrumb */
.in_position {
  position: relative;
}

.in_position .wrap {
  padding: 0.2rem 0;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.in_position a {
  display: block;
  font-size: 15px;
  color: #333;
  position: relative;
  line-height: 20px;
}

.in_position a:first-child {
  padding-left: 0.34rem;
}

.in_position a:first-child::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  width: 22px;
  height: 22px;
  background: var(--i_color) url('data:image/svg+xml,%3Csvg xmlns="http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg" width="80" height="80" viewBox="0 0 2048 2048"%3E%3Cpath fill="white" d="m1024 165l941 942l-90 90l-83-82v805h-640v-640H896v640H256v-805l-83 82l-90-90l941-942zm640 1627V987l-640-640l-640 640v805h384v-640h512v640h384z"%2F%3E%3C%2Fsvg%3E') no-repeat center;
  background-size: 14px;
}

.in_position a:not(:last-child):after {
  content: ">";
  margin: 0 4px;
  color: #555;
}

.in_position a:last-child {
  color: var(--i_color) !important;
}

.in_position a:hover {
  color: var(--i_color);
}

@media screen and (max-width: 1024px) {
  .in_position {
    padding: 0.16rem 0;
  }

  .in_position a {
    font-size: 14px;
  }
}

@media screen and (max-width: 560px) {
  .in_position {
    padding: 0.12rem 0;
  }

  .in_position a {
    font-size: 13px;
  }
}

.case_nav_container {
  padding: 0.8rem 0 0.5rem;
}

.nav_header {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  margin-bottom: 0.4rem;
}

.nav_header h6 {
  font-size: 0.14rem;
  color: var(--i_color);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0;
  white-space: nowrap;
}

.nav_line {
  flex-grow: 1;
  height: 1px;
  background: linear-gradient(to right, var(--i_color), #eeeeee);
}

.case_category_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  /* 四列网格布局 */
  gap: 0.1px;
  /* 细微线条感 */
  background-color: #eeeeee;
  /* 网格线颜色 */
  border: 1px solid #eeeeee;
}

.case_category_list li {
  background-color: #ffffff;
  position: relative;
  overflow: hidden;
}

.case_category_list li a {
  display: flex;
  flex-direction: column;
  padding: 0.3rem 0.25rem;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.cat_num {
  font-size: 0.12rem;
  color: #999;
  font-family: Arial, sans-serif;
  margin-bottom: 0.1rem;
  transition: color 0.3s ease;
}

.cat_name {
  font-size: 0.18rem;
  color: #222;
  font-weight: 700;
  transition: transform 0.3s ease;
}

/* 交互设计感：切角斜切背景动画 */
.case_category_list li::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: var(--i_color);
  transition: left 0.4s ease;
  z-index: 0;
}

.case_category_list li a {
  position: relative;
  z-index: 1;
}

/* Hover 状态 */
.case_category_list li:hover::before {
  left: 0;
}

.case_category_list li:hover .cat_num {
  color: rgba(255, 255, 255, 0.7);
}

.case_category_list li:hover .cat_name {
  color: #ffffff;
  transform: translateX(0.05rem);
}

/* Active 激活态：深色块背景 */
.case_category_list li.active {
  background-color: #1a1a1a;
}

.case_category_list li.active::before {
  display: none;
  /* 激活态不使用蓝色覆盖 */
}

.case_category_list li.active .cat_num {
  color: var(--i_color);
}

.case_category_list li.active .cat_name {
  color: #ffffff;
}

/* 响应式 */
@media screen and (max-width: 1200px) {
  .case_category_list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 768px) {
  .case_category_list {
    grid-template-columns: repeat(2, 1fr);
  }

  .case_category_list li a {
    padding: 0.2rem;
  }

  .cat_name {
    font-size: 0.16rem;
  }
}

/* ==========================================================================
   全包裹容器布局 (左右分栏)
   ========================================================================== */
.in_products.wrap {
  display: flex;
  gap: 30px;
}

.p_nav {
  width: 280px;
  flex-shrink: 0;
}

.p_nav .tit h5 {
  font-size: 20px;
  color: #111;
  margin: 0 0 20px 0;
  font-weight: 700;
}

.p_menu_list {
  border-radius: 2px;
  font-size: 0.16rem;
}

.p_menu_list li {
  position: relative;
  list-style: none;
}

.p_menu_list li a {
  display: block;
  padding: 0.16rem 0.2rem;
  line-height: 1.4;
  text-transform: capitalize;
  border-bottom: 1px solid #eee;
  box-sizing: border-box;
  color: #333;
  transition: all 0.3s ease;
  position: relative;
  z-index: 1;
}

.p_menu_list>li>a {
  font-weight: bold;
  color: #222;
}

.p_menu_list a::after {
  content: "";
  width: 4px;
  height: 0;
  background: var(--i_color);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.3s ease;
}

.p_menu_list ul {
  display: none;
  overflow: hidden;
  background: #fff;
  padding: 0;
}

.p_menu_list>li>ul>li.active>a,
.p_menu_list>li>ul>li:hover>a {
  color: var(--i_color) !important;
  background: var(--bc_color, #f9f9f9);
  padding-left: 0.3rem;
}

.p_menu_list li.active>a::after,
.p_menu_list li:hover>a::after {
  height: 60%;
  opacity: 1;
  left: 0.1rem;
}

.p_menu_list ul li a {
  padding-left: 0.4rem;
  font-size: 0.15rem;
  color: #666;
}

.p_menu_list ul ul li a {
  padding-left: 0.5rem;
  font-size: 0.14rem;
  color: #888;
  background: #fdfdfd;
}

.p_menu_list ul ul li:hover>a {
  color: #222 !important;
  text-decoration: underline;
}

.p_menu_list li.active>ul {
  display: block;
}

.p_menu_list span {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  width: 0.5rem;
  /* 增大点击区域 */
  height: 0.5rem;
  font-size: 0.18rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ccc;
  transition: all 0.3s ease;
}

/* ==========================================================================
   右侧产品主区域
   ========================================================================== */
.in_p_r {
  width: calc(100% - 310px)
}

.in_c_name {
  margin-bottom: 30px;
}

.in_c_name h1 {
  font-size: 28px;
  color: #111;
  margin-bottom: 10px;
}

.in_p_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.in_p_list li {
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
  transition: all .3s ease;
  overflow: hidden;
}

.in_p_list li:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}


/* 图片 */
.in_p_list .img-box {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.in_p_list .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}

.in_p_list li:hover .img-box img {
  transform: scale(1.05);
}


/* 内容区域 */
.in_p_list .info-box {
  padding: 25px;
}


/* 标题 */
.in_p_list .title-row {
  margin-bottom: 15px;
}

.in_p_list .pro-title {
  margin: 0;
  font-size: 20px;
  line-height: 1.4;
  font-weight: 600;
}

.in_p_list .pro-title a {
  color: #222;
  display: block;

  /* 单行省略 */
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;

  transition: color .3s ease;
}

.in_p_list .pro-title a:hover {
  color: #0066cc;
}


/* 描述 */
.in_p_list .pro-desc {
  margin: 0 0 20px;
  color: #666;
  font-size: 14px;
  line-height: 1.8;

  height: 50px;
  overflow: hidden;
}


/* 按钮 */
.in_p_list .btn-group {
  display: flex;
  gap: 12px;
}

.in_p_list .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  padding: 0 25px;
  font-size: 14px;
  border-radius: 50px;
  position: relative;
  overflow: hidden;
  border: 1px solid #ddd;
  transition: all .3s ease;
}

.in_p_list .btn-learn {
  background: var(--i_color);
  color: #fff;
  border-color: var(--i_color);
}

.in_p_list .btn-learn:hover {
  background: #0066cc;
  border-color: #0066cc;
}

.in_p_list .btn-inquiry {
  color: #333;
}

.in_p_list .btn-inquiry:hover {
  background: #f5f5f5;
}


/* 响应式 */
@media (max-width: 1200px) {

  .in_p_list {
    grid-template-columns: repeat(2, 1fr);
  }

}


@media (max-width: 767px) {

  .in_p_list {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .in_p_list .info-box {
    padding: 20px;
  }

}

/* ---------------------详情页---------------- */
.head_space {
  height: 1rem;
}

@media screen and (max-width: 1024px) {
  .head_space {
    height: 0;
  }
}

.pd_gallery_list {
  position: relative;
  overflow: hidden;
  padding-bottom: 0.1rem;
}

.pd_gallery_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.pd_gallery_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pd_gallery_list .img {
  width: 100%;
  position: relative;
  overflow: hidden;
  border: 1px solid #ddd;
}

.pd_gallery_list .img::before {
  content: "";
  display: block;
  padding-bottom: 80%;
}

.pd_gallery_list .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pd_gallery_list .img,
.pd_gallery_list img {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pd_gallery_list li:hover img {
  width: 105%;
  height: 105%;
}

.pd_gallery-prev,
.pd_gallery-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  width: 0.46rem;
  height: 0.46rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  opacity: 0.8;
}

.pd_gallery-prev {
  left: 0;
}

.pd_gallery-next {
  right: 0;
}

.pd_gallery_list .swiper-button-disabled {
  cursor: not-allowed;
}

.pd_gallery-prev:hover,
.pd_gallery-next:hover {
  opacity: 1;
}

.pd_gallery-pagination {
  display: none;
  text-align: center;
}

.pd_gallery-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.pd_gallery-pagination .swiper-pagination-bullet::after {
  content: "";
  width: 100%;
  height: 100%;
  background: none;
  border: 2px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pd_gallery-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.pd_gallery-pagination .swiper-pagination-bullet-active::after {
  width: 200%;
  height: 200%;
  border-color: var(--i_color);
}

@media screen and (max-width: 1024px) {

  .pd_gallery-prev,
  .pd_gallery-next {
    display: none;
  }
}

@media screen and (max-width: 560px) {
  .pd_gallery-pagination {
    margin-top: 0.22rem;
  }
}

.pd_det_cont .in_position {
  background: none;
}

.pd_det_cont {
  background: url(static/images/bc_pd_cont.webp) no-repeat center;
  background-size: cover;
  position: relative;
  overflow: hidden;
}

.pd_det_cont>img {
  position: absolute;
  bottom: 0;
  right: 0;
  max-width: 26%;
  object-fit: contain;
}

.pd_det_cont .wrap {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.pd_gallery_list {
  width: 44%;
}

.pd_det {
  width: 49%;
  position: relative;
  z-index: 10;
}

.pd_det>h1 {
  font-size: 0.28rem;
  font-weight: 400;
  color: var(--i_color);
}

.pd_det>h6 {
  display: table;
  font-size: 0.2rem;
  color: #333;
  padding: 0.16rem 0;
  border-bottom: 1px solid var(--i_color);
}

.p_brief {
  font-size: 0.18rem;
  padding: 0.16rem 0;
  border-top: 1px solid var(--border_color);
  border-bottom: 1px solid var(--border_color);
}

.p_brief p {
  margin: 8px 0;
}

.pd_det .min {
  font-size: 0.16rem;
  color: #333;
  margin: 0.16rem 0;
}

.pd_share {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.1rem;
}

.pd_share p {
  font-size: 0.16rem;
  color: #333;
  font-weight: 400;
}

.pd_share a {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  color: #c2c6c9;
}

.pd_share iconify-icon {
  font-size: 0.24rem;
}

.pd_share a:hover {
  color: var(--i_color);
}

@media screen and (max-width: 959px) {
  .pd_gallery_list {
    width: 100%;
  }

  .pd_det {
    width: 100%;
    margin-top: 0.3rem;
  }

  .p_brief {
    font-size: 0.16rem;
  }
}

.pd_menu {
  display: flex;
  display: -webkit-flex;
  gap: 0 0.4rem;
  margin-top: 0.2rem;
  border-bottom: 1px solid var(--border_color);
}

.pd_menu li {
  text-align: center;
  padding: 0.2rem;
  font-size: 0.24rem;
  color: #666;
  text-transform: capitalize;
  position: relative;
  cursor: pointer;
  font-weight: 400;
}

.pd_menu li::after {
  content: "";
  width: 0;
  right: 0;
  height: 2px;
  background: var(--i_color);
  position: absolute;
  bottom: -1px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pd_menu li.current,
.pd_menu li:hover {
  color: var(--i_color);
}

.pd_menu li:hover::after,
.pd_menu li.current::after {
  width: 100%;
  right: initial;
  left: 0;
}

@media screen and (max-width: 1440px) {
  .pd_menu li {
    padding: 0.12rem;
    font-size: 0.2rem;
  }
}

@media screen and (max-width: 1024px) {
  .pd_menu li {
    padding: 0.1rem;
    font-size: 0.18rem;
  }
}

.pd_content {
  padding: 0.2rem 0;
}

.pd_content article {
  color: #333;
  font-size: 0.18rem;
  line-height: 150%;
}

.pd_content article h2,
.pd_content article h2 * {
  font-size: 0.24rem;
  font-weight: 400;
  margin: 0.2rem 0 0.1rem;
}

.pd_content article img,
.pd_content article iframe {
  max-width: 100%;
  margin-top: 0.1rem;
  margin-bottom: 0.1rem;
}

@media screen and (max-width: 1024px) {

  .pd_content article h2,
  .pd_content article h2 * {
    font-size: 0.2rem;
  }
}

.faq_list li {
  padding: 0.3rem;
  list-style: none;
}

.faq_list .txt {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 20px;
}

.faq_list .faq_txt {
  display: none;
  margin-top: 0.2rem;
}

.faq_list span {
  display: block;
  width: 32px;
  line-height: 32px;
  text-align: center;
  font-size: 0.2rem;
  color: #fff;
  font-weight: 400;
}

.faq_list li>div:first-child span {
  background: #666;
}

.faq_list li>div:last-child span {
  background: var(--i_color);
}

.faq_list h6,
.faq_list p {
  width: calc(100% - 52px);
  font-weight: 300;
  color: #333;
}

.faq_list h6 {
  font-size: 0.2rem;
}

.faq_list p {
  font-size: 0.18rem;
}

.faq_list li.curr h6 {
  font-weight: 400;
}

.faq_list li.curr {
  border-top: 1px solid var(--i_color);
  background: var(--bc_color);
}

@media screen and (max-width: 1440px) {
  .faq_list li {
    padding: 0.2rem;
  }

  .faq_list h6 {
    font-size: 0.18rem;
  }

  .faq_list p {
    font-size: 0.16rem;
  }
}

@media screen and (max-width: 1024px) {
  .faq_list li {
    padding: 0.2rem 0.1rem;
  }
}

.pd_technology_list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  gap: 0.3rem 0.2rem;
}

.pd_technology_list li {
  width: calc((100% - 0.4rem) / 3);
  box-shadow: var(--i_shadow);
}

@media screen and (max-width: 1024px) {
  .pd_technology_list {
    gap: 0.3rem 0.14rem;
  }

  .pd_technology_list li {
    width: calc((100% - 0.28rem) / 3);
  }
}

@media screen and (max-width: 959px) {
  .pd_technology_list {
    gap: 0.3rem 2%;
  }

  .pd_technology_list li {
    width: 49%;
  }
}

@media screen and (max-width: 560px) {
  .pd_technology_list li {
    width: 100%;
  }
}

.pd_technology_list .img {
  position: relative;
  overflow: hidden;
  background: var(--bc_color);
}

.pd_technology_list .img::before {
  content: "";
  display: block;
  padding-bottom: 57.69%;
}

.pd_technology_list .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pd_technology_list span {
  display: block;
  width: 0.5rem;
  line-height: 0.5rem;
  font-size: 0.24rem;
  text-align: center;
  font-weight: 400;
  color: #fff;
  background: var(--i_color);
  margin: -22.5px auto 0;
  position: relative;
  z-index: 2;
}

.pd_technology_list h6,
.pd_technology_list p {
  width: 80%;
  text-align: center;
  margin: 0.16rem auto;
}

.pd_technology_list h6 {
  font-size: 0.2rem;
  color: var(--i_color);
  font-weight: 400;
}

.pd_technology_list p {
  font-size: 0.16rem;
  color: #666;
  margin-bottom: 0.3rem;
}

@media screen and (max-width: 1440px) {
  .pd_technology_list span {
    width: 0.4rem;
    line-height: 0.4rem;
    font-size: 0.2rem;
  }

  .pd_technology_list h6 {
    font-size: 0.18rem;
  }

  .pd_technology_list p {
    font-size: 0.15rem;
  }
}

.pd_project_list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  gap: 0.2rem 2%;
}

.pd_project_list li {
  width: 49%;
}

.pd_project_list .img {
  width: 100%;
  background: #000;
  position: relative;
  overflow: hidden;
}

.pd_project_list .img::before {
  content: "";
  display: block;
  padding-bottom: 50.63%;
}

.pd_project_list .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pd_project_list p {
  font-size: 0.2rem;
  color: #333;
  padding: 0.14rem 0.1rem;
  background: var(--bc_color);
  text-align: center;
  position: relative;
}

.pd_project_list p::after {
  content: "";
  width: 0%;
  height: 100%;
  background: none;
  border-bottom: 2px solid var(--i_color);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}

.pd_project_list .img img,
.pd_project_list p::after {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}

.pd_project_list li:hover img {
  width: 110%;
  height: 110%;
}

.pd_project_list li:hover p {
  color: var(--i_color);
}

.pd_project_list li:hover p::after {
  width: 100%;
}

@media screen and (max-width: 1440px) {
  .pd_project_list p {
    font-size: 0.18rem;
  }
}

@media screen and (max-width: 1024px) {
  .pd_project_list p {
    font-size: 0.16rem;
  }
}

.pd_process_list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  gap: 0.22rem;
}

.pd_process_list li {
  width: calc((100% - 0.44rem) / 3);
}

@media screen and (max-width: 1024px) {
  .pd_process_list {
    gap: 0.2rem 0.12rem;
  }
}

@media screen and (max-width: 959px) {
  .pd_process_list {
    gap: 0.2rem 2%;
  }

  .pd_process_list li {
    width: 49%;
  }
}

.pd_process_list .img {
  position: relative;
  overflow: hidden;
}

.pd_process_list .img::before {
  content: "";
  display: block;
  padding-bottom: 78.95%;
}

.pd_process_list .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pd_process_list .txt {
  padding: 0.18rem;
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
}

.pd_process_list span {
  width: 0.5rem;
  line-height: 0.5rem;
  text-align: center;
  font-size: 0.28rem;
  font-weight: 400;
  color: var(--i_color);
  background: var(--bc_color);
}

.pd_process_list p {
  font-size: 0.22rem;
  color: #333;
  width: calc(100% - 0.6rem);
}

.pd_process_list li,
.pd_process_list span,
.pd_process_list p {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.pd_process_list li:hover {
  box-shadow: var(--i_shadow);
}

.pd_process_list li:hover span {
  color: #fff;
  background: var(--i_color);
}

.pd_process_list li:hover p {
  color: var(--i_color);
}

@media screen and (max-width: 1440px) {
  .pd_process_list .txt {
    padding: 0.12rem;
  }

  .pd_process_list span {
    font-size: 0.22rem;
  }

  .pd_process_list p {
    font-size: 0.18rem;
  }
}

@media screen and (max-width: 1024px) {
  .pd_process_list span {
    width: 0.4rem;
    line-height: 0.4rem;
    font-size: 0.18rem;
  }

  .pd_process_list p {
    font-size: 0.16rem;
  }

  .pd_process_list .txt {
    padding: 6px;
  }
}

@media screen and (max-width: 560px) {
  .pd_process_list p {
    font-size: 0.14rem;
  }
}

.pd_packing {
  background: url(static/images/bc_packing.webp) no-repeat center;
  background-size: cover;
}

.packing_list {
  position: relative;
  overflow: hidden;
}

.packing_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.packing_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.packing_list .img {
  width: 100%;
  background: #000;
  position: relative;
  overflow: hidden;
}

.packing_list .img::before {
  content: "";
  display: block;
  padding-bottom: 61.73%;
}

.packing_list .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.packing_list p {
  font-size: 0.2rem;
  color: #333;
  padding: 0.14rem 0.1rem;
  background: var(--bc_color);
  text-align: center;
  position: relative;
}

.packing_list p::after {
  content: "";
  width: 0%;
  height: 100%;
  background: none;
  border-bottom: 2px solid var(--i_color);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}

.packing_list .img img,
.packing_list p::after {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  transition-delay: 0.3s;
}

.packing_list li.swiper-slide-active img {
  width: 110%;
  height: 110%;
}

.packing_list li.swiper-slide-active p {
  color: var(--i_color);
}

.packing_list li.swiper-slide-active p::after {
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .packing_list p {
    font-size: 0.18rem;
  }
}

@media screen and (max-width: 560px) {
  .packing_list p {
    font-size: 0.16rem;
  }
}

.packing_but {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.packing-prev,
.packing-next {
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  width: 0.6rem;
  height: 0.6rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  opacity: 0.5;
}

.packing-prev {
  transform: translateX(-0.6rem);
}

.packing-next {
  transform: translateX(0.6rem);
}

.packing_list .swiper-button-disabled {
  cursor: not-allowed;
}

.packing-prev:hover,
.packing-next:hover {
  opacity: 1;
}

.packing-pagination {
  text-align: center;
}

.packing-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.packing-pagination .swiper-pagination-bullet::after {
  content: "";
  width: 100%;
  height: 100%;
  background: none;
  border: 2px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.packing-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.packing-pagination .swiper-pagination-bullet-active::after {
  width: 200%;
  height: 200%;
  border-color: var(--i_color);
}

.tag {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.1rem 0.2rem;
}

.tag h6 {
  font-size: 0.18rem;
  color: #333;
  font-weight: 400;
}

.tag a {
  font-size: 16px;
  color: #666;
  padding: 6px 0.1rem;
  border-radius: 4px;
}

.tag a:hover {
  background: var(--i_color);
  color: #fff;
}

.pd_navigation {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: 20px 0;
  border-top: 1px solid var(--border_color);
}

.pd_navigation a {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-wrap: wrap;
}

.pd_navigation h6 {
  font-size: 14px;
  color: #222;
  font-weight: 400;
  margin: 0 10px;
}

.pd_navigation p {
  font-size: 14px;
  color: #333;
}

.pd_n_btn {
  width: 0.36rem;
  height: 0.36rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.r_product {
  background: url(static/images/bc_contact_form.webp) no-repeat center;
  background-size: cover;
  position: relative;
  overflow: hidden;
}

.rp_list {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.rp_list .swiper-container {
  margin: 0 auto;
  z-index: 1;
}

.rp_list .swiper-wrapper {
  display: flex;
  position: relative;
  width: 100%;
  z-index: 1;
}

.rp_list .swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.rp-button-prev,
.rp-button-next {
  border: 1px solid #666;
  font-size: 20px;
  color: #666;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 55px;
  height: 55px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  outline: none;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.rp-button-prev:hover,
.rp-button-next:hover {
  background: var(--linear-gradien);
  color: #fff;
  border-color: transparent;
}

.rp-button-prev {
  left: 0;
}

.rp-button-next {
  right: 0
}

.rp-pagination {
  text-align: center;
}

.rp-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  -webkit-border-radius: 0.1rem;
  border-radius: 0.1rem;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.rp-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}


.rp_list .img {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #f5f5f5;
}

.rp_list .img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.2, 1, 0.3, 1);
}

.rp_list li:hover .img img {
  transform: scale(1.08);
}



.rp_list h6 {
  margin: .2rem 0;
  font-size: 0.2rem;
  font-weight: 700;
  color: #222;
}

.rp_more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 0.22rem;
  color: var(--i_color, #8bc34a);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
}

.rp_more i {
  font-style: normal;
  transition: transform 0.35s ease;
}

.rp_more:hover i {
  transform: translateX(8px);
}


/* ==========================================================================
   about
   ========================================================================== */
.about_sec {
  position: relative;
}

.about_bg {
  position: relative;
  min-height: 620px;
  padding: 70px 70px 135px;
  border-radius: 28px;
  overflow: hidden;
  background:
    linear-gradient(110deg, rgba(3, 21, 40, 0.96) 0%, rgba(4, 44, 82, 0.9) 48%, rgba(0, 105, 190, 0.55) 100%),
    url("<?php echo xintheme_img('about_bg',''); ?>") center / cover no-repeat;
}

.about_bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 80% 20%, rgba(0, 118, 214, 0.35), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent);
  pointer-events: none;
}

.about_content {
  position: relative;
  z-index: 2;
  width: 48%;
  color: #fff;
}

.about_content .sub_tit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: #58b7ff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.about_content .sub_tit::before {
  content: "";
  width: 36px;
  height: 2px;
  background: var(--i_color);
}

.about_content h2 {
  margin: 0;
  max-width: 620px;
  font-size: 46px;
  line-height: 1.18;
  font-weight: 800;
}

.about_content p {
  margin: 28px 0 36px;
  max-width: 640px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 17px;
  line-height: 1.85;
}


.about_img {
  position: absolute;
  right: 70px;
  top: 70px;
  z-index: 2;
  width: 42%;
  height: 360px;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
}

.about_img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.25));
}

.about_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s ease;
}

.about_bg:hover .about_img img {
  transform: scale(1.06);
}

.about_num {
  position: absolute;
  left: 70px;
  right: 70px;
  bottom: 45px;
  z-index: 3;
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.about_num li {
  position: relative;
  padding: 30px 28px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.16);
  overflow: hidden;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
}

.about_num li:nth-child(2),
.about_num li:nth-child(4) {
  transform: translateY(22px);
}

.about_num li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 28px;
  width: 4px;
  height: 46px;
  background: var(--i_color);
  border-radius: 0 4px 4px 0;
}

.about_num li:hover {
  transform: translateY(-10px);
}

.about_num h6 {
  margin: 0 0 8px;
  color: #111;
  font-size: 38px;
  line-height: 1;
  font-weight: 800;
}

.about_num p {
  margin: 0;
  color: #666;
  font-size: 15px;
  line-height: 1.45;
}

/* 平板 */
@media (max-width: 1024px) {
  .about_bg {
    padding: 55px 40px 120px;
  }

  .about_content {
    width: 100%;
  }

  .about_content h2 {
    font-size: 38px;
  }

  .about_img {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    margin-top: 40px;
  }

  .about_num {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 35px;
    grid-template-columns: repeat(2, 1fr);
  }

  .about_num li:nth-child(2),
  .about_num li:nth-child(4) {
    transform: none;
  }
}

/* 手机 */
@media (max-width: 768px) {
  .about_bg {
    padding: 38px 22px;
    border-radius: 20px;
  }

  .about_content h2 {
    font-size: 30px;
  }

  .about_content p {
    font-size: 15px;
  }

  .about_img {
    height: 260px;
    border-radius: 18px;
  }

  .about_num {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .about_num li {
    padding: 24px 22px;
  }

  .about_num h6 {
    font-size: 32px;
  }
}

.mission .mission_list dl {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.mission .mission_list dl dt {
  background: #ffffff;
  border: 1px solid #ebedf2;
  border-radius: 16px;
  padding: 40px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
  box-sizing: border-box;
}

.mission .mission_list dl dt:hover {
  transform: translateY(-5px);
  border-color: var(--i_color);
  box-shadow: 0 12px 30px rgba(0, 93, 175, 0.06);
}

.mission .mission_list dl dt .mission_icon_circle {
  width: 70px;
  height: 70px;
  background-color: #005daf2f;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
  transition: background-color 0.3s ease;
}

.mission .mission_list dl dt:hover .mission_icon_circle {
  background-color: var(--i_color);
}

.mission .mission_list dl dt .mission_icon_circle img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  transition: filter 0.3s ease;
}

.mission .mission_list dl dt:hover .mission_icon_circle img {
  filter: brightness(0) invert(1);
}

.mission .mission_list dl dt h3 {
  font-size: 18px;
  color: #222222;
  font-weight: 700;
  margin: 0 0 15px 0;
  line-height: 1.3;
}

.mission .mission_list dl dt h6 {
  font-size: 14px;
  color: #666666;
  line-height: 1.6;
  margin: 0;
  font-weight: 400;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 90px;
}

@media (max-width: 1200px) {
  .mission .mission_list dl {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .mission .mission_list dl dt h6 {
    min-height: auto;
    -webkit-line-clamp: unset;
  }
}

@media (max-width: 650px) {
  .mission .mission_list dl {
    grid-template-columns: 1fr;
  }

  .mission .mission_list dl dt {
    padding: 30px 20px;
  }
}

.certy {
  background: url(static/images/bc_certy.webp) no-repeat center;
  background-size: cover;
  position: relative;
}

.certy_list {
  position: relative;
  overflow: hidden;
}

.certy_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.certy_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.certy_list .img {
  position: relative;
  overflow: hidden;
  background: var(--bc_color);
}

.certy_list .img::before {
  content: "";
  display: block;
  padding-bottom: 142.97%;
}

.certy_list .img img {
  width: calc(100% - 0.2rem);
  height: calc(100% - 0.2rem);
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.certy_list .img,
.certy_list img {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.certy_list li:hover .img {
  box-shadow: var(--i_shadow);
}

.certy_list li:hover img {
  width: 100%;
  height: 100%;
}

.certy_list li {
  transform: scale(80%);
}

.certy_list li.swiper-slide-next,
.certy_list li.swiper-slide-prev {
  transform: scale(90%);
}

.certy_list li.swiper-slide-active {
  transform: scale(100%);
}

.certy-prev,
.certy-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  width: 0.5rem;
  height: 0.5rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  opacity: 0.5;
}

.certy-prev {
  left: -0.6rem;
}

.certy-next {
  right: -0.6rem;
}

.i_project_list .swiper-button-disabled {
  cursor: not-allowed;
}

.certy-prev:hover,
.certy-next:hover {
  opacity: 1;
}

.certy-pagination {
  text-align: center;
}

.certy-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.certy-pagination .swiper-pagination-bullet::after {
  content: "";
  width: 100%;
  height: 100%;
  background: none;
  border: 2px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.certy-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.certy-pagination .swiper-pagination-bullet-active::after {
  width: 200%;
  height: 200%;
  border-color: var(--i_color);
}

@media screen and (max-width: 1440px) {

  .certy-prev,
  .certy-next {
    width: 0.4rem;
    height: 0.4rem;
    font-size: 0.24rem;
  }

  .certy-prev {
    left: 0;
  }

  .certy-next {
    right: 0;
  }
}

@media screen and (max-width: 560px) {
  .certy-pagination {
    margin-top: 0.22rem;
  }
}

.service_scope {
  position: relative;
}

.service_scope::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 50%;
  background: url(static/images/bc_service_scope.webp) no-repeat center;
  background-size: cover;
}

@media screen and (min-width: 561px) {
  .service_scope::after {
    background-attachment: fixed;
  }
}

.service_scope .wrap_l {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  background: #fff;
  position: relative;
  z-index: 2;
}

.service_scope .txt {
  width: 46%;
  padding: 0 0.3rem;
}

.service_scope .gallery {
  width: 52%;
}

.service_scope h6 {
  font-size: 0.32rem;
  color: #333;
  font-weight: bold;
  margin-bottom: 0.3rem;
}

.service_scope p {
  font-size: 0.18rem;
  color: #333;
}

@media screen and (max-width: 1440px) {
  .service_scope h6 {
    font-size: 0.24rem;
  }

  .service_scope p {
    font-size: 0.16rem;
  }
}

@media screen and (max-width: 1024px) {
  .service_scope h6 {
    font-size: 0.2rem;
  }

  .service_scope p {
    font-size: 0.15rem;
  }

  .service_scope .txt {
    width: 100%;
    padding: 0.2rem;
  }

  .service_scope .gallery {
    display: none;
  }
}

.p_atlas_show {
  width: 100%;
  position: relative;
  overflow: hidden;
  z-index: 2;
}

.p_atlas_show .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.p_atlas_show .swiper-slide {
  flex-shrink: 0;
  position: relative;
}

.p_atlas_show .swiper-slide .img {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.p_atlas_show .swiper-slide .img::before {
  content: "";
  display: block;
  padding-bottom: 63.15%;
}

.p_atlas_show .swiper-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p_atlas_list {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.p_atlas_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.p_atlas_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  overflow: hidden;
}

.p_atlas_list .swiper-slide::before {
  content: "";
  display: block;
  padding-bottom: 63.15%;
}

.p_atlas_list .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.p_atlas_list .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p_atlas_list .swiper-slide-thumb-active .img {
  border: 1px solid var(--i_color);
}

.atlas-prev,
.atlas-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  width: 0.5rem;
  height: 0.5rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  opacity: 0.5;
}

.atlas-prev {
  left: 0;
}

.atlas-next {
  right: 0;
}

.i_project_list .swiper-button-disabled {
  cursor: not-allowed;
}

.atlas-prev:hover,
.atlas-next:hover {
  opacity: 1;
}

.atlas-pagination {
  text-align: center;
  display: none;
}

.atlas-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.atlas-pagination .swiper-pagination-bullet::after {
  content: "";
  width: 100%;
  height: 100%;
  background: none;
  border: 2px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.atlas-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.atlas-pagination .swiper-pagination-bullet-active::after {
  width: 200%;
  height: 200%;
  border-color: var(--i_color);
}

.env_list {
  position: relative;
  overflow: hidden;
  padding-bottom: 0.1rem;
}

.env_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.env_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.env_list .img {
  width: 100%;
  background: var(--bc_color);
  position: relative;
  overflow: hidden;
  border: 1px solid transparent;
}

.env_list .img::before {
  content: "";
  display: block;
  padding-bottom: 83.96%;
}

.env_list .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.env_list .img,
.env_list img {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.env_list li:hover .img {
  background: #fff;
  border-color: var(--i_color);
}

.env_list li:hover img {
  width: 105%;
  height: 105%;
}

.env_but {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.env-prev,
.env-next {
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  width: 0.6rem;
  height: 0.6rem;
  font-size: 0.3rem;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  background: var(--i_color);
  color: #fff;
  opacity: 0.5;
}

.env-prev {
  transform: translateX(-0.6rem);
}

.env-next {
  transform: translateX(0.6rem);
}

.i_project_list .swiper-button-disabled {
  cursor: not-allowed;
}

.env-prev:hover,
.env-next:hover {
  opacity: 1;
}

.env-pagination {
  text-align: center;
}

.env-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  -webkit-border-radius: 0.1rem;
  border-radius: 0.1rem;
  display: inline-block;
  margin: 0 8px;
  background: #cbcbcb;
  outline: none;
  cursor: pointer;
  position: relative;
}

.env-pagination .swiper-pagination-bullet::after {
  content: "";
  width: 100%;
  height: 100%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: none;
  border: 2px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.env-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.env-pagination .swiper-pagination-bullet-active::after {
  width: 200%;
  height: 200%;
  border-color: var(--i_color);
}

/* ------------------case------------------- */
.hot_case {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  background: linear-gradient(to right, #fff, var(--bc_color));
  overflow: hidden;
  gap: 0.2rem 0;
}

.hot_case>img {
  position: absolute;
  right: -0.2rem;
  bottom: -0.2rem;
  max-width: 30%;
  opacity: 0.1;
}

.hot_case .img {
  width: 50%;
  position: relative;
  overflow: hidden;
}

.hot_case .img::before {
  content: "";
  display: block;
  padding-bottom: 62.1%;
}

.hot_case .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hot_case .txt {
  width: 50%;
  padding: 0 0.6rem;
}

.hot_case h6 {
  font-size: 0.26rem;
  font-weight: 400;
  color: var(--i_color);
  margin-bottom: 0.2rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hot_case .date {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
}

.hot_case .date span {
  font-size: 0.16rem;
  color: var(--i_color);
}

@media screen and (max-width: 1440px) {
  .hot_case .txt {
    padding: 0 0.4rem;
  }

  .hot_case h6 {
    font-size: 0.2rem;
    margin-bottom: 0.1rem;
  }
}

@media screen and (max-width: 1024px) {

  .hot_case .img,
  .hot_case .txt {
    width: 100%;
  }

  .hot_case .txt {
    padding: 0.2rem;
    background: var(--bc_color);
  }
}

.in_tit {
  padding: 0.4rem 0 0.2rem;
  border-bottom: 1px solid #e5e5e5;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 0.4rem;
}

.in_tit h6 {
  font-size: 0.32rem;
  color: #1a1a1a;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0 0 0.25rem 0;
  letter-spacing: 1px;
}

.category_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.15rem 0.3rem;
}

.category_list li {
  position: relative;
}

.category_list li a {
  display: block;
  font-size: 0.16rem;
  color: #666666;
  text-decoration: none;
  font-weight: 500;
  padding: 0.05rem 0;
  transition: all 0.3s ease;
}

/* 悬停与激活状态的下划线动画 */
.category_list li::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background-color: var(--i_color);
  transition: all 0.3s ease;
  transform: translateX(-50%);
}

.category_list li:hover a {
  color: var(--i_color);
}

.category_list li.active a {
  color: var(--i_color);
  font-weight: 700;
}

.category_list li:hover::after,
.category_list li.active::after {
  width: 100%;
}

/* 响应式适配 */
@media screen and (max-width: 768px) {
  .in_tit {
    padding: 0.3rem 0.15rem;
  }

  .in_tit h6 {
    font-size: 0.26rem;
  }

  .category_list {
    gap: 0.1rem 0.2rem;
  }

  .category_list li a {
    font-size: 0.14rem;
  }
}

.in_case_list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.15rem;
}

.in_case_list li {
  width: calc((100% - 0.3rem) / 3);
}

@media screen and (max-width: 768px) {
  .in_case_list {
    gap: 0.3rem 0;
  }

  .in_case_list li {
    width: 100%;
  }
}

.hot_case article {
  color: #666;
  font-size: 0.18rem;
  line-height: 0.28rem;
  max-height: calc(0.28rem * 10);
  overflow-y: auto;
  padding-right: 2%;
}

.hot_case article * {
  margin: 0;
  font-size: 0.18rem;
  line-height: 0.28rem;
}

.in_about article::-webkit-scrollbar {
  width: 2px;
  border-radius: 3px;
}

.in_about article::-webkit-scrollbar-track {
  width: 1px;
  background-color: #d8d8d8;
}

.in_about article::-webkit-scrollbar-thumb {
  background-color: var(--i_color);
}

@media screen and (max-width: 1440px) {
  .hot_case article {
    font-size: 0.16rem;
    line-height: 0.24rem;
    max-height: calc(0.24rem * 10);
  }

  .hot_case article * {
    font-size: 0.16rem;
    line-height: 0.24rem;
  }
}

@media screen and (max-width: 1024px) {
  .hot_case article {
    font-size: 14px;
    line-height: 20px;
    max-height: calc(20px * 10);
  }

  .hot_case article * {
    font-size: 14px;
    line-height: 20px;
  }
}

.in_case_list a {
  display: block;
  position: relative;
  overflow: hidden;
  background: #fff;
  width: 100%;
  height: 100%;
}

.in_case_list a::after {
  content: "";
  width: 100%;
  height: 2px;
  background: var(--i_color);
  position: absolute;
  left: 0;
  bottom: -2px;
}

.in_case_list .img {
  position: relative;
  overflow: hidden;
}

.in_case_list .img::before {
  content: "";
  display: block;
  padding-bottom: 61.92%;
}

.in_case_list .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.in_case_list .txt {
  padding: 0.2rem;
  overflow: hidden;
}

.in_case_list h6 {
  font-size: 0.2rem;
  color: #333;
  font-weight: 400;
  line-height: 150%;
}

.in_case_list p {
  margin-top: 0.1rem;
  font-size: 0.16rem;
  color: #666;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.in_case_list .date {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
}

.in_case_list .date span {
  font-size: 0.16rem;
}

.in_case_list .more {
  transform: translateX(0.36rem);
  opacity: 0;
}

.in_case_list li,
.in_case_list a::after,
.in_case_list h6 {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.in_case_list li:hover {
  box-shadow: var(--i_shadow);
}

.in_case_list li:hover .more {
  transform: translateX(0);
  opacity: 1;
}

.in_case_list li:hover h6 {
  color: var(--i_color);
}

.in_case_list li:hover span {
  color: var(--i_color);
}

.in_case_list li:hover a::after {
  bottom: 0;
}

@media screen and (max-width: 1024px) {
  .in_case_list h6 {
    font-size: 0.18rem;
  }

  .in_case_list p {
    font-size: 14px;
  }
}

/* contact */
.contact .wrap {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.2rem;
}

.c_info {
  width: 42%;
}

.c_form {
  width: 54%;
}

.c_info h4 {
  font-size: 0.28rem;
  color: var(--i_color);
  font-weight: 400;
}

.c_list li {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 0.3rem 0;
  border-bottom: 1px solid var(--border_color);
}

.c_list .ico {
  width: 0.58rem;
  height: 0.58rem;
  border-radius: 2px;
  background: var(--bc_color);
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  margin-right: 0.2rem;
}

.c_list .ico iconify-icon {
  font-size: 0.4rem;
  color: var(--i_color);
}

.c_list .info {
  width: calc(100% - 0.78rem);
}

.c_list .info h6 {
  color: #666;
  font-size: 0.16rem;
}

.c_list .info a,
.c_list .info p {
  font-size: 0.18rem;
  font-weight: 400;
  color: #333;
}

.c_list a:hover {
  color: var(--i_color);
  text-decoration: underline;
}

.c_list li,
.c_list .ico {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.c_list li:hover {
  border-color: var(--i_color);
}

.c_list li:hover .ico {
  background: var(--i_color);
}

.c_list li:hover .ico iconify-icon {
  color: #fff;
}

.c_info .f_media iconify-icon {
  color: #d1d1d1;
}

.c_info .f_media a:hover iconify-icon {
  color: var(--i_color);
}

.c_form .i_tit>h2 {
  font-size: 0.3rem;
}

@media screen and (max-width: 1440px) {
  .c_info h4 {
    font-size: 0.2rem;
  }

  .c_form {
    padding: 0.2rem 0.3rem;
  }

  .c_form .i_tit>h2 {
    font-size: 0.22rem;
  }
}

@media screen and (max-width: 1024px) {

  .c_info,
  .c_form {
    width: 100%;
  }

  .c_list .info a,
  .c_list .info p {
    font-size: 0.16rem;
  }

  .c_form {
    padding: 0.1rem;
  }
}

div.wpforms-container-full .wpforms-form input[type="date"],
div.wpforms-container-full .wpforms-form input[type="datetime"],
div.wpforms-container-full .wpforms-form input[type="datetime-local"],
div.wpforms-container-full .wpforms-form input[type="email"],
div.wpforms-container-full .wpforms-form input[type="month"],
div.wpforms-container-full .wpforms-form input[type="number"],
div.wpforms-container-full .wpforms-form input[type="password"],
div.wpforms-container-full .wpforms-form input[type="range"],
div.wpforms-container-full .wpforms-form input[type="search"],
div.wpforms-container-full .wpforms-form input[type="tel"],
div.wpforms-container-full .wpforms-form input[type="text"],
div.wpforms-container-full .wpforms-form input[type="time"],
div.wpforms-container-full .wpforms-form input[type="url"],
div.wpforms-container-full .wpforms-form input[type="week"],
div.wpforms-container-full .wpforms-form select,
div.wpforms-container-full .wpforms-form textarea {
  border: none !important;
}

#wpforms-32 {
  --input_font_size: 17px;
  --input_height: 0.46rem;
}

#wpforms-32 {
  margin: 0;
  padding: 0;
}

#wpforms-form-32 {
  width: 100%;
  position: relative;
  overflow: hidden;
}

#wpforms-32 .wpforms-field {
  padding: 0;
  margin-bottom: 20px;
}

#wpforms-32 .wpforms-field-label {
  font-size: 0;
  position: absolute;
  top: 12px;
  left: 3px;
}

#wpforms-32 .wpforms-field-label span {
  font-size: 0.14rem;
  color: red;
}

#wpforms-32 .wpforms-field-container {
  width: 100%;
}

#wpforms-32 .wpforms-field-container input,
#wpforms-32 textarea,
#wpforms-32 select {
  width: 100%;
  max-width: 100% !important;
  min-width: 100%;
  font-size: var(--input_font_size);
  color: #333;
  height: var(--input_height);
  border-bottom: 2px solid var(--border_color) !important;
  padding: 0 0.1rem 0 0.16rem;
  overflow: hidden;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

#wpforms-32 input {
  line-height: var(--input_height);
}

#wpforms-32 textarea {
  line-height: 0.22rem;
  min-height: 1.4rem;
  padding: 0.06rem 0.16rem;
}

#wpforms-32-field_1-container {
  border-top-left-radius: 20px;
}

#wpforms-32 input::-webkit-input-placeholder,
#wpforms-32 textarea::-webkit-input-placeholder {
  color: #333;
  font-size: var(--input_font_size);
}

#wpforms-32 input::-moz-placeholder,
#wpforms-32 textarea::-moz-placeholder {
  color: #333;
  font-size: var(--input_font_size);
}

#wpforms-32 input::-ms-input-placeholder,
#wpforms-32 textarea::-ms-input-placeholder {
  color: #333;
  font-size: var(--input_font_size);
}

#wpforms-32-field_1-error,
#wpforms-32-field_2-error,
#wpforms-32-field_3-error,
#wpforms-32-field_4-error,
#wpforms-32-field_5-error,
#wpforms-32-field_6-error {
  position: absolute;
  font-size: 12px;
  color: #a90909;
}

#wpforms-32 .wpforms-submit-container button {
  padding: 10px 0.5rem;
  display: block;
  margin: 20px 0;
  font-size: 0.2rem;
  color: #333;
  border: 1px solid #333;
  cursor: pointer;
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

#wpforms-32 .wpforms-submit-container button:hover {
  background: var(--i_color);
  color: #fff;
}

#wpforms-32 .wpforms-submit-container img {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 4px;
  z-index: 2;
}

@media screen and (max-width: 1024px) {
  #wpforms-32 .wpforms-submit-container button {
    padding: 6px 40px;
  }
}

/* -----------------news------------------------ */
.new_menu {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.2rem;
}

.new_menu a {
  display: table;
  padding: 0.1rem 0.3rem;
  font-size: 0.18rem;
  border: 1px solid var(--i_color);
  border-radius: 0.3rem;
  color: var(--i_color);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.new_menu .curr a,
.new_menu a:hover {
  background: var(--i_color);
  color: #fff;
}

@media screen and (max-width: 1024px) {
  .new_menu a {
    padding: 8px 0.2rem;
    font-size: 0.16rem;
  }
}

@media screen and (max-width: 560px) {
  .new_menu a {
    font-size: 0.14rem;
  }
}

.in_n_list li {
  background: url(static/images/bc_logo.png) no-repeat right;
  background-size: 50%;
  margin-bottom: 0.5rem;
}

.in_n_list a {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  background: var(--bc_color);
  overflow: hidden;
  border-radius: 0.2rem;
  padding: 0.3rem;
}

.in_n_list .img {
  width: 28%;
  position: relative;
  overflow: hidden;
  border-radius: 0.2rem;
  border: 1px solid var(--border_color);
  background: #fff;
}

.in_n_list .img::before {
  content: "";
  display: block;
  padding-bottom: 64.1%;
}

.in_n_list .img img {
  width: 95%;
  height: 95%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.in_n_list .txt {
  width: 70%;
}

.in_n_list h6 {
  font-size: 0.24rem;
}

.in_n_list p {
  font-size: 0.16rem;
  margin: 0.1rem 0 0.2rem;
}

.in_n_list span {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.1rem;
  color: #666;
}

.in_n_list span i {
  font-size: 0.16rem;
}

.in_n_list a,
.in_n_list h6,
.in_n_list img {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.in_n_list a:hover img {
  width: 100%;
  height: 100%;
}

.in_n_list a:hover {
  background: none;
  box-shadow: var(--i_shadow);
}

.in_n_list a:hover h6 {
  color: var(--i_color);
}

@media screen and (max-width: 1440px) {
  .in_n_list h6 {
    font-size: 0.2rem;
  }
}

@media screen and (max-width: 1024px) {
  .in_n_list h6 {
    font-size: 0.18rem;
  }

  .in_n_list p {
    font-size: 0.14rem;
    margin: 0.1rem 0;
  }

  .in_n_list .img,
  .in_n_list .txt {
    width: 50%;
  }
}

@media screen and (max-width: 768px) {

  .in_n_list .img,
  .in_n_list .txt {
    width: 100%;
  }
}

/* ---------------application------------------- */
.application_list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  gap: 0.6rem 0.4rem;
}

.application_list li {
  width: calc((100% - 0.8rem) / 3);
  position: relative;
  background: #fff;
}

@media screen and (max-width: 1440px) {
  .application_list {
    gap: 0.8rem 0.3rem;
  }

  .application_list li {
    width: calc((100% - 0.6rem) / 3);
  }
}

@media screen and (max-width: 1024px) {
  .application_list {
    gap: 0.8rem 0.2rem;
  }

  .application_list li {
    width: calc((100% - 0.2rem) / 2);
  }
}

@media screen and (max-width: 560px) {
  .application_list li {
    width: 100%;
  }
}

.application_list .img {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.application_list .img::before {
  content: "";
  display: block;
  padding-bottom: 73.27%;
}

.application_list .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.application_list .date {
  display: table;
  padding: 6px 0.2rem;
  font-size: 14px;
  color: #fff;
  border-radius: 6px;
  background: var(--i_color);
  z-index: 2;
  position: absolute;
  right: 0.3rem;
  transform: translateY(-50%);
}

.application_list h6 {
  width: 100%;
  font-size: 0.2rem;
  color: #333;
  font-weight: normal;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  margin: 0.3rem 0;
  padding: 0 0.2rem;
}

.application_list .more {
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  padding: 0.1rem;
  transform: translateY(-0.2rem);
  background: var(--i_color);
  opacity: 0;
  border-radius: 0px 0px 8px 8px;
}

.application_list .more,
.application_list img {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}

.application_list li:hover img {
  width: 110%;
  height: 110%;
}

.application_list li:hover .more {
  transform: translateY(-8px);
  opacity: 1;
}

.application_list li:hover a {
  border-color: transparent;
  box-shadow: var(--i_shadow);
}

@media screen and (max-width: 1440px) {
  .application_list h6 {
    font-size: 0.2rem;
  }
}

@media screen and (max-width: 1024px) {
  .application_list h6 {
    font-size: 0.18rem;
  }
}

.case_control {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  gap: 0 0.2rem;
}

.case-pagination {
  font-size: 0;
}

.case-pagination .swiper-pagination-bullet {
  width: 0.4rem;
  height: 2px;
  display: inline-block;
  margin: 0 0;
  background: #d6d6d6;
  outline: none;
  cursor: pointer;
  position: relative;
}

.case-pagination .swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
  height: 2px;
  background: var(--i_color);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.case-pagination .swiper-pagination-bullet-active::before {
  right: initial;
  left: 0;
  width: 100%;
}

.case_list {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.case_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.case_list .swiper-slide {
  flex-shrink: 0;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.case_list .swiper-button-disabled {
  cursor: not-allowed;
}

.case_list a {
  display: block;
  width: 100%;
}

.case_list .img {
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 0.1rem;
  border: 1px solid var(--border_color);
}

.case_list .img::before {
  content: "";
  display: block;
  padding-bottom: 62.29%;
}

.case_list .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.case_list p {
  font-size: 0.18rem;
  color: #333;
  margin: 0.16rem 0;
  text-align: center;
}

.case_list img,
.case_list p {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.case_list li:hover img {
  width: 105%;
  height: 105%;
}

.case_list li:hover p {
  color: var(--i_color);
}

@media screen and (max-width: 768px) {
  .case_list .img {
    border-radius: 0.1rem;
  }

  .case_list p {
    font-size: 0.16rem;
    margin: 0.1rem 0;
  }
}

/* Number of pages */
.in_page_box {
  margin: 0.3rem 0;
  text-align: center;
  overflow: hidden;
}

.in_page {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.in_page li {
  min-width: 0.32rem;
  margin: 0 0.04rem;
}

.in_page a,
.in_page span {
  display: block;
  padding: 0 0.12rem;
  line-height: 0.32rem;
  font-size: 0.14rem;
  color: #666;
  background: #fff;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  border-radius: 1rem;
  border: 1px solid var(--border_color);
  overflow: hidden;
}

.in_page>i {
  margin-top: 0.14rem;
  width: 100%;
  font-size: 0.13rem;
  color: #888;
}

.in_page a:hover,
.in_page .active_page a,
.in_page .active_page span {
  border-color: var(--i_color) !important;
  background: var(--i_color);
  color: #fff !important;
}

@media screen and (max-width: 1024px) {
  .in_page_box {
    margin-top: 0.4rem;
  }
}

@media screen and (max-width: 768px) {
  .in_page li {
    min-width: 0.28rem;
  }

  .in_page a,
  .in_page span {
    line-height: 0.28rem;
    padding: 0 0.1rem;
  }
}

@media screen and (max-width: 560px) {
  .in_page_box {
    margin-top: 0.3rem;
  }
}

div.wpforms-container-full .wpforms-form input.wpforms-field-medium,
div.wpforms-container-full .wpforms-form select.wpforms-field-medium,
div.wpforms-container-full .wpforms-form .wpforms-field-row.wpforms-field-medium {
  max-width: 100% !important;
}

.tec_list {
  display: flex;
  gap: 0.4rem;
  flex-wrap: wrap;
}

.tec_list li {
  width: calc(50% - 0.2rem);
  -webkit-border-radius: 0.1rem;
  border-radius: 0.1rem;
  position: relative;
  overflow: hidden;
  background: #fff;
}

.tec_list a {
  display: block;
  width: 100%;
  height: 100%;
}

.tec_list .img {
  position: relative;
  padding-bottom: 58.39%;
  overflow: hidden;
}

.tec_list .img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--i_color);
  opacity: 0;
}

.tec_list img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.tec_list .txt {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.24rem 0.1rem;
}

.tec_list .txt p {
  width: 70%;
  color: #333;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tec_list .txt,
.tec_list img,
.tec_list .img::after {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.tec_list li:hover .txt {
  box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.1);
}

.tec_list li:hover .img::after {
  opacity: 0.3;
}

.tec_list li:hover img {
  width: 105%;
  height: 105%;
}

.tec_list li:hover .i_btn {
  border-color: transparent;
  color: #fff;
  background: var(--i_color);
}

@media screen and (max-width: 768px) {
  .tec_list li {
    width: 100%;
  }
}

.certs_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  /* 四列平铺 */
  gap: 0.3rem;
}

.cert_item {
  background: #fff;
  transition: all 0.4s ease;
}

.cert_img {
  width: 100%;
  aspect-ratio: 1 / 1.414;
  background: #f9f9f9;
  border: 1px solid #eee;
  padding: 0.15rem;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cert_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.5s ease;
}

.cert_mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 118, 209, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.3s;
  cursor: pointer;
}

.cert_mask iconify-icon {
  font-size: 0.4rem;
  color: var(--i_color);
  background: #fff;
  border-radius: 50%;
  padding: 0.1rem;
  box-shadow: 0 0.1rem 0.2rem rgba(0, 0, 0, 0.1);
}

.cert_info {
  padding-top: 0.2rem;
  text-align: center;
}

.cert_info h5 {
  font-size: 0.18rem;
  color: #1a1a1a;
  font-weight: 700;
  margin-bottom: 0.05rem;
}

.cert_info p {
  font-size: 0.14rem;
  color: #999;
}

.cert_item:hover .cert_img {
  border-color: var(--i_color);
  box-shadow: 0 0.15rem 0.3rem rgba(0, 0, 0, 0.05);
}

.cert_item:hover .cert_mask {
  opacity: 1;
}

.cert_item:hover img {
  transform: scale(1.05);
}

@media (max-width: 1024px) {
  .certs_grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .certs_grid {
    grid-template-columns: 1fr;
  }
}

/* ---------------------新闻详情页------------------ */
.in_news_cont {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.3rem 0;
}

.post_recommend {
  flex-shrink: 0;
  width: 4rem;
  margin-left: auto;
  box-sizing: border-box;
  padding: 30px;
  border: 1px solid #ddd;
}

.post_content {
  width: calc(100% - 4.5rem);
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}

.post_recommend h3 {
  font-size: 0.22rem;
  margin-bottom: 0.2rem;
}

@media screen and (max-width: 1024px) {

  .post_recommend,
  .post_content {
    width: 100%;
  }

  .post_recommend {
    padding: 20px 10px;
  }
}

.post_recommend_list {}

.post_recommend_list li {}

.post_recommend_list li:not(:last-child) {
  margin-bottom: 26px;
  padding-bottom: 24px;
  border-bottom: 1px solid #ddd;
}

.post_recommend_list a {
  display: block;
  width: 100%;
}

.post_recommend_list .img {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.post_recommend_list .img::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}

.post_recommend_list .img img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.post_recommend_list {
  margin: 14px 0 10px;
}

.post_recommend_list p {
  margin-top: 10px;
  font-size: 16px;
  color: #333;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.post_recommend_list li:hover img {
  -webkit-transform: scale(1.08, 1.08);
  transform: scale(1.08, 1.08);
}

.post_recommend_list li:hover p {
  color: var(--i_color);
}

.new_form_cont {
  background: #f7f7f7;
  margin-top: 0.3rem;
  padding: 0.2rem;
  position: relative;
}

.new_form_cont::after {
  content: "";
  width: 1.5px;
  height: 100%;
  background: linear-gradient(to top, var(--i_color), var(--i_color2));
  position: absolute;
  right: 0;
  top: 0;
}

.new_form_cont p {
  font-size: 20px;
  color: #333;
  font-weight: bold;
  margin-bottom: 20px;
}

#wpforms-1014 {
  --input_font_size: 14px;
  --input_height: 0.46rem;
}

#wpforms-1014 {
  margin: 0;
  padding: 0;
}

#wpforms-form-1014 {
  width: 100%;
  position: relative;
  overflow: hidden;
}

#wpforms-1014 input,
#wpforms-1014 button {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
}

#wpforms-1014 .wpforms-field {
  padding: 0;
  margin: 0;
}

#wpforms-1014 .wpforms-field-label {
  font-size: 0;
}

#wpforms-1014 .wpforms-required-label {
  position: absolute;
  top: 0.06rem;
  left: 4px;
  font-size: 0.16rem;
  color: #f00;
}

#wpforms-1014 .wpforms-field {
  width: 100%;
  background: transparent;
  padding-bottom: 0.2rem;
  position: relative;
  overflow: hidden;
}

#wpforms-1014 .wpforms-field-container input,
#wpforms-1014 textarea,
#wpforms-1014 select {
  width: 100%;
  max-width: 100% !important;
  min-width: 100%;
  font-size: var(--input_font_size);
  color: #333;
  height: var(--input_height);
  border: 1px solid transparent;
  background: #fff;
  padding: 0 0.1rem 0 0.16rem;
  overflow: hidden;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

#wpforms-1014 .wpforms-field-container input:hover,
#wpforms-1014 textarea:hover {
  border-color: var(--i_color);
}

#wpforms-1014 input {
  line-height: var(--input_height);
}

#wpforms-1014 textarea {
  line-height: 0.22rem;
  min-height: 1rem;
  padding: 0.06rem 0.16rem;
}

#wpforms-1014-field_1-container,
#wpforms-1014-field_2-container {
  width: 49% !important;
}

#wpforms-1014 input::-webkit-input-placeholder,
#wpforms-1014 textarea::-webkit-input-placeholder {
  color: rgb(0 0 0 / 40%);
  font-size: var(--input_font_size);
}

#wpforms-1014 input::-moz-placeholder,
#wpforms-1014 textarea::-moz-placeholder {
  color: rgb(0 0 0 / 40%);
  font-size: var(--input_font_size);
}

#wpforms-1014 input::-ms-input-placeholder,
#wpforms-1014 textarea::-ms-input-placeholder {
  color: rgb(0 0 0 / 40%);
  font-size: var(--input_font_size);
}

#wpforms-1014-field_1-error,
#wpforms-1014-field_2-error,
#wpforms-1014-field_3-error,
#wpforms-1014-field_4-error,
#wpforms-1014-field_5-error,
#wpforms-1014-field_6-error {
  position: absolute;
  font-size: 12px;
  color: #a90909;
}

#wpforms-1014 .wpforms-field-container {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  overflow: hidden;
}

#wpforms-1014 .wpforms-submit-container {
  text-align: center;
  padding: 0;
  overflow: hidden;
  position: relative;
}

#wpforms-1014 .wpforms-submit-container button {
  display: block;
  width: 100%;
  font-size: 0.16rem;
  padding: 10px 0;
  color: #fff;
  background: var(--i_color);
  cursor: pointer;
  position: relative;
  z-index: 2;
}

#wpforms-1014 .wpforms-submit-container button:hover {
  background: var(--i_color2);
}

#wpforms-1014 .wpforms-submit-container img {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 4px;
  z-index: 2;
}

.ip_menu {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.1rem 0.2rem;
}

.ip_menu li {
  max-width: 32%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  text-align: center;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid var(--i_color);
}

.ip_menu span {
  display: block;
  font-size: 0.2rem;
  width: 100%;
  padding: 0.12rem 0.2rem;
  text-transform: uppercase;
  position: relative;
  z-index: 2;
}

.ip_menu li::after {
  content: "";
  width: 0;
  height: 100%;
  background: var(--i_color);
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.ip_menu li.current::after,
.ip_menu li:hover::after {
  width: 100%;
  right: initial;
  left: 0;
}

.ip_menu li.current span,
.ip_menu li:hover span {
  color: #fff;
  box-shadow: 2px 2px 4px var(--i_color);
}

@media screen and (max-width: 1024px) {
  .ip_menu span {
    font-size: 0.18rem;
  }
}

@media screen and (max-width: 768px) {
  .ip_menu li {
    max-width: 46%;
  }

  .ip_menu span {
    font-size: 13px;
    padding: 8px 0.2rem;
  }
}

.ip_list {
  position: relative;
  overflow: hidden;
}

.ip_list .swiper-wrapper {
  display: -webkit-flex;
  display: flex;
  position: relative;
  width: 100%;
}

.ip_list .swiper-slide {
  flex-shrink: 0;
  position: relative;
}

.ip-prev,
.ip-next {
  position: absolute;
  top: 55%;
  transform: translate(0, -50%);
  width: 0.55rem;
  height: 0.55rem;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border: 1px solid var(--i_color);
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-size: 0.2rem;
  color: #333;
  z-index: 3;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.ip-prev {
  left: 0;
}

.ip-next {
  right: 0;
}

.ip_list .swiper-button-disabled {
  cursor: not-allowed;
}

.ip-prev:hover,
.ip-next:hover {
  background-color: var(--i_color);
  color: #fff;
}

.ip-pagination {
  display: none;
  margin-top: 0.3rem;
  text-align: center;
}

.ip-pagination .swiper-pagination-bullet {
  width: 0.08rem;
  height: 0.08rem;
  display: inline-block;
  margin: 0 6px;
  background: #ccc;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
}

.ip-pagination .swiper-pagination-bullet-active {
  background: var(--i_color);
}

.ip_list li {
  display: flex;
  flex-direction: column;
  /* 垂直布局 */
  align-items: center;
  text-align: center;
  background-color: #fff;
  border: 1px solid #eee;
  border-radius: 5px;
  padding: 16px;
  margin-bottom: 32px;
  transition: box-shadow 0.3s ease;
}

.ip_list li:hover {
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

/* 图片容器 */
.ip_list li .img {
  width: 100%;
  max-width: 400px;
  /* 最大宽度，可调整 */
  overflow: hidden;
  border-radius: 5px;
  margin-bottom: 16px;
}

.ip_list li .img img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.ip_list li:hover .img img {
  transform: scale(1.05);
  /* 悬停放大 */
}

.ip_list li .txt {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ip_list li .txt h6 {
  font-size: 20px;
  font-weight: 600;
  color: #333;
  margin: 0;
}

.ip_list li .txt p {
  font-size: 16px;
  color: #666;
  line-height: 24px;
  margin: 0;
}

.ip_list li .txt .btn_lf {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 8px;
}

/* 按钮通用样式 */
.ip_list li .txt .btn_lf a {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  border-radius: 3px;
  font-size: 15px;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

/* 查看更多按钮 */
.ip_list li .txt .btn_lf a:first-child {
  background-color: var(--i_color);
  color: #fff;
}

.ip_list li .txt .btn_lf a:first-child:hover {
  background-color: #0056b3;
}

/* 咨询按钮 */
.ip_list li .txt .btn_lf a:last-child {
  background-color: var(--i_color2);
  color: #fff;
}

.ip_list li .txt .btn_lf a:last-child:hover {
  background-color: #1e7e34;
}

/* iconify图标样式 */
.ip_list li .txt .btn_lf iconify-icon {
  margin-left: 8px;
  font-size: 16px;
}

/* 响应式 */
@media screen and (max-width: 480px) {
  .ip_list li {
    padding: 13px;
  }

  .ip_list li .txt h6 {
    font-size: 18px;
  }

  .ip_list li .txt p {
    font-size: 15px;
  }

  .ip_list li .txt .btn_lf a {
    padding: 6px 13px;
    font-size: 14px;
  }
}

.process-content {
  position: relative;
  z-index: 5;
  padding-top: 1rem;
}

.outline-gold {
  font-size: 0.48rem;
  font-weight: 900;
  color: transparent;
  /* 文字镂空 */
  -webkit-text-stroke: 1.5px var(--i_color);
  color: #fff;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  line-height: 1.2;
  margin-bottom: 1.2rem;
}

.bottom-desc {
  border-top: 1px solid rgba(243, 168, 71, 0.5);
  padding-top: 0.2rem;
}

.bottom-desc p {
  font-size: 0.22rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8);
  letter-spacing: 0.01rem;
}

@media screen and (max-width: 1440px) {
  .process-content {
    padding-top: 0.8rem;
  }

  .outline-gold {
    font-size: 0.4rem;
    margin-bottom: 1rem;
  }

  .bottom-desc p {
    font-size: 0.2rem;
  }
}

@media screen and (max-width: 1024px) {
  .process-content {
    padding-top: 0.6rem;
  }

  .outline-gold {
    font-size: 0.34rem;
    margin-bottom: 0.6rem;
  }

  .bottom-desc p {
    font-size: 0.18rem;
  }
}

@media screen and (max-width: 959px) {
  .process-content {
    padding-top: 0.4rem;
  }

  .outline-gold {
    font-size: 0.24rem;
    margin-bottom: 0.4rem;
  }

  .bottom-desc p {
    font-size: 0.16rem;
  }
}

@media screen and (max-width: 560px) {
  .process-content {
    padding-top: 0;
  }

  .outline-gold {
    font-size: 0.2rem;
    margin-bottom: 0.2rem;
  }

  .bottom-desc p {
    font-size: 14px;
  }
}

/* Solution 板块通用 */
.solution-hero .img img {
  max-width: 100%;
  object-fit: contain;
}

.sol-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.4rem;
}

.sol-card {
  padding: 0.4rem;
  background: #fff;
  border: 1px solid #eee;
  transition: all 0.3s ease;
}

.sol-card:hover {
  border-color: #c5a47e;
  box-shadow: 0 0.15rem 0.3rem rgba(0, 0, 0, 0.05);
}

.sol-icon iconify-icon {
  font-size: 0.5rem;
  color: #c5a47e;
  margin-bottom: 0.2rem;
}

.sol-card h3 {
  font-size: 0.24rem;
  margin-bottom: 0.15rem;
  color: #222;
}

.sol-card p {
  font-size: 0.16rem;
  line-height: 1.6;
  color: #555;
  margin-bottom: 0.2rem;
}

.sol-tags span {
  display: inline-block;
  padding: 0.05rem 0.15rem;
  background: #f5f5f5;
  color: #333;
  font-size: 0.14rem;
  margin-right: 0.1rem;
  border-radius: 0.02rem;
  font-weight: 600;
}

.sol-flex {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.sol-info-box {
  flex: 1;
}

.sol-img-placeholder {
  flex: 1;
  height: 4rem;
  background: #eee;
  overflow: hidden;
}

.sol-img-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sol-info-item {
  display: flex;
  gap: 0.2rem;
  margin-bottom: 0.4rem;
}

.sol-info-item iconify-icon {
  font-size: 0.4rem;
  color: #c5a47e;
}

.compliance-box {
  background: var(--i_color);
  color: #fff;
  padding: 0.8rem;
  display: flex;
  justify-content: space-between;
}

.iso-list {
  list-style: none;
  padding: 0;
  margin-top: 0.2rem;
}

.iso-list li {
  font-size: 0.18rem;
  margin-bottom: 0.1rem;
  color: #c5a47e;
  font-weight: 600;
}

.comp-stats {
  text-align: right;
  border-left: 1px solid #444;
  padding-left: 0.6rem;
}

.stat-num {
  font-size: 0.8rem;
  font-weight: 700;
  color: #c5a47e;
  line-height: 1;
}

.stat-num b {
  font-size: inherit;
  font-weight: inherit;
}

.stat-desc {
  font-size: 0.18rem;
  max-width: 3rem;
  margin-top: 0.2rem;
}

@media (max-width: 1024px) {
  .pro-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.3rem;
  }

  .sol-flex {
    gap: 0.4rem;
  }

  .compliance-box {
    padding: 0.6rem;
  }

  .stat-num {
    font-size: 0.6rem;
  }

  .sol-card {
    padding: 0.3rem;
  }

  .sol-card {
    padding: 0.3rem;
  }
}

@media (max-width: 768px) {

  .pro-grid,
  .sol-grid,
  .sol-flex,
  .compliance-box {
    grid-template-columns: 1fr;
    flex-direction: column;
    gap: 0.5rem;
  }

  .compliance-box {
    padding: 0.4rem;
  }

  .stat-num {
    font-size: 0.4rem;
  }

  .pro-img {
    height: 4rem;
  }

  .sol-img-placeholder {
    width: 100%;
    height: 4.5rem;
    order: -1;
    /* 图片置于文字上方 */
  }

  .comp-stats {
    text-align: left;
    border-left: none;
    padding-left: 0;
    margin-top: 0.3rem;
    padding-top: 0.4rem;
    border-top: 1px solid #444;
  }
}

.i_news_cont {
  padding: 0.1rem;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}

.i_top_news {
  width: 28.5%;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
}

.i_top_news .img {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.i_top_news .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.i_top_news .txt {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: var(--i_color);
  background: -webkit-linear-gradient(top, transparent, rgb(19, 55, 132, 0.9));
  background: linear-gradient(to bottom, transparent, rgb(19, 55, 132, 0.9));
  z-index: 2;
}

.i_top_news .txt .text {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0 0.3rem 0.3rem;
}

.i_top_news .txt h3 {
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.i_top_news .txt p {
  margin: 14px 0 0.18rem;
  font-size: 14px;
  color: #fff;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.i_top_news:hover img {
  -webkit-transform: scale(1.15, 1.15);
  -moz-transform: scale(1.15, 1.15);
  transform: scale(1.15, 1.15);
}

.i_top_news .img img {
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -ms-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
}

.i_news_time {
  margin-bottom: 0.2rem;
  position: relative;
}

.i_news_time i {
  font-size: 0.44rem;
  color: #fff;
}

.i_news_time span {
  font-size: 14px;
  color: #fff;
}

.i_news_time i,
.i_news_time span {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* news more */
.i_news_cont .more {
  display: block;
  width: 0.3rem;
  height: 0.3rem;
  background: #fff;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  color: var(--i_color);
  border: 1px solid var(--i_color);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}

.i_news_cont .more:hover {
  background: var(--i_color);
  color: #fff;
}

.i_news_list li:hover {
  box-shadow: 0 0 0.1rem rgb(0 0 0 / 15%);
}



.i_news_list {
  margin-left: auto;
  width: 70%;
}

.i_news_list li {
  padding: 0.3rem 0.3rem 0.24rem;
  width: 57%;
  border: 1px solid var(--border_color);
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  overflow: hidden;
}

.i_news_list li:nth-child(2),
.i_news_list li:nth-child(3) {
  margin-bottom: 0.2rem;
}

.i_news_list .i_news_time {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.i_news_list .i_news_time i,
.i_news_list .i_news_time span {
  color: #666;
}

.i_news_list li:first-child {
  float: left;
  width: 41%;
  margin-right: 2%;
}

.i_news_list li .img {
  display: none;
}

.i_news_list li .img img {
  width: 100%;
  height: 2.6rem;
  object-fit: cover;
}

.i_news_list li:first-child .img {
  display: block;
  margin-top: 0.3rem;
}

.i_news_list li:not(:first-child) .txt {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}

.i_news_list .i_news_time {
  width: 20%;
}

.i_news_list li:not(:first-child) .i_news_time::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0.24rem;
  width: 1px;
  height: 100%;
  background: var(--border_color);
}

.i_news_list .text {
  width: 80%;
  margin-left: auto;
}

.i_news_list li:first-child .text {
  width: 100%;
}

.i_news_list h3 {
  font-size: 16px;
  color: #3e3a39;
  font-weight: bold;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.i_news_list p {
  margin: 14px 0 0.18rem;
  font-size: 14px;
  color: #5b5c5d;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.i_news_list li:hover h4,
.i_news_list li:hover p,
.i_news_list li:hover h2 {
  color: var(--i_color);
}

.i_news_list li:first-child:hover img {
  -webkit-animation: twinkle 1s 1 linear;
  animation: twinkle 1s 1 linear;
}

@keyframes twinkle {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.6;
  }

  100% {
    opacity: 1;
  }
}

.i_news_list li img {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.i_news .i_more {
  margin: 0.6rem auto 0;
}

@media screen and (max-width: 1440px) {
  .i_news_time i {
    font-size: 0.36rem;
  }

  .i_news_time span {
    font-size: 0.13rem;
  }
}

@media screen and (max-width: 1366px) {
  .i_news_list li {
    padding: 0.22rem 0.26rem 0.22rem;
  }
}

@media screen and (max-width: 1024px) {
  .i_news .i_more {
    margin: 0.4rem auto 0;
  }
}

@media screen and (max-width: 959px) {
  .i_top_news {
    margin-bottom: 0.3rem;
    width: 100%;
  }

  .i_top_news .img {
    height: initial;
  }

  .i_top_news .img::before {
    content: "";
    display: block;
    padding-bottom: 75%;
  }

  .i_top_news .img img {
    position: absolute;
    left: 0;
    top: 0;
  }

  .i_news_list {
    margin-left: initial;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .i_news_list li:first-child {
    float: none;
    width: 100%;
  }

  .i_news_list li {
    width: 100%;
    margin: 0 0 0.2rem 0;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }

  .i_news_list li .img {
    display: block;
    width: 200px;
    margin-top: 0 !important;
    order: 0;
  }

  .i_news_list li .img img {
    height: initial;
  }

  .i_news_list .txt {
    width: calc(100% - 230px);
    margin-left: auto;
    order: 1;
    display: block !important;
  }

  .i_news_list li:not(:first-child) .i_news_time::after {
    display: none;
  }

  .i_news_list .img {
    width: 40%;
  }
}

@media screen and (max-width: 560px) {
  .i_news_list li .img {
    display: none !important;
  }

  .i_news_list .txt {
    width: 100%;
    display: flex !important;
  }

  .i_news .i_more {
    margin: 0.1rem auto 0;
  }
}

.pro-header {
  position: relative;
  max-width: 720px;
  margin: 0 0 0.35rem;
  text-align: left;
  padding-top: 0;
}

.pro-header::before {
  content: "";
  display: block;
  width: 46px;
  height: 3px;
  margin: 0 0 0.16rem;
  background: var(--i_color, #d59a2f);
  border-radius: 20px;
}

.pro-main-title {
  margin: 0;
  font-size: 0.28rem;
  line-height: 1.25;
  font-weight: 700;
  color: #222;
  letter-spacing: 0;
}

.pro-subtitle {
  max-width: 620px;
  margin: 0.12rem 0 0;
  font-size: 0.15rem;
  line-height: 1.7;
  color: #666;
  font-weight: 400;
}

@media screen and (max-width: 991px) {
  .pro-main-title {
    font-size: 26px;
  }

  .pro-subtitle {
    font-size: 15px;
  }
}

@media screen and (max-width: 576px) {
  .pro-header {
    margin-bottom: 26px;
  }

  .pro-main-title {
    font-size: 22px;
  }

  .pro-subtitle {
    font-size: 14px;
    line-height: 1.65;
  }
}


/* Production Grid */
.production-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.production-img-card {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  background: #fff;
  aspect-ratio: 4/3;
}

.production-img-card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .5s ease;
}

/* hover */
.production-img-card:hover img {
  transform: scale(1.06);
}

/* tablet */
@media (max-width:992px) {

  .production-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }

}

/* mobile */
@media (max-width:768px) {

  .production-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

}

/*左侧菜单 */
.menu_overlay {
  position: fixed;
  top: 0;
  left: -200%;
  /* 初始在右侧屏幕外 */
  width: 100%;
  max-width: 6rem;
  height: 100vh;
  background: #fff;
  padding: 1.2rem 0.6rem 0.6rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  z-index: 2015;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.menu_overlay.on {
  left: 0;
}

.aside_mask_bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  display: none;
  z-index: 999;
}

/* 关闭按钮样式 */
.close_menu_btn {
  position: absolute;
  right: -0.3rem;
  /* 悬浮在菜单边缘外侧 */
  top: 50%;
  transform: translateY(-50%);
  width: 0.6rem;
  height: 0.6rem;
  background: #f0f0f0;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: -2px 0 10px rgba(0, 0, 0, 0.05);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.close_menu_btn:hover {
  transform: translateY(-50%) rotate(90deg) scale(1.1);
}

.close_menu_btn span {
  position: relative;
  width: 0.2rem;
  height: 2px;
}

.close_menu_btn span::before,
.close_menu_btn span::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #000;
  top: 0;
  left: 0;
}

.close_menu_btn span::before {
  transform: rotate(45deg);
}

.close_menu_btn span::after {
  transform: rotate(-45deg);
}

.side_mask_bg {
  display: none;
  position: fixed;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 999;
}

.drop_nav {
  max-height: 60vh;
  overflow-y: auto;
  overflow-x: hidden;

  &::-webkit-scrollbar {
    width: 4px;
    /* 滚动条宽度 */
  }

  &::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
  }

  &::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
    transition: background 0.3s;
  }

  &::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
  }
}

.drop_nav {
  scrollbar-width: thin;
  scrollbar-color: #c1c1c1 #f1f1f1;
}

.drop_nav>.menu-item {
  position: relative;
  padding-bottom: 0.3rem;
}

.drop_nav .menu-item a {
  display: block;
  font-family: "Inter", sans-serif;
  font-size: 0.2rem;
  font-weight: 700;
  color: #000;
  text-decoration: none;
  line-height: 1.2;
}

.drop_nav .arrow {
  position: absolute;
  right: 0;
  top: 0.15rem;
  width: 0.4rem;
  height: 0.4rem;
  background: url(static/images/arrow_down_hollow_hei.svg) no-repeat center;
  background-size: 0.2rem;
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.3s ease;
}

.drop_nav .arrow.on {
  transform: rotate(0deg);
}

/* 二级 */
.drop_nav .sub-menu {
  display: none;
}

.drop_nav .sub-menu .menu-item a {
  padding: 0.2rem 0.3rem;
  font-size: 0.16rem;
}

.menu_footer {
  margin-top: auto;
  padding-top: 0.4rem;
  border-top: 1px solid #eee;
}

.footer_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.3rem 0.2rem;
}

.footer_grid a {
  display: flex;
  align-items: center;
  font-size: 0.18rem;
  color: #000;
  text-decoration: none;
  font-weight: 500;
  gap: 0 0.2rem;
}

@media screen and (max-width: 1024px) {
  .menu_overlay {
    width: 100%;
    padding: 1rem 0.4rem;
  }

  .close_menu_btn {
    right: 0;
    top: 0;
    transform: translateY(0);
    width: 0.5rem;
    height: 0.5rem;
  }

  .drop_nav .menu-item a {
    font-size: 0.18rem;
  }

  .drop_nav .arrow {
    top: 0;
  }
}

.contact-section {
  line-height: 180%;
}

.contact-section h2 {
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 20px;
}

.contact-section h2 span {
  display: block;
  border-bottom: 2px solid #000;
  padding-bottom: 5px;
  margin-bottom: 10px;
}

.contact-section p {
  font-size: 16px;
  margin-bottom: 20px;
}

.contact-section .small-text {
  font-size: 13px;
  color: #555;
}

/* 平板样式 */
@media (max-width: 1024px) {
  .contact-section h2 {
    font-size: 32px;
    margin-bottom: 16px;
  }

  .contact-section h2 span {
    padding-bottom: 4px;
    margin-bottom: 8px;
  }

  .contact-section p {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 16px;
  }

  .contact-section .small-text {
    font-size: 11px;
    line-height: 16px;
  }
}

/* 手机样式 */
@media (max-width: 768px) {
  .contact-section {
    padding: 20px;
  }

  .contact-section h2 {
    font-size: 28px;
    margin-bottom: 12px;
  }

  .contact-section h2 span {
    padding-bottom: 3px;
    margin-bottom: 6px;
  }

  .contact-section p {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 12px;
  }

  .contact-section .small-text {
    font-size: 10px;
    line-height: 16px;
  }
}

.contact-info h2 {
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 20px;
}

.map {
  width: 50%;
  position: relative;
  overflow: hidden;
}

.map::before {
  content: "";
  display: block;
  padding-bottom: 50%;
}

.map iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.contact-details p,
.contact-details a {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 10px;
  text-decoration: underline;
}

/* 响应式 */
@media (max-width: 768px) {
  .contact-info h2 {
    font-size: 28px;
  }

  .map-container {
    height: 300px;
  }

  .contact-details p,
  .contact-details a {
    font-size: 14px;
  }
}

.team-container {
  display: flex;
  flex-wrap: wrap;
  /* 允许换行 */
  justify-content: space-between;
  gap: 20px;
  /* 卡片间距 */
}

.team-member {
  flex: 1 1 250px;
  /* 自适应，最小宽度250px */
  max-width: 32%;
  /* 每行最多3个 */
  text-align: center;
}

.team-member img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.team-member h3 {
  margin: 10px 0 5px;
  font-size: 18px;
}

.team-member h6 {
  margin: 0 0 5px;
  font-size: 18px;
  color: #333;
}

.team-member a {
  text-decoration: underline;
  color: #000;
  font-size: 14px;
}

/* 响应式 */
@media (max-width: 992px) {
  .team-member {
    max-width: 48%;
  }
}

@media (max-width: 600px) {
  .team-member {
    max-width: 100%;
  }
}

.archive-header h1 {
  font-size: 0.28rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.01rem;
  margin: 0;
}

.category-description {
  max-width: 9rem;
  font-size: 0.14rem;
  line-height: 1.6;
  color: #666;
  margin-top: 0.15rem;
}


/* Case Section */
.i_case {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f4f8fc 0%, #ffffff 100%);
}

.i_case::before {
  content: "";
  position: absolute;
  left: -160px;
  top: 80px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  opacity: 0.08;
  background: url(static/images/bc_logo.png) no-repeat center;
  background-size: cover;
}

.i_case .wrap {
  position: relative;
  z-index: 2;
}


/* 案例列表 */
.i_case_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 260px;
  gap: 24px;
}

.i_case_list li {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background: #071421;
  box-shadow: 0 18px 45px rgba(4, 28, 52, 0.14);
  transition: all 0.45s ease;
}

.i_case_list li:first-child {
  grid-column: 1 / 3;
  grid-row: 1 / 3;
}

.i_case_list li:nth-child(2) {
  grid-column: 3 / 5;
}

.i_case_list li:hover {
  transform: translateY(-10px);
  box-shadow: 0 28px 65px rgba(4, 28, 52, 0.22);
}

.i_case_list li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
}

/* 图片 */
.i_case_list .img {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.i_case_list .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.8s ease;
}

.i_case_list li:hover .img img {
  transform: scale(1.08);
}

/* 遮罩 */
.i_case_list .img::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(3, 18, 32, 0.08) 0%, rgba(3, 18, 32, 0.88) 100%),
    linear-gradient(90deg, rgba(0, 105, 190, 0.35), transparent 58%);
  z-index: 1;
}

/* 内容 */
.i_case_list h3 {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 78px;
  z-index: 3;
  margin: 0;
  color: #fff;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 800;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: all 0.35s ease;
}

.i_case_list .meta-item {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 28px;
  z-index: 3;
  color: rgba(255, 255, 255, 0.78);
  font-size: 15px;
  line-height: 1.6;
}

/* 第一张大案例强化 */
.i_case_list li:first-child h3 {
  left: 38px;
  right: 38px;
  bottom: 105px;
  font-size: 32px;
  line-height: 1.25;
}

.i_case_list li:first-child .meta-item {
  left: 38px;
  right: 38px;
  bottom: 38px;
  max-width: 620px;
  font-size: 16px;
}

/* 蓝色角标 */
.i_case_list li::before {
  content: "Case Study";
  position: absolute;
  left: 28px;
  top: 28px;
  z-index: 4;
  padding: 8px 16px;
  border-radius: 50px;
  background: rgba(8, 119, 216, 0.92);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  backdrop-filter: blur(8px);
}

.i_case_list li:first-child::before {
  left: 38px;
  top: 38px;
}

/* 右下箭头装饰 */
.i_case_list li::after {
  content: "→";
  position: absolute;
  right: 26px;
  top: 24px;
  z-index: 4;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 22px;
  line-height: 42px;
  text-align: center;
  transition: all 0.35s ease;
}

.i_case_list li:hover::after {
  background: #fff;
  color: var(--i_color);
  transform: rotate(-35deg);
}

/* 平板 */
@media (max-width: 1024px) {
  .i_case .i_tit h2 {
    font-size: 36px;
  }

  .i_case_list {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 300px;
  }

  .i_case_list li:first-child,
  .i_case_list li:nth-child(2) {
    grid-column: auto;
    grid-row: auto;
  }

  .i_case_list li:first-child {
    grid-column: 1 / 3;
  }

  .i_case_list li:first-child h3 {
    font-size: 28px;
  }
}

/* 手机 */
@media (max-width: 768px) {
  .i_case {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .i_case .i_tit {
    margin-bottom: 28px;
  }

  .i_case .i_tit h2 {
    font-size: 30px;
    text-align: left;
  }

  .i_case_list {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    gap: 18px;
  }

  .i_case_list li,
  .i_case_list li:first-child {
    min-height: 340px;
    grid-column: auto;
    grid-row: auto;
  }

  .i_case_list h3,
  .i_case_list li:first-child h3 {
    left: 24px;
    right: 24px;
    bottom: 92px;
    font-size: 22px;
  }

  .i_case_list .meta-item,
  .i_case_list li:first-child .meta-item {
    left: 24px;
    right: 24px;
    bottom: 28px;
    font-size: 14px;
  }

  .i_case_list li::before,
  .i_case_list li:first-child::before {
    left: 24px;
    top: 24px;
  }
}



.faq-section {
  padding: 100px 0;
  background: #f5f7fa;
}

.faq-title {
  text-align: center;
  margin-bottom: 60px;
}

.faq-title h2 {
  font-size: 52px;
  font-weight: 800;
  color: #111;
  margin-bottom: 18px;
}

.faq-title p {
  font-size: 18px;
  color: #666;
  max-width: 760px;
  margin: auto;
  line-height: 1.8;
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.faq-item {
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  transition: 0.3s;
}

.faq-item.active {
  border-color: var(--i_color);
  box-shadow: 0 10px 30px rgba(0, 87, 255, 0.08);
}

.faq-question {
  padding: 28px 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.faq-question h3 {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  color: #111;
  line-height: 1.5;
}

.faq-question span {
  font-size: 32px;
  color: var(--i_color);
  font-weight: 300;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 34px;
  border-top: none;
  transition: all 0.4s ease;
}

/* 展开状态 */
.faq-item.active .faq-answer {
  max-height: 1000px;
  padding: 0 34px 34px;
  border-top: 1px solid #eee;
}

.faq-answer p {
  font-size: 17px;
  line-height: 1.9;
  color: #555;
  margin-top: 24px;
}

.faq-answer ul {
  margin: 24px 0 0;
  padding-left: 20px;
}

.faq-answer ul li {
  margin-bottom: 14px;
  color: #555;
  line-height: 1.8;
  font-size: 16px;
}

.faq-table {
  margin-top: 24px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  overflow: hidden;
}

.table-row {
  display: grid;
  grid-template-columns: 1fr 2fr;
}

.table-row div {
  padding: 18px 20px;
  font-size: 16px;
  line-height: 1.7;
  border-bottom: 1px solid #eee;
}

.table-row div:first-child {
  border-right: 1px solid #eee;
  font-weight: 700;
}

.table-row.head {
  background: var(--i_color);
}

.table-row.head div {
  color: #fff;
  font-weight: 700;
}

/* MOBILE */
@media (max-width: 768px) {
  .faq-section {
    padding: 70px 0;
  }

  .faq-title h2 {
    font-size: 34px;
  }

  .faq-title p {
    font-size: 15px;
    line-height: 1.8;
  }

  .faq-question {
    padding: 22px;
  }

  .faq-question h3 {
    font-size: 18px;
    padding-right: 20px;
  }

  .faq-answer {
    padding: 0 22px 24px;
  }

  .faq-answer p,
  .faq-answer ul li,
  .table-row div {
    font-size: 14px;
  }

  .table-row {
    grid-template-columns: 1fr;
  }

  .table-row div:first-child {
    border-right: none;
  }
}

.about_section .about_container {
  display: flex;
  gap: 20px;
}

.about_section .about_left,
.about_section .about_right {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
}

.about_section .about_left {
  width: 30%;
  min-height: 450px;
  display: flex;
  align-items: center;
  padding: 40px;
}

.about_section .about_left::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom,
      rgba(0, 0, 0, 0.4),
      rgba(0, 0, 0, 0.6));
  z-index: 1;
}

.about_section .about_left .left_content {
  position: relative;
  z-index: 2;
}

.about_section .about_left .left_content h2 {
  font-size: 42px;
  color: #ffffff;
  margin: 0 0 20px 0;
  font-weight: 800;
}

.about_section .about_left .left_content .btn_orange {
  display: inline-block;
  background-color: var(--i_color);
  color: #ffffff;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  padding: 12px 35px;
  border-radius: 25px;
  transition:
    background 0.3s ease,
    transform 0.2s ease;
}

.about_section .about_left .left_content .btn_orange:hover {
  background-color: #d3b631;
  transform: translateY(-2px);
}

.about_section .about_right {
  width: 70%;
  min-height: 450px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 35px;
}

.about_section .about_right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
}

.about_section .about_right .right_intro {
  position: relative;
  z-index: 2;
  max-width: 90%;
}

.about_section .about_right .right_intro p {
  color: #ffffff;
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
  font-weight: 600;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5);
}

.about_section .about_right .counter_card {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #ffffff;
  border-top-left-radius: 20px;
  padding: 30px 40px;
  z-index: 3;
  box-shadow: -5px -5px 25px rgba(0, 0, 0, 0.15);
  width: 55%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.about_section .about_right .counter_card .counter_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}

.about_section .about_right .counter_card .counter_item {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.about_section .about_right .counter_card .counter_item .num {
  font-size: 32px;
  font-weight: 700;
  color: #222222;
  line-height: 1.1;
  margin-bottom: 5px;
}

.about_section .about_right .counter_card .counter_item .label {
  font-size: 13px;
  color: #666666;
}

.btn_orange_small {
  display: inline-block;
  align-self: flex-start;
  background-color: var(--i_color);
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 25px;
  border-radius: 20px;
  transition: all 0.3s ease;
}

.btn_orange_small:hover {
  background-color: #d3b631;
}

@media (max-width: 1100px) {
  .about_section .about_right .counter_card {
    width: 70%;
  }
}

@media (max-width: 991px) {
  .about_section .about_container {
    flex-direction: column;
  }

  .about_section .about_left,
  .about_section .about_right {
    width: 100%;
    min-height: 380px;
  }

  .about_section .about_right .counter_card {
    position: relative;
    width: 100%;
    border-radius: 12px;
    margin-top: 30px;
    right: auto;
    bottom: auto;
    padding: 20px;
  }

  .about_section .about_right .counter_card .counter_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}



/* 
.tech_section .tech_container {
  display: flex;
  gap: 30px;
  padding: 40px 20px;
}

.tech_section .tech_feature_box {
  width: 28%;
  position: relative;
  min-height: 480px;
}

.tech_section .tech_feature_box .tech_feature_card {
  width: 100%;
  height: 94%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 12px;
}

.tech_section .tech_feature_box .tech_feature_info {
  position: absolute;
  right: -10px;
  bottom: 0;
  background: #ffffff;
  border-radius: 12px;
  padding: 35px 25px;
  width: 85%;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
}

.tech_section .tech_feature_box .tech_feature_info h2 {
  font-size: 22px;
  color: #222222;
  margin: 0 0 12px 0;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.5px;
}

.tech_section .tech_feature_box .tech_feature_info p {
  font-size: 14px;
  color: #666666;
  line-height: 1.5;
  margin: 0 0 25px 0;
  font-weight: 600;
}

.tech_section .tech_feature_box .tech_feature_info a {
  display: inline-block;
  background-color: var(--i_color);
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 28px;
  border-radius: 20px;
  transition:
    background 0.3s ease,
    transform 0.2s ease;
}

.tech_section .tech_feature_box .tech_feature_info a:hover {
  background-color: #cc5200;
  transform: translateY(-2px);
}

.tech_section .tech_grid_box {
  width: 72%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 25px;
}

.tech_section .tech_grid_box .tech_grid_item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.tech_section .tech_grid_box .tech_grid_item .tech_item_img {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 8px;
  overflow: hidden;
  background-color: #fff;
}

.tech_section .tech_grid_box .tech_grid_item .tech_item_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform .4s ease;
}

.tech_section .tech_grid_box .tech_grid_item:hover .tech_item_img img {
  transform: scale(1.04);
}

.tech_section .tech_grid_box .tech_grid_item h3 {
  font-size: 14px;
  color: #444444;
  margin: 15px 0 0 0;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
}

@media (max-width: 1150px) {
  .tech_section .tech_container {
    flex-direction: column;
  }

  .tech_section .tech_feature_box {
    width: 100%;
    min-height: 350px;
  }

  .tech_section .tech_feature_box .tech_feature_card {
    height: 100%;
  }

  .tech_section .tech_feature_box .tech_feature_info {
    right: 20px;
    bottom: -20px;
    width: 320px;
  }

  .tech_section .tech_grid_box {
    width: 100%;
    margin-top: 40px;
  }
}

@media (max-width: 850px) {
  .tech_section .tech_grid_box {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 550px) {
  .tech_section .tech_grid_box {
    grid-template-columns: 1fr;
  }

  .tech_section .tech_feature_box .tech_feature_info {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 20px;
  }
} */
.tech_section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 20%, rgba(26, 101, 187, .08), transparent 28%),
    linear-gradient(180deg, #f7faff 0%, #fff 100%);
}

.tech_section::before {
  content: "";
  position: absolute;
  top: -160px;
  right: -120px;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(16, 91, 174, .08);
  border-radius: 50%;
}

.tech_section::after {
  content: "";
  position: absolute;
  left: -130px;
  bottom: -170px;
  width: 420px;
  height: 420px;
  border: 80px solid rgba(16, 91, 174, .03);
  border-radius: 50%;
}

.tech_section .tech_container {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 34% 1fr;
  gap: 28px;
  align-items: stretch;
}

.tech_section .tech_feature_box {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dfe8f3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 70, 130, .12);
}

.tech_section .tech_feature_card {
  position: relative;
  flex: 0 0 54%;
  min-height: 330px;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform .7s ease;
}

.tech_section .tech_feature_box:hover .tech_feature_card {
  transform: scale(1.025);
}

.tech_section .tech_feature_card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
      rgba(3, 28, 61, .08) 15%,
      rgba(3, 34, 73, .42) 100%);
}

.tech_section .tech_feature_card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 80px;
  background: linear-gradient(180deg,
      transparent 0%,
      rgba(5, 48, 101, .65) 100%);
}

.tech_section .tech_feature_badge {
  position: absolute;
  z-index: 2;
  top: 24px;
  left: 24px;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 15px;
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 30px;
  color: #fff;
  background: rgba(8, 62, 121, .68);
  backdrop-filter: blur(8px);
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.tech_section .tech_feature_info {
  width: 90%;
  position: absolute;
  display: flex;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  flex: 1;
  flex-direction: column;
  padding: 34px 36px 36px;
  color: #fff;
  background:
    radial-gradient(circle at 100% 0, rgba(72, 156, 255, .28), transparent 42%),
    linear-gradient(145deg, #07396f 0%, #082d59 55%, #061f3f 100%);
}

.tech_section .tech_feature_info::before {
  content: "";
  position: absolute;
  top: 0;
  left: 36px;
  width: 72px;
  height: 3px;
  background: #4aa2ff;
}

.tech_section .tech_feature_label {
  display: block;
  margin-bottom: 12px;
  color: #6eb4ff;
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}

.tech_section .tech_feature_info h2 {
  margin: 0 0 13px;
  color: #fff;
  font-size: 30px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -.5px;
}

.tech_section .tech_feature_info>p {
  max-width: 390px;
  margin: 0 0 24px;
  color: rgba(255, 255, 255, .72);
  font-size: 15px;
  line-height: 1.7;
}

.tech_section .tech_feature_tags {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}

.tech_section .tech_feature_tags li {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 42px;
  padding: 8px 12px;
  border-radius: 7px;
  color: rgba(255, 255, 255, .88);
  font-size: 13px;
  line-height: 1.4;
  transition:
    background-color .3s ease,
    border-color .3s ease,
    transform .3s ease;
}

.tech_section .tech_feature_tags li:hover {
  border-color: rgba(90, 168, 255, .38);
  background: rgba(74, 162, 255, .12);
  transform: translateX(4px);
}

.tech_section .tech_feature_tags iconify-icon {
  flex: 0 0 auto;
  color: #64adff;
  font-size: 21px;
}

.tech_section .tech_feature_info>a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  gap: 10px;
  min-width: 174px;
  height: 48px;
  margin-top: auto;
  padding: 0 22px;
  border: 1px solid rgba(255, 255, 255, .42);
  border-radius: 7px;
  color: #fff;
  background: rgba(255, 255, 255, .04);
  font-size: 14px;
  font-weight: 700;
  transition:
    color .3s ease,
    background-color .3s ease,
    border-color .3s ease,
    transform .3s ease;
}

.tech_section .tech_feature_info>a iconify-icon {
  font-size: 19px;
  transition: transform .3s ease;
}

.tech_section .tech_feature_info>a:hover {
  color: #0d5198;
  border-color: #fff;
  background: #fff;
  transform: translateY(-2px);
}

.tech_section .tech_feature_info>a:hover iconify-icon {
  transform: translate(3px, -3px);
}

.tech_section .tech_grid_box {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.tech_section .tech_grid_item {
  padding: 18px;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e6edf6;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(18, 67, 120, .06);
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.tech_section .tech_grid_item:hover {
  border-color: rgba(15, 92, 176, .28);
  box-shadow: 0 18px 42px rgba(18, 67, 120, .13);
  transform: translateY(-6px);
}

.tech_section .tech_item_img {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: linear-gradient(145deg, #f9fbfe 0%, #eef4fa 100%);
  border: 1px solid rgba(16, 91, 174, .07);
  border-radius: 9px;
}


.tech_section .tech_item_img img {
  width: 100%;
  height: 100%;
  transform: scale(1.02);
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}

.tech_section .tech_grid_item:hover .tech_item_img img {
  transform: scale(1.1);
}

.tech_section .tech_item_more {
  position: absolute;
  z-index: 3;
  top: 16px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  color: #fff;
  background: #0f5cb0;
  box-shadow: 0 8px 20px rgba(15, 92, 176, .25);
  opacity: 0;
  transform: translateY(8px);
  transition:
    opacity .3s ease,
    transform .3s ease,
    background-color .3s ease;
}

.tech_section .tech_item_more iconify-icon {
  font-size: 20px;
}

.tech_section .tech_grid_item:hover .tech_item_more {
  opacity: 1;
  transform: translateY(0);
}

.tech_section .tech_item_content {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.tech_section .tech_item_content h3 {
  margin: 10px 0;
  overflow: hidden;
  color: #17283d;
  font-size: 17px;
  line-height: 1.45;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color .3s ease;
}

.tech_section .tech_grid_item:hover .tech_item_content h3 {
  color: #0f5cb0;
}

.tech_section .tech_item_link {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding-top: 16px;
  color: #6c7d90;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
  transition: color .3s ease;
}

.tech_section .tech_item_link iconify-icon {
  font-size: 17px;
  transition: transform .3s ease;
}

.tech_section .tech_grid_item:hover .tech_item_link {
  color: #0f5cb0;
}

.tech_section .tech_grid_item:hover .tech_item_link iconify-icon {
  transform: translateX(4px);
}

@media screen and (max-width: 1440px) {
  .tech_section .tech_container {
    grid-template-columns: 32% 1fr;
    gap: 20px;
  }

  .tech_section .tech_feature_card {
    min-height: 280px;
  }

  .tech_section .tech_feature_info {
    padding: 28px;
  }

  .tech_section .tech_feature_info::before {
    left: 28px;
  }

  .tech_section .tech_feature_info h2 {
    font-size: 24px;
  }

  .tech_section .tech_feature_info>p {
    font-size: 14px;
    line-height: 1.6;
  }

  .tech_section .tech_grid_box {
    gap: 18px;
  }


  .tech_section .tech_item_content h3 {
    font-size: 15px;
  }
}

@media screen and (max-width: 1200px) {
  .tech_section .tech_container {
    grid-template-columns: 1fr;
  }

  .tech_section .tech_feature_box {
    display: grid;
    grid-template-columns: 42% 58%;
  }

  .tech_section .tech_feature_card {
    min-height: 420px;
  }

  .tech_section .tech_feature_info {
    min-height: 420px;
    padding: 30px;
  }

  .tech_section .tech_feature_info::before {
    left: 30px;
  }

  .tech_section .tech_grid_box {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (max-width: 992px) {
  .tech_section .tech_feature_box {
    display: flex;
  }

  .tech_section .tech_feature_card {
    flex: none;
    min-height: 320px;
  }

  .tech_section .tech_feature_info {
    min-height: 0;
    padding: 26px;
  }

  .tech_section .tech_feature_info::before {
    left: 26px;
  }

  .tech_section .tech_feature_info h2 {
    font-size: 20px;
  }

  .tech_section .tech_feature_tags {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech_section .tech_grid_box {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (max-width: 768px) {
  .tech_section {
    padding: 60px 0;
  }

  .tech_section .tech_container {
    gap: 18px;
  }

  .tech_section .tech_feature_box {
    border-radius: 14px;
  }

  .tech_section .tech_feature_card {
    min-height: 260px;
  }

  .tech_section .tech_feature_badge {
    top: 18px;
    left: 18px;
  }

  .tech_section .tech_feature_info {
    padding: 22px;
  }

  .tech_section .tech_feature_info::before {
    left: 22px;
  }

  .tech_section .tech_feature_info h2 {
    font-size: 18px;
  }

  .tech_section .tech_feature_info>p {
    margin-bottom: 18px;
    font-size: 14px;
  }

  .tech_section .tech_feature_tags {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 20px;
  }

  .tech_section .tech_grid_box {
    gap: 14px;
  }

  .tech_section .tech_item_img img {
    padding: 14px;
  }



  .tech_section .tech_item_content h3 {
    display: -webkit-box;
    overflow: hidden;
    font-size: 14px;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .tech_section .tech_item_link {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  .tech_section .tech_grid_box {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .tech_section .tech_grid_item {
    border-radius: 10px;
  }

  .tech_section .tech_item_img::before {
    inset: 8px;
  }

  .tech_section .tech_item_img img {
    padding: 10px;
  }

  .tech_section .tech_item_more {
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
  }

  .tech_section .tech_item_more iconify-icon {
    font-size: 17px;
  }



  .tech_section .tech_item_content h3 {
    font-size: 13px;
  }
}

@media screen and (max-width: 480px) {
  .tech_section {
    padding: 50px 0;
  }

  .tech_section .tech_feature_card {
    min-height: 220px;
  }

  .tech_section .tech_feature_info {
    padding: 20px;
  }

  .tech_section .tech_feature_info::before {
    left: 20px;
  }



  .tech_section .tech_feature_info>p {
    font-size: 13px;
  }

  .tech_section .tech_feature_tags li {
    font-size: 12px;
  }

  .tech_section .tech_feature_info>a {
    width: 100%;
  }

  .tech_section .tech_grid_box {
    grid-template-columns: 1fr;
  }

  .tech_section .tech_item_img {
    aspect-ratio: 4 / 3;
  }

  .tech_section .tech_item_content h3 {
    font-size: 15px;
  }
}



/* Service Section */
.service {
  position: relative;
  overflow: hidden;
}



.service .i_tit {
  position: relative;
  z-index: 2;
  margin-bottom: 45px;
}

.service .i_tit h2 {
  max-width: 720px;
  font-size: 44px;
  line-height: 1.18;
  font-weight: 800;
  color: #111;
}

/* Service Card Grid */
.service .i_ser_list {
  position: relative;
  z-index: 2;
  list-style: none;
  padding: 0;
  margin-left: 0;

  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(2, 280px);
  gap: 24px;
}

/* Card */
.service .i_ser_list li {
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  background: #101820;
  box-shadow: 0 18px 45px rgba(0, 35, 70, 0.14);
  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

/* 5-card layout */
.service .i_ser_list li:nth-child(1) {
  grid-column: 1 / 6;
  grid-row: 1 / 3;
}

.service .i_ser_list li:nth-child(2) {
  grid-column: 6 / 10;
  grid-row: 1 / 2;
}

.service .i_ser_list li:nth-child(3) {
  grid-column: 10 / 13;
  grid-row: 1 / 2;
}

.service .i_ser_list li:nth-child(4) {
  grid-column: 6 / 9;
  grid-row: 2 / 3;
}

.service .i_ser_list li:nth-child(5) {
  grid-column: 9 / 13;
  grid-row: 2 / 3;
}

.service .i_ser_list li:hover {
  transform: translateY(-10px);
  box-shadow: 0 28px 65px rgba(0, 35, 70, 0.24);
}

/* Image */
.service .i_ser_list .img {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.service .i_ser_list .img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.service .i_ser_list li:hover .img img {
  transform: scale(1.08);
}

/* Mask */
.service .i_ser_list .img::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg,
      rgba(3, 18, 35, 0.12) 0%,
      rgba(3, 18, 35, 0.55) 48%,
      rgba(3, 18, 35, 0.92) 100%),
    linear-gradient(90deg,
      rgba(0, 100, 180, 0.28),
      rgba(0, 100, 180, 0) 60%);
}

/* Top Label */
.service .i_ser_list .img span {
  position: absolute;
  left: 24px;
  top: 24px;
  z-index: 3;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 9px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  backdrop-filter: blur(10px);

  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}

/* Text */
.service .i_ser_list .txt {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;

  padding: 28px 28px 30px;
}

.service .i_ser_list .txt h6 {
  margin: 0;
  max-width: 92%;

  color: rgba(255, 255, 255, 0.88);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.65;
}

/* Big Card */
.service .i_ser_list li:nth-child(1) .img span {
  padding: 12px 22px;
  background: var(--i_color);
  color: #fff;
  font-size: 18px;
}

.service .i_ser_list li:nth-child(1) .txt {
  padding: 42px;
}

.service .i_ser_list li:nth-child(1) .txt h6 {
  max-width: 86%;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.55;
}

/* Number Decoration */
.service .i_ser_list li::before {
  position: absolute;
  right: 24px;
  bottom: 22px;
  z-index: 2;

  color: rgba(255, 255, 255, 0.16);
  font-size: 56px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -2px;
}

.service .i_ser_list li:nth-child(1)::before {
  content: "01";
}

.service .i_ser_list li:nth-child(2)::before {
  content: "02";
}

.service .i_ser_list li:nth-child(3)::before {
  content: "03";
}

.service .i_ser_list li:nth-child(4)::before {
  content: "04";
}

.service .i_ser_list li:nth-child(5)::before {
  content: "05";
}

/* Tablet */
@media (max-width: 1024px) {
  .service .i_ser_list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    gap: 22px;
  }

  .service .i_ser_list li,
  .service .i_ser_list li:nth-child(1),
  .service .i_ser_list li:nth-child(2),
  .service .i_ser_list li:nth-child(3),
  .service .i_ser_list li:nth-child(4),
  .service .i_ser_list li:nth-child(5) {
    grid-column: auto;
    grid-row: auto;
    min-height: 320px;
  }

  .service .i_ser_list li:nth-child(1) {
    grid-column: 1 / 3;
    min-height: 400px;
  }

  .service .i_ser_list li:nth-child(1) .txt h6 {
    font-size: 22px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .service .i_ser_list {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .service .i_ser_list li,
  .service .i_ser_list li:nth-child(1) {
    grid-column: auto;
    grid-row: auto;
    min-height: 330px;
    border-radius: 20px;
  }

  .service .i_ser_list .img span {
    left: 20px;
    top: 20px;
    font-size: 14px;
    padding: 8px 14px;
  }

  .service .i_ser_list .txt {
    padding: 24px 22px;
  }

  .service .i_ser_list .txt h6 {
    max-width: 100%;
    font-size: 15px;
    line-height: 1.6;
  }

  .service .i_ser_list li:nth-child(1) .txt {
    padding: 28px 24px;
  }

  .service .i_ser_list li:nth-child(1) .txt h6 {
    max-width: 100%;
    font-size: 18px;
  }

  .service .i_ser_list li::before {
    right: 20px;
    bottom: 18px;
    font-size: 46px;
  }

  .service .i_ser_list li:hover {
    transform: translateY(-6px);
  }
}

/* Small Mobile */
@media (max-width: 480px) {

  .service .i_ser_list li,
  .service .i_ser_list li:nth-child(1) {
    min-height: 300px;
  }

  .service .i_ser_list .txt h6 {
    font-size: 14px;
  }
}

/* ==========================================================================
   去毛刺机
   ========================================================================== */
.section-title {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  margin-bottom: 60px;
}

.section-title span {
  color: var(--i_color);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2px;
}

.section-title h2 {
  font-size: 48px;
  margin: 20px 0;
  font-weight: 800;
  line-height: 1.2;
}



.db-result {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f4f8fc 0%, #ffffff 100%);
}

.db-result::before {
  content: "";
  position: absolute;
  right: -160px;
  top: 10px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  opacity: 0.08;
  background: url(static/images/bc_logo.png) no-repeat center;
  background-size: cover;
}

/* Before After Result List */
.db-result-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* 单个卡片 */
.db-result-item {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(0, 35, 70, 0.1);
  transition: all 0.35s ease;
}

.db-result-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 45px rgba(0, 35, 70, 0.16);
}

/* 两张图并排 */
.db-result-item {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

/* 图片区域 */
.db-result-img {
  position: relative;
  height: 220px;
  overflow: hidden;
}

.db-result-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.db-result-item:hover .db-result-img img {
  transform: scale(1.06);
}

/* Before / After 标签 */
.db-result-img span {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  padding: 5px 12px;
  border-radius: 30px;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.db-result-img:nth-child(2) span {
  background: var(--i_color);
}

/* 标题压到底部，不额外占空间 */
.db-result-item h3 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;

  margin: 0;
  padding: 34px 16px 16px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;

  background: linear-gradient(180deg,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.68) 100%);
}

/* 平板：一行两个 */
@media (max-width: 1024px) {
  .db-result-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .db-result-img {
    height: 240px;
  }
}

/* 手机：一行一个 */
@media (max-width: 768px) {
  .db-result-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .db-result-img {
    height: 210px;
  }

  .db-result-item h3 {
    font-size: 17px;
  }
}

/* ===============================
   Station Function Showcase
================================ */



/* 卡片布局 */
.station-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 26px;
}

.station-card {
  position: relative;
  grid-column: span 3;
  height: 270px;
  border-radius: 16px;
  overflow: hidden;
  background: #111;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
}

.station-card.station-large {
  grid-column: span 6;
}

.station-img {
  width: 100%;
  height: 100%;
}

.station-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.8s ease, filter 0.5s ease;
}

/* 遮罩层，不是全黑覆盖，底部更重 */
.station-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(to top,
      rgba(0, 0, 0, 0.82) 0%,
      rgba(0, 0, 0, 0.56) 36%,
      rgba(0, 0, 0, 0.16) 72%,
      rgba(0, 0, 0, 0.05) 100%);
}

/* 内容区 */
.station-info {
  position: absolute;
  left: 26px;
  right: 26px;
  bottom: 24px;
  z-index: 2;
  color: #fff;
}

.station-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 46px;
  height: 34px;
  padding: 0 12px;
  background: var(--i_color, var(--i_color));
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  border-radius: 30px;
  letter-spacing: 1px;
}

.station-info h3 {
  position: relative;
  margin: 14px 0;
  padding-bottom: 14px;
  font-size: 26px;
  line-height: 1.15;
  font-weight: 800;
  color: #fff;
}

.station-info h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 44px;
  height: 3px;
  background: var(--i_color, var(--i_color));
  border-radius: 10px;
}

.station-info ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.station-info li {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(6px);
  font-size: 14px;
  line-height: 1;
  font-weight: 600;
  color: #fff;
}

/* 悬浮效果 */
.station-card:hover .station-img img {
  transform: scale(1.08);
  filter: brightness(1.08);
}

.station-card:hover::before {
  background:
    linear-gradient(to top,
      rgba(0, 0, 0, 0.88) 0%,
      rgba(0, 0, 0, 0.58) 36%,
      rgba(0, 93, 175, 0.2) 72%,
      rgba(0, 0, 0, 0.08) 100%);
}

.station-card:hover .station-info h3::after {
  width: 72px;
}

/* 平板 */
@media (max-width: 1024px) {
  .station-grid {
    gap: 20px;
  }

  .station-card,
  .station-card.station-large {
    grid-column: span 6;
  }


}

/* 手机 */
@media (max-width: 768px) {
  .station-showcase {
    padding: 60px 0;
  }

  .station-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .station-card,
  .station-card.station-large {
    grid-column: span 1;
    height: 260px;
  }

  .station-info {
    left: 22px;
    right: 22px;
    bottom: 22px;
  }

  .station-info h3 {
    font-size: 24px;
  }


}

/* ===============================
   Application Area
================================ */
.application-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: .26rem;
  position: relative;
}

/* 流程连接线 */
.application-grid::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: .78rem;
  height: 2px;
  background: rgba(0, 0, 0, .12);
  z-index: 0;
}

.application-card {
  position: relative;
  z-index: 2;
  text-align: center;
  background: transparent;
}

.application-img {
  position: relative;
  width: 1.55rem;
  height: 1.55rem;
  margin: 0 auto .22rem;
  border-radius: 50%;
  overflow: hidden;
  background: #fff;
  padding: .08rem;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .1);
}

.application-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  transition: all .4s ease;
}

.application-card:hover .application-img img {
  transform: scale(1.08);
}

.application-img span {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: .42rem;
  height: .42rem;
  border-radius: 50%;
  background: var(--i_color);
  color: #fff;
  font-size: .15rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
}

.application-content h3 {
  margin: 0 0 .1rem;
  font-size: .2rem;
  line-height: 1.35;
  color: #111;
}

.application-content p {
  margin: 0;
  font-size: .145rem;
  line-height: 1.7;
  color: #666;
}

@media screen and (max-width: 1200px) {
  .application-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: .4rem .3rem;
  }

  .application-grid::before {
    display: none;
  }

  .application-card:nth-child(3)::after,
  .application-card:nth-child(6)::after {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .application-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: .35rem .2rem;
  }

  .application-img {
    width: 1.35rem;
    height: 1.35rem;
  }

  .application-card::after {
    display: none;
  }

  .application-content h3 {
    font-size: .18rem;
  }

  .application-content p {
    font-size: .14rem;
  }
}

@media screen and (max-width: 480px) {
  .application-grid {
    grid-template-columns: 1fr;
  }

  .application-card {
    display: flex;
    align-items: center;
    gap: .18rem;
    text-align: left;
  }

  .application-img {
    flex: 0 0 1.15rem;
    width: 1.15rem;
    height: 1.15rem;
    margin: 0;
  }

  .application-content {
    flex: 1;
  }
}

/* ==========================================================================
   规格切换
   ========================================================================== */


.deburring-hero-inner {
  display: grid;
  grid-template-columns: 1fr 0.85fr;
  gap: 70px;
  align-items: center;
}

.deburring-hero-title {
  margin-bottom: 55px;
}

.deburring-hero-title span {
  display: block;
  margin-bottom: 14px;
  font-size: 18px;
  line-height: 1.4;
  color: var(--i_color);
  font-weight: 500;
}

.deburring-hero-title h2 {
  margin: 0 0 22px;
  font-size: 46px;
  line-height: 1.15;
  font-weight: 500;
  color: #222;
}

.deburring-hero-title p {
  margin: 0;
  font-size: 18px;
  line-height: 1.6;
  color: #666;
}

/* right image */
.machine-preview-box {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 16px;
  overflow: hidden;
  background: #f5f5f5;
}

.machine-preview-box img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  transition: opacity 0.25s ease;
}



/* tablet */
@media (max-width: 1280px) {
  .deburring-hero-inner {
    gap: 45px;
  }



}

/* mobile */
@media (max-width: 900px) {
  .deburring-hero-title {
    margin-bottom: 35px;
  }

  .deburring-hero-title h2 {
    font-size: 34px;
  }


}

/* ===== FORM LAYOUT ===== */

.machine-config-form #wpforms-1455,
.machine-config-form #wpforms-form-1455 {
  margin: 0;
}

.machine-config-form #wpforms-1455 .wpforms-field-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}


/* ===== COLUMN ===== */

.machine-config-form #wpforms-1455 .machine-col {
  min-width: 0;
  padding: 0 !important;
  margin: 0 !important;
}

.machine-config-form #wpforms-1455 .wpforms-field-label {
  margin: 0 0 12px !important;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  color: #111;
}


/* ===== OPTION LIST ===== */

.machine-config-form #wpforms-1455 ul {
  margin: 0 !important;
  padding: 0 !important;
}

.machine-config-form #wpforms-1455 li {
  position: relative;
  margin: 0 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
}


/* ===== HIDE ORIGINAL RADIO ===== */

.machine-config-form #wpforms-1455 input[type=radio],
.machine-config-form #wpforms-1455 input[type=checkbox] {

  position: absolute;
  opacity: 0;
  pointer-events: none;
}


/* ===== OPTION CARD ===== */

.machine-config-form #wpforms-1455 .wpforms-field-label-inline {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  font-size: 16px;
  font-weight: 500;
  color: #333;

  cursor: pointer;

  transition: .3s;
}


/* left icon */

.machine-config-form #wpforms-1455 .wpforms-field-label-inline:before {
  content: '';
  width: 14px;
  height: 14px;

  border: 2px solid #bbb;
  border-radius: 50%;

  flex-shrink: 0;

  transition: .3s;
}


/* hover */

.machine-config-form #wpforms-1455 li:hover .wpforms-field-label-inline {
  transform: translateY(-2px);
}


/* checked state */

.machine-config-form #wpforms-1455 input:checked+.wpforms-field-label-inline {
  border-color: #0068bd;

  color: #0068bd;

  font-weight: 700;
}


.machine-config-form #wpforms-1455 input:checked+.wpforms-field-label-inline:before {

  border-color: #0068bd;

  background:
    radial-gradient(circle,
      #0068bd 38%,
      white 42%);
}


/* ===== TEXT FIELD ===== */

.machine-config-form #wpforms-1455 input[type=text],
.machine-config-form #wpforms-1455 input[type=email],
.machine-config-form #wpforms-1455 textarea {
  height: 56px;
  border: 1px solid #e5e5e5 !important;
  border-radius: 14px;

  padding: 0 18px;

  font-size: 15px;

  transition: .3s;
}

.machine-config-form #wpforms-1455 textarea {
  padding-top: 15px;
}

.machine-config-form #wpforms-1455 input::placeholder,
.machine-config-form #wpforms-1455 textarea::placeholder {
  font-size: 14px;
  color: #ddd;
}

.machine-config-form #wpforms-1455 input:focus,
.machine-config-form #wpforms-1455 textarea:focus {

  border-color: #0068bd;

  box-shadow:
    0 0 0 4px rgba(0, 104, 189, .1);

  outline: none;
}


/* ===== BUTTON ===== */

.machine-config-form #wpforms-1455 .wpforms-submit-container {

  grid-column: 1/-1;
  margin-top: 10px;
}

.machine-config-form #wpforms-1455 button[type=submit] {

  width: 220px;
  height: 58px;

  border: none;
  border-radius: 40px;

  background:
    linear-gradient(135deg,
      #0068bd,
      #0091ff);

  color: #fff;

  font-size: 18px;
  font-weight: 700;

  transition: .3s;
}

.machine-config-form #wpforms-1455 button[type=submit]:hover {

  transform: translateY(-3px);

  box-shadow:
    0 15px 30px rgba(0, 104, 189, .25);
}


/* ===== MOBILE ===== */

@media(max-width:991px) {

  .machine-config-form #wpforms-1455 .wpforms-field-container {

    grid-template-columns: repeat(2, 1fr);

  }

}


@media(max-width:767px) {

  .machine-config-form #wpforms-1455 .wpforms-field-container {

    grid-template-columns: 1fr;

  }

}



.v_cont {
  position: relative;
  overflow: hidden;
}

.v_cont::before {
  content: "";
  display: block;
  padding-bottom: 37%;
}

.v_cont video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 560px) {
  .v_cont::before {
    padding-bottom: 70%;
  }
}

.play-button {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.9);
  color: #333;
  border: none;
  border-radius: 50%;
  width: .7rem;
  height: .7rem;
  font-size: 30px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
  z-index: 10;
}

.play-button:hover {
  background-color: #fff;
  transform: translate(-50%, -50%) scale(1.1);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.play-button.hidden {
  display: none;
}

/* 播放图标 */
.play-button::before {
  content: '▶';
  margin-left: 5px;
}

@media screen and (max-width:560px) {
  .play-button {
    width: 55px;
    height: 55px;
    font-size: 24px;
  }
}

.project-gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 220px;
  gap: 0.18rem;
}

.project-gallery-item {
  position: relative;
  display: block;
  overflow: hidden;
  background: #f5f5f5;
  color: #fff;
}

.project-gallery-item.gallery-large {
  grid-column: span 2;
  grid-row: span 2;
}

.project-gallery-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition:
    transform 0.8s cubic-bezier(0.2, 1, 0.3, 1),
    filter 0.45s ease;
}

.project-gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.28);
  opacity: 0;
  transition: opacity 0.45s ease;
}

.gallery-view {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  width: 54px;
  height: 54px;
  transform: translate(-50%, -50%) scale(0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--i_color, #d59a2f);
  color: #fff;
  border-radius: 50%;
  opacity: 0;
  transition: all 0.45s ease;
}

.gallery-view i {
  font-style: normal;
  font-size: 28px;
  line-height: 1;
  font-weight: 300;
}

.project-gallery-item:hover img {
  transform: scale(1.08);
  filter: brightness(0.9);
}

.project-gallery-item:hover::after {
  opacity: 1;
}

.project-gallery-item:hover .gallery-view {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}


/* ==================================================
   Product Showcase Section
================================================== */

.product-showcase-section {
  --product-blue: var(--i_color, #07164f);
  --product-yellow: var(--i_color2, #2a7cff);
  --product-red: #666;
  --product-text: #4f525b;
  --product-background: #f4f4fa;

  position: relative;
  overflow: hidden;
  background: var(--product-background);
}

.product-showcase-section .wrap {
  position: relative;
  z-index: 2;
}


/* ==================================================
   Section Title
================================================== */

.product-showcase-section .i_tit.left {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(400px, 1fr);
  align-items: end;
  gap: 60px;
  margin-bottom: 45px;
}

.product-showcase-section .i_tit.left h2 {
  margin: 0;
  color: var(--product-blue);
}

.product-showcase-section .i_tit.left p {
  max-width: 700px;
  margin: 0;
  color: #646873;
  font-size: 16px;
  line-height: 1.8;
}


/* ==================================================
   Product Layout
================================================== */

.product-showcase-list {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(400px, 0.95fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.product-showcase-item {
  min-width: 0;
  min-height: 320px;
  margin: 0;
  padding: 0;
}

.product-showcase-item.is-featured {
  grid-row: span 2;
  min-height: 668px;
}


/* 第4个及之后的产品分类 */

.product-showcase-item:nth-child(n + 4) {
  min-height: 340px;
}


/* ==================================================
   Product Card
================================================== */

.product-showcase-card {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  overflow: hidden;
  border-radius: 28px;
  background: #ffffff;
  box-shadow:
    0 12px 40px rgba(0, 93, 175, 0.035),
    inset 0 0 0 1px rgba(9, 24, 74, 0.02);
  text-decoration: none;
  isolation: isolate;
  transition:
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.45s ease;
}


/* ==================================================
   Product Text
================================================== */

.product-showcase-content {
  position: relative;
  z-index: 3;
  display: flex;
  width: 55%;
  height: 100%;
  box-sizing: border-box;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 55px 20px 55px 44px;
}

.product-showcase-number {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
  color: rgba(7, 22, 79, 0.38);
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.18em;
}

.product-showcase-number::after {
  content: "";
  width: 35px;
  height: 1px;
  margin-left: 12px;
  background: rgba(7, 22, 79, 0.22);
}

.product-showcase-content h3 {
  max-width: 480px;
  margin: 0;
  color: var(--product-blue);
  font-size: clamp(26px, 2.2vw, 30px);
  line-height: 1.08;
  font-weight: 800;
  font-style: italic;
  letter-spacing: -0.025em;
  text-transform: uppercase;
}

.product-showcase-content p {
  display: -webkit-box;
  max-width: 490px;
  margin: 28px 0 0;
  overflow: hidden;
  color: var(--product-text);
  font-size: 15px;
  line-height: 1.65;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}


/* ==================================================
   Featured Product
================================================== */

.product-showcase-item.is-featured .product-showcase-content {
  width: 58%;
  justify-content: center;
  padding: 70px 25px 70px 48px;
}

.product-showcase-item.is-featured .product-showcase-content h3 {
  font-size: clamp(38px, 3.2vw, 58px);
  line-height: 1.05;
}

.product-showcase-item.is-featured .product-showcase-content p {
  margin-top: 36px;
  font-size: 16px;
  line-height: 1.7;
}




/* ==================================================
   Product Image
================================================== */

.product-showcase-image {
  position: absolute;
  top: 8%;
  right: 3%;
  bottom: 8%;
  z-index: 2;
  display: flex;
  width: 44%;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.product-showcase-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 18px 18px rgba(11, 23, 57, 0.12));
  transform: scale(0.94);
  transition:
    transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.5s ease;
}

.product-showcase-item.is-featured .product-showcase-image {
  top: 17%;
  right: 4%;
  bottom: 8%;
  width: 43%;
}

.product-showcase-item.is-featured .product-showcase-image img {
  object-position: center bottom;
}


/* 空图片 */

.product-showcase-image-empty {
  display: flex;
  width: 80%;
  aspect-ratio: 1;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f2f3f7;
  color: #a4a8b1;
  font-size: 13px;
}


/* ==================================================
   Background Decoration
================================================== */

.product-showcase-decoration {
  position: absolute;
  right: -110px;
  bottom: -130px;
  z-index: 1;
  width: 350px;
  height: 350px;
  border-radius: 50%;
  background:
    radial-gradient(circle,
      rgba(0, 93, 175, 0.12),
      rgba(0, 93, 175, 0) 68%);
  pointer-events: none;
}

.product-showcase-item.is-featured .product-showcase-decoration {
  right: -160px;
  bottom: -170px;
  width: 520px;
  height: 520px;
}


/* ==================================================
   Hover
================================================== */

@media (hover: hover) {

  .product-showcase-card:hover {
    transform: translateY(-8px);
    box-shadow:
      0 25px 55px rgba(25, 35, 68, 0.1),
      inset 0 0 0 1px rgba(9, 24, 74, 0.025);
  }

  .product-showcase-card:hover .product-showcase-image img {
    transform: scale(1.02);
    filter: drop-shadow(0 24px 25px rgba(11, 23, 57, 0.18));
  }



}


/* ==================================================
   Laptop
================================================== */

@media (max-width: 1200px) {

  .product-showcase-list {
    grid-template-columns: minmax(0, 1.2fr) minmax(340px, 0.9fr);
    gap: 22px;
  }

  .product-showcase-item.is-featured {
    min-height: 620px;
  }

  .product-showcase-item {
    min-height: 299px;
  }

  .product-showcase-content {
    padding-left: 32px;
  }

  .product-showcase-item.is-featured .product-showcase-content {
    padding-left: 38px;
  }

  .product-showcase-content h3 {
    font-size: 27px;
  }

  .product-showcase-item.is-featured .product-showcase-content h3 {
    font-size: 45px;
  }

  .product-showcase-content p {
    font-size: 14px;
  }

}


/* ==================================================
   Tablet
================================================== */

@media (max-width: 991px) {

  .product-showcase-section .i_tit.left {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .product-showcase-list {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }

  .product-showcase-item.is-featured {
    grid-column: 1 / -1;
    grid-row: auto;
    min-height: 500px;
  }

  .product-showcase-item {
    min-height: 390px;
  }

  .product-showcase-item:not(.is-featured) .product-showcase-card {
    display: flex;
    flex-direction: column;
  }

  .product-showcase-item:not(.is-featured) .product-showcase-content {
    width: 100%;
    height: auto;
    min-height: 220px;
    justify-content: flex-start;
    padding: 32px 30px 15px;
  }

  .product-showcase-item:not(.is-featured) .product-showcase-image {
    position: absolute;
    top: auto;
    right: 8%;
    bottom: 15px;
    width: 48%;
    height: 170px;
  }

  .product-showcase-item:not(.is-featured) .product-showcase-content p {
    display: none;
  }

}


/* ==================================================
   Mobile
================================================== */

@media (max-width: 767px) {

  .product-showcase-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .product-showcase-section .i_tit.left {
    margin-bottom: 30px;
  }

  .product-showcase-section .i_tit.left p {
    font-size: 15px;
  }

  .product-showcase-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .product-showcase-item,
  .product-showcase-item.is-featured,
  .product-showcase-item:nth-child(n + 4) {
    grid-column: auto;
    min-height: 440px;
  }

  .product-showcase-card {
    border-radius: 20px;
  }

  .product-showcase-content,
  .product-showcase-item.is-featured .product-showcase-content,
  .product-showcase-item:not(.is-featured) .product-showcase-content {
    width: 100%;
    height: auto;
    min-height: 230px;
    justify-content: flex-start;
    padding: 30px 25px 20px;
  }

  .product-showcase-content h3,
  .product-showcase-item.is-featured .product-showcase-content h3 {
    max-width: 90%;
    font-size: 30px;
    line-height: 1.08;
  }

  .product-showcase-content p,
  .product-showcase-item.is-featured .product-showcase-content p {
    display: -webkit-box;
    max-width: 95%;
    margin-top: 18px;
    font-size: 14px;
    -webkit-line-clamp: 2;
  }

  .product-showcase-number {
    margin-bottom: 13px;
  }


  .product-showcase-image,
  .product-showcase-item.is-featured .product-showcase-image,
  .product-showcase-item:not(.is-featured) .product-showcase-image {
    top: auto;
    right: 5%;
    bottom: 15px;
    width: 50%;
    height: 185px;
  }

}


/* ==================================================
   Small Mobile
================================================== */

@media (max-width: 480px) {

  .product-showcase-item,
  .product-showcase-item.is-featured,
  .product-showcase-item:nth-child(n + 4) {
    min-height: 420px;
  }

  .product-showcase-content,
  .product-showcase-item.is-featured .product-showcase-content,
  .product-showcase-item:not(.is-featured) .product-showcase-content {
    padding: 26px 21px 18px;
  }

  .product-showcase-content h3,
  .product-showcase-item.is-featured .product-showcase-content h3 {
    font-size: 27px;
  }

  .product-showcase-content p,
  .product-showcase-item.is-featured .product-showcase-content p {
    max-width: 100%;
  }

  .product-showcase-image,
  .product-showcase-item.is-featured .product-showcase-image,
  .product-showcase-item:not(.is-featured) .product-showcase-image {
    right: 4%;
    bottom: 10px;
    width: 55%;
    height: 170px;
  }

}
