.wp-block.two-columns-with-cta:not([class*="block-background-"]) {
    background-color: var(--color-midnight-blue, #0c2840);
}

.wp-block.two-columns-with-cta:not([class*="block-font-colour-"]) {
    color: var(--color-soft-white, #f5f5f5);
}

.two-columns-with-cta__inner {
    align-items: start;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    margin-inline: auto;
}

.two-columns-with-cta__inner.block-column-gap {
    column-gap: var(--block-column-gap);
    row-gap: clamp(2.5rem, 6vw, 4.5rem);
}

.two-columns-with-cta__column {
    min-width: 0;
    width: 100%;
}

.two-columns-with-cta__column--one {
    display: flex;
    flex-direction: column;
    grid-column: 1 / span 5;
}

.two-columns-with-cta__column--two {
    grid-column: 7 / span 5;
}

.two-columns-with-cta--no-right .two-columns-with-cta__column--one,
.two-columns-with-cta--no-left .two-columns-with-cta__column--two {
    grid-column: 1 / span 6;
}

.two-columns-with-cta__content {
    --block-content-flow-gap: var(--space-l);

    min-width: 0;
    width: 100%;
}

.two-columns-with-cta__heading {
    margin: 0;
}

.two-columns-with-cta__heading--one:not([class*="text-colour-"]) {
    color: var(--color-ginger, #f35608);
}

.two-columns-with-cta__text {
    max-width: 56ch;
}

.two-columns-with-cta__text :where(p:first-child) {
    margin-top: 0;
}

.two-columns-with-cta__text :where(p:last-child) {
    margin-bottom: 0;
}

.two-columns-with-cta__content + .two-columns-with-cta__contact {
    margin-top: clamp(2.75rem, 5vw, 4.5rem);
}

.two-columns-with-cta__contact.base-contact-cta {
    background-color: var(--color-grey, #d9d9d9);
    color: var(--color-midnight-blue, #0c2840);
}

.two-columns-with-cta__contact .base-contact-cta__heading,
.two-columns-with-cta__contact .base-contact-cta__text {
    color: var(--color-midnight-blue, #0c2840);
}

@media (max-width: 781px) {
    .two-columns-with-cta__inner {
        grid-template-columns: minmax(0, 1fr);
    }

    .two-columns-with-cta__inner.block-column-gap {
        column-gap: 0;
        row-gap: 2.5rem;
    }

    .two-columns-with-cta__column--one,
    .two-columns-with-cta__column--two,
    .two-columns-with-cta--no-right .two-columns-with-cta__column--one,
    .two-columns-with-cta--no-left .two-columns-with-cta__column--two {
        grid-column: 1;
    }

    .two-columns-with-cta__contact {
        max-width: 34rem;
        width: 100%;
    }

    .two-columns-with-cta__text {
        max-width: none;
    }
}

@media (max-width: 560px) {
    .two-columns-with-cta__inner.block-column-gap {
        row-gap: 2rem;
    }

    .two-columns-with-cta__content + .two-columns-with-cta__contact {
        margin-top: 2rem;
    }

    .two-columns-with-cta__contact {
        max-width: none;
    }
}
