body {
    font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    
    background-color: #82a5b3;
}

#wrapper {
    margin-left: 5%;
    margin-right: 5%;
}

header {
    background-color: #e9e9e9;
    border-radius: 5px;

    padding: 2%;
}

header > img {
    width: 25%;
    max-width: 225px;
    height: auto;
    float: right;
}

header > p {
    font-size: 1.5em;
    font-weight: bold;
    
    line-height: 1;
    margin: 2%;
}

.clearright {
    clear: right;
}

nav {
    display: flex;
    
    justify-content: center;
    text-align: center;
}

nav > div {
    background-color: #e9e9e9;

    margin: 10px;
    padding: 5px;
    
    border-radius: 5px;
}

a {
    text-decoration: none;
    color: #4d9fb6;
}

a:hover {
    text-decoration: underline;
    color: #e49da8;
}

main {
    margin-left: 5%;
    margin-right: 5%;

    margin-bottom: 10px;
}

.box {
    background-color: #fcfcfc;
    
    margin: 10px 0 10px 0;
    padding: 3%;
    border-radius: 5px;
}

.box > img {
    float: left;
    width: 20%;
    height: auto;
    
    margin: 4px 10px 4px 4px;
}

.flex-container {
    display: flex;
}

.home-left {
    background-color: #fcfcfc;
    
    margin: 10px;
    padding: 1% 2% 1% 2%;
    flex: 2;

    border-radius: 5px;
    
    height: auto;
}

.home-left > img {
    margin: 4px 4px 4px 10px;
    
    width: 50%;
    height: auto;

    float: right;
}

.home-left > p {
    font-size: 1.1em;
}

.home-right {
    flex: 1;
}
.home-right > div {
    background-color: #fcfcfc;
    
    margin: 10px;
    padding: 2%;    
    border-radius: 5px;
}

.shadow {
    text-shadow: 1px 2px 2px #ffacbc;
    color: #282828;
}

.addition > img {
    margin: 4px;
    
    width: 50%;
    height: auto;
    float: left;
}

.addition > p {
    font-size: 0.8em;
    padding: 10px;
}

.clearleft {
    clear: left;
}


footer {
    background-color: #e9e9e9;
    border-radius: 5px;
    
    text-align: center;
    font-weight: bold;

    padding: 5px;
}

.form-left {
    background-color: #fcfcfc;
    
    margin: 10px;
    padding: 1% 2% 1% 2%;
    flex: 1;

    border-radius: 5px;
    
    height: auto;
}

.form-right {
    background-color: #fcfcfc;
    
    margin: 10px;
    padding: 1% 2% 1% 2%;
    flex: 2;

    border-radius: 5px;
    
    height: auto;
}

label {
    float: left;
    display: block;
    text-align: right;
    
    width: 5em;
    margin-right: 1em;
}

input {
    display: block;
    margin-bottom: 1em;
    
    width: 60%;
}

textarea {
    display: block;
    margin-bottom: 1em;

    width: 60%;
    height: 7em;
}

input[type="submit"] {
    margin-left: 7em;
    width: auto;
}

details {
    margin-bottom: 1em;
}

details img {
    width: 50%;
    height: auto;
}

table, th, td {
    border: thin solid black;
}

.grid-container {
    display: flex;
}

.grid-container > div {
    flex: 1;
    
    background-color: #fcfcfc;
    margin: 3px;
    padding: 5px;
    
    border-radius: 5px;
}

.grid-container > div > img {
    float: left;
    width: 50%;
    
    margin: 4px 10px 4px 4px;
}

@media only screen and (max-width: 510px) {
    header > span {
        font-size: 1em;
    }
    nav {
        flex-direction: column;
    }
    nav > div {
        margin: 5px 20% 5px 20%;
    }
    
    .flex-container {
        flex-direction: column;
    }
    
    .addition > img {
        width: 35%;
    }
    
    .pagedesc > img {
        width: 40%;
    }
    
    .grid-container {
        flex-direction: column;
    }
}