/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* container query */

.cta {
    container-type: inline-size;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* containers */

section.cta {
    padding: 15px;
}

.page-row--has-sidebar section.cta {
    padding: 15px 0;
}

.cta__inner {
    min-height: 525px;
    position: relative;

    border-radius: var(--box-border-radius-lg);
    overflow: hidden;

    display: flex;
    align-items: end;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* background */

.cta__image.background-image {
    height: 85%;
}

.cta__gradient.background-gradient {
    top: unset;
    z-index: -1;
    bottom: 0;
    height: 92%;
    background: linear-gradient(180deg, rgba(0, 96, 175, 0) 0%, rgba(0, 96, 175, 0.2) 10%, rgba(0, 96, 175, 0.6) 20%, var(--blue-dk) 30%, var(--blue-dk) 100%);
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* content */

.cta__inner .container {
    height: 100%;
}

.cta__content {
    position: relative;
    height: 100%;
    width: 100%;

    padding: 52px 32px;

    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
}

.cta__header.section-header {
    margin-bottom: 30px;

    text-align: center;
}

.cta__title span {
    color: var(--white);
}

.cta__buttons .button-row {
    justify-content: center;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* mobile */

@container (max-width: 768px) {
    /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
    /* content */

    .cta__content {
        padding: 40px 26px;
    }

    .cta__header.section-header {
        margin-bottom: 16px;
    }

    span.cta__section-title.section-title {
        font-size: 36px;
    }
}

@media (max-width: 768px) {
    /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
    /* containers */

    section.cta {
        padding: 15px 0;
    }

    .cta__inner {
        min-height: 430px;

        padding: 24px 0;
        border-radius: 0;
    }

    .page-row--has-sidebar .cta__inner {
        margin-right: -30px;
        margin-left: -30px;
    }

    /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
    /* background */

    .cta__gradient.background-gradient {
        height: 100%;
    }
    .cta__image.background-image {
        height: 60%;
    }
}
