/* main background */
.cta-section {
    background: linear-gradient(135deg, #f6f6ff, #f5faff);
    border-radius: 40px;
    margin: 80px 20px;
}

/* glow animation */
.cta-glow {
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.25), transparent 60%);
    top: -200px;
    left: -150px;
    animation: glowMove 8s ease-in-out infinite alternate;
    filter: blur(60px);
}

@keyframes glowMove {
    from {
        transform: translate(0, 0);
    }

    to {
        transform: translate(120px, 80px);
    }
}

/* button */
.cta-btn {
    padding: 14px 34px;
    border-radius: 999px;
    background: white;
    color: #111827;
    font-weight: 600;
    transition: .35s;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
}

.cta-btn:hover {
    transform: translateY(-4px) scale(1.06);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.35);
}

/* responsive */
@media(max-width:768px) {
    .cta-section {
        margin: 60px 12px;
        border-radius: 28px;
    }
}