/* reset */

.cst-utp {
    position: relative;
    z-index: 3;
}

.cst-utp .lt-block-wrapper {
    padding: 60rem 0 80rem !important;
    background: var(--utpBackground);
}

.cst-utp .container,
.cst-utp .my-container {
    padding: 0 !important;
    max-width: 1200rem !important;
    margin: 0 auto !important;
    justify-content: space-between;
}

.cst-utp .row {
    margin: 0 !important;
}

.cst-utp .flex-row {
    margin: 0 !important;
}

.cst-utp .modal-block-content {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.cst-utp .builder {
    padding: 0 !important;
}

.cst-utp [data-path="column1"] {
    width: 661rem !important;
    flex-basis: auto !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
}

.cst-utp [data-path="column2"] {
    width: 479rem !important;
    flex-basis: auto !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
}

.cst-utp .builder-item,
.cst-utp .builder-item p {
    margin-bottom: 0 !important;
}

/* custom */

.cst-utp .part-subheader {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.cst-utp .f-subheader {
    border: 2rem solid var(--utpSubheaderBorder);
    border-radius: 90rem;
    padding: 6rem 12rem;
    background: var(--utpSubheaderBackground);

    font-family: var(--font-family);
    font-weight: 400;
    font-size: 22rem;
    line-height: 100%;
    color: var(--utpColorSubtitle);
}

.cst-utp .f-subheader strong {
    font-weight: 700;
}

.cst-utp .f-header-20 {
    font-family: var(--font-family);
    font-weight: 800;
    font-size: 36rem;
    line-height: 120%;
    color: var(--utpColorTitle);

    margin-top: 24rem;
}

.cst-utp .f-header-26 {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 22rem;
    line-height: 120%;
    color: var(--utpColorDesc);

    margin-top: 16rem;
}

.cst-utp .f-header-28 {
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 24rem;
    line-height: 100%;
    color: var(--utpColorListTitle);

    margin-top: 32rem;
}

.cst-utp .f-text {
    margin-top: 20rem;

    max-width: 583rem;
}

.cst-utp .f-text ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.cst-utp .f-text ul li {
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 20rem;
    line-height: 130%;
    color: var(--utpColorListItem);

    margin-bottom: 16rem;
    padding-left: 34rem;

    position: relative;
}

.cst-utp .f-text ul li:last-child {
    margin-bottom: 0;
}

.cst-utp .f-text ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 4rem;
    display: block;
    width: 20rem;
    height: 20rem;
    margin: 0;
    border: 2rem solid var(--utpRoundBorder);
    border-radius: 50%;
    background: var(--utpRoundBackground);
}

.cst-utp .f-btn {
    margin-top: 32rem !important;

    border: 2rem solid var(--defaultButtonBorder) !important;
    background: var(--defaultButtonBackground) !important;
    border-radius: 90rem !important;
    padding: 14rem 10rem !important;
    max-width: 374rem !important;
    width: 100% !important;

    font-family: var(--font-family) !important;
    font-weight: 700 !important;
    font-size: 22rem !important;
    line-height: 130% !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
    color: var(--defaultButtonColor) !important;

    transition: background-color .3s !important;
}

.cst-utp .f-btn:hover {
    background: var(--defaultButtonBorder) !important;
}

.cst-utp .f-header-36 {
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 18rem;
    line-height: 120%;
    color: var(--utpColorPlaceText);
    text-align: center;

    max-width: 374rem;
    width: 100%;
    margin-top: 10rem;
}

.cst-utp .image-box {
    overflow: hidden;
    border-radius: 40rem;
}

.cst-utp .image-box img {
    display: block;
    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px) {
    .cst-utp .lt-block-wrapper {
        padding: 30rem 24rem !important;
    }

    .cst-utp .container,
    .cst-utp .my-container {
        padding: 0 !important;
        max-width: 100% !important;
        margin: 0 auto !important;

        display: flex !important;
        flex-direction: column-reverse !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .cst-utp [data-path="column1"] {
        width: 100% !important;
        flex-basis: auto !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;

        margin-top: 24rem !important;
    }

    .cst-utp [data-path="column2"] {
        width: 100% !important;
        flex-basis: auto !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
    }

    .cst-utp .builder-item,
    .cst-utp .builder-item p {
        margin-bottom: 0 !important;
    }

    /* custom */

    .cst-utp .f-subheader {
        border: 2rem solid var(--utpSubheaderBorder);
        padding: 6rem 12rem;
        background: var(--utpSubheaderBackground);
		color: var(--utpColorSubtitle);
        font-size: 18rem;
    }

    .cst-utp .f-header-20 {
        font-size: 30rem;
        line-height: 120%;

        margin-top: 8rem;
    }

    .cst-utp .f-header-26 {
        font-size: 18rem;

        margin-top: 8rem;
    }

    .cst-utp .f-header-28 {
        font-size: 22rem;

        margin-top: 16rem;
    }

    .cst-utp .f-text {
        margin-top: 16rem;

        max-width: 100%;
    }

    .cst-utp .f-text ul li {
        font-size: 18rem;
    }

    .cst-utp .f-btn {
        margin-top: 16rem !important;

        padding: 16rem 10rem !important;
        max-width: 100% !important;
        width: 100% !important;

        font-size: 20rem !important;
    }

    .cst-utp .f-header-36 {
        font-size: 18rem;

        max-width: 100%;
        width: 100%;
        margin-top: 10rem;
    }

    .cst-utp .image-box {
        border-radius: 24rem;
    }
}