Arquivo: estilo.css

@charset "UTF-8";

body { 
    background-color: white;
    color: rgba(0, 0, 0, 1);
}

p {
    text-align: justify;
    text-indent: 50px;
}

/* Formatação de imagens com legendas */

figure.foto-legenda {
    position: relative;
    border: 8px solid white;
    box-shadow: 1px 1px 4px black;
}

figure.foto-legenda img {
    width: 100%;
    height: 100%;
}

figure.foto-legenda figcaption {
    opacity: 0;
    position: absolute;
    top: 0px;
    background-color: rgba(0, 0, 0, .4);
    color: white;
    width: 100%;
    height: 100%;
    padding: 10px;
    box-sizing: border-box;
    transition: opacity 1s;
}

figure.foto-legenda:hover figcaption {
    opacity: 1;
}

/* Formatação do Menu*/

nav#menu {
    display: block;
}

nav#menu ul {
    list-style: none;
    text-transform: uppercase;
    position: absolute;
    top: -20px;
    left: 300px;
}

nav#menu li {
    display: inline-block;
    background-color: #dddddd;
    padding: 10px;
    margin: 2px;
    transition: background-color 1s;
}

nav#menu li:hover {
    background-color: #606060;
}

nav#menu h1 {
    display: none;
}

nav#menu a {
    color: #000000;
    text-decoration: none;
}

nav#menu a:hover {
    color: #ffffff;
    text-decoration: underline;
}

transition: : Como já diz o nome irá fazer uma transição suave no menu do site.

nav#menu li:hover : O :hover vai fazer com que ocorra uma transição quando o cursor do mouse passar por cima da tela.

`nav#menu a {

color: black text-decoration: none;` : essa tag vai retirar a linha das palavras do menu e também tirar cor roxa de link.

`nav#menu a:hover {

color: #ffffff; text-decoration: underline;: essa tag vai fazer com que as palavras fiquem brancas e com uma linha em baixo delas, claro isso é uma questão de gosto, vc pode colortext-decoration: none;` pra ficar sem uma linha em baixo.