.timeline-section {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: repeat(1, 1fr);
  gap: 20px;
}
.timeline-image {
  grid-column: span 2 / span 2;
}
.number-section {
  grid-column-start: 3;
}
.timeline-text {
  grid-column: span 2 / span 2;
}
.number-section {
  grid-column-start: 3;
  display: flex;
  justify-content: center;
}
section.work-process.pb-0.fix.section-padding .row {
    margin-top: 20px;
}
.number-section .circle {
  width: 100px;
  height: 100px;
  border: 1px dashed #0a2045;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  position: relative;
  animation: rotateBorder 5s linear infinite;
}
.number-section .circle span {
  font-size: 40px;
  font-weight: bold;
  color: #0a2045;
  position: absolute;
  animation: counterRotate 5s linear infinite;
}
.circle.active {
  background-color: #0a2045;
}
.circle.active span {
  color: #fff;
}
/* Rotate border clockwise */
@keyframes rotateBorder {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Counter-rotate text so it looks fixed */
@keyframes counterRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}
.timeline-image img {
  width: 100%;
  height: auto;
  border-radius:15px;
}
.hoverImage {
  position: relative;
  align-self: stretch;
  flex-shrink: 0;
  object-fit: cover;
  max-width: 100%;
}
.timeline-text p.timeline-headine {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 15px;
  color: #000;
}
.timeline-main-container {
  display: flex;
  flex-direction: column;
  row-gap: 80px;
}

.timeline-main-section {
  position: relative;
}
 /* SVG line in background */
 #scroll-line {
  position: absolute;
  top: 100px;
  left: 50%;
  transform: translateX(-50%);
  width: 4px;
  height: 100%;
  z-index: 0;
}
section.work-process.pb-0.fix.section-padding{
  margin-bottom: 120px;
}

.timeline-main-container {
  position: relative;
  z-index: 1;
}








