.flex-layout.cta-layout {
    margin: 0;
    background: var(--pk-white);
}

.flex-layout.cta-layout .pk-row {
    padding-block: calc((6.25) * var(--su));
}

.flex-layout.cta-layout .pk-row-content {
    padding-inline: var(--pk-site-gutter);
}

.flex-layout.cta-layout .pk-content-wrap {
    display: grid;
    justify-items: center;
}

.flex-layout.cta-layout .pk-heading-wrap {
    text-align: center;
    color: var(--pk-purple);
    margin-bottom: 2rem;
}

.flex-layout.cta-layout .pk-heading-wrap .pk-heading {
    font-family: var(--pk-heading-font);
    /* font-size: max(2rem, calc(2.25 * var(--su)), var(--scaling-h1-xl)); */
    /* font-size: var(--scaling-h2); */
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: -5%;
    color: inherit;
}

.flex-layout.cta-layout .pk-cta-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: min(100%, 58rem);
    font-size: max(2rem, calc(2.25 * var(--su)));
    line-height: 1.1;
    text-align: center;
}

.flex-layout.cta-layout .pk-cta-content p {
    font-size: max(2rem, calc(2 * var(--su)));
	letter-spacing: -2%;
}

.flex-layout.cta-layout .pk-cta-content .pk-button-group {
    flex-direction: column;
    align-items: center;
    gap: 1.563rem;
    margin-block: 1.563rem;
}

.flex-layout.cta-layout .pk-cta-content .pk-button {
    display: inline-flex;
    max-width: fit-content;
    align-items: center;
    gap: 10px;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .flex-layout.cta-layout .pk-row {
        padding-block: max(4.25rem, calc(4.5 * var(--su)));
    }

    .flex-layout.cta-layout .pk-heading-wrap {
        margin-bottom: 1.75rem;
    }

    .flex-layout.cta-layout .pk-cta-content {
        gap: 0.875rem;
        max-width: min(100%, 42rem);
    }

    .flex-layout.cta-layout .pk-cta-content p {
        margin-bottom: 0;
    }

    .flex-layout.cta-layout .pk-cta-content .pk-button-group {
        gap: 1rem;
        margin-block: 1rem 0;
    }
}

@media screen and (max-width: 767px) {
    .flex-layout.cta-layout > .pk-row {
        padding-block: max(3.25rem, calc(3.75 * var(--su)));
    }

    .flex-layout.cta-layout .pk-heading-wrap {
        margin-bottom: 1.25rem;
    }

    .flex-layout.cta-layout .pk-cta-content {
        gap: 0.75rem;
    }

    .flex-layout.cta-layout .pk-cta-content p {
        font-size: max(1.5rem, calc(2 * var(--su)));
        line-height: 1.2;
    }

    .flex-layout.cta-layout .pk-cta-content .pk-button-group {
        width: 100%;
        gap: 0.75rem;
        margin-block: 0.75rem;
    }

    .flex-layout.cta-layout .pk-cta-content .pk-button-group .pk-button {
        width: min(100%, 18.75rem);
        min-height: 3rem;
        justify-content: center;
    }
}

@media screen and (min-width: 992px) {
    .flex-layout.cta-layout .pk-heading-wrap .pk-heading {
        font-size: max(2rem, calc(2.25 * var(--su)), var(--scaling-h1-xl));
    }
}
