body{ 
    background: #23517e; 
    color: #aaa;
    /* width: 100%; */
    padding: 0;
    margin: 0;
} 


/* ________________________________ CABECALHO _________________________________ */
.cabecalho {
    background: #23517e; 
    width: 100%; 
    /* min-height: 5rem;  */
    position: fixed;
}

.cabecalho-superior {
    /* width: 100%; */
    min-height: 4rem;
    margin: 0 0 0 0; 
    padding: 1rem 4rem 0rem 4rem;
}

.logotipo{
    font-size: 2rem; 
    font-weight:bold; 
    color: #eee;
    margin: 0; 
    padding: 0;
} 

.titulo-cabecalho{
    font-size: 2rem; 
    font-weight:bold; 
    color: #eee;
    text-align: center; 
    margin: 0; 
    padding: 0;
    } 
   
.utilizador {
    color: #aaa; 
    text-align: right; 
    margin: 0; 
    padding: 1rem 0 0 0; 
    visibility: collapse;
}    

.nav {
    border-bottom: 1px solid #bbb; 
    padding: 0 4rem 0 4rem; 
    min-height: 1rem;
    /* visibility: collapse;  */
    /* background-color: chocolate; */
}

.nav-link {
    margin: 0rem 0rem 0rem 0rem; 
    padding: 0.5rem 2rem 0 0;
    color: #999;
    font-weight: bold;
}
.nav-link:hover {
    color: rgb(255, 255, 255); 
    font-weight: bold;
    background-color: transparent;
}

.button-nav{
    font-size: 1em; 
    font-weight: 600; 
    color: #ccc; 
    background-color: transparent;
    margin: 0 0 0rem 0; 
    width: auto; 
    border-radius: 2px;
    float: right; 
    border: 1.5px solid #aaa;
}
.button-nav:hover{ 
    border: 1.5px solid #23517e;
    color:#23517e;
    background-color: #ddd; 
    transition-duration: 0.1s; 
}


/* -------------------------------- CORPO -------------------------------------*/

.corpo-principal {
    background: #ddd; 
    width: 100%; 
    min-height: 75vh; 
    margin: 5rem 0 0 0;
    padding: 0rem 0 0rem 0;
}

.coluna-esquerda {background-color: transparent; padding: 0 ;
    display: flex; flex-direction: column; 
    align-items: center;}
.coluna-central {background-color: #eee; padding: 0;
    display: flex; flex-direction: column;
    align-items: center;
    box-shadow: 0px 0px 8px 0px rgb(137, 137, 137);
}
.coluna-direita {background-color: transparent; padding: 0 ;
    display: flex; flex-direction: column;
    align-items: center;}



/* -------------------------------- RODAPE -------------------------------------*/
.rodape {min-height: 15vh; padding: 2rem 0 0 0;
    background: #23517e; color: black;
    border-top: 1px solid rgb(212, 212, 212);}

.text-rodape{background-color: transparent; color: #ffffff; font-size: 1rem; 
    margin: auto ; padding: 0.2rem; text-align: center;}





/* -------------------------------- OUTROS -------------------------------------*/





















