body {
    background-color: black;
	background-attachment: fixed;
    font-family: "Roboto", "Open Sans", sans-serif;
	margin: 0;
}

form {
	margin: auto;
}

#wrapper {
	min-height: 100vh;
	margin: auto;
	background-repeat: no-repeat;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#header, #main, #footer {
	color: white;
	text-shadow: 1px 1px black, 1px -1px black, -1px 1px black, -1px -1px black;
}

#main {
	flex: 99;
}

#header a, #footer a {
	color: white;
}

#header a:visited {
	color: white;
}

#langlinks a:visited, #footer a:visited {
	color: #808;
}

header, footer, main {
	max-width: 1024px;
	margin: auto;
	display: flex;
}

header {
	align-items: center;
	margin-top: 1vh;
}

footer {
	padding-top: .5em;
	margin-bottom: 1vh;
	flex-direction: column;
}

#title {
	text-decoration: none;
}

#bumper {
	-webkit-flex: 0 0 90px;
	-ms-flex: 0 0 90px;
	flex: 0 0 90px;
	height: 90px;
}

#logo {
	padding: 10px 10px 10px 0;
}

#langlinks {
	margin: 0;
	padding: 10px;
	list-style: none;
	text-align: right;
}

#langlinks li {
	margin-left: .5em;
}

main, #results {
	position: relative;
	flex-direction: column;
}

form input, form select {
	font-size: 1em;
    padding-top: 0.1em;
	padding-bottom: 0.1em;
}

form input {
	padding-left: 0.25em;
	padding-right: 0.25em;
}

form input, form button, form select {
	color: white;
	background-color: transparent;
	border-color: #808;
	border-radius: 1em;
	outline-color: #f0f;
}

a h1 {
	padding: 10px;
}

h1, h2, h3 {
	font-weight: bold;
	margin: 0;
}

h2 {
	font-size: 1.5em;
}

h3 {
	font-size: 1.5em;
	color: #0c4076;
}

p {
	text-align: justify;
}

main a {
    color: #f0f;
    text-shadow: 1px 1px black;
}

main a:visited {
    color: #808;
}

a:not([href]) {
	cursor: default;
}

dt {
    float: left;
    text-align: right;
	font-style: normal;
	font-weight: bold;
}

dd {
	font-style: normal;
}

#links-main {
	flex: 1;
	display: flex;
}

#links-main span, #links-main h1 {
	flex: 1;
	font-size: 1.5em;
	text-align: center;
}

#contact dt {
	padding-right: 0.5em;
    width: 6em;
}

#copyright {
	text-align: center;
    margin-left: auto;
    margin-right: auto;
}

#links-internal {
	list-style: none;
	padding-left: 0.5em;
	padding-bottom: 0.5em;
	margin: 0;
}

#links-internal li {
	color: #e5dfce;
}

#bottom-links {
	margin-bottom: 0.5em;
}

#bottom-links ul {
	display: inline;
	padding: 0;
	list-style: none;
}

#bottom-links ul li {
	display: inline;
	margin-right: .5em;
}

#bottom-links img {
	vertical-align: middle;
}

@media only screen and (max-width: 1040px) {
	header, footer, main {
		padding-left: 8px;
		padding-right: 8px;
	}
}

@media only screen and (max-width: 480px) {
	#title {
		display: none;
	}

	#links-main {
		flex-direction: column;
	}

	#links-main h1, #links-main span {
		text-align: center;
	}

	#bottom-links img {
		width: 40;
		height: auto;
	}
}
