* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Arial, sans-serif; }

body { 
    background-color: #0a1128;
    color: #e5e7eb; 
    line-height: 1.6; 
}

header { text-align: center; padding: 60px 20px; }

.foto-perfil { 
    width: 130px; 
    height: 130px; 
    border-radius: 50%; 
    object-fit: cover; 
    margin-bottom: 16px; 
    border: 3px solid #00FFFF; 
    box-shadow: 0 0 15px rgba(0, 255, 255, 0.3); 
    display: block;
    margin-left: auto;
    margin-right: auto;
}

main { max-width: 900px; margin: 0 auto; padding: 20px; }


.secao { 
    background: #0f172a; 
    padding: 20px; 
    border-radius: 12px; 
    margin-bottom: 24px; 
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(65, 105, 225, 0.2); 
}

.secao h2 { 
    border-left: 4px solid #4169E1; 
    color: #00FFFF; 
    padding-left: 10px; 
    margin-bottom: 12px; 
    cursor: pointer; 
    text-transform: uppercase;
    letter-spacing: 1px;
}


.conteudo { max-height: 0; overflow: hidden; opacity: 0; transition: all .4s ease; }
.secao.aberta .conteudo { max-height: 1200px; opacity: 1; padding-top: 10px; }


.cards { 
    list-style: none; 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); 
    gap: 12px; 
}

.card { 
    background: #1e293b; 
    padding: 15px; 
    border-radius: 10px; 
    cursor: pointer; 
    transition: all .3s ease; 
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid transparent;
}

.card:hover { 
    transform: translateY(-5px); 
    border: 1px solid #00FFFF; 
    background: #23314d;
}

.descricao { 
    margin-top: 8px; 
    font-size: .85rem; 
    color: #99C4E1; 
    max-height: 0; 
    opacity: 0; 
    overflow: hidden; 
    transition: all .3s ease; 
}

.card.aberto .descricao { max-height: 200px; opacity: 1; }


a { color: #00FFFF; text-decoration: none; transition: color 0.3s; }
a:hover { color: #4169E1; } 

.card-link .sub { 
    display: block; 
    margin-top: 6px; 
    font-size: .8rem; 
    color: #4169E1; 
    font-weight: bold;
}
