
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.timeline {
  color: #fff;
}

.timeline ul li .content h2 {
  text-shadow: 1px 1px 1px rgba(56, 56, 56, 0.5);
}
.timeline ul {
  padding: 50px 0;
}
.timeline ul li {
  background: #C50000;
  position: relative;
  margin: 0 auto;
  width: 5px;
  padding-bottom: 40px;
  list-style-type: none;
}
.timeline ul li:last-child {
  padding-bottom: 7px;
}
.timeline ul li:before {
  content: '';
  background: #faf8eb;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  width: 20px;
  height: 20px;
  border: 3px solid #C50000;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
.timeline ul li .hidden {
  opacity: 0;
}
.timeline ul li .content {
  background: #C50000;
  position: relative;
  top: 7px;
  width: 450px;
  padding: 20px;
}
.timeline ul li .content h2 {
  color: #fff;
  padding-bottom: 10px;
  text-align: center;
}
.timeline ul li .content p {
  text-align: center;
}
.timeline ul li .content:before {
  content: '';
  background: #C50000;
  position: absolute;
  top: 0px;
  width: 38px;
  height: 5px;
}
.timeline ul li:nth-child(odd) .content {
  left: 50px;
  background: rgba(197, 0, 0, 0.8);
  background: -webkit-linear-gradient(-45deg, rgba(191, 0, 0, 0.8), rgba(197, 0, 0, 0.8));
  background: linear-gradient(-45deg, rgba(191, 0, 0, 0.8), rgba(197, 0, 0, 0.8));
  border-radius: 0rem .5rem .5rem .5rem;
}
.timeline ul li:nth-child(odd) .content:before {
  left: -38px;
}
.timeline ul li:nth-child(even) .content {
  left: calc(-450px - 45px);
  background: rgba(197, 0, 0, 0.8);
  background: -webkit-linear-gradient(45deg, rgba(191, 0, 0, 0.8), rgba(197, 0, 0, 0.8));
  background: linear-gradient(45deg, rgba(191, 0, 0, 0.8), rgba(197, 0, 0, 0.8));
  border-radius: .5rem 0rem .5rem .5rem;
}
.timeline ul li:nth-child(even) .content:before {
  right: -38px;
}

/* -------------------------
   ----- Media Queries ----- 
   ------------------------- */
@media screen and (max-width: 1020px) {
  .timeline ul li .content {
    width: 41vw;
  }

  .timeline ul li:nth-child(even) .content {
    left: calc(-41vw - 45px);
  }
}
@media screen and (max-width: 700px) {
  .timeline ul li {
    margin-left: 20px;
  }
  .timeline ul li .content {
    width: calc(100vw - 100px);
  }
  .timeline ul li .content h2 {
    text-align: initial;
  }
  .timeline ul li:nth-child(even) .content {
    left: 45px;
    background: #C50000;
    background: -webkit-linear-gradient(-45deg, #BF0000, #C50000);
    background: linear-gradient(-45deg, #BF0000, #C50000);
  }
  .timeline ul li:nth-child(even) .content:before {
    left: -33px;
  }
}
