html, body {
	margin: 0;
	padding: 0;
	height: 100%;
}

body {
	color: #777;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

a {
	color: #0088cc;
	text-decoration: none;
}

a:hover {
	color: #005580;
	text-decoration: underline;
}

header h1 a {
	display: block;

	width: 125px;
	height: 125px;

	background: url('../img/sprite.png') 0px -1460px no-repeat;

	margin-left: auto;
	margin-right: auto;

	text-indent: -9999px;
}

@media only screen and (min-width: 768px) {
	header {
		padding-top: 3em;
		padding-bottom: 3em;
	}
	
	nav {
		padding-top: 3em;
	}
}

nav a {
	position: relative;
	display: block;

	width: 125px;
	height: 136px;

	color: #777;

	font-size: 12px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;

	text-shadow: 0 1px 0 #fff;

	line-height: 85px;
	
	margin-left: auto;
	margin-right: auto;

	background: url('../img/sprite.png') no-repeat;

	transition: opacity 0.75s;
	-webkit-transition: opacity 0.75s;
	-moz-transition: opacity 0.75s;
	-o-transition: opacity 0.75s;
	-ms-transition: opacity 0.75s;
}

nav a.selected {
	color: #000;
}

nav a > span {
	position: absolute;
	display: block;

	width: 125px;
	height: 136px;

	margin-left: auto;
	margin-right: auto;

	text-indent: -9999px;

	background: url('../img/sprite.png') no-repeat;

	opacity: 0;

	transition: opacity 0.75s;
	-webkit-transition: opacity 0.75s;
	-moz-transition: opacity 0.75s;
	-o-transition: opacity 0.75s;
	-ms-transition: opacity 0.75s;
}

nav a:hover > span {
	opacity: 1;
}

nav .info a {
	background-position: 0px -584px;
}

nav .info a > span {
	background-position: 0px -730px;
}

nav .socrata a {
	background-position: 0px -876px;
}

nav .socrata a > span {
	background-position: 0px -1022px;
}

nav .buzzdata a {
	background-position: 0px 0px;
}

nav .buzzdata a > span {
	background-position: 0px -146px;
}

nav .twitter a {
	background-position: 0px -1168px;
}

nav .twitter a > span {
	background-position: 0px -1314px;
}

nav .github a {
	background-position: 0px -292px;
}

nav .github a > span {
	background-position: 0px -438px;
}

footer {
	margin-top: 150px;
	margin-bottom: 25px;

}

footer p {
	font-size: 0.75em;	/* about 12px at our 16px / 1em baseline */
}

footer #ze-moose {
	position: relative;

	display: block;
	width: 50px;
	height: 42px;

	margin: 0;
	margin-top: -2em;	/* make him "sit" on the baseline */

	text-indent: -9999px;

	background: url('../img/sprite.png') no-repeat;
	background-position: 0px -1595px;
}

footer #ze-moose span {
	position: absolute;

	display: block;
	width: 50px;
	height: 42px;

	background: url('../img/sprite.png') no-repeat;
	background-position: 0px -1647px;

	opacity: 0;

	transition: opacity 0.75s;
	-webkit-transition: opacity 0.75s;
	-moz-transition: opacity 0.75s;
	-o-transition: opacity 0.75s;
	-ms-transition: opacity 0.75s;
}

footer #ze-moose:hover span {
	opacity: 1;
}