.banner {
  position: relative;
  overflow: hidden;
}

.banner-img {
  width: 1920px;
  height: 678px;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  margin-left: -960px;
}

.banner-content {
  padding: 134px 0 0;
}

.banner-content>h4 {
  font-weight: bold;
  font-size: 48px;
  color: #222222;
  line-height: 67px;
  text-align: center;
}

.banner-box {
  padding-top: 49px;
  display: flex;
  justify-content: space-between;
}

.banner-left {
  flex: 1;
  width: 1px;
  padding-top: 14px;
}

.banner-list {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 40px;
}

.banner-item {
  display: flex;
  align-items: center;
  width: 280px;
  height: 42px;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s linear;
  padding: 0 0 0 8px;
  font-weight: 400;
  font-size: 14px;
  color: #2C4068;
  line-height: 20px;
  position: relative;
  overflow: hidden;
}

.banner-item:hover {
  background: hsla(0, 0%, 100%, .8);
}

.banner-item::after {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: #fff;
  display: none;
  z-index: 2;
  border-radius: 4px;
}

.banner-item.active::after {
  display: block;
}

.banner-item.active::before {
  transition: opacity .3s ease-in-out;
  opacity: 1;
  -webkit-animation: animate-1 1.2s ease-in-out infinite;
  animation: animate-1 1.2s ease-in-out infinite;
}

@keyframes animate-1 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg)
  }

  to {
    -webkit-transform: translate(-50%, -50%) rotate(1turn);
    transform: translate(-50%, -50%) rotate(1turn)
  }
}

