body{
margin:0;
font-family:'Poppins',sans-serif;
background:#f5f5f5;
color:#111;
transition:.4s;
}

body.dark{
background:#0d1117;
color:#fff;
}

*{
box-sizing:border-box;
scroll-behavior:smooth;
}

.hero{
min-height:100vh;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
padding:40px 20px;
}

.profile-img{
width:180px;
height:180px;
border-radius:50%;
object-fit:cover;
border:4px solid #00bfff;
box-shadow:0 0 25px rgba(0,191,255,.5);
}

.hero h1{
font-size:50px;
margin-top:20px;
margin-bottom:10px;
}

.hero h3{
color:#00bfff;
height:30px;
}

.hero p{
max-width:700px;
margin:auto;
line-height:1.8;
}

.socials{
margin-top:20px;
}

.socials a{
font-size:24px;
margin:0 12px;
color:#00bfff;
}

.theme-toggle{
position:fixed;
top:20px;
right:20px;
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#00bfff;
color:white;
cursor:pointer;
z-index:999;
}

section{
padding:80px 10%;
}

h2{
text-align:center;
margin-bottom:30px;
font-size:35px;
}

.about-card,
.contact-box{
max-width:900px;
margin:auto;
background:white;
padding:30px;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

body.dark .about-card,
body.dark .contact-box{
background:#161b22;
}

.skills-grid,
.project-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
}

.skill-card,
.project-card{
background:white;
padding:25px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
transition:.3s;
}

body.dark .skill-card,
body.dark .project-card{
background:#161b22;
}

.skill-card:hover,
.project-card:hover{
transform:translateY(-5px);
}

.bottom-nav{
position:fixed;
bottom:20px;
left:50%;
transform:translateX(-50%);
background:white;
padding:15px 25px;
border-radius:50px;
display:flex;
gap:25px;
box-shadow:0 10px 30px rgba(0,0,0,.15);
z-index:999;
}

body.dark .bottom-nav{
background:#161b22;
}

.bottom-nav a{
color:#00bfff;
font-size:20px;
}

@media(max-width:768px){

.hero h1{
font-size:35px;
}

.profile-img{
width:140px;
height:140px;
}

.bottom-nav{
gap:18px;
padding:12px 20px;
}

}