*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
font-family:Poppins,sans-serif;
}

body{
background:#f4f6fb;
color:#222;
transition:.4s;
}

header{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 8%;
position:fixed;
width:100%;
background:white;
box-shadow:0 5px 15px rgba(0,0,0,.08);
z-index:100;
}

.logo{
font-size:28px;
font-weight:bold;
color:#010501;
}

nav a{
margin:15px;
text-decoration:none;
color:#333;
font-weight:500;
}

nav a:hover{
color:#5f27cd;
}

#themeBtn{
font-size:20px;
cursor:pointer;
background:none;
border:none;
}

.hero{
display:flex;
justify-content:space-between;
align-items:center;
padding:120px 8%;
min-height:100vh;
gap:40px;
}

.hero-text{
flex:1;
}

.hero-text h1{
font-size:60px;
color:#8e7eb0;
}

.hero-text h2{
margin:10px 0;
height:40px;
color:#ff6b6b;
}

.hero-text p{
line-height:1.8;
margin:20px 0;
color:#666;
}

.hero-image img{
width:350px;
border-radius:50%;
box-shadow:0 20px 50px rgba(0,0,0,.2);
animation:float 3s ease-in-out infinite;
}

@keyframes float{

50%{
transform:translateY(-15px);
}

}

.btn{
display:inline-block;
padding:12px 25px;
background:#5f27cd;
color:white;
text-decoration:none;
border-radius:40px;
transition:.3s;
}

.btn:hover{
transform:translateY(-5px);
}

section{
padding:90px 8%;
}

h2{
font-size:38px;
margin-bottom:30px;
text-align:center;
}

.skill{
margin:25px 0;
font-weight:600;
}

.bar{
height:12px;
background:#ddd;
border-radius:30px;
overflow:hidden;
margin-top:10px;
}

.bar span{
display:block;
height:100%;
background:linear-gradient(90deg,#5f27cd,#faf215);
}

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

.card{
background:white;
padding:25px;
border-radius:15px;
transition:.3s;
box-shadow:0 10px 20px rgba(0,0,0,.08);
}

.card:hover{
transform:translateY(-10px);
}

.card button{
margin-top:20px;
padding:10px 20px;
border:none;
background:#4903d5;
color:white;
border-radius:30px;
cursor:pointer;
}

footer{
padding:30px;
text-align:center;
}

.dark{
background:#111;
color:white;
}

.dark header{
background:#1b1b1b;
}

.dark nav a{
color:white;
}

.dark .card{
background:#1c1c1c;
}

.dark p{
color:#ddd;
}

@media(max-width:900px){

.hero{
flex-direction:column-reverse;
text-align:center;
}

.hero h1{
font-size:45px;
}

.hero-image img{
width:260px;
}

}