.hover-bg {
  position: relative;
  z-index: 2;
  overflow: hidden;
  transition: var(--duration);
}
.hover-bg::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
  height: 100%;
  background-color: var(--theme);
  z-index: -1;
  transition: var(--duration);
}
.hover-bg:hover {
  color: #fff !important;
}
.hover-bg:hover::after {
  width: 100%;
  left: 0;
  right: auto;
}
.a-index-banner {
  position: relative;
  overflow: hidden;
  z-index: 10;
}
.a-index-banner .index-banner {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
  user-select: none;
}
.a-index-banner .index-banner .swiper-slide {
  position: relative;
  overflow: hidden;
}
.a-index-banner .index-banner .swiper-slide .ani {
  transition-timing-function: linear;
}
.a-index-banner .index-banner .swiper-slide .slide-content .pic {
  width: 100%;
}
.a-index-banner .index-banner .swiper-slide .slide-content .pic img,
.a-index-banner .index-banner .swiper-slide .slide-content .pic video {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center center;
}
.a-index-banner .index-banner .swiper-slide .slide-content .text {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 18.0952381%;
  white-space: nowrap;
}
.a-index-banner .index-banner .swiper-slide .slide-content .text .slide-title {
  font-size: var(--font55);
  font-weight: 500;
  text-align: center;
  color: #ffffff;
  line-height: 1;
  margin-bottom: 8px;
}
.a-index-banner .index-banner .swiper-slide .slide-content .text .slide-sub-title {
  font-size: var(--font18);
  font-weight: 500;
  text-align: center;
  color: #ffffff;
  line-height: 1;
}
.a-index-banner .index-banner .swiper-slide .case-content {
  width: 100%;
  position: relative;
  margin-top: -1.67rem;
  z-index: 10;
  margin-bottom: max(0.73rem, var(--space));
}
.a-index-banner .index-banner .swiper-slide .case-content .more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(2.35rem, 200px);
  height: max(0.44rem, 40px);
  background: #2b01f8;
  border-radius: 8px;
  box-shadow: 0px 0px 19px 0px rgba(0, 0, 0, 0.46), -1px 0px 0px 1px rgba(0, 0, 0, 0.15) inset;
  font-size: var(--font24);
  font-weight: 500;
  color: #ffffff;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: max(0.34rem, 20px);
  overflow: hidden;
}
.a-index-banner .index-banner .swiper-slide .case-content .more-btn::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 40%;
  background-image: linear-gradient(to top, rgba(255, 255, 255, 0.3), transparent);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item {
  display: flex;
  align-items: flex-start;
  padding: 10px 11px;
  padding-right: max(0.21rem, 11px);
  background: #ffffff;
  border-radius: 4px;
  box-shadow: -7px 0px 0.71rem 7px rgba(0, 0, 0, 0.15);
  position: relative;
  overflow: hidden;
  /* 8-29 批改 */
  width: 31.616%;
  flex-shrink: 0;
}
/* 8-29 批改 */
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item:not(:last-child) {
  margin-right: calc((100% - (31.616% * 3)) / 2);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item:hover .case-pic img {
  transform: scale(1.05);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item:hover .case-text .case-title,
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item:hover .case-text .case-sub-title {
  color: var(--theme);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-pic {
  width: 83.02469136%;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  margin-right: max(0.1rem, 5px);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-pic::after {
  content: "";
  display: block;
  padding-bottom: 56.133829%;
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-pic img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: var(--duration);
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-text {
  display: flex;
  margin-left: auto;
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-text .case-title {
  font-size: 10px;
  font-weight: normal;
  color: #555555;
  writing-mode: vertical-lr;
  line-height: 1;
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-text .case-sub-title {
  font-size: var(--font24);
  font-weight: normal;
  color: #555555;
  writing-mode: vertical-lr;
  margin-left: 6px;
  line-height: 1;
}
.a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-panel {
  position: absolute;
  left: 0;
  top: max(0.21rem, 15px);
  width: fit-content;
  min-width: 85px;
  max-width: 100px;
  height: 22px;
  background-color: #2b01f8;
  font-size: var(--font14);
  font-weight: 400;
  color: #ffffff;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  overflow-wrap: break-word;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: 9px;
  padding-right: 3px;
}
.a-index-banner .index-banner .swiper-slide .case-content::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-image: url(/static/home/images/index-banner-mask.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center 15%;
  z-index: -1;
}
.a-index-banner .index-banner .swiper-pagination {
  position: absolute;
  right: auto;
  top: 41.9047619%;
  bottom: auto;
  transform: translateY(-50%);
  left: max(0.33rem, 20px);
  display: flex;
  flex-direction: column;
  width: fit-content;
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet {
  --w: 15px;
  --center: calc (var(--w) / 2);
  width: var(--w);
  height: var(--w);
  margin: 0;
  position: relative;
  border-radius: 50%;
  background-color: transparent;
  opacity: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet:not(:last-child) {
  margin-bottom: max(0.1rem, 5px);
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 42.85714286%;
  height: 42.85714286%;
  background: #ffffff;
  border: 1px solid #999999;
  opacity: 0;
  transition: var(--duration);
  z-index: 2;
  border-radius: 50%;
  box-sizing: border-box;
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet .circle {
  width: var(--w);
  height: var(--w);
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet .progress,
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet .progressCircle {
  stroke-linecap: round;
  cx: calc(var(--w) / 2);
  cy: calc(var(--w) / 2);
  r: calc(calc(var(--w) / 2) - 1px);
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet .progress {
  fill: none;
  stroke-width: 1px;
  stroke: #999;
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet .progressCircle {
  stroke-dasharray: var(--l);
  stroke-dashoffset: var(--l);
  fill: none;
  stroke: var(--theme);
  stroke-width: 1px;
  transform: rotate(-90deg);
  transform-origin: var(--center) var(--center);
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  opacity: 1;
}
.a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .progressCircle {
  stroke-dasharray: var(--l);
  stroke-dashoffset: var(--l);
  stroke-linecap: round;
  animation: fillProgress var(--time) linear forwards;
}
.a-index-banner .mask-bg {
  display: none;
}
@media (min-width: 1921px) {
  .a-index-banner .mask-bg {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100% - 1.67rem);
    z-index: -1;
    background-size: 100% 100%;
    background-repeat: no-repeat;
  }
  .a-index-banner .mask-bg::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(204, 204, 204, 0.2);
    backdrop-filter: blur(15px);
  }
  .a-index-banner .mask-bg .liner {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10%;
  }
  .a-index-banner .mask-bg .liner::before,
  .a-index-banner .mask-bg .liner::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 100%;
    width: calc((100% - 1920px) / 2);
    background-image: linear-gradient(to top, #ffffff, transparent);
    background-size: auto 100%;
    background-position: center center;
  }
  .a-index-banner .mask-bg .liner::before {
    left: 0;
  }
  .a-index-banner .mask-bg .liner::after {
    right: 0;
  }
}
@keyframes fillProgress {
  from {
    stroke-dashoffset: var(--l);
  }
  to {
    stroke-dashoffset: 0;
  }
}
.a-index-news {
  margin-bottom: max(0.5rem, 30px);
}
.a-index-news .news-top-line {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: max(0.41rem, 30px);
}
.a-index-news .news-top-line .index-title .title-en {
  font-size: var(--font16);
  font-weight: 700;
  color: #333333;
  line-height: 1;
}
.a-index-news .news-top-line .index-title .title-zh {
  font-size: var(--font58);
  font-weight: 700;
  text-align: center;
  color: #333333;
  margin-top: 11px;
  line-height: 1;
}
.a-index-news .news-top-line .more {
  width: 86px;
  height: 21px;
  border: 1px solid #666666;
  border-radius: 3px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: normal;
  color: #333333;
  line-height: 1;
}
.a-index-news .news-panel {
  display: flex;
  justify-content: space-between;
}
.a-index-news .news-panel .panel-left {
  width: 52.39786856%;
  flex-shrink: 0;
}
.a-index-news .news-panel .panel-left .item {
  display: flex;
}
.a-index-news .news-panel .panel-left .item:hover .pic img {
  transform: scale(1.05);
}
.a-index-news .news-panel .panel-left .item:hover .text .t-title {
  color: var(--theme);
}
.a-index-news .news-panel .panel-left .item:not(:last-child) {
  margin-bottom: max(0.36rem, 20px);
}
.a-index-news .news-panel .panel-left .item .pic {
  width: 200px;
  flex-shrink: 0;
  position: relative;
  border-radius: 3px;
  overflow: hidden;
}
.a-index-news .news-panel .panel-left .item .pic::after {
  content: "";
  display: block;
  padding-bottom: 60%;
}
.a-index-news .news-panel .panel-left .item .pic img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: var(--duration);
}
.a-index-news .news-panel .panel-left .item .text {
  flex: 1;
  min-width: 0;
  margin-left: max(0.17rem, 10px);
}
.a-index-news .news-panel .panel-left .item .text .t-title {
  font-size: var(--font24);
  font-weight: normal;
  text-align: left;
  color: #333333;
  line-height: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
  overflow: hidden;
  overflow-wrap: break-word;
  transition: var(--duration);
}
.a-index-news .news-panel .panel-left .item .text .t-desc {
  margin-top: 10px;
  font-size: 12px;
  font-weight: normal;
  color: #999999;
  line-height: 1.16666667;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
  overflow: hidden;
  overflow-wrap: break-word;
}
.a-index-news .news-panel .panel-left .item .text .t-time {
  line-height: 1;
  font-size: var(--font14);
  font-weight: normal;
  text-align: left;
  color: #999999;
  margin-top: max(0.2rem, 10px);
}
.a-index-news .news-panel .panel-right {
  width: 43.96092362%;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.a-index-news .news-panel .panel-right .news-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: max(0.15rem, 10px);
}
.a-index-news .news-panel .panel-right .news-item:nth-child(4n) {
  margin-bottom: 0.3rem;
}
.a-index-news .news-panel .panel-right .news-item:hover .text {
  color: var(--theme);
}
.a-index-news .news-panel .panel-right .news-item .text {
  font-size: var(--font14);
  font-weight: normal;
  text-align: left;
  color: #333333;
  flex: 1;
  margin-right: 18px;
  min-width: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  overflow-wrap: break-word;
  transition: var(--duration);
}
.a-index-news .news-panel .panel-right .news-item .time {
  font-size: var(--font14);
  font-weight: normal;
  text-align: left;
  color: #999999;
  transition: var(--duration);
}
/* 解决规划弹窗 */
.a-index-solution-mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
  display: none;
}
.a-index-solution-mask .content {
  max-width: 1024px;
  width: 76%;
  height: auto;
  max-height: 60vh;
  overflow-y: auto;
  box-shadow: 0px 0px max(0.5rem, 20px) 0px #000000;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  padding-top: max(0.22rem, 20px);
  padding-bottom: max(0.61rem, 20px);
  padding-left: max(0.55rem, 15px);
  padding-right: max(0.26rem, 15px);
}
.a-index-solution-mask .content::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  background-color: #ccc;
}
.a-index-solution-mask .content::-webkit-scrollbar-thumb {
  background-color: var(--theme);
}
.a-index-solution-mask .content .close {
  display: block;
  width: fit-content;
  margin-left: auto;
  user-select: none;
  cursor: pointer;
  width: max(0.35rem, 25px);
  height: max(0.35rem, 25px);
  position: relative;
}
.a-index-solution-mask .content .close img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: var(--duration);
}
.a-index-solution-mask .content .close .default {
  opacity: 1;
}
.a-index-solution-mask .content .close .hover {
  opacity: 0;
}
.a-index-solution-mask .content .close:hover .default {
  opacity: 0;
}
.a-index-solution-mask .content .close:hover .hover {
  opacity: 1;
}
.a-index-solution-mask .content .describe {
  font-weight: 400;
  font-size: var(--font19);
  color: #333333;
  line-height: 1;
  margin-bottom: 9px;
}
.a-index-solution-mask .content .title {
  font-weight: bold;
  font-size: var(--font51);
  color: #333333;
  line-height: 1;
  margin-bottom: max(0.35rem, 20px);
}
.a-index-solution-mask .content .main {
  display: flex;
  align-items: flex-start;
  padding-right: 0.17rem;
}
.a-index-solution-mask .content .main .text {
  width: 60.79913607%;
  flex-shrink: 0;
}
.a-index-solution-mask .content .main .text span,
.a-index-solution-mask .content .main .text div,
.a-index-solution-mask .content .main .text h6,
.a-index-solution-mask .content .main .text * {
  max-width: 100%;
  overflow-wrap: break-word;
  font-weight: bold;
  font-size: var(--font16);
  color: #333333;
}
.a-index-solution-mask .content .main .text h6 {
  font-weight: bold;
  margin-bottom: 6px;
}
.a-index-solution-mask .content .main .text p {
  font-weight: normal;
}
.a-index-solution-mask .content .main .pic {
  width: 33.36933045%;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  margin-left: auto;
}
.a-index-solution-mask .content .main .pic::after {
  content: "";
  display: block;
  padding-bottom: 59.54692557%;
}
.a-index-solution-mask .content .main .pic img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--duration);
  mix-blend-mode: multiply;
}
.a-index-solution-mask .content .main .pic:hover img {
  transform: scale(1.05);
}
.phone-index-nav {
  display: none;
}
@media (max-width: 1450px) {
  .a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-pic::after {
    padding-bottom: 45%;
  }
}
@media (max-width: 768px) {
  .a-index-banner .index-banner .swiper-slide .case-content {
    position: relative;
    z-index: 10;
    left: auto;
    bottom: auto;
    transform: none;
  }
  .a-index-banner .index-banner .swiper-slide .slide-content .pic img {
    min-height: 340px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .case-list {
    margin-top: 15px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .more-btn {
    width: 150px;
    height: 35px;
    margin-bottom: 0;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-text .case-sub-title {
    font-size: var(--font18);
  }
  .a-index-banner .index-banner .swiper-slide .case-content .case-list .case-item .case-text .case-title {
    font-size: var(--font14);
  }
}
@media (max-width: 576px) {
  .a-index-banner {
    margin-bottom: var(--space);
  }
  .a-index-banner .index-banner .swiper-pagination .swiper-pagination-bullet {
    --w: 11px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .case-list {
    display: none;
  }
  .a-index-banner .index-banner .swiper-slide .slide-content .pic img,
  .a-index-banner .index-banner .swiper-slide .slide-content .pic video {
    min-height: 260px;
  }
  .a-index-banner .index-banner .swiper-pagination {
    top: 50%;
    left: 10px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content {
    transform: translateY(0);
    margin-bottom: 0;
    position: absolute;
    margin-top: 0;
    bottom: 0.6rem;
  }
  .a-index-banner .index-banner .swiper-slide .slide-content .text {
    top: 30%;
  }
  .a-index-banner .index-banner .swiper-slide .slide-content .text .slide-title {
    font-size: 18px;
    margin-bottom: 6px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .case-wrap {
    display: none;
  }
  .a-index-banner .index-banner .swiper-slide .case-content .more-btn {
    height: 30px;
    line-height: 1;
    width: 130px;
    font-size: 14px;
  }
  .a-index-banner .index-banner .swiper-slide .case-content::after {
    display: none;
  }
  .a-index-news .news-panel {
    flex-wrap: wrap;
  }
  .a-index-news .news-panel .panel-left {
    width: 100%;
  }
  .a-index-news .news-panel .panel-right {
    width: 100%;
    margin-top: 30px;
  }
  .a-index-news .news-panel .panel-left .item .pic {
    width: 130px;
  }
  .a-index-news .news-top-line .index-title .title-zh {
    font-size: 20px;
  }
  .a-index-news .news-panel .panel-left .item .text .t-title {
    font-size: 16px;
  }
  .a-index-news .news-panel .panel-right .news-item:nth-child(4n) {
    margin-bottom: max(0.15rem, 10px);
  }
  .a-index-news .news-panel .panel-left .item .text .t-desc {
    -webkit-line-clamp: 1;
  }
  /* 首页导航 */
  .phone-index-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #e5e5e5;
  }
  .phone-index-nav .nav-item {
    width: 25%;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 0.6rem;
    text-align: center;
    font-weight: 500;
    color: #000000;
    white-space: nowrap;
  }
  .phone-index-nav .nav-item.current {
    background-color: var(--theme);
    color: #fff;
  }
}
<!--耗时1776073826.7172秒-->