/* #region banner页*/
.banner-section {
    width: 100%;
    height: 65vh;
    position: relative;
    background-image: url("/static/index/img/tech_solutions/tech_solution_6/banner.png");
    background-size: cover;
    background-position: center;
}

.banner-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    /* 30%黑色遮罩 */
}

@media screen and (min-resolution: 120dpi) and (max-resolution: 130dpi) {
    .banner-section {
        height: 85vh;
    }
}

.banner-section .banner-intro {
    position: absolute;
    left: 120px;
    bottom: 60px;
}

.banner-section .banner-intro h2 {
    color: #fff;
    font-size: 48px;
    font-weight: 400;
    margin-bottom: 70px;
}

.banner-section .banner-intro p {
    color: #fff;
    font-size: 22px;
    line-height: 1.5;
    /* font-weight: 400; */
    width: 50%;
}

/* #endregion banner页*/

/* #region 目录页*/
.catalog-section {
    background-color: #293484;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 55px 0;
}

.catalog-section .catalog-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.catalog-section .catalog-container .catalog {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.catalog-section .catalog-container .catalog img {
    width: 80px;
    height: 80px;

}

.catalog-section .catalog-container .catalog span {
    color: #fff;
    font-size: 22px;
    line-height: 1.5;
    text-align: center;
}

.catalog-section1 {
    background-color: #293484;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 55px 0 75px;
    margin-top: 1px;
}

.catalog-section1 .catalog-container1 {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 180px;
}

.catalog-section1 .catalog-container1 .catalog1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.catalog-section1 .catalog-container1 .catalog1 img {
    width: 80px;
    height: 80px;

}

.catalog-section1 .catalog-container1 .catalog1 span {
    color: #fff;
    font-size: 22px;
    line-height: 1.5;
}

.newcontent-section {
    background-color: #111D76;
    /* 深蓝色背景 */
    padding: 70px 0;
}

.newcontent-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
    /* 文字居中 */
}

.newcontent-container p {
    color: #FFFFFF;
    /* 深灰色文字 */
    font-size: 24px;
    line-height: 40px;
    margin: 0 auto;
    font-weight: 400;
    max-width: 1100px;
    position: relative;
    padding: 0 20px;
}

/* #endregion 目录页*/

/* #region 内容通用样式*/
.content-section {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 50px;
    padding: 100px 0;
}

.content-section .common-container {
    width: 80%;
    margin: 0 auto;
}

/* #endregion 内容通用样式*/

/* #region 内容1*/
.content1-container .content1-title {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content1-container .content1-title img {
    width: 90px;
    height: 80px;
}

.content1-container .content1-title .content1-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-left: 50px;
    position: relative;
}

.content1-container .content1-title .content1-subTitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content1-container .content1-title .content1-subTitle img {
    width: 45px;
    height: 45px;
}

.content1-container .content1-title .content1-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content1-container .content1-info {
    display: flex;
    height: 480px;
}

.content1-container .content1-info img {
    flex: 45;
    object-fit: cover;
}

.content1-container .content1-info .content1-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
}

.content1-container .content1-info .content1-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content1-container .content1-info .content1-words .points {
    padding-top: 50px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.content1-container .content1-info .content1-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 700;
}

.content1-container .content1-info .content1-words .points span::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}

/* #endregion 内容1*/

/* #region 内容2*/
.content2-container .content2-title {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content2-container .content2-title img {
    width: 90px;
    height: 80px;
}

.content2-container .content2-title .content2-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    padding-right: 50px;
    position: relative;
}

.content2-container .content2-title .content2-subTitle::after {
    content: '';
    position: absolute;
    right: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content2-container .content2-title .content2-subTitle img {
    width: 45px;
    height: 45px;
}

.content2-container .content2-title .content2-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content2-container .content2-info {
    display: flex;
    height: 500px;
}

.content2-container .content2-info img {
    flex: 45;
    object-fit: cover;
}

.content2-container .content2-info .content2-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
}

.content2-container .content2-info .content2-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content2-container .content2-info .content2-words .points {
    padding-top: 50px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    /* display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px; */
}

.content2-container .content2-info .content2-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 700;
}

.content2-container .content2-info .content2-words .points span::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}

/* #endregion 内容2*/

