.card-feature-cta {
    position: relative;
    isolation: isolate;
    background-color: var(--color-black);
    color: var(--color-white);
    container-type: inline-size;
}

    .card-feature-cta::after {
        content: "";
        background-color: var(--color-black);
        position: absolute;
        inset: 0;
        opacity: 0.45;
        z-index: -1;
    }

.card-feature-cta__image {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    object-fit: cover;
}

.card-feature-cta__content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
    gap: 1.875rem var(--gutter);
    padding: var(--gutter);
}

    .card-feature-cta__content > * {
        margin-top: 0;
    }

@container (width >= 37.5rem) {
    .card-feature-cta__content {
        padding: min(max(2.5rem, calc(2.5rem + ((1vw - 0.375rem) * 4.7619))), 5rem);
        gap: 1.875rem min(max(2.5rem, calc(2.5rem + ((1vw - 0.375rem) * 4.7619))), 5rem);
    }
}



@media(width >= 64rem) {
    :where(.card-feature-cta):not(:where(.l-container .card-feature-cta)) {
        padding-inline: var(--gutter);        
        
        .card-feature-cta__content {
            max-width: 102.5rem;
            margin-inline: auto;
            padding-inline: 0;
            display: grid;
            grid-template-columns: repeat(12, minmax(0, 1fr));
            gap: 1rem;
        }

        .card-feature-cta__content > div {
            grid-column: 2 / span 10;
            max-width: max(50%, var(--content-width) / 2);
        }
    }
}

@media(width >= 100rem) {
    :where(.card-feature-cta):not(:where(.l-container .card-feature-cta)) {
        aspect-ratio: auto !important;
    }
}
