.doc-timeline{
  position:relative;
}

.doc-timeline::before{
  display:none;
}

.doc-timeline-item{
  position:relative;
  display:grid;
  grid-template-columns:56px 1fr minmax(180px,220px);
  gap:22px;
  padding:0 0 34px;
}

/* Linie immer vom aktuellen Icon bis zum nächsten Icon */
.doc-timeline-item:not(:last-child)::before{
  content:"";
  position:absolute;
  left:28px;
  top:56px;
  bottom:0;
  width:1px;
  background:rgba(0,68,109,.12);
  z-index:0;
}

.doc-timeline-item:last-child{
  padding-bottom:0;
}

.doc-timeline-icon{
  position:relative;
  z-index:2;
  width:56px;
  height:56px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f4faea;
  border:1px solid rgba(153,204,51,.45);
  color:var(--salestron-blue);
}

.doc-timeline-icon::after{
  display:none;
}

.doc-timeline-icon i{
  font-size:1.45rem;
  line-height:1;
}

.doc-timeline-content{
  position:relative;
  z-index:1;
}

.doc-timeline-date{
  color:var(--salestron-blue);
  font-weight:700;
  font-size:.8rem;
  margin-bottom:4px;
}

.doc-timeline-content h3{
  font-size:.92rem;
  margin-bottom:6px;
}

.doc-timeline-content p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
  font-size:.92rem;
}

.doc-timeline-file{
  position:relative;
  z-index:1;
  align-self:start;
  margin-top:24px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(0,68,109,.10);
  box-shadow:0 10px 24px rgba(0,68,109,.035);
  font-size:.9rem;
  color:var(--ink);
}

.doc-timeline-file i{
  color:#d93025;
  font-size:1rem;
}

.doc-timeline-result{
  display:flex;
  align-items:flex-start;
  gap:18px;
  padding:22px;
  border-radius:18px;
  background:rgba(153,204,51,.08);
  border:1px solid rgba(0,68,109,.06);
}

.doc-timeline-result-text-bold{
  font-weight:600;
  font-size:.92rem;
}

.doc-timeline-result-text{
  font-size:.92rem;
}

@media (max-width:767.98px){

  .doc-timeline-item{
    grid-template-columns:44px 1fr;
    gap:16px;
    padding-bottom:30px;
  }

  .doc-timeline-item:not(:last-child)::before{
    left:22px;
    top:44px;
    bottom:0;
  }

  .doc-timeline-icon{
    width:44px;
    height:44px;
  }

  .doc-timeline-icon i{
    font-size:1.2rem;
  }

  .doc-timeline-file{
    grid-column:2;
    margin-top:12px;
  }
}