/* #region 内容3*/
.content3-container .content3-title {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content3-container .content3-title img {
    width: 90px;
    height: 80px;
}

.content3-container .content3-title .content3-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-left: 50px;
    position: relative;
}

.content3-container .content3-title .content3-subTitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content3-container .content3-title .content3-subTitle img {
    width: 45px;
    height: 45px;
}

.content3-container .content3-title .content3-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content3-container .content3-info {
    display: flex;
    height: 470px;
}

.content3-container .content3-info img {
    flex: 45;
    object-fit: cover;
}

.content3-container .content3-info .content3-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
}

.content3-container .content3-info .content3-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content3-container .content3-info .content3-words h2 {
    color: #4C4C4C;
    font-size: 22px;
    font-weight: bold;
    padding: 50px 0 30px;
}
.content3-container .content3-info .content3-words h2::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}
.content3-container .content3-info .content3-words .points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-left: 50px;
}

.content3-container .content3-info .content3-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 400;
}

.content3-container .content3-info .content3-words .points span::before {
    content: "";
    display: inline-block;
    width: 4px;  
    height: 4px; 
    background-color: #000; 
    border-radius: 50%; 
    margin-right: 10px;
    vertical-align: middle; 
    position: relative;
    top: -1px;
}

/* #endregion 内容3*/

/* #region 内容4*/
.content4-container .content4-title {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content4-container .content4-title img {
    width: 90px;
    height: 80px;
}

.content4-container .content4-title .content4-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    padding-right: 50px;
    position: relative;
}

.content4-container .content4-title .content4-subTitle::after {
    content: '';
    position: absolute;
    right: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content4-container .content4-title .content4-subTitle img {
    width: 45px;
    height: 45px;
}

.content4-container .content4-title .content4-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content4-container .content4-info {
    display: flex;
    height: 400px;
}

.content4-container .content4-info img {
    flex: 45;
    object-fit: cover;
}

.content4-container .content4-info .content4-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
    border-bottom: 1px solid #969696; 
}

.content4-container .content4-info .content4-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content4-container .content4-info .content4-words .points {
    padding-top: 60px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.content4-container .content4-info .content4-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 400;
}

.content4-container .content4-info .content4-words .points span::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}

/* #endregion 内容4*/
/* 评审流程 */
.flowchart-container {
  background-color: #f4f4f4;
  padding: 30px 0;
  width: 100%;
}
.flowchart {
    width: 100%;
    /* max-width: 1400px; */
    margin: 0 auto;
   background-color: transparent
}

.stage {
    background-color: #fff;
    margin: 20px 0;
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.stage h2 {
    font-size: 20px;
    color: #4c4c4c;
    margin-bottom: 15px;
    text-align: center;
}

.step-arrow {
  position: relative;
  width: 40px; 
  height: 2px;
  margin: 0 15px;
  background: #878787;
  align-self: center;
}

.step-arrow::before {
  content: "";
  position: absolute;
  right: 0;
  top: -3px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #878787;
  border-top: 2px solid #878787;
  transform: rotate(45deg);
}
.stage-connector {
  position: relative;
  height: 40px;
  width: 100%;
}

.connector-arrow {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;
}

.step-arrow-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 15px;
    margin-bottom: 65px;
}
.vertical-line {
    width: 3px;  
    height: 35px; 
    margin-top: 5px;
}

/* 垂直连接线容器 */
.vertical-connector {
    display: flex;
    flex-direction: column;
    align-items: center;
}



/* 连接文字 */
.connector-text {
    font-size: 15px;
    font-weight: 400;
    white-space: nowrap;
    color: #4c4c4c;
}
/* 水平连接线容器 */
.horizontal-connector {
    position: absolute;
    top: 0;
    left: 55.9%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    gap: 20px;
}

/* 水平连接线 */
.horizontal-connector .horizontal-line {
    transform: rotate(90deg);
    width: 4px; 
    height: 40px; 
     filter: brightness(0) contrast(100%);
}
/* 连接文字 */
.horizontal-connector .connector-text {
    font-size: 15px;
    font-weight: 400;
    white-space: nowrap;
    color: #4c4c4c;
}
.fixed-width-step {
    min-width: 180px;  
    text-align: center;
    box-sizing: border-box;
    padding: 12px 15px !important;
}

