*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Segoe UI',sans-serif;
scroll-behavior:smooth;
}

body{
background:linear-gradient(-45deg,#0f2027,#203a43,#2c5364,#000000);
background-size:400% 400%;
animation:gradientMove 12s ease infinite;
color:white;
overflow-x:hidden;
cursor:none;
}

@keyframes gradientMove{
0%{background-position:0% 50%;}
50%{background-position:100% 50%;}
100%{background-position:0% 50%;}
}

/* Custom Cursor */
.cursor{
position:fixed;
width:20px;
height:20px;
border-radius:50%;
background:#00f5ff;
pointer-events:none;
mix-blend-mode:difference;
}

/* Preloader */
#preloader{
position:fixed;
width:100%;
height:100vh;
background:black;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
z-index:9999;
}
.loader-bar{
width:0%;
height:5px;
background:#00f5ff;
margin-bottom:20px;
transition:width 3s;
}

/* Navbar */
header{
position:fixed;
width:100%;
display:flex;
justify-content:space-between;
padding:20px 50px;
background:rgba(0,0,0,0.5);
backdrop-filter:blur(10px);
z-index:1000;
}

nav a{
margin-left:30px;
text-decoration:none;
color:white;
transition:0.3s;
}
nav a:hover{
color:#00f5ff;
}

/* Hero */
.hero{
height:100vh;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
}
.hero h1{
font-size:60px;
margin-bottom:20px;
}
.magnetic-btn{
padding:12px 30px;
background:#00f5ff;
border:none;
border-radius:30px;
cursor:pointer;
transition:0.3s;
}
.magnetic-btn:hover{
box-shadow:0 0 20px #00f5ff;
}

/* Services */
.services{
padding:120px 50px;
text-align:center;
}
.cards{
display:flex;
justify-content:center;
gap:40px;
margin-top:40px;
}
.card{
background:rgba(255,255,255,0.1);
padding:30px;
border-radius:15px;
transition:0.5s;
}
.card:hover{
transform:scale(1.1);
}

/* Stats */
.stats{
display:flex;
justify-content:center;
gap:100px;
padding:100px 0;
}
.counter{
font-size:50px;
color:#00f5ff;
}

/* Reveal Animation */
.reveal{
opacity:0;
transform:translateY(60px);
transition:1s ease;
}
.reveal.active{
opacity:1;
transform:translateY(0);
}