.banner-item::before {
  content: "";
  width: 360px;
  height: 360px;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
  background: linear-gradient(99deg, #59f 6.54%, #b39aff 58.36%, #eaa3cc 79.54%, #ffc048 93.46%);
  opacity: 0;
}

.banner-item>img {
  width: 20px;
  height: 20px;
  margin-right: 8px;
  position: relative;
  z-index: 3;
}

.banner-item>span {
  z-index: 3;
}

.banner-desc {
  font-weight: 400;
  font-size: 18px;
  color: #222222;
  line-height: 25px;
}

.banner-btns {
  margin-top: 68px;
  display: flex;
  align-items: center;
  gap: 24px;
}

.banner-free-btn {
  width: 140px;
  height: 43px;
  background: #2067FD;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 400;
  font-size: 14px;
  line-height: 43px;
  color: #FFFFFF;
  text-align: center;
}

.banner-free-btn:hover {
  background: linear-gradient(90deg, #2C46F1 0%, #532AFF 100%);
}

.banner-see-btn {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-weight: bold;
  font-size: 14px;
  color: #1D59D6;
  line-height: 20px;
}

.banner-see-btn img {
  transition: all 0.2s linear;
}

.banner-see-btn:hover img {
  transform: translateX(4px);
}

.banner-right {
  width: 564px;
  height: 354px;
  background: url(../images/index/m1-tab-bg.png) no-repeat center center / 100% 100%;
  position: relative;
  padding-top: 44px;
  overflow: hidden;
}

.banner-right-img {
  display: none;
  width: 534px;
  height: 291px;
  object-fit: cover;
  overflow: hidden;
  margin: 0 auto;
}

.banner-right-img.show {
  display: block;
  animation: rightImgAnimation 0.5s linear;
}

@keyframes rightImgAnimation {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  90% {
    opacity: 1;
    transform: translateY(-1px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.banner-tabs {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 24px;
}

.banner-tab {
  width: 292px;
  height: 147px;
  background: url(../images/index/m1-bg.png) no-repeat center center / 100% 100%;
  padding: 30px 0 0 20px;
  display: flex;
}

.banner-tab>img {
  width: 63px;
  height: 63px;
  margin-right: 14px;
}

.banner-tab-text p:nth-child(1) {
  font-weight: 800;
  font-size: 17px;
  color: #222222;
  line-height: 24px;
  margin-bottom: 8px;
}

.banner-tab-text p:nth-child(2) {
  width: 172px;
  font-weight: 400;
  font-size: 12px;
  color: #656D7D;
  line-height: 17px;
}

.model1 {
  padding: 67px 0 97px 0;
}

.m1-title {
  font-weight: bold;
  font-size: 30px;
  color: #222222;
  line-height: 42px;
  text-align: center;
  margin-bottom: 13px;
}

.m1-sub-title {
  width: 240px;
  height: 28px;
  background: url(../images/index/m2-t-bg.png) no-repeat center center / 100% 100%;
  margin: 0 auto 32px;
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 28px;
  text-align: center;
}

.m1-tabs {
  width: max-content;
  background: #F6FAFF;
  border-radius: 34px;
  border: 1px solid #E7F0FC;
  padding: 6px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 auto 28px;
}

.m1-tab {
  font-weight: 400;
  font-size: 16px;
  color: #222222;
  line-height: 22px;
  cursor: pointer;
  padding: 14px 49px;
  border-radius: 34px;
}

.m1-tab.active {
  background: #2067FD;
  color: #fff !important;
}

.m1-tab:hover {
  color: #2067FD;
}

.m1-list {
  position: relative;
  display: flex;
  justify-content: center;
}

.m1-content {
  position: relative;
}

.m1-item {
  width: 1050px;
  height: 489px;
  background: url(../images/index/m2-bg.png) no-repeat center center / 100% 100%;
  justify-content: space-between;
  padding: 20px 49px 0 62px;
  display: none;
}

.m1-item.show {
  display: flex;
}

.m1-item-left {
  padding-top: 39px;
}

.m1-item-title {
  font-weight: bold;
  font-size: 24px;
  color: #222222;
  line-height: 33px;
  margin-bottom: 39px;
}

.m1-item-p1 {
  font-weight: 400;
  font-size: 14px;
  color: #717F9A;
  line-height: 20px;
  padding-left: 24px;
  position: relative;
  margin-bottom: 32px;
}

.m1-item-p1::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  z-index: 1;
  width: 14px;
  height: 14px;
  border: 1px solid #A1BFFF;
  border-radius: 50%;
}

.m1-item-p1::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 4px;
  width: 8px;
  height: 8px;
  background: #2067FD;
  border-radius: 50%;
}

.m1-item-right {
  width: 586px;
  height: 440px;
}

.m1-prev,
.m1-next {
  position: absolute;
  top: 221px;
  width: 48px;
  height: 48px;
  background-image: url(../images/index/m2-btn-d.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  cursor: pointer;
  z-index: 4;
}

.m1-prev:hover,
.m1-next:hover {
  background-image: url(../images/index/m2-btn-h.png);
}

.m1-prev {
  left: 0;
}

.m1-next {
  right: 0;
  transform: rotate(180deg);
}

.model3 {
  position: relative;
  overflow: hidden;
  height: 820px;
}

.m3-img {
  width: 1920px;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  margin-left: -960px;
}

.m3-content {
  position: relative;
  z-index: 2;
  padding-top: 102px;
}

.m3-title {
  font-weight: bold;
  font-size: 30px;
  color: #222222;
  line-height: 42px;
  text-align: center;
}

.m3-sub-title {
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 20px;
  text-align: center;
  margin: 18px 0 44px;
}

.m3-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.m3-item {
  width: 294px;
  height: 160px;
  background: rgba(248, 250, 255, 0.8);
  border-radius: 12px;
  border: 1px solid #FFFFFF;
  padding: 35px 0 0 36px;
  display: flex;
}

.m3-item:hover {
  background: linear-gradient(351deg, rgba(31, 147, 235, 0.89) 0%, #008BFF 100%);
  box-shadow: 0px 6px 12px 1px rgba(5, 141, 254, 0.1);
  border: 1px solid #008BFF;
}

.m3-item-icon {
  width: 42px;
  height: 42px;
  background-image: url(../images/index/m3-icon.png);
  background-repeat: no-repeat;
  margin-right: 32px;
  background-position: var(--default-position);
}

.m3-item:hover .m3-item-icon {
  background-position: var(--hover-position);
}

.m3-item-text {
  padding-top: 6px;
}

.m3-item:hover .m3-item-text>p {
  color: #fff;
}

.m3-item-text>p:nth-child(1) {
  font-weight: bold;
  font-size: 22px;
  color: #222222;
  line-height: 24px;
  margin-bottom: 12px;
}

.m3-item-text>p:nth-child(2) {
  font-weight: 400;
  font-size: 12px;
  color: #959595;
  line-height: 20px;
}

.model4 {
  position: relative;
  overflow: hidden;
  height: 740px;
}

.m4-img {
  width: 1920px;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  margin-left: -960px;
}

.m4-content {
  position: relative;
  z-index: 2;
  padding-top: 24px;
}

.m4-title {
  font-weight: bold;
  font-size: 30px;
  color: #222222;
  line-height: 42px;
  text-align: center;
}

.m4-sub-title {
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 20px;
  text-align: center;
  margin: 17px 0 63px;
}

.m4-list {
  display: flex;
  justify-content: space-between;
}

.m4-item {
  width: 386px;
  height: 472px;
  background: url(../images/index/m4-item-bg.png) no-repeat center center / 100% 100%;
  padding-top: 56px;
}

.m4-item-title {
  font-weight: 800;
  font-size: 24px;
  color: #222222;
  line-height: 33px;
  padding-left: 41px;
  margin-bottom: 6px;
}

.m4-item-line {
  width: 305px;
  height: 19px;
  margin: 0 0 9px 41px;
}

.m4-item-desc {
  width: 305px;
  height: 68px;
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 24px;
  text-align: justify;
  margin: 0 0 48px 41px;
}

.m4-item-img {
  display: block;
  width: 366px;
  height: 223px;
  margin: 0 auto;
}

.model5 {
  height: 806px;
}

.m5-content {
  padding-top: 96px;
}

.m5-title {
  font-weight: bold;
  font-size: 30px;
  color: #222222;
  line-height: 42px;
  text-align: center;
  margin-bottom: 18px;
}

.m5-sub-title {
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 20px;
  text-align: center;
  margin-bottom: 44px;
}

.m5-box {
  width: 1200px;
  height: 515px;
  background: url(../images/index/m5-bg.png) no-repeat center center / 100% 100%;
  display: flex;
  padding-top: 11px;
}

.m5-left {
  flex: 1;
  width: 1px;
  padding: 42px 0 0 62px;
}

.m5-right {
  width: 572px;
  height: 448px;
}

.m5-p1 {
  font-weight: bold;
  font-size: 36px;
  color: #222222;
  line-height: 50px;
  margin-bottom: 13px;
}

.m5-p2 {
  font-weight: 400;
  font-size: 14px;
  color: #222222;
  line-height: 20px;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
}

.m5-p3 {
  margin: 32px 0 16px 0;
  padding-top: 34px;
  width: 504px;
  border-top: 1px solid #fff;
  font-weight: bold;
  font-size: 28px;
  color: #222222;
  line-height: 40px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.m5-tags {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  width: 504px;
}

.m5-tag {
  background: rgba(255, 255, 255, 0.48);
  border-radius: 6px 6px 6px 6px;
  border: 1px solid #fff;
  padding: 13px 18px;
  font-weight: 400;
  font-size: 14px;
  color: #2C4068;
  line-height: 24px;
}

.model6 {
  height: 780px;
  position: relative;
  overflow: hidden;
}

.m6-img {
  width: 1920px;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  margin-left: -960px;
}

.m6-content {
  position: relative;
  z-index: 2;
  padding-top: 6px;
}

.m6-title {
  font-weight: bold;
  font-size: 30px;
  color: #222222;
  line-height: 42px;
  text-align: center;
  margin-bottom: 36px;
}

.m6-tabs {
  width: max-content;
  background: #F9FCFF;
  border-radius: 34px;
  border: 1px solid #E6EFF5;
  padding: 6px;
  display: flex;
  align-items: center;
  gap: 78px;
  margin: 0 auto 28px;
}

.m6-tab {
  font-weight: 400;
  font-size: 16px;
  color: #222222;
  line-height: 22px;
  cursor: pointer;
  padding: 14px 49px;
  border-radius: 34px;
}

.m6-tab.active {
  background: #1A66E8;
  color: #fff !important;
}

.m6-tab:hover {
  color: #1A66E8;
}

.m6-list {
  width: 1200px;
  height: 387px;
  background: #FFFFFF;
  border-radius: 20px;
}

.m6-item {
  width: 100%;
  height: 100%;
  display: none;
  justify-content: space-between;
  padding: 34px 34px 0 62px;
}

.m6-item.show {
  display: flex;
}

.m6-left {
  padding-top: 20px;
}

.m6-left-title {
  font-weight: bold;
  font-size: 24px;
  color: #222222;
  line-height: 33px;
  margin-bottom: 26px;
}

.m6-left-p1 {
  font-weight: 400;
  font-size: 14px;
  color: #8B919F;
  line-height: 26px;
  text-align: justify;
  width: 529px;
  margin-bottom: 28px;
}

.m6-right {
  width: 494px;
  height: 320px;
}

.m6-line {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  font-weight: bold;
  font-size: 14px;
  color: #758BB9;
  line-height: 20px;
  margin-top: 66px;
}

.m6-line-icon {
  width: 309px;
  height: 1px;
  background-image: url(../images/index/m6-line.png);
  background-repeat: no-repeat;
  background-position: var(--default-position);
}

.m6-list-img {
  width: 1200px;
  height: 47px;
  margin: 22px auto 0;
}