/* 评审阶段特定样式 */
.stage:nth-child(4) .steps {
    justify-content: center;
    align-items: flex-start;
}

.stage:nth-child(4) .step-arrow-group {
    margin-bottom: 50px;
}
.steps {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.steps1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-right: 35px;
}
.step {
    padding: 12px 20px;
    margin: 8px 0;
    font-size: 16px;
    color: #4c4c4c;
    background-color: #fff;
    border: 1px solid #878787;
    box-shadow: none;
}

.stage+.stage {
    margin-top: 40px;
}

/* #region 内容5*/
.content5-container .content5-title {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content5-container .content5-title img {
    width: 90px;
    height: 80px;
}

.content5-container .content5-title .content5-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-left: 50px;
    position: relative;
}

.content5-container .content5-title .content5-subTitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content5-container .content5-title .content5-subTitle img {
    width: 45px;
    height: 45px;
}

.content5-container .content5-title .content5-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content5-container .content5-info {
    display: flex;
    height: 500px;
}

.content5-container .content5-info img {
    flex: 45;
    object-fit: cover;
}

.content5-container .content5-info .content5-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
}

.content5-container .content5-info .content5-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content5-container .content5-info .content5-words h2 {
    color: #4C4C4C;
    font-size: 22px;
    font-weight: bold;
    padding: 30px 0;
}

.content5-container .content5-info .content5-words .points {
    padding-top: 45px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
}

.content5-container .content5-info .content5-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 400;
}

.content5-container .content5-info .content5-words .points span::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}

/* #endregion 内容5*/

/* #region 内容6*/
.content6-container .content6-title {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 50px;
    margin-bottom: 60px;
}

.content6-container .content6-title img {
    width: 90px;
    height: 80px;
}

.content6-container .content6-title .content6-subTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    padding-right: 50px;
    position: relative;
}

.content6-container .content6-title .content6-subTitle::after {
    content: '';
    position: absolute;
    right: 0;
    top: -12px;
    width: 2px;
    height: 120px;
    background-color: #111D76;
}

.content6-container .content6-title .content6-subTitle img {
    width: 45px;
    height: 45px;
}

.content6-container .content6-title .content6-subTitle h2 {
    color: #111D76;
    font-size: 30px;
    font-weight: 450;
}

.content6-container .content6-info {
    display: flex;
    height: 450px;
}

.content6-container .content6-info img {
    flex: 45;
    object-fit: cover;
}

.content6-container .content6-info .content6-words {
    flex: 55;
    background-color: #EDEDED;
    padding: 50px;
}

.content6-container .content6-info .content6-words p {
    color: #4C4C4C;
    font-size: 20px;
    line-height: 1.6;
    font-weight: 400;
    padding-bottom: 30px;
    border-bottom: 1px solid #969696;

}

.content6-container .content6-info .content6-words .points {
    padding-top: 40px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
}

.content6-container .content6-info .content6-words .points span {
    color: #4C4C4C;
    font-size: 20px;
    font-weight: 400;
}

.content6-container .content6-info .content6-words .points span::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url('/static/index/img/tech_solutions/tech_solution_1/bluePoint.png');
    background-size: contain;
    margin-right: 10px;
}

/* #endregion 内容6*/
/* #region 相关技术推荐*/
.techRec-section {
    background-color: #EBEBEB;
    padding: 100px 0;
}

.techRec-section .techRec-container {
    width: 80%;
    margin: 0 auto;
}

.techRec-container h2 {
    color: #111D76;
    font-size: 42px;
    font-weight: 450;
    margin-bottom: 60px;
}

.techRec-container .first-service {
    margin-bottom: 70px;
}

.techRec-container .first-service h2 {
    color: #111D76;
    font-size: 32px;
    font-weight: 450;
    margin-bottom: 50px;
}

.techRec-container .first-service .second-service {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 100px;
}

.techRec-container .first-service .second-service .service img {
    height: 350px;
    width: 100%;
    object-fit: cover;
}

.techRec-container .first-service .second-service .service .info {
    padding: 35px 40px;
    box-sizing: border-box;
    background-color: #fff;
    color: #111D76;
    font-size: 24px;
    font-weight: 400;
}

/* #endregion 相关技术推荐*/