/* =========================
   CTA SECTION (COMPONENT)
========================= */

.enhanced-cta {
    background: transparent;
}

/* CTA box */
.cta-box {
    position: relative;
    text-align: center;
    padding: 80px 60px;
    border-radius: 20px;

    background: linear-gradient(90deg, #fa33a1 0%, #553add 100%);

    box-shadow: 0 35px 80px rgba(85, 58, 221, 0.35);
    overflow: hidden;
}

/* Text */
.cta-title {
    font-size: 42px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 16px;
}

.cta-title span {
    color: #ffd6ef;
}

.cta-subtitle {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.92);
    max-width: 640px;
    margin: 0 auto 35px;
}

/* Button override for CTA context */
.enhanced-cta .btn-light {
    background: #ffffff;
    color: #553add;
    font-weight: 600;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25);
}

.enhanced-cta .btn-light:hover {
    transform: translateY(-3px);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.35);
}

/* Decorative floating icons */
.icons-one {
    position: absolute;
    left: 50px;
    top: 90px;
    width: 335px;
    height: 384px;
    background: url(../images/icons/icon-4.png) no-repeat;
    animation: floatY 6s ease-in-out infinite;
    opacity: 0.9;
}

.icons-two {
    position: absolute;
    right: 40px;
    bottom: 60px;
    width: 280px;
    height: 300px;
    background: url(../images/icons/icon-5.png) no-repeat;
    animation: floatYReverse 7s ease-in-out infinite;
    opacity: 0.8;
}

/* Animations */
@keyframes floatY {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-18px);
    }
}

@keyframes floatYReverse {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(18px);
    }
}

/* Mobile */
@media (max-width: 768px) {
    .cta-box {
        padding: 60px 28px;
    }

    .icons-one,
    .icons-two {
        display: none;
    }

    .cta-title {
        font-size: 32px;
    }
}
