/* =================================================
   MS INFOTECH ULTRA PREMIUM UI EFFECTS
   ================================================= */

/* GLOBAL BACKGROUND */
body{
    background: linear-gradient(135deg,#f7faff,#eef4ff);
    font-family:'Poppins',sans-serif;
    overflow-x:hidden;
}

/* CONTAINER WIDTH */
.elementor-container{
    max-width:1240px;
}

/* HERO GRADIENT */
.hero-gradient{
    background: linear-gradient(-45deg,#0B57D0,#00C2FF,#4facfe,#1c92d2);
    background-size:400% 400%;
    animation: gradientMove 12s ease infinite;
    color:#fff;
}
@keyframes gradientMove{
    0%{background-position:0% 50%;}
    50%{background-position:100% 50%;}
    100%{background-position:0% 50%;}
}

/* SECTION BACKGROUNDS */
.section-light{background:#fff;}
.section-soft{background:#f5f7fb;}
.section-gradient{background:linear-gradient(135deg,#eef4ff,#ffffff);}

/* GLASS CARD */
.glass-card{
    background:rgba(255,255,255,0.65);
    backdrop-filter:blur(14px);
    border-radius:16px;
    padding:30px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.35s;
}
.glass-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 45px rgba(0,0,0,.15);
}

/* BUTTON */
.elementor-button{
    border-radius:30px;
    transition:.3s;
}
.elementor-button:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 22px rgba(11,87,208,.28);
}

/* =================================================
   IMAGE STYLE + SMOOTH EFFECTS
   ================================================= */

/* round all layers */
.elementor-widget-image,
.elementor-widget-image .elementor-widget-container,
.elementor-widget-image img{
    border-radius:20px !important;
}

/* allow glow to extend outside */
.elementor-widget-image .elementor-widget-container{
    overflow:visible;
    position:relative;
}

/* base styling */
.elementor-widget-image img{
    display:block;
    width:100%;
    box-shadow:0 18px 45px rgba(0,0,0,.12);
    transition: box-shadow .35s ease, filter .35s ease;
    will-change: transform;
}

/* smooth floating animation */
.elementor-widget-image img{
    animation: floatImage 6s ease-in-out infinite;
}

@keyframes floatImage{
    0%{ transform: translate3d(0,0,0); }
    50%{ transform: translate3d(0,-10px,0); }
    100%{ transform: translate3d(0,0,0); }
}

/* stop floating on hover (prevents jump) */
.elementor-widget-image:hover img{
    animation:none;
}

/* hover depth */
.elementor-widget-image:hover img{
    box-shadow:0 30px 65px rgba(0,0,0,.18);
    filter: brightness(1.05);
}

/* ⭐ visible corner glow */
.elementor-widget-image:hover .elementor-widget-container{
    box-shadow:
        -14px -14px 30px rgba(0,194,255,.45),
         14px  14px 30px rgba(11,87,208,.45);
}

/* fade reveal */
.elementor-widget-image{
    opacity:0;
    transform:translateY(25px);
    animation:imageFadeUp .8s ease forwards;
}
@keyframes imageFadeUp{
    to{opacity:1; transform:translateY(0);}
}

/* STATS */
.stats-bg{
    background:linear-gradient(135deg,#0B57D0,#00C2FF);
    color:#fff;
}

/* TESTIMONIAL */
.testimonial-card{
    background:#fff;
    border-radius:16px;
    padding:25px;
    box-shadow:0 5px 20px rgba(0,0,0,.08);
}

/* HOVER LIFT */
.hover-lift{transition:.35s;}
.hover-lift:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 55px rgba(0,0,0,.15);
}

/* GRADIENT TEXT */
.gradient-text{
    background:linear-gradient(135deg,#0B57D0,#00C2FF);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* HEADER & FOOTER GRADIENT */
.elementor-location-header,
.site-header,
header{
    background:linear-gradient(135deg,#0B57D0,#00C2FF)!important;
}

.elementor-location-footer,
.site-footer,
footer{
    background:linear-gradient(135deg,#0B57D0,#00C2FF)!important;
}

.elementor-location-header a,
.elementor-location-footer,
.elementor-location-footer a{
    color:#fff!important;
}

/* MOBILE */
@media(max-width:768px){
    .elementor-widget-image img{
        animation:none;
    }
}