.modular {
  background: #fff;
}

.bg-multiply {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner .bg-wrap.mask {
}
.banner .bg-wrap.mask::after {
  content: "";
  background: #000;
  opacity: 0.1;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.banner {
  padding: 0;
  height: 1080rem;
}

.banner .bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.banner .dark {
  color: #fff;
}

.banner .text-box {
  margin-top: 430rem;
}
.banner .text-box .text {
  line-height: 1.2;
  color: #f2f2f2;
}
.banner .text-box .sub-text {
  text-transform: uppercase;
  letter-spacing: 0.38em;
  line-height: 1.8;
  margin-top: 30rem;
  color: #f2f2f2;
}

.banner .wrap {
  position: relative;
  z-index: 1;
}

.banner .swiper-container {
  height: 100%;
}

.modular1 {
  margin-left: 150rem;
  padding: 80rem;
  background: rgba(255, 255, 255, 0.8);
  margin-top: -280rem;
  position: relative;
  z-index: 2;
}

.modular1 .about-section {
  display: flex;
  gap: 200rem;
  align-items: start;
}

.modular1 .about-section .about-text {
  flex: 1;
}

.modular1 .about-text .tit {
  margin-top: 30rem;
  line-height: 1.2;
}

.modular .v-text p {
  line-height: 1.8;
  margin-bottom: 40rem;
}

.modular1 .about-stats {
  width: 760rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80rem 40rem;
}

.modular1 .about-stats .stat-item {
  padding-bottom: 30rem;
  border-bottom: 1px solid #76797b;
}

.modular2 {
  padding: 0;
  position: relative;
  z-index: 2;
}

.modular2:after,
.modular2:before {
  content: "";
  position: absolute;
  height: 20rem;
  top: -20rem;
  left: 0;
  background: #2e6b94;
  width: 0%;
  transition: 2s;
}
.modular2::before {
  width: 0%;
  background: #d2b895;
  z-index: 1;
  transform: 1s;
}

.modular2.on:after {
  width: 60%;
}

.modular2.on:before {
  width: 10%;
}

.modular2 .business-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  position: relative;
  z-index: 1;
}

.modular2 .business-section::after,
.modular2 .business-section::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #fff;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 5;
}

.modular2 .business-section::before {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 100%;
}

.modular2 .business-section .business-item {
  padding: 60rem;
  position: relative;
  color: #fff;
  min-height: 490rem;
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}

.modular2 .business-section .business-item a{
    color: #fff;
}

.modular2 .business-section .business-item .info {
  position: absolute;
  padding: 60rem;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #004962;
  box-sizing: border-box;
  visibility: hidden;
  opacity: 0;
  transition: 1s;
  transform: translate(0, 100%);
}

.modular2 .business-section .business-item .info .type {
  position: relative;
  flex: 1;
  letter-spacing: 0.5em;
  padding-top: 40rem;
}

/* .modular2 .business-section .business-item .info .type::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  border-top: 1px solid #fff;
  width: 4em;
} */

