body {
	background-color: #222222;
	color: #FFFFFF;

	font-family: Arial, serif;
}

h1 {
	margin: 10% 0 8% 0;

	font-size: 500%;
	text-align: center;
}

a {
	display: inline-block;
	margin: 0 1% 0.4em 1%;
	padding: 0.26em 1em 0.26em 1em;

	color: #FFFFFF;
	text-decoration: none;
	text-align: center;

	border-bottom: 1px dotted #424242;
	background-size: cover;

	transition: 0.25s ease-in all;
}
a:hover { background-color: #282828; }
a.active {
	background-color: #FFFFFF;
	border-bottom: 1px solid #FFFFFF;
	color: #242424;
}
a h2, a p {
	display: inline-block;
	vertical-align: middle;
}

a h2 { font-size: 200%; }

a h3:before { font-size: 85%; margin-right: 0.5em; }

a p { margin-left: 0.26em; }

#custom a {
	display: block;
	margin: 0.2em 0.6em;
	font-size: 120%;
}
.main-object { display: inline-block; }
.sub-object {
	display: block;
	font-size: 80%;
	font-weight: 300;
}
.sub-object a {
	display: block;
	padding: 0.4em 0.5em;
	width: 180px;
	text-align: left;
}

.sub-object span {
	display: inline-block;
	vertical-align: middle;
}
.sub .fa {
	width: 38px;
	font-size: 130%;
	text-align: center;
}

.sub {
	display: none;
	position: absolute;

	background: #222222;
	border: 1px solid #444444;

	opacity: 0;
	transition: 0.2s ease opacity;
}

.sub .sub-object:last-child a {
	border: 0;
}

.main-object:hover .sub { display: block; opacity: 1; }

#services { text-align: center; }

.small { margin-bottom: 1em; }
.small a { padding: 1em; margin: 0 0.2em; border: 0; }
.small a h2,
.small a p { display: inline-block; vertical-align: middle; font-size: 1.3em; }

#wrap input {
	display: block;
	width: 52.2%;
	margin: 0 auto 2% auto;

	border: none;
	background-color: #FFF;
	color: #b2b2b2;
	padding: 1em;
	font-family: Arial, serif;
	font-size: 110%;

	box-sizing: border-box;
	opacity: 0.4;
	transition: 0.2s ease-in all;
}

#wrap form[name="search"] input { display: inline-block; }
#wrap form[name="search"].active input {
	color: #242424;
	opacity: 1;
}

#wrap #search_field {
	border: 1px solid #FFF;
	border-top-left-radius: 0.3em;
	border-bottom-left-radius: 0.3em;
}
#wrap #search_field.rad { border-radius: 0.3em; }
#wrap #addthis {
	display: none;
	width: auto;
	border-top-right-radius: 0.3em;
	border-bottom-right-radius: 0.3em;
}

#weather {
	position: absolute;
	top: 1.6em;
	right: 1.6em;

	background: rgba(0,0,0,0.6);
	padding: 1em;
	z-index: 1;
	box-sizing: border-box;
	border-radius: 0.2em;
}

#header_cover {
	width: 100%;
	height: 50vh;
	margin-bottom: -50vh;
	background-size: cover;
	background-position: center center;
}
#header_cover_grad {
	width: 100%;
	height: 50vh;
	margin-bottom: -50vh;

	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, #222222 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,#222222));
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,#222222 100%);
	background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,#222222 100%);
	background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,#222222 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,#222222 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#ff222222',GradientType=0 );
}


.btn {
	display: block;
	margin: 0 auto;

	color: #aaaaaa;
	background: #222222;
	border: 1px solid #333;
}
.btn.erase { margin-top: 5em; }