/* ==============================
   基础
============================== */
#timeline * {
  box-sizing: border-box;
}

#timeline {
  width: 100%;
  padding: 5rem 0;
}

#timeline .demo-card-wrapper {
  max-width: 1170px;
  margin: 0 auto;
  position: relative;
}

/* 中轴线 */
#timeline .demo-card-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: #000;
  transform: translateX(-0.5px);
}

/* ==============================
   卡片基础
============================== */
#timeline .demo-card {
  position: relative;
  max-width: 450px;
  margin-bottom: 10rem; /* 基础纵向节奏 */
}

#timeline .demo-card .head {
  position: relative;
  padding: 0 0;
}

#timeline .demo-card .body {
  padding: 15px 0;
}

#timeline .demo-card img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* ==============================
   桌面端：错位时间线
============================== */
@media (min-width: 1000px) {

  #timeline .demo-card-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 90px;
  }

  /* 左列 */
  #timeline .demo-card:nth-child(odd) {
    grid-column: 1;
    justify-self: end;
    text-align: right;
  }
	#timeline .demo-card:nth-child(odd) img{float: right}
	
	

	
  /* 右列 */
  #timeline .demo-card:nth-child(even) {
    grid-column: 2;
    justify-self: start;
	  margin-top: 180px;
  }

  /* ===== 错位关键：只动 Y，不影响流 ===== */
  #timeline .demo-card:nth-child(2) {
    margin-top: 140px;
  }

  #timeline .demo-card:nth-child(4) {
    margin-top: 160px;
  }

  #timeline .demo-card:nth-child(6) {
    margin-top: 120px;
  }

  #timeline .demo-card:nth-child(8) {
    margin-top: 180px;
  }

	

  #timeline .demo-card:nth-child(10) {
    margin-top: 180px;
  }

  /* 时间点 */
  #timeline .demo-card .head::before {
    content: "";
    position: absolute;
    top: 50%;
    width: 10px;
    height: 10px;
    background: #000;
    border-radius: 50%;
    transform: translateY(-50%);
  }

  #timeline .demo-card:nth-child(odd) .head::before {
    right: -50px;
  }

  #timeline .demo-card:nth-child(even) .head::before {
    left: -50px;
  }
}

#timeline .demo-card h5{font-size: 2rem;}
	#timeline .demo-card h5 span{font-weight: normal; margin: 0 2rem;}
/* ==============================
   移动端：单列
============================== */
@media (max-width: 999px) {

  #timeline .demo-card-wrapper::after {
    display: none;
  }\
	
	#timeline .demo-card:nth-child(odd) h5 span{margin: 0 2rem 0 0;}

  #timeline .demo-card:nth-child(even) h5 span{margin: 0 0 0  2rem;}
	
	
  #timeline .demo-card {
    max-width: 94%;
    margin: 0 auto 70px;
    text-align: left;
  }

  #timeline .demo-card .body {
    padding: 2rem 0;
  }
}

@media (max-width:800px){
	#timeline .demo-card .head{padding: 0}
	#timeline .demo-card h5 span{margin:0 2rem 0 0;font-size: 2.4rem;}
	  #timeline .demo-card { max-width: 100%; margin: 5rem 0 ;}
	
}
