header {
  width: 100%;
  height: 772px;
  background: url(../images/index/banner.jpg) no-repeat top center;
}

.banner {
  position: relative;
  width: 100%;
  height: 692px;
}

.banner .text1 {
  position: absolute;
  font-size: 36px;
  top: 90px;
  left: 180px;
  color: #fff;
  letter-spacing: 6px;
}

.banner .text2 {
  position: absolute;
  font-size: 36px;
  top: 170px;
  left: 180px;
  color: #fff;
  letter-spacing: 6px;
}

.banner .text3 {
  position: absolute;
  font-size: 24px;
  top: 180px;
  left: 510px;
  color: #fff;
  letter-spacing: 4px;
}

.banner .text4 {
  position: absolute;
  font-size: 24px;
  top: 260px;
  left: 180px;
  color: #fff;
  letter-spacing: 2px;
}

.banner img {
  position: absolute;
  top: 246px;
  left: 820px;
}

.about {
  width: 100%;
  height: 771px;
  background: url(../images/index/bgc.png) no-repeat top center;
}

.about .title_en {
  position: absolute;
  font-size: 40px;
  top: 170px;
  left: 60px;
  color: #2e5294;
  letter-spacing: 5px;
  font-weight: bold;
}

.about .title_zh {
  position: absolute;
  font-size: 35px;
  top: 275px;
  left: 60px;
  color: #000;
  letter-spacing: 4px;
}

.about .text {
  position: absolute;
  font-size: 16px;
  width: 480px;
  top: 368px;
  left: 60px;
  color: #000;
  letter-spacing: 4px;
  line-height: 40px;
}

.about .icon.arrow {
  position: absolute;
  top: 284px;
  left: 235px;
  width: 62px;
  height: 32px;
  background-position-x: -134px;
  background-position-y: -382px;
}
.about .pic {
  position: absolute;
  top: 82px;
  left: 600px;
  height: 590px;
}
.about .pic img {
  height: 590px;
}
.culture {
  width: 100%;
  height: 890px;
  background: url(../images/index/culture.jpg) no-repeat top center;
}

.culture .blue_bg {
  width: 530px;
  height: 890px;
  background-color: #2a5298cc;
}

.culture .title_en {
  position: absolute;
  font-size: 48px;
  top: 105px;
  left: 70px;
  color: #fff;
  letter-spacing: 1px;
  font-weight: bold;
}

.culture .title_zh {
  position: absolute;
  font-size: 30px;
  top: 170px;
  left: 350px;
  color: #fff;
  letter-spacing: 5px;
}

.culture .text1,
.culture .text2,
.culture .text3 {
  position: absolute;
  font-size: 24px;
  top: 305px;
  left: 55px;
  color: #fff;
  letter-spacing: 2px;
  line-height: 48px;
}

.culture .text2 {
  top: 490px;
}

.culture .text3 {
  top: 675px;
}

.culture .line {
  position: absolute;
  width: 1100px;
  left: 50px;
  top: 415px;
  border-bottom: 1px solid #fff9;
}

.culture .line.second {
  top: 600px;
}

.culture .line.third {
  top: 785px;
}

.culture .subTitle {
  position: absolute;
  width: 137px;
  height: 46px;
  background-color: #2a5298cc;
  top: 285px;
  left: 1000px;
  font-size: 24px;
  color: #fff;
  line-height: 46px;
  text-align: center;
}

.culture .subTitle:after {
  position: absolute;
  left: -46px;
  border-top: 23px solid transparent;
  border-left: 23px solid transparent;
  border-right: 23px solid #2a5298cc;
  border-bottom: 23px solid #2a5298cc;
  content: "";
}

.culture .subTitle.second {
  top: 470px;
}

.culture .subTitle.third {
  top: 655px;
}

.capabilities {
  width: 100%;
  height: 1000px;
  background: url(../images/index/capabilities.jpg) no-repeat top center;
}

.capabilities .title_en {
  position: absolute;
  font-size: 30px;
  top: 130px;
  left: 425px;
  color: #fff;
  letter-spacing: 1px;
}