.modular2 .business-section .business-item .info p {
  margin: 24rem 0;
  line-height: 1.8;
  /* 两行省略 */
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.modular2 .video-bgs {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modular2 .video-bgs::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.1;
}
.modular2 .video-bgs video {
  visibility: hidden;
  opacity: 0;
  transition: 1s;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modular2 .video-bgs video.on {
  visibility: visible;
  opacity: 1;
}

.modular3 .wrap {
  display: flex;
  justify-content: flex-end;
  position: relative;
}

.modular3 .team-text {
  position: absolute;
  width: 890rem;
  top: 42rem;
  left: 0;
  height: calc(100% - 84rem);
  background: #fff;
  padding: 60rem;
  padding-right: 100rem;
  box-sizing: border-box;
}

.modular3 .team-text::after {
  content: "";
  background: #006d99;
  height: 0%;
  position: absolute;
  left: -185rem;
  width: 20rem;
  top: 0;
  transition: 3s;
  transition-delay: 0.5s;
}

.modular3 .team-text.on::after {
  height: 100%;
}

.modular .v-text h2 {
  position: relative;
  letter-spacing: 0.5em;
  /* padding-top: 30rem; */
  color: #004962;
}
.modular .v-text h2 em {
  color: #000;
  opacity: 0.2;
}
.modular .v-text h2 span {
  cursor: pointer;
  opacity: 0.2;
  color: #000;
}
.modular .v-text h2 span.on {
  color: #004962;
  cursor: default;
  opacity: 1;
}
/* .modular .v-text h2::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4em;
  border-top: 1px solid #000;
} */

.modular .v-text .tit {
  margin-top: 40rem;
  margin-bottom: 60rem;
  line-height: 1.2;
}

.modular6 .v-text .item {
  display: none;
}

.modular6 .v-text .item.on {
  display: block;
}

.modular3 .team-image {
  width: 988rem;
}

.modular3 .team-image img {
  width: 100%;
}

.modular3 .team-filter {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20rem;
}

.modular3 .dropdown {
  color: #000;
}

.modular3 .dropdown-toggle {
  border: 1px solid #a8a8a8;
  display: flex;
}

.modular3 .dropdown-toggle .tag {
  flex: 1;
}

.modular3 .team-letters {
  margin: 60rem 0;
  display: grid;
  grid-template-columns: repeat(13, 1fr);
  gap: 40rem;
}

.modular3 .team-letters a {
  color: #004962;
}
.modular3 .team-letters a.disabled {
  color: #a8a8a8;
  /* cursor: not-allowed;
  pointer-events: none; */
}

.dropdown-toggle {
  padding: 1em;
}
.modular4 {
  padding-top: 0;
}
.modular4 .stats-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  padding: 0 60rem;
  gap: 42rem;
}

.modular4 .stats-list .stats-item {
  padding-bottom: 20rem;
  border-bottom: 1px solid #7f7f7f;
}
.modular5 {
  min-height: 100vh;
}
.modular5 .wrap {
  position: relative;
  height: 100%;
}

.modular5 .info {
  width: 600rem;
  margin: auto;
  padding-top: 70rem;
}

.modular5 .awards-section .award-item {
  width: 692rem;
  height: 446rem;
  background: no-repeat center/cover;
  padding: 46rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: end;
  color: #fff;
  overflow: hidden;
  transition: 0.5s;
  pointer-events: all;
}

.modular5 .awards-section {
  position: absolute;
  /* height: 100%; */
  width: 100%;
  left: 0;
  top: 0;
  transform: translate(0, 120%);
  pointer-events: none;
}

.modular5 .awards-section .award-item .tit {
  margin-top: 40rem;
  margin-bottom: 14rem;
}

.modular5 .awards-section .award-item:nth-child(2) {
  position: relative;
  right: 0;
  left: 100%;
  transform: translate(-100%, 0);
  margin-top: -30rem;
}

.modular5 .awards-section .award-item:nth-child(3) {
  position: relative;
  left: 50%;
  margin-top: 160rem;
  transform: translate(-50%, 0);
}

.modular6 {
  padding-top: 0;
  margin-left: 190rem;
  display: flex;
}

.modular6 .left {
  width: 770rem;
  padding-top: 60rem;
}

.modular6 .right {
  flex: 1;
  overflow: hidden;
}

.modular6 .right .item {
  display: none;
}
.modular6 .right .item.on {
  display: block;
}

.modular6 .right .swiper-container {
  width: 130%;
}

.modular6 .right img {
  width: 100%;
  transition: 1s;
}

.modular6 .right .info {
  position: absolute;
  bottom: 0;
  left: -1px;
  width: 420rem;
  box-sizing: border-box;
  padding: 90rem 60rem 40rem 30rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: end;
  gap: 36rem;
}

.modular6 .right .info h2 {
  color: #76797b;
}

.modular6 .right .info p {
  line-height: 1.6;
}

.modular6 .right .swiper-slide {
  transform: scale(1.01);
}

.modular6 .right .swiper-slide::after {
  /* 顺序数字 */
  content: attr(data-index-formatted);
  position: absolute;
  left: 30rem;
  top: 60rem;
  color: #fff;
}

.modular7 {
  padding: 70rem 0;
  background: no-repeat center/cover;
}

.modular7 .v-text .tit {
  margin-bottom: 0rem;
}

.modular7 .wrap {
  display: flex;
  align-items: flex-end;
}

.modular7 .wrap .left {
  flex: 1;
}

@media screen and (min-width: 1024px) {
  .modular2 .business-section .business-item.on .info,
  .modular2 .business-section .business-item:hover .info {
    visibility: visible;
    opacity: 1;
    transform: translate(0, 0);
  }

  .modular5 .awards-section .award-item:hover {
    transform: translate(0, 0%) scale(1.1);
  }
  .modular5 .awards-section .award-item:nth-child(2):hover {
    transform: translate(-100%, 0) scale(1.1);
  }
  .modular5 .awards-section .award-item:nth-child(3):hover {
    transform: translate(-50%, 0) scale(1.1);
  }

  .modular6 .right .swiper-slide:hover img {
    transform: scale(0.98);
  }

  .modular2 .business-section .business-item .info {
    background-image: none !important;
  }
}

@media screen and (max-width: 1024px) {
  .modular2 .business-section .business-item .info {
    visibility: visible;
    opacity: 1;
    transform: translate(0, 0);
    background: no-repeat center/cover;
    color: #fff;
  }

  .modular2 .business-section .business-item .info > * {
    position: relative;
    z-index: 1;
  }

  .modular2 .business-section .business-item .info::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.2;
  }

  .modular1 {
    margin-left: 0;
    margin: 30rem;
    padding: 100rem 0;
  }

  .modular1 .about-section {
    flex-direction: column;
    gap: 60rem;
  }

  .modular1 .about-stats {
    width: auto;
  }
  .modular2 {
    background: none !important;
  }
  .modular2 .business-section {
    grid-template-columns: 1fr;
    gap: 0rem;
  }

  .modular2 .business-section::after,
  .modular2 .business-section::before {
    display: none;
  }

  .modular2 .business-section .business-item + .business-item {
    border-top: 1px solid #fff;
  }

  .modular2 .video-bgs {
    display: none;
  }

  .modular3 .team-image {
    width: auto;
  }

  .modular3 .team-text {
    width: auto;
    position: relative;
    top: 0;
    padding: 0;
  }

  .modular4 .stats-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 0;
    gap: 20rem;
  }

  .modular5 .awards-section .award-item:nth-child(3),
  .modular5 .awards-section .award-item:nth-child(2) {
    margin-top: 20rem;
    left: 0;
    transform: translate(0, 0);
  }
  .modular6 {
    flex-direction: column;
    gap: 60rem;
  }
  .modular6 {
    margin-left: 40rem;
    margin-right: 40rem;
  }

  .modular6 .left {
    width: auto;
  }

  .modular6 .right .swiper-container {
    width: 160%;
  }

  .modular7 .wrap {
    align-items: start;
    flex-direction: column;
    gap: 40rem;
  }

  .banner .text-box {
    margin-top: 650rem;
  }

  .modular3 .wrap {
    flex-direction: column;
    gap: 60rem;
  }
  .modular3 .team-text{
    background: none;
  }
.modular3 .team-image{
  position: absolute;
  left: 0;
  top: 0;
}
  .modular3 .team-image img {
    opacity: 0.1;
    transform: scale(1.4);
    filter: grayscale(100%); /* 100% 完全灰度，0% 保持原图 */
    -webkit-filter: grayscale(100%); /* 兼容 Safari、Chrome 旧版本 */
  }

  .modular4{
    padding-top: 50rem;
    background: #fff;
    position: relative;
    z-index: 1;
  }
.modular5{
  min-height: auto;
  padding-bottom: 40rem;
}
  .modular5 .info,
  .modular5{
    padding-top: 0;
  }

  .modular5 .awards-section{
    position: inherit;
    transform: translate(0, 0);
  }
}
