.ks-smart-cta-wrap {
    box-sizing: border-box;
    width: 100%;
    max-width: 920px;
    margin: 24px auto;
}

.ks-smart-cta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    transform: translateY(0) scale(1);
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        filter .22s ease;
    -webkit-tap-highlight-color: transparent;
}

.ks-smart-cta:hover {
    filter: saturate(1.1) brightness(1.08);
    box-shadow: 0 18px 38px rgba(17, 24, 39, .27) !important;
    transform: translateY(-4px) scale(1.009);
}

.ks-smart-cta__title {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
}

.ks-smart-cta__action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    margin: 0 0 0 auto !important;
    font-style: normal !important;
    transition:
        transform .22s ease,
        box-shadow .22s ease;
}

.ks-smart-cta__icon {
    transition: transform .22s ease;
}

.ks-smart-cta:hover .ks-smart-cta__action {
    box-shadow: 0 10px 22px rgba(0, 0, 0, .2) !important;
    transform: translateY(-1px);
}

.ks-smart-cta:hover .ks-smart-cta__icon {
    transform: translateX(5px);
}

.ks-smart-cta:active {
    transform: translateY(0) scale(.997);
}

.ks-smart-cta:focus-visible {
    outline: 4px solid rgba(37, 99, 235, .42);
    outline-offset: 4px;
}

@media (max-width: 640px) {
    .ks-smart-cta {
        align-items: center !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        min-height: 78px !important;
        padding: 15px 14px !important;
    }

    .ks-smart-cta__title {
        min-width: 0 !important;
        font-size: 16px !important;
        line-height: 1.35 !important;
    }

    .ks-smart-cta__action {
        width: auto !important;
        min-height: 40px !important;
        padding: 9px 11px !important;
        font-size: 12px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ks-smart-cta,
    .ks-smart-cta__action,
    .ks-smart-cta__icon {
        transition: none !important;
    }

    .ks-smart-cta:hover,
    .ks-smart-cta:hover .ks-smart-cta__action,
    .ks-smart-cta:hover .ks-smart-cta__icon {
        transform: none !important;
    }
}