.capabilities .title_zh {
  position: absolute;
  font-size: 60px;
  top: 100px;
  left: 800px;
  color: #fff;
  letter-spacing: 5px;
}

.capabilities .text {
  position: absolute;
  font-size: 16px;
  width: 1080px;
  top: 265px;
  left: 60px;
  color: #fff;
  letter-spacing: 1px;
  line-height: 48px;
}

.capabilities ul {
  width: 100%;
  position: absolute;
  display: flex;
  top: 840px;
  justify-content: space-evenly;
}

.capabilities ul li {
  color: #a5935f;
}

.capabilities ul li div {
  display: block;
}

.capabilities ul li div .upper {
  font-size: 80px;
  font-weight: bold;
}

.capabilities ul li div .lower {
  font-size: 30px;
}

.capabilities ul li .item {
  font-size: 15px;
  font-weight: 550;
}

.strategy {
  width: 100%;
  height: 1284px;
  background: url(../images/index/strategy.jpg) no-repeat center 114px;
}

.strategy .title_zh {
  position: absolute;
  font-size: 60px;
  top: 103px;
  left: 400px;
  color: #2e5294;
  letter-spacing: 5px;
}

.strategy .title_en {
  position: absolute;
  font-size: 30px;
  top: 210px;
  left: 400px;
  color: #2e5294;
  letter-spacing: 1px;
}

.strategy .icon.arrow {
  position: absolute;
  top: 126px;
  left: 684px;
  width: 77px;
  height: 44px;
  background-position-x: -262px;
  background-position-y: -376px;
}

.strategy ul {
  width: 100%;
  position: absolute;
  display: flex;
  top: 350px;
  justify-content: space-between;
}

.strategy ul li {
  width: 380px;
  height: 740px;
  background-color: #fafafa;
}

.strategy ul li.two {
  background-color: #2e5294;
  animation-delay: 0.6s;
}
.strategy ul li.three{
  animation-delay: 1s;

}
.strategy ul li img {
  width: 380px;
}

.strategy ul li.two img {
  position: absolute;
  bottom: 0;
}

.strategy ul li .title {
  display: block;
  font-size: 24px;
  color: #2e5294;
  letter-spacing: 1px;
  line-height: 90px;
  text-align: center;
}

.strategy ul li.two .title {
  color: #fff;
}

.strategy ul li .line {
  display: block;
  width: 200px;
  margin: 0 auto 40px auto;
  border-bottom: 1px solid #2e5294;
}

.strategy ul li.two .line {
  border-bottom: 1px solid #fff;
}

.strategy ul li p {
  padding: 0 35px;
  font-size: 16px;
  color: #000;
  letter-spacing: 1px;
  line-height: 34px;
}

.strategy ul li.two p {
  color: #fff;
}
.talent {
  width: 100%;
  height: 240px;
  background: url(../images/index/talent_title.jpg) no-repeat;
  background-size: cover;
}

.talent .title_zh {
  position: absolute;
  font-size: 60px;
  top: 16px;
  left: 125px;
  color: #fff;
  letter-spacing: 6px;
}

.talent .title_en {
  position: absolute;
  font-size: 24px;
  top: 110px;
  left: 125px;
  color: #fff;
  letter-spacing: 6px;
}

.talent .line_top {
  position: absolute;
  width: 365px;
  top: 138px;
  left: 580px;
  border-bottom: 1px solid #fff;
}

.talent .subtitle_zh {
  position: absolute;
  font-size: 36px;
  top: 150px;
  left: 580px;
  color: #fff;
  letter-spacing: 8px;
}

.talent + .talent {
  width: 100%;
  height: 960px;
  background: url(../images/index/talent/talent_bgc.png) no-repeat;
  background-size: cover;
}

.talent ul {
  padding: 20px 35px;
  /* display: flex;
  flex-wrap: wrap;
  justify-content: space-between; */
}

.talent ul li {
  width: 470px;
  height: 486px;
  padding-top: 128px;
}

.talent ul li .name {
  display: block;
  padding-top: 30px;
  font-size: 18px;
  color: #2e5294;
}

.talent ul li .title {
  font-size: 14px;
  color: #2e5294;
}

