.elementor-1172 .elementor-element.elementor-element-29a4d25c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1172 .elementor-element.elementor-element-787f7e0f > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-787f7e0f.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-c045b90{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1172 .elementor-element.elementor-element-bba8f7c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-bba8f7c.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-a7774eb.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-efea7b8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:100px;--margin-right:100px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:100px;}.elementor-1172 .elementor-element.elementor-element-3ad9743.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-7b31975 > .elementor-widget-container{padding:0px 100px 0px 100px;}.elementor-1172 .elementor-element.elementor-element-7b31975.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-74a981a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1172 .elementor-element.elementor-element-e98da41 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-e98da41.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-1172 .elementor-element.elementor-element-5b1021df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1172 .elementor-element.elementor-element-6df7aa6c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-6df7aa6c.xpro-widget-bg-overlay:before{transition:background 0.3s;}@media(max-width:767px){.elementor-1172 .elementor-element.elementor-element-bba8f7c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-efea7b8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1172 .elementor-element.elementor-element-efea7b8.e-con{--align-self:center;}.elementor-1172 .elementor-element.elementor-element-3ad9743 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1172 .elementor-element.elementor-element-3ad9743.elementor-element{--align-self:center;}.elementor-1172 .elementor-element.elementor-element-7b31975 > .elementor-widget-container{padding:0px 30px 0px 30px;}.elementor-1172 .elementor-element.elementor-element-74a981a{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1172 .elementor-element.elementor-element-e98da41 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-e98da41 *//* FINAL CTA */

.cta-banner {
    padding: 80px 30px;
    background: #270033;
        var(--slate-dark) 0%,
        var(--slate-mid) 60%,
        #270033 100%
    );
    position: relative;
    overflow: hidden;
    text-align: center;
}

.cta-banner-mesh {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(
            ellipse 70% 60% at 50% 50%,
            rgba(61,90,128,.45) 0%,
            transparent 65%
        ),
        radial-gradient(
            ellipse 35% 40% at 15% 30%,
            rgba(224,122,95,.09) 0%,
            transparent 60%
        );
}

.cta-banner-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(
            rgba(255,255,255,.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.04) 1px,
            transparent 1px
        );
    background-size: 60px 60px;
    mask-image:
        radial-gradient(
            ellipse 80% 80% at 50% 50%,
            black 20%,
            transparent 80%
        );
    -webkit-mask-image:
        radial-gradient(
            ellipse 80% 80% at 50% 50%,
            black 20%,
            transparent 80%
        );
}

.cta-banner-inner {
    position: relative;
    z-index: 1;
    max-width: 620px;
    margin: 0 auto;
}

.cta-banner-headline {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.8rem, 3.5vw, 2.8rem);
    font-weight: 700;
    color: white;
    line-height: 1.15;
    margin-bottom: 14px;
    letter-spacing: -0.02em;
}

.cta-banner-headline em {
    font-style: italic;
    color: var(--coral-light);
}

.cta-banner-sub {
    font-size: 1rem;
    color: rgba(255,255,255,.65);
    line-height: 1.7;
    margin-bottom: 32px;
}

/* FINAL CTA — BUTTONS */

.cta-banner .btn {
    font-size: 1rem !important;
    padding: 16px 32px !important;
    border-radius: var(--radius-pill);
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
    cursor: pointer;
    transition:
        transform .28s ease,
        box-shadow .28s ease,
        background .25s ease,
        border-color .25s ease;
}


/* PRIMARY BUTTON */

.cta-banner .btn-primary {
    background: #A300D0 !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 4px 20px rgba(163, 0, 208, 0.35);
}

.cta-banner .btn-primary:hover {
    background: #A300D0 !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(163, 0, 208, 0.45);
}


/* SECONDARY / GHOST BUTTON */

.cta-banner .btn-ghost {
    background: rgba(255, 255, 255, .12) !important;
    color: #ffffff !important;
    border: 2px solid rgba(255, 255, 255, .3) !important;
    box-shadow: none !important;
}

.cta-banner .btn-ghost:hover {
    background: rgba(255, 255, 255, .22) !important;
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, .5) !important;
    transform: translateY(-2px);
}/* End custom CSS */