.text-content > h1.heading-one.c-white{
    width: 14ch;
}
.infrastructure{
    padding-block: 40px;
    position: relative;
}
.infrastructure::before{
    content: '';
    background-image: url(/media/k11j35ic/curvacoi-02-leftbottom.png);
    aspect-ratio: 732 / 1426;
    width: 210px;
    position: absolute;
    background-size: cover;
    bottom: -80px;
    left: 0;
}
.infrastructure::after{
    content: '';
    background-image: url(/media/r34pbf5q/curvacoi-01-right.png);
    aspect-ratio: 652 / 1862;
    width: 160px;
    position: absolute;
    background-size: cover;
    top: 10px;
    right: 0;
}
.infrastructure > .container{
    position: relative;
    z-index: 123;
}
.align-center{
    align-items: center;
}
.gap-80{
    gap: 40px 80px;
}
.image-column > img{
    border-radius: 20px;
}

.mb-6{
    margin-bottom: 6px;
}
.mb-12{
    margin-bottom: 12px;
}
.mb-16{
    margin-bottom: 16px;
}
.mb-44{
    margin-bottom: 44px;
}
.pb-70{
    padding-bottom: 70px;
}
span{
    display: block;
}
.list-check > li{
    position: relative;
    padding-left: 30px;
}
.list-check > li:not(:last-child){
    padding-bottom: 17px;
}
.list-check > li::before{
    content: '';
    background-image: url(/media/j4khjjac/icon_ticket.png);
    position: absolute;
    width: 25px;
    height: 25px;
    background-size: cover;
    left: 0;
    top: -1px;
}
.title-center{
    text-align: center;
    max-width: 450px;
    margin-inline: auto;
    margin-bottom: 30px;
}
.two-rows.gap-80.align-center > figure{
    order: 1;
}
.infra-graph{
    padding-block: 50px;
    background-color: rgba(244, 246, 254, 1);
    position: relative;
    border-top-right-radius: 80px;
}
.image-graph{
    width: 1080px;
    margin-inline: auto;
}

.cards-infra-graph{
    display: grid;
    gap: 20px 30px;
    grid-template-columns: repeat(auto-fill, minmax(max(240px, (100% - 3 * 30px) / 4), 1fr));
    max-width: 1080px;
    margin-inline: auto;
    margin-top: 40px;
}
.card-infra-graph{
    border: 2px solid var(--color-purple);
    background-color: var(--color-white);
    display: grid;
    grid-template-columns: 48px 1fr;
    padding: 20px 12px;
    border-radius: 16px;
}
.card-infra-graph img{
    position: relative;
    top: -12px;
    left: -5px;
}

@media(min-width: 691px){
    .infrastructure::before,
    .infrastructure::after{
        width: 250px;
    }
}
@media(min-width: 1000px){
    .infrastructure{
        padding-block: 70px;
    }
    .infra-graph{
        border-top-right-radius: 200px;
    }
    .mt-35{
        margin-top: 35px;
    }
    .infrastructure::before{
        width: 370px;
    }
    .infrastructure::after{
        width: 270px;
    }
    .two-rows.gap-80.align-center > figure{
        order: initial;
    }
}