.timeline {
    position: relative;
    padding-left: 60px; /* место под линию и точки */
    margin-bottom: 120px;
}

.timeline__head{
    margin-bottom: 40px;
}


/* Вертикальная линия */
.timeline::before {
    content: "";
    position: absolute;
    left: 17px;           /* 18 - 1 = 17 */
    top: 18px;            /* от центра первой точки */
    bottom: 18px;
    width: 2px;
    background: #d81a7380;
}

.timeline__item {
    position: relative;
    padding-bottom: 60px;   /* расстояние между пунктами */
}

.timeline__item:last-child {
    padding-bottom: 0;
}

/* Точка напротив заголовка */

.timeline__dot {

    position: absolute;
    left: -60px;
    top: calc((24px - 36px) / 2);   /* = -6px */
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #d81a73;
    color: #fff;
    font-size: 17px;      /* чуть крупнее под больший круг */
    font-weight: 600;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    z-index: 1;
}


.timeline__title {
    font-size: 20px;
    margin: 0 0 8px;
    color: #222;
}

.timeline__text {
    font-size: 15px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}
