@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap');

/* --- Reset e Base --- */
* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Outfit', sans-serif; }

body {
    /* MISTURA DE CORES COM MAIS CONTRASTE PARA O EFEITO APARECER */
    /* Preto Profundo | Roxo Escuro | Azul Meia-Noite | Vinho Escuro */
    background: linear-gradient(-45deg, #000000, #2e1065, #0f172a, #3b0764);
    background-size: 400% 400%;
    
    /* Tempo ajustado para 12s para o movimento ser visível, mas suave */
    animation: gradientMove 12s ease infinite;
    
    color: #ffffff;
    min-height: 100vh;
    line-height: 1.6;
    overflow-x: hidden;
}

@keyframes gradientMove {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

a { text-decoration: none; color: inherit; transition: 0.3s; }
ul { list-style: none; }

/* --- Utilitários --- */
.container {
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
}

.card-glass {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding: 30px;
    margin-bottom: 25px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}

/* --- ESTILO DA FOTO DE PERFIL (NOVO) --- */
.profile-pic {
    width: 140px;          /* Tamanho da foto */
    height: 140px;
    object-fit: cover;     /* Garante que a foto não estica */
    border-radius: 50%;    /* Deixa redonda */
    border: 3px solid #00f2ff; /* Borda Ciano Neon */
    box-shadow: 0 0 25px rgba(0, 242, 255, 0.3); /* Brilho ao redor */
    margin-bottom: 20px;   /* Espaço embaixo da foto */
    transition: transform 0.3s ease;
}

.profile-pic:hover {
    transform: scale(1.05); /* Zoom leve ao passar o mouse */
    box-shadow: 0 0 35px rgba(0, 242, 255, 0.5);
}

/* --- Cores Neon --- */
.text-highlight { color: #00f2ff; font-weight: 700; }
.text-secondary { color: #bd00ff; }
.text-muted { color: #a0a0a0; font-size: 0.9rem; }

/* --- Botões --- */
.btn-primary {
    display: inline-block;
    background: linear-gradient(90deg, #bd00ff, #00f2ff);
    color: #fff;
    padding: 12px 30px;
    border-radius: 50px;
    font-weight: 700;
    border: none;
    box-shadow: 0 0 15px rgba(0, 242, 255, 0.3);
    text-align: center;
}
.btn-primary:hover { transform: translateY(-3px); box-shadow: 0 0 25px rgba(0, 242, 255, 0.6); }

.btn-outline {
    display: inline-block;
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 12px 30px;
    border-radius: 50px;
    margin-top: 10px;
    text-align: center;
}
.btn-outline:hover { background: rgba(255, 255, 255, 0.1); border-color: #fff; }

/* --- Currículo Elements --- */
.skill-tag {
    display: inline-block;
    background: rgba(255,255,255,0.05);
    padding: 8px 15px;
    border-radius: 20px;
    font-size: 0.85rem;
    margin: 5px;
    border: 1px solid rgba(255,255,255,0.1);
}
.skill-tag.glow { border-color: #00f2ff; color: #00f2ff; background: rgba(0, 242, 255, 0.05); }

.job-item { border-left: 3px solid #bd00ff; padding-left: 20px; margin-bottom: 30px; position: relative; }
.impact-box { 
    background: linear-gradient(90deg, rgba(0, 242, 255, 0.1), transparent);
    padding: 15px; 
    border-radius: 8px; 
    margin: 15px 0; 
    border-left: 2px solid #00f2ff;
}

/* Responsividade */
@media (max-width: 600px) {
    .hero h1 { font-size: 2.2rem; }
    .btn-outline, .btn-primary { display: block; width: 100%; margin-left: 0; }
}