@import
url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');
* { box-sizing: border-box; }
body {
 font-family: 'Poppins', Arial, sans-serif;
 margin: 0;
 padding: 40px 20px;
 min-height: 100vh;
 background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
}
h1 {
 background: white;
 color: #2c3e50;
 text-align: center;
 font-size: 2.2rem;
 font-weight: 700;
 padding: 30px 20px 10px;
 margin: 0 auto;
 border-radius: 20px 20px 0 0;
 max-width: 600px;
}
h2 {
 background: white;
 text-align: center;
 margin: 0 auto;
 max-width: 600px;
 padding: 0 20px;
 color: #6a11cb;
 font-weight: 600;
}
.subtitulo {
 color: #2575fc;
 font-weight: 600;
 letter-spacing: 0.5px;
}
p {
 background: white;
 color: #444;
 line-height: 1.7;
 padding: 15px 40px;
 margin: 0 auto;
 max-width: 600px;
 text-align: center;
}
#foto-container {
 background: white;
 text-align: center;
 padding: 25px;
 margin: 0 auto;
 max-width: 600px;
}
.foto-perfil {
 border-radius: 50%;
 width: 160px;
 height: 160px;
 object-fit: cover;
 border: 5px solid transparent;
 background: linear-gradient(white, white) padding-box,
 linear-gradient(135deg, #6a11cb, #2575fc) border-box;

 transition: transform 0.3s ease;
}
.foto-perfil:hover {
 transform: scale(1.08) rotate(-2deg);
}
ul {
 list-style-type: none;
 background: white;
 margin: 0 auto;
 max-width: 600px;
 padding: 10px 40px 30px;
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 justify-content: center;
}
li {
 background: linear-gradient(135deg, #6a11cb, #2575fc);
 color: white;
 padding: 10px 18px;
 border-radius: 30px;
 font-size: 0.9rem;
 font-weight: 600;

 transition: transform 0.2s ease, box-shadow 0.2s ease;
}
li:hover {
 transform: translateY(-4px);

}
a {
 display: block;
 text-align: center;
 background: white;
 color: #2575fc;
 text-decoration: none;
 font-weight: 700;
 padding: 15px 40px 30px;
 margin: 0 auto;
 max-width: 600px;
 border-radius: 0 ; 
 transition: color 0.2s ease, letter-spacing 0.2s ease;
}

.proyecto{
 display: block;
 text-align: center;
 background: white;
 color: #2575fc;
 text-decoration: none;
 font-weight: 700;
 padding: 15px 40px 30px;
 margin: 0 auto;
 max-width: 600px;
 border-radius: 0 0 20px 20px;

 transition: color 0.2s ease, letter-spacing 0.2s ease;
}
a:hover {
 color: #6a11cb;
 letter-spacing: 1px;
}

.cal{
 display: block;
 text-align: center;
 background: white;
 color: #2575fc;
 text-decoration: none;
 font-weight: 700;
 padding: 15px 40px 30px;
 margin: 0 auto;
 max-width: 600px;
 border-radius: 0 0 30px 30px ; 
 transition: color 0.2s ease, letter-spacing 0.2s ease;
 }