.circle-timeline {
  font-size: 20px;
  padding: 10px 20px;
  border-radius: 50%;
  background-color: #f5f6fa;
  color: #f5f6fa;
  max-height: 50px;
  z-index: 2;
}

.how-it-works.row .col-2 {
  align-self: stretch;
}

.how-it-works.row .col-2::after {
  content: "";
  position: absolute;
  border-left: 3px solid #f5f6fa;
  z-index: 1;
}

.how-it-works.row .col-2.bottom::after {
  height: 50%;
  left: 50%;
  top: 50%;
}

.how-it-works.row .col-2.full::after {
  height: 100%;
  left: calc(50% - 3px);
}

.how-it-works.row .col-2.full.left::after {
  height: 100%;
  left: 50%;
}

.how-it-works.row .col-2.top.left {
  padding-left: 18px;
}

.how-it-works.row .col-2.top::after {
  height: 50%;
  left: 50%;
  top: 0;
}

.how-it-works.row .col-2.top.right::after {
  height: 50%;
  left: calc(50% - 3px);
  top: 0;
}

.how-it-works.row .col-2.top.right {
  padding-right: 18px;
}

.timeline div {
  padding: 0;
  height: 40px;
}

.timeline hr {
  border-top: 3px solid #f5f6fa;
  margin: 0;
  top: 17px;
  position: relative;
}

.timeline .col-2 {
  display: flex;
  overflow: hidden;
}

.timeline .corner {
  border: 3px solid #f5f6fa;
  width: 100%;
  position: relative;
  border-radius: 15px;
}

.timeline .top-right {
  left: 50%;
  top: -50%;
}

.timeline .left-bottom {
  left: -50%;
  top: calc(50% - 3px);
}

.timeline .top-left {
  left: -50%;
  top: -50%;
}

.timeline .right-bottom {
  left: 50%;
  top: calc(50% - 3px);
}

.section-dark .circle-timeline {
  color: #292826;
}
