.phases-section-outer {
    padding: 70px 0 0;
    position: relative
}

@media (min-width:768px) {
    .phases-section-outer {
        padding: 100px 0 0
    }
}

@media (min-width:1200px) {
    .phases-section-outer {
        padding: 148px 0 0
    }
}

.phases-section-outer:before {
    background: var(--secondary-color);
    content: "";
    display: none;
    -webkit-filter: blur(178.5px);
    filter: blur(178.5px);
    height: 506px;
    left: -401px;
    position: absolute;
    top: 65%;
    width: 506px;
    z-index: -1
}

@media (min-width:1200px) {
    .phases-section-outer:before {
        display: block
    }
}

.phases-section-outer:after {
    background: var(--primary-color);
    content: "";
    display: none;
    -webkit-filter: blur(178.5px);
    filter: blur(178.5px);
    height: 506px;
    position: absolute;
    right: -401px;
    top: 7%;
    width: 506px;
    z-index: -1
}

@media (min-width:1200px) {
    .phases-section-outer:after {
        display: block
    }
}

.phases-section-outer .header-text {
    margin: 0 auto;
    max-width: 675px;
    text-align: center
}

.phases-section-outer .header-text h3 {
    display: inline-block;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 32px;
    margin: 16px 0 0
}

@media (min-width:768px) {
    .phases-section-outer .header-text h2 {
        margin: 0 0 40px
    }
}

.phases-section-outer .header-text p {
    color: var(--brand-primary);
    letter-spacing: .01em
}

@media (min-width:768px) {
    .phases-section-outer .header-text p {
        font-size: 20px;
        line-height: 32px
    }
}

.phases-section-outer .phase-repeater {
    margin: 40px 0 0;
    position: relative
}

@media (min-width:768px) {
    .phases-section-outer .phase-repeater {
        margin: 60px 0 0
    }
}

@media (min-width:992px) {
    .phases-section-outer .phase-repeater {
        margin: 120px 0 0
    }
}

.phases-section-outer .phase-repeater:before {
    background-color: #7890ad;
    content: "";
    height: calc(100% - 8px);
    overflow: hidden;
    position: absolute;
    top: 8px;
    width: 1px
}

@media (min-width:992px) {
    .phases-section-outer .phase-repeater:before {
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.phases-section-outer .phase-repeater>* {
    margin-left: 40px;
    margin-top: 30px;
    position: relative
}

@media (min-width:992px) {
    .phases-section-outer .phase-repeater>* {
        margin-left: 55px;
        margin-top: 40px
    }
}

.phases-section-outer .phase-repeater>:before {
    background: -o-linear-gradient(315deg, rgba(0, 83, 242, 0) 0, #0053f2 100%);
    background: linear-gradient(135deg, rgba(0, 83, 242, 0), #0053f2);
    border-radius: 50%;
    content: "";
    display: none;
    height: 32px;
    left: -56px;
    opacity: .2;
    position: absolute;
    top: -1px;
    width: 32px
}

.phases-section-outer .phase-repeater>:after {
    background-color: var(--brand-primary);
    border-radius: 50%;
    content: "";
    height: 11px;
    left: -45px;
    position: absolute;
    top: 7px;
    width: 11px
}

@media (min-width:992px) {
    .phases-section-outer .phase-repeater>:nth-child(2n) {
        padding-left: 50%
    }

    .phases-section-outer .phase-repeater>:nth-child(2n):after,
    .phases-section-outer .phase-repeater>:nth-child(2n):before {
        left: calc(50% - 27px);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .phases-section-outer .phase-repeater>:nth-child(odd) {
        padding-right: calc(50% + 55px);
        text-align: right
    }

    .phases-section-outer .phase-repeater>:nth-child(odd):before {
        left: auto;
        right: calc(50% - 5px);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .phases-section-outer .phase-repeater>:nth-child(odd):after {
        left: calc(50% - 27px);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%)
    }

    .phases-section-outer .phase-repeater>:nth-child(odd) h3 {
        margin-left: auto
    }
}

.phases-section-outer .phase-repeater>* h3 {
    color: var(--brand-primary);
    font-size: 20px;
    font-weight: 700;
    line-height: 27px;
    margin: 0 0 15px;
    max-width: 376px
}

.phases-section-outer .phase-repeater>* ul {
    margin: 0;
    padding: 0
}

.phases-section-outer .phase-repeater>* ul li {
    color: #64748b;
    font-size: 16px;
    line-height: 24px;
    list-style: none;
    margin: 0 0 6px
}

.phases-section-outer .phase-repeater>* ul li:last-child {
    margin: 0
}