/* reset */

.cst-steps {
    position: relative;
    z-index: 3;
}

.cst-steps .lt-block-wrapper {
    padding: 80rem 0 16rem !important;
    background: var(--stepsBackground) !important;
}

.cst-steps .container,
.cst-steps .my-container {
    padding: 0 !important;
    max-width: 1200rem !important;
    margin: 0 auto !important;
}

.cst-steps .row {
    margin: 0 !important;
}

.cst-steps .flex-row {
    margin: 0 !important;
}

.cst-steps .modal-block-content {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.cst-steps .builder {
    padding: 0 !important;
}

.cst-steps .builder-item,
.cst-steps .builder-item p {
    margin-bottom: 0 !important;
}

/* custom */
.cst-steps .tsr-header {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 36rem;
    line-height: 130%;
    text-align: center;
    color: var(--stepsColorTitle);

    margin: 0 !important;
}

.cst-steps .flex-row {
    margin-top: 44rem !important;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16rem;
}

.cst-steps .lt-tsr-block.flex-column {
    min-height: 365rem;
    overflow: hidden !important;
    border-radius: 32rem !important;
    background: #fff !important;
    padding: 0 !important;
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content {}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .image-card {
    display: none !important;
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-subheader {
    display: none !important;
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-header {
    margin: 0 !important;

    padding: 32rem;
    background: var(--stepsCardHeaderBackground);

    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24rem;
    line-height: 140%;
    color: var(--stepsCardHeaderColorTitle);
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-header p {
    margin: 0 !important;
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-description {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 22rem;
    line-height: 140%;
    color: var(--stepsCardHeaderColorDesc);

    margin: 0 !important;
    padding: 24rem 32rem 32rem !important;
}

.cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-description p {
    margin: 0 !important;
}

@media screen and (max-width: 768px) {
    .cst-steps .lt-block-wrapper {
        padding: 32rem 16rem 16rem !important;
    }

    .cst-steps .container,
    .cst-steps .my-container {
        padding: 0 !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .cst-steps .tsr-header {
        font-size: 30rem;
    }

    .cst-steps .flex-row {
        margin-top: 24rem !important;

        display: grid;
        grid-template-columns: 1fr;
        gap: 16rem 0;
    }

    .cst-steps .lt-tsr-block.flex-column {
        min-height: 1px;
        border-radius: 24rem !important;
    }


    .cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-header {
        padding: 24rem;
    }

    .cst-steps .lt-tsr-block.flex-column .lt-tsr-content .f-description {
        font-size: 18rem;

        margin: 0 !important;
        padding: 16rem 16rem 24rem !important;
    }
}