*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial;
scroll-behavior:smooth;
}

header{
background: linear-gradient(270deg,#0d6efd,#6610f2,#0dcaf0);
background-size:600% 600%;
animation:gradientMove 12s ease infinite;
color:white;
padding-bottom:80px;
}

@keyframes gradientMove{
0%{background-position:0% 50%;}
50%{background-position:100% 50%;}
100%{background-position:0% 50%;}
}

nav{
display:flex;
justify-content:space-between;
padding:20px;
align-items:center;
}

nav ul{
display:flex;
gap:25px;
list-style:none;
}

nav a{
color:white;
text-decoration:none;
}

.menu-toggle{
display:none;
font-size:28px;
cursor:pointer;
}

.hero{
text-align:center;
margin-top:60px;
}

.foto-perfil{
width:160px;
height:160px;
border-radius:50%;
border:5px solid white;
object-fit:cover;
margin-bottom:20px;
}

.btn{
display:inline-block;
background:white;
color:#333;
padding:12px 25px;
border-radius:30px;
text-decoration:none;
margin-top:20px;
}

section{
padding:70px 20px;
text-align:center;
}

.tech-icons{
display:flex;
justify-content:center;
gap:40px;
margin-top:30px;
flex-wrap:wrap;
}

.tech-icons img{
width:60px;
transition:.3s;
}

.tech-icons img:hover{
transform:scale(1.2);
}

.cards{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:25px;
}

.card{
width:280px;
padding:25px;
border-radius:18px;
background:white;
box-shadow:0 10px 25px rgba(0,0,0,0.12);
transition:.4s;
}

.card:hover{
transform:translateY(-10px);
}

.btn-card{
display:inline-block;
margin-top:10px;
color:#0d6efd;
text-decoration:none;
font-weight:bold;
}

@media(max-width:768px){

nav ul{
display:none;
flex-direction:column;
background:#0d6efd;
position:absolute;
top:70px;
right:0;
width:200px;
padding:20px;
}

nav ul.active{
display:flex;
}

.menu-toggle{
display:block;
}
}
.nav{
position:relative;
}
