/* ==========================================================================
   SSI FINAL ADMISSION CTA
   ========================================================================== */

.ssi-final-cta {
    position:
        relative;

    overflow:
        hidden;

    padding:
        125px
        0
        110px;

    background:
        linear-gradient(
            145deg,
            #061426 0%,
            #0b1f3a 50%,
            #123661 100%
        );

    color:
        var(--ssi-color-white);
}


/* ==========================================================================
   BACKGROUND
   ========================================================================== */

.ssi-final-cta__background {
    position:
        absolute;

    inset:
        0;

    z-index:
        0;

    pointer-events:
        none;
}

.ssi-final-cta__orb {
    position:
        absolute;

    border-radius:
        50%;

    filter:
        blur(5px);
}

.ssi-final-cta__orb--one {
    width:
        520px;

    height:
        520px;

    top:
        -300px;

    right:
        -160px;

    background:
        radial-gradient(
            circle,
            rgba(
                59,
                130,
                246,
                0.18
            ),
            transparent
            70%
        );

    animation:
        ssiFinalOrb 10s
        ease-in-out
        infinite;
}

.ssi-final-cta__orb--two {
    width:
        460px;

    height:
        460px;

    bottom:
        -300px;

    left:
        -190px;

    background:
        radial-gradient(
            circle,
            rgba(
                220,
                162,
                56,
                0.12
            ),
            transparent
            70%
        );

    animation:
        ssiFinalOrb 12s
        ease-in-out
        -3s
        infinite;
}

.ssi-final-cta__ring {
    position:
        absolute;

    border:
        1px solid
        rgba(
            255,
            255,
            255,
            0.06
        );

    border-radius:
        50%;
}

.ssi-final-cta__ring--one {
    width:
        580px;

    height:
        580px;

    top:
        50%;

    right:
        -330px;

    transform:
        translateY(-50%);
}

.ssi-final-cta__ring--two {
    width:
        360px;

    height:
        360px;

    bottom:
        -210px;

    left:
        -160px;
}


/* ==========================================================================
   CONTAINER
   ========================================================================== */

.ssi-final-cta__container {
    position:
        relative;

    z-index:
        2;
}


/* ==========================================================================
   CONTENT
   ========================================================================== */

.ssi-final-cta__content {
    max-width:
        850px;

    margin:
        0
        auto;

    text-align:
        center;
}

.ssi-final-cta__eyebrow {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        9px;

    margin-bottom:
        21px;

    color:
        var(--ssi-color-accent-light);

    font-size:
        0.72rem;

    font-weight:
        800;

    letter-spacing:
        0.11em;

    text-transform:
        uppercase;
}

.ssi-final-cta__eyebrow::before,
.ssi-final-cta__eyebrow::after {
    content:
        "";

    width:
        25px;

    height:
        2px;

    border-radius:
        999px;

    background:
        var(--ssi-color-accent);
}

.ssi-final-cta__title {
    margin:
        0
        24px;

    color:
        var(--ssi-color-white);

    font-family:
        "Manrope",
        sans-serif;

    font-size:
        clamp(
            3rem,
            6vw,
            6.2rem
        );

    font-weight:
        800;

    line-height:
        0.98;

    letter-spacing:
        -0.06em;
}

.ssi-final-cta__title span {
    display:
        inline-block;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #f4c766
        );

    -webkit-background-clip:
        text;

    background-clip:
        text;

    color:
        transparent;
}

.ssi-final-cta__description {
    max-width:
        680px;

    margin:
        0 auto
        34px;

    color:
        rgba(
            255,
            255,
            255,
            0.62
        );

    font-size:
        1rem;

    line-height:
        1.8;
}


/* ==========================================================================
   ACTIONS
   ========================================================================== */

.ssi-final-cta__actions {
    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        12px;

    margin-bottom:
        65px;
}

.ssi-final-cta__primary,
.ssi-final-cta__whatsapp {
    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        10px;

    min-height:
        54px;

    padding:
        0
        22px;

    border-radius:
        999px;

    font-size:
        0.82rem;

    font-weight:
        800;

    transition:
        transform 300ms ease,
        background-color 300ms ease,
        color 300ms ease,
        box-shadow 300ms ease,
        border-color 300ms ease;
}

.ssi-final-cta__primary {
    background:
        var(--ssi-color-accent);

    color:
        var(--ssi-color-primary);

    box-shadow:
        0 12px 35px
        rgba(
            220,
            162,
            56,
            0.20
        );
}

