html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}
header
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
}
nav
{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 10px;
    justify-content: center;
    border-bottom: 2px solid black;
    padding-right: 10px;

}
nav span
{
    border: 1px solid black;
}
nav span, nav a
{
    margin-bottom: 2px;
}
nav a
{
    padding: 4px 8px;
    text-decoration: none;
    color: darkblue;
    font-size: larger;
}
nav a:hover
{
    background-color: rgb(0, 46, 46);
    color: white;
}
header h1
{
    text-align: center;
    margin-right: 10px;
}
header > img
{
    width: 1000px;
}
article, header > img
{
    max-width: min(1000px, 80svw);
    margin: 5px auto;
}
.wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

footer
{
    padding-top: 10px;
    text-align: center;
    padding-bottom: 3px;
    margin-top: auto;
}

article:not(:empty)
{
    border: 2px solid black;
    border-radius: 15px;
    padding: 10px;
    width: 980px;
    background-color: lightgray;
    -webkit-box-shadow: 8px 8px 24px 0px rgba(66, 68, 90, 1);
    -moz-box-shadow: 8px 8px 24px 0px rgba(66, 68, 90, 1);
    box-shadow: 8px 8px 24px 0px rgba(66, 68, 90, 1);
}

header > div, header > nav
{
    background-color: #dae0ff;
}

.mailto
{
    color: #006086;
    text-decoration: none;
}

.type
{
    font-weight: bolder;
    font-size: large;
}

table, th, tr, td
{
    padding: 4px 8px;
    border: 2px solid black;
    border-collapse: collapse;
}
table
{
    margin: auto;
}

a
{
    text-decoration: none;
    color: darkblue;
}
a:hover
{
    color: rgb(40, 148, 184);
}