.talent ul li .content {
  display: flex;
  height: 260px;
  font-size: 13px;
  line-height: 20px;
  align-items: center;
}

.talent ul li .content p {
  margin-bottom: 10px;
  letter-spacing: 2px;
}

.talent ul li .line {
  display: block;
  border-bottom: 1px solid #2e5294;
}

.talent .triangles {
  margin: 60px 0 0 45px;
}

.talent .triangles span {
  display: inline-block;
  width: 31px;
  height: 29px;
  background: url(../images/index/triangle.png);
  margin-right: 15px;
}

.talent_list {
  width: 100%;
  height: 3384px;
  padding: 60px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.talent_list .top {
  position: relative;
  width: 950px;
  height: 250px;
  background-image: url(../images/index/talent/introduction_bgc.png);
}
.talent_list .teacher {
  margin-bottom: 60px;
}
.talent_list .top img {
  position: absolute;
  height: 210px;
  bottom: 0;
  left: 26px;
}
.talent_list .top .text_title {
  position: absolute;
  font-size: 20px;
  font-weight: 550;
  top: 36px;
  left: 322px;
  color: #2e5294;
  letter-spacing: 4px;
  line-height: 40px;
}
.talent_list .top .text_title .name {
  font-size: 30px;
}
.talent_list .introduction {
  width: 950px;
  font-size: 18px;
  line-height: 30px;
  letter-spacing: 4px;
  color: #fff;
  margin-top: 20px;
}
footer {
  width: 100%;
  height: 602px;
  background: url(../images/index/footer_bg.jpg) no-repeat center center;
}

footer .title_zh {
  position: absolute;
  font-size: 30px;
  top: 60px;
  left: 115px;
  color: #2e5294;
  letter-spacing: 4px;
}

footer .line_top {
  position: absolute;
  width: 50px;
  top: 80px;
  left: 250px;
  color: #2e5294;
}

footer .title_en {
  position: absolute;
  font-size: 14px;
  top: 105px;
  left: 115px;
  color: #2e5294;
  letter-spacing: 4px;
}

footer ul {
  position: absolute;
  display: flex;
  top: 185px;
  left: 105px;
  flex-wrap: wrap;
}

footer ul li {
  margin-right: 145px;
  margin-bottom: 60px;
}

footer .text {
  position: absolute;
  top: 541px;
  left: 100px;
  font-size: 14px;
  letter-spacing: 2px;
}

footer .national_emblem {
  position: absolute;
  top: 536px;
  left: 592px;
}



.animated-text {
  animation: fadeInRight 1s ease-out forwards;
  opacity: 0; /* 初始状态隐藏 */
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(60px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.animated-ai {
  animation: fadeInUp 1s ease-out forwards;
  opacity: 0; /* 初始状态隐藏 */
}

.fade-in-img {
  opacity: 0; /* 初始透明 */
  animation: fadeIn 1.8s ease-in forwards;
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.slide-up-box {
  opacity: 0;
  transform: translateY(50px); /* 初始位置：从下方偏移 50px */
  animation: slideUp 1.4s ease forwards;
}
@keyframes slideUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.zoom-in {
  font-size: 24px;
  transform: scale(0.5);
  animation: zoomIn 1.5s ease forwards;
}
@keyframes zoomIn {
  from { transform: scale(0.5); }
  to { transform: scale(1); }
}
.bounce-in-left {
  animation: bounceInLeft 1s ease-out forwards;
}
/* 关键帧动画 */
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-200px); /* 从左侧远处开始 */
  }
  60% {
    opacity: 1;
    transform: translateX(20px);   /* 向右弹跳过度 */
  }
  75% {
    transform: translateX(-10px);  /* 向左回弹 */
  }
  90% {
    transform: translateX(5px);    /* 向右微调 */
  }
  100% {
    transform: translateX(0);      /* 回到最终位置 */
  }
}
.fade-in-down {
  opacity: 0; /* 初始透明 */
  animation: fadeInDown 2s ease-out forwards;
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 吸顶样式 */
.sticky {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  height: 240px;
  background: url(../images/index/talent_title.jpg) no-repeat;
  background-size: cover;
}
@keyframes fadeInDown {
  from { opacity: 0.9; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}