html {
font-size: 16px;
}

body {
margin: 0;
padding: 0 0 4rem 0;
font-family: Verdana, "Open Sans", sans-serif, Helvetica, Arial;
background-color: whitesmoke;
}

header {
background-color: #000;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
box-shadow: inset 0 0 0 1000px rgba(0,0,0,.7),0 6px 20px 0 rgba(0,0,0,.19);
box-sizing: border-box;
color: #fff;
margin: 0;
padding: 70px 5vw;;
text-transform: uppercase;
width: 100%;
}

.logo {
text-transform: uppercase;
line-height: 1.15;
font-weight: 400;
margin: 0 0 2.5rem 0;
font-family: Jost;
user-select: none;
}

main {
margin: 4rem 5vw 10px 5vw;
}
main.semcabecalho {margin-top: 3rem;}

.aviso {font-size: 0.825rem; text-align: center; margin: 2rem 10%; line-height: 150%;}
aside, blockquote {margin: 4rem 0 4rem 50%; line-height: 1.25rem;} 
aside > p, blockquote > p {text-align: justify; font-size: 0.75rem;}
blockquote p.autor {text-align: right; font-size: 0.625rem; font-weight: bold; letter-spacing: 5px; text-transform: uppercase;}

div.logo a, h2 a {
color: white;
text-decoration: none;
}

a {
text-decoration: none;
color: #009;
}

a:hover {
text-decoration: underline;
}

b {
font-weight: 600;
}

h1 {
font-size: 1.75rem;
font-weight: 600;
margin: 0.5rem 0 0 0;
text-align: left;
}

h2 {
font-size: 1rem;
font-weight: 400;
margin: 2.5rem 0 0 0;
text-align: left;
}

h3 {
text-align: center;
margin: 4rem 1rem 1rem 1rem;
}

table {border-collapse: collapse; width: 100%; line-height: 1.5rem;}
table, h4 {font-size: 1rem;}

td {padding: 0.5rem 1px;}

th {
 font-size: 0.875rem;
 text-transform: uppercase;
 font-weight: 600;
 text-align: left;
 padding: 3rem 1px 0.75rem 1px;
 border-bottom: 2px solid #000;
}

tr {border-bottom: 1px solid #d9d9d9;}

tr:first-child th {padding-top: 1.5rem;}

tr td img {width: 100%; height: auto; padding: 0;}

td:nth-child(2n) {
 padding: 0 0 0 1rem;
 margin: 0;
 text-align: right;
 line-height: 1.5rem;
 vertical-align: bottom;
 width: 75px;
}

.espacado {margin-top: 2rem; margin-bottom: 2rem;}
.indicacao {text-align: left; margin: 0.75rem 0 0.75rem 0; font-weight: bold; font-size: 0.875rem;}
h3.indicacao {font-weight: normal; text-transform: uppercase; margin-top: 3rem; margin-bottom: 1rem;}
.menor {font-size: 0.75rem;}
small {font-size. 0.675rem;}
.mini {font-size: 0.5rem;}

.datas {font-size: 0.625rem; text-align: right; margin: 0;}
.datas:first-of-type {margin-top: 2rem;}

@media (max-width:480px) {
header {padding: 40px;}
div.logo {font-size: 0.75rem;}
h1 {font-size: 1.5rem;}
main, main.semcabecalho {margin: 1rem 2.5rem;}
div.grade {gap: 3rem 2rem; grid-template-columns: 1fr;}
aside, blockquote {margin: 4rem 10%;} 
th {font-size: 0.875rem;}
td:nth-child(2n) {width: 15vw;}
}
