.partners-steps__title{
    max-width: none;
    margin-bottom: 1.25rem;
}

.partners-steps__subtitle{
    max-width: none;
    margin-bottom: 0;
}

.partners-steps__line{
    width: 100%;
    height: 1.25rem;
    margin-top: 2.5rem;
    margin-bottom: 1.9rem;
    border-radius: 1.5rem;
    background: linear-gradient(
        to right,
        #573160,
        #2D5C61,
        #2F5876
    );
}

.partners-steps__list{
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.partners-step{
    min-width: 0;
}

.partners-step__head{
    display: flex;
    align-items: baseline;
    gap: 1.5rem;
    margin-bottom: .75rem;
}

.partners-step__num {
    position: relative;
    z-index: 0;

    color: white;
    font-size: var(--s20);
    line-height: 1;
    font-weight: 600;

    width: 2.25rem;
    aspect-ratio: 1 / 1;

    background: rgba(101, 197, 170, 0.2);
    border-radius: .5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;
}

.partners-step__num::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    pointer-events: none;

    background: linear-gradient(
            135deg,
            rgba(180, 255, 245, 0.9) 0%,
            rgba(180, 255, 245, 0.45) 18%,
            rgba(180, 255, 245, 0.1) 40%,
            rgba(0, 0, 0, 0.18) 56%,
            rgba(180, 255, 245, 0.08) 75%,
            rgba(180, 255, 245, 0.55) 100%
    );

    -webkit-mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;

    mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
    mask-composite: exclude;
}

.partners-step__title{
    margin: 0;
    font-size: var(--s18);
    line-height: 1.4;
    font-weight: 700;
}

.partners-step__text{
    font-size: var(--s16);
    line-height: 1.4;
}

@media (max-width: 1200px){
    .partners-steps__list{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px){
    .partners-steps__list{
        grid-template-columns: 1fr;
    }

    .partners-step__title {
        font-size: var(--s16);
    }

    .partners-step__text {
        font-size: var(--s14);
    }
}
