.iz-halo-cta {
    padding: var(--iz-section-y) 0;
    background: #f7f9fd;
}

.iz-halo-cta__panel {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(28px, 5vw, 72px);
    min-height: 250px;
    padding: clamp(38px, 6vw, 72px);
    overflow: hidden;
    border: 1px solid rgba(94, 133, 255, .2);
    border-radius: 24px;
    color: #fff;
    background: linear-gradient(135deg, #07101f 0%, #0b1730 58%, #102858 100%);
    box-shadow: 0 26px 70px rgba(8, 18, 37, .16);
}

.iz-halo-cta__panel::after {
    content: '';
    position: absolute;
    z-index: -1;
    right: clamp(-145px, -9vw, -72px);
    bottom: clamp(-235px, -15vw, -175px);
    width: clamp(330px, 34vw, 520px);
    aspect-ratio: 1;
    border: 1px solid rgba(157, 181, 255, .23);
    border-radius: 50%;
    pointer-events: none;
}

.iz-halo-cta__copy {
    position: relative;
    z-index: 1;
    max-width: 680px;
}

.iz-halo-cta__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    color: #9db5ff;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.iz-halo-cta__copy h2 {
    margin: 0 0 10px;
    color: #fff;
    font-size: clamp(1.75rem, 3.5vw, 2.8rem);
    letter-spacing: -.045em;
}

.iz-halo-cta__copy p {
    max-width: 590px;
    margin: 0;
    color: rgba(226, 234, 248, .68);
    font-size: .94rem;
    line-height: 1.75;
}

.iz-halo-cta__button {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
}

@media (max-width: 991px) {
    .iz-halo-cta__panel { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 576px) {
    .iz-halo-cta__panel { min-height: 0; padding: 34px 24px; border-radius: 20px; }
    .iz-halo-cta__button { width: 100%; }
    .iz-halo-cta__panel::after { right: -185px; bottom: -225px; }
}