.ssi-final-cta__primary:hover {
    transform:
        translateY(-3px);

    background:
        var(--ssi-color-accent-light);

    box-shadow:
        0 18px 45px
        rgba(
            220,
            162,
            56,
            0.28
        );
}

.ssi-final-cta__whatsapp {
    border:
        1px solid
        rgba(
            255,
            255,
            255,
            0.14
        );

    background:
        rgba(
            255,
            255,
            255,
            0.06
        );

    color:
        var(--ssi-color-white);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);
}

.ssi-final-cta__whatsapp:hover {
    transform:
        translateY(-3px);

    border-color:
        rgba(
            255,
            255,
            255,
            0.25
        );

    background:
        rgba(
            255,
            255,
            255,
            0.11
        );
}

.ssi-final-cta__whatsapp-icon {
    width:
        25px;

    height:
        25px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        50%;

    background:
        rgba(
            255,
            255,
            255,
            0.10
        );

    color:
        var(--ssi-color-accent-light);

    font-size:
        0.76rem;
}


/* ==========================================================================
   QUICK CONTACT STRIP
   ========================================================================== */

.ssi-final-cta__quick {
    display:
        grid;

    grid-template-columns:
        1fr
        auto
        1fr
        auto
        1fr;

    align-items:
        center;

    gap:
        25px;

    padding:
        22px
        24px;

    border:
        1px solid
        rgba(
            255,
            255,
            255,
            0.09
        );

    border-radius:
        20px;

    background:
        rgba(
            255,
            255,
            255,
            0.045
        );

    backdrop-filter:
        blur(15px);

    -webkit-backdrop-filter:
        blur(15px);
}

.ssi-final-cta__quick-item {
    display:
        flex;

    align-items:
        center;

    gap:
        12px;
}

.ssi-final-cta__quick-icon {
    width:
        38px;

    height:
        38px;

    display:
        grid;

    place-items:
        center;

    flex:
        0 0 auto;

    border-radius:
        11px;

    background:
        rgba(
            59,
            130,
            246,
            0.11
        );

    color:
        var(--ssi-color-accent-light);

    font-size:
        0.8rem;
}

.ssi-final-cta__quick-item small {
    display:
        block;

    margin-bottom:
        2px;

    color:
        rgba(
            255,
            255,
            255,
            0.38
        );

    font-size:
        0.58rem;

    font-weight:
        700;

    letter-spacing:
        0.02em;
}

.ssi-final-cta__quick-item a,
.ssi-final-cta__quick-item > div > span {
    display:
        block;

    color:
        var(--ssi-color-white);

    font-size:
        0.72rem;

    font-weight:
        700;

    line-height:
        1.4;
}

.ssi-final-cta__quick-item a {
    transition:
        color 200ms ease;
}

.ssi-final-cta__quick-item a:hover {
    color:
        var(--ssi-color-accent-light);
}

.ssi-final-cta__divider {
    width:
        1px;

    height:
        38px;

    background:
        rgba(
            255,
            255,
            255,
            0.09
        );
}


/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width: 900px) {

    .ssi-final-cta {
        padding:
            105px
            0
            95px;
    }

    .ssi-final-cta__quick {
        grid-template-columns:
            repeat(
                3,
                minmax(
                    0,
                    1fr
                )
            );

        gap:
            18px;
    }

    .ssi-final-cta__divider {
        display:
            none;
    }
}

@media (max-width: 700px) {

    .ssi-final-cta__actions {
        flex-direction:
            column;

        margin-bottom:
            48px;
    }

    .ssi-final-cta__primary,
    .ssi-final-cta__whatsapp {
        width:
            100%;
    }

    .ssi-final-cta__quick {
        grid-template-columns:
            1fr;

        gap:
            16px;

        padding:
            18px;
    }
}

@media (max-width: 600px) {

    .ssi-final-cta {
        padding:
            80px
            0
            80px;
    }

    .ssi-final-cta__title {
        font-size:
            clamp(
                2.75rem,
                14vw,
                4.2rem
            );
    }

    .ssi-final-cta__description {
        font-size:
            0.92rem;
    }

    .ssi-final-cta__quick-item {
        padding:
            2px
            0;
    }
}


/* ==========================================================================
   ANIMATION
   ========================================================================== */

@keyframes ssiFinalOrb {

    0%,
    100% {
        transform:
            scale(1)
            translate3d(0, 0, 0);
    }

    50% {
        transform:
            scale(1.12)
            translate3d(
                0,
                -12px,
                0
            );
    }
}

@media (prefers-reduced-motion: reduce) {

    .ssi-final-cta__orb {
        animation:
            none !important;
    }
}