.elementor-2629 .elementor-element.elementor-element-ab043be{--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:-60px;--margin-bottom:30px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2629 .elementor-element.elementor-element-a2ce184{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--border-radius:10px 10px 10px 10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2629 .elementor-element.elementor-element-27e5bb3{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2629 .elementor-element.elementor-element-8d45605{text-align:center;}.elementor-2629 .elementor-element.elementor-element-8d45605 img{width:100%;max-width:70%;}.elementor-2629 .elementor-element.elementor-element-cd7ca3b{--display:flex;--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-2629 .elementor-element.elementor-element-1702038{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-2629 .elementor-element.elementor-element-1702038.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2629 .elementor-element.elementor-element-1702038 > .elementor-widget-container{border-radius:10px 10px 10px 10px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}@media(min-width:768px){.elementor-2629 .elementor-element.elementor-element-27e5bb3{--width:100%;}.elementor-2629 .elementor-element.elementor-element-cd7ca3b{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-ab043be *//* Container animation + background effect */
.elementor-element-ab043be {
    position: relative;
    padding: 50px 25px;
    text-align: center;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(255,255,255,0.85), rgba(240,245,255,0.75));
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 15px 40px rgba(20,40,80,0.10);
    overflow: hidden;
    animation: fadeUp 0.8s ease forwards;
}

/* Floating animated blobs */
.elementor-element-ab043be::before,
.elementor-element-ab043be::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    filter: blur(45px);
    opacity: 0.18;
    z-index: 0;
}

.elementor-element-ab043be::before {
    top: -70px;
    right: -60px;
    background: #4a7eff;
    animation: glowFloat 9s infinite ease-in-out;
}

.elementor-element-ab043be::after {
    bottom: -70px;
    left: -50px;
    background: #7ad0ff;
    animation: glowFloat 11s infinite ease-in-out reverse;
}

/* Animate your heading text */
.elementor-element-ab043be .elementor-heading-title {
    position: relative;
    z-index: 2;
    font-weight: 800;
    font-size: clamp(22px, 4vw, 34px);
    line-height: 1.1;
    letter-spacing: -0.5px;
    display: inline-block;

    background: linear-gradient(90deg,
        #0a1220,
        #3a6fff,
        #4a7eff,
        #3a6fff,
        #0a1220
    );
    background-size: 300%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;

    animation: textGradient 4s linear infinite;
}

/* Underline animation */
.elementor-element-ab043be .elementor-heading-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -12px;
    width: 70%;
    height: 6px;
    background: linear-gradient(90deg, #4a7eff, #2e6ef8);
    border-radius: 6px;
    transform: translateX(-50%) scaleX(0);
    transform-origin: center;
    animation: underlineGrow 1s ease forwards 0.4s;
}

/* ============================
   KEYFRAMES
============================ */
@keyframes textGradient {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

@keyframes underlineGrow {
    0% { transform: translateX(-50%) scaleX(0); }
    60% { transform: translateX(-50%) scaleX(1.05); }
    100% { transform: translateX(-50%) scaleX(1); }
}

@keyframes glowFloat {
    0% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-15px) scale(1.05); }
    100% { transform: translateY(0) scale(1); }
}

@keyframes fadeUp {
    from { opacity: 0; transform: translateY(15px); }
    to   { opacity: 1; transform: translateY(0); }
}/* End custom CSS */