body {
	margin: 0 auto;
	font: 62.5%/1.5 "Lucida Grande","Trebuchet MS","Tahoma","Helvetica","Arial",sans-serif;	color: #FFF;
	background: #303030;
}

h2 {
	margin-top: 0;
	padding-top: 10px;
	font-size: 1.8em;
}

a { color: #444; }

abbr, img { border: none; }

/* @group Header */

#header {
	padding: 3px 0;
	background: #303030 url(../images/header-bg.png) repeat-x left bottom;
	color: #FFF;
}

#header:after {
    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;
}

#header h1 {
	float: left;
	width: 235px;
	height: 80px;
	margin: 0;
}

/* @end */

/* @group Navigation */

#navigation {
	float: right;
	margin: 15px 0;
	padding: 3px 0;
	background: #131313;
	list-style: none;
	-webkit-background-clip: border;
	-webkit-background-origin: padding;
	-webkit-border-radius: 5px;
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-border-radius: 5px;
}

#navigation li {
	float: left;
	margin: 0 15px;
	padding: 0;
	font-size: 1.3em;
}

#navigation li a {
	color: #FFF;
	text-decoration: none;
}

#navigation li a:hover { color: #F90; }

/* @end */

/* @group Grid */

.threeup 	{ width: 250px; }
.fourup 	{ width: 280px; }
.fiveup 	{ width: 430px; }
.sixup 		{ width: 520px; }
.sevenup 	{ width: 610px; }

.left { float: left; }
.right { float: right; }

/* @end */


#primary {
	clear: both;
	margin: 0 auto;
	background: #FFF;
	padding-bottom: 20px;
	color: #333;
}

#primary:after {
    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;
}

#secondary {
	clear: both;
	padding-bottom: 20px;
	margin: 0 auto;
	background: #FCFCFC url(../images/secondary-bg.png) repeat-x left top;
	color: #333;
}

#contact #secondary {
	padding-top: 20px;
}

#secondary:after {    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;}

#secondary h3 {
	margin: 0 0 10px;
	padding: 10px 0 0;
	background: url(../images/h3-bg.png) repeat-x left bottom;
	font-size: 1.5em;
}

#secondary fieldset { border: none; }

.content {
	position: relative;
	width: 970px;
	margin: 0 auto;
}

#footer {
	clear: both;
	width: 100%;
	margin: 0;
	padding: 15px 0;
	border-top: 1px solid #000;
	background: #303030;
	text-align: center;
	color: #AAA;
}

#footer p { margin: 0; }

.author-meta {
	float: right;
	width: 250px;
	margin: 0 0 0 15px;
	padding: 10px;
	background: #FCFCFC;
	border: 1px solid #DDD;
	list-style: none;
}

/* @group Maps */

#map-loading, #graph-loading {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	background: #000;
	filter:alpha(opacity=80);
	-moz-opacity: 0.80;
	opacity: 0.80;
	z-index: 1000;
	text-align: center;
	vertical-align: middle;
}

#map-loading p, #graph-loading p {
	width: 100px;
	margin: 20% auto 0;
	padding: 5px 15px;
	background: url(../images/map-loading.gif) no-repeat left center;
	font-size: 1.2em;
	color: #CCC;
}

#graph-loading p { width: 120px; }

#map-wrapper {
	position: relative;
	border: 5px solid #DDD;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#graph-wrapper {
	position: relative;
	width: 310px;
	height: 250px;
	clear: both;
}

#map, #map-wrapper {
	width: 100%;
	height: 375px;
}

#mapcontrols fieldset {
	float: left;
	margin: 10px 9px;
	padding: 0;
	border: none;
	text-align: center;
}

#mapcontrols button { cursor: pointer; }

.iconButton {
	width: 24px;
	height: 24px;
	margin: 0;
	padding: 0;
	background: #EEE;
	text-indent: -9999em;
	overflow: hidden;
	border: none;
}

.textButton {
	width: 88px;
	height: 24px;
	margin: 0 0 6px;
	padding: 0;
	background: #EEE;
	text-indent: -9999em;
	overflow: hidden;
	border: none;
}

/* @group Pan Controls */

#panControls {
	position: absolute;
	top: -5px;
	left: -5px;
	width: 84px;
	height: 84px;
	padding: 3px 0 !important;
	background: url(../images/panControls-bg.png) no-repeat;
}

#centerRow { margin: 2px 0 0; }

#centerButton { background: url(../images/centerButton.gif) no-repeat; }
#upButton { background: url(../images/upButton.gif) no-repeat; }
#rightButton { background: url(../images/rightButton.gif) no-repeat; }
#downButton { background: url(../images/downButton.gif) no-repeat; }
#leftButton { background: url(../images/leftButton.gif) no-repeat; }

/* @end */

/* @group Zoom Controls */

#zoomControls {
	position: absolute;
	top: -5px;
	left: 85px;
	width: 30px;
	height: 84px;
	background: url(../images/zoomControls-bg.png) no-repeat;
}

#zoomControls #zoomInButton {
	display: block;
	margin: 3px 3px 29px;
	background: url(../images/zoomInButton.gif) no-repeat;
}

#zoomControls #zoomOutButton {
	display: block;
	margin: 0 3px 3px;
	background: url(../images/zoomOutButton.gif) no-repeat;
}

#zoomControls button:active, #zoomControls button:focus, #panControls button:active, #panControls button:focus { background-position: left -24px !important; }

/* @end */

/* @group Map Type Controls */

#mapTypeControls {
	position: absolute;
	top: -5px;
	right: 0;
}

#normalView { background: url(../images/normalView.png) no-repeat; }
#satelliteView { background: url(../images/satelliteView.png) no-repeat; }
#hybridView { background: url(../images/hybridView.png) no-repeat; }

#mapTypeControls button:focus { background-position: left -24px; }
#mapTypeControls button:active { background-position: left -48px; }

/* @end */

/* @end */

/* @group Home */

#home #primary ol, #home #primary ul, #home #secondary ol, #home #secondary ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* @group Map */

#home #map-wrapper {
	float: left;
	border: 5px solid #C9C9C9;
}

#home #map-wrapper, #home #map {
	width: 240px;
	height: 240px;
}

#home #map-loading p { margin: 45% auto 0; }

#recentroutes ol { 
	float: left;
	width: 270px;
}

#recentroutes ul {
	margin-left: 10px !important;
	padding: 10px !important;
	border-bottom: 1px solid #EEE;
}

.load_route {
	font-size: 1.1em;
	font-weight: bold;
	text-decoration: none;
}

#recentroutes li.current {
	margin-top: -1px !important;
	background: url(../images/currentroute-bg.png) no-repeat;
}

#recentroutes li.current ul {
	margin: 0 !important;
	padding-left: 20px !important;
	background: url(../images/currentroute-bottom.png) no-repeat left bottom;
	border: none;
}

/* @end */

#theauthors, #rssfeeds { float: left; }

/* @group Authors */

#theauthors {
	clear: both;
	margin-right: 20px;
}

#theauthors ul {
	margin: 0 0 5px !important;
	padding: 0 0 5px !important;
	border-bottom: 1px solid #C9C9C9;
}

#theauthors ul:after {
    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;
}

.authorimage {
	float: left;
	margin-right: 10px;
}

.authorname {
	font-size: 1.2em;
	font-weight: bold;
}

/* @end */

#flickrphotos ul, ul#flickrphotos { list-style: none; }

#flickrphotos li {
	float: left;
	margin: 0 4px 10px;
}

#flickrphotos a img { border: 1px solid #C9C9C9; }
#flickrphotos a:hover img { border: 1px solid #F90; }

#photos .entry-content {
	padding: 15px 0;
	text-align: center;
}

#aboutironfeathers { clear: both; }

/* @end */

/* @group hEntry */

div.hentry { float: left; }

div.hentry h2, div.hentry h3 {
	float: left;
	width: 70%;
	margin: 3px 0 0;
	padding-top: 0;
}

div.hentry h2 a, div.hentry h3 a { text-decoration: none; }

div.hentry h2 a:hover, div.hentry h3 a:hover { text-decoration: underline; }

div.hentry .entry-content {
	clear: both;
	font-size: 1.1em;
}

body#home div#primary div.content div.hentry .entry-content ul, div#primary div.content div.hentry .entry-content ul {
	padding-left: 25px;
	list-style: disc;
}

span.type {
	display: block;
	line-height: 0.8em;
	font-size: 0.65em;
	font-weight: normal;
	text-transform: uppercase;
	color: #999;
}

#page .entry-content, #authors .entry-content { font-size: 1.1em; }

.entry-image {
	float: right;
	margin: 10px;
}

div.hentry .date {
	float: right;
	margin-top: 10px;
	width: 30%;
	font-size: 1.1em;
	color: #666;
	text-align: right;
}

#routesindex div.hentry { width: 100%; }

#weblogindex .hentry h3, #routesindex .hentry h3 { font-size: 1.5em; }

#home .hentry, #weblogindex .hentry, #routesindex .hentry {
	border-bottom: 1px solid #C9C9C9;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

#weblogindex div.hentry .date, #routesindex div.hentry .date { margin-top: 5px; }

#weblogindex #recentposts {
	margin-top: -5px;
}

#weblog #map-wrapper {
	float: right;
	margin: 10px;
}

#weblog #map-wrapper {
	width: 240px;
	height: 260px;
	background: #DDD;
}

#weblog #map-wrapper a {
	width: 100%;
	height: 20px;
	line-height: 20px;
	display: block;
	text-align: right;
	text-decoration: none;
}

#weblog #map {
	width: 240px;
	height: 240px;
}

#weblog #map-loading p { margin: 45% auto 0; }

/* @end */

/* @group Comments */
#secondary h3 { padding-top: 10px; }

.comment {
	padding: 0 0 10px;
	margin: 0 0 10px;
	font-size: 1.1em;
}

.comment:after {
	content: "."; 
	display: block; 
	height: 0; 
	overflow: hidden;
	clear: both; 
	visibility: hidden;
}

.comment-meta {
	float: left;
	width: 15em;
	margin: 0;
	padding: 10px;
	background: #FAFAFA;
	border-left: 1px solid #DDD;
	border-top: 1px solid #DDD;
	list-style: none;
}

.comment-meta img {
	float: left;
	margin-right: 10px;
}

.comment-entry {
	margin-left: 19em;
	padding: 2px 0;
	display: block;
	width: 68em;
}

#commentform fieldset {
	float: left;
	width: 50%;
	margin: 0;
	padding: 0;
}

#commentform label {
	display: block;
}

#commentform #help {
	float: right;
	width: 40%;
	padding: 0 15px;
	background: #FFF;
	border: 1px solid #DDD;
}

/* @end */


/* @group Routes */

#routes .hentry { margin: 15px 0; }

#routes h2 { margin: 0 0 10px; }

#routes #map-wrapper {
	clear: both;
	width: 600px;
	-webkit-border-bottom-left-radius: 0;
	-moz-border-radius-bottomleft: 0;
}

#routes h3 {
	clear: both;
	margin: 10px 0;
	background: url(../images/h3-bg.png) repeat-x left bottom;
	font-size: 1.5em;
}

.chart-caption {
	display: block;
	text-align: center;
	font-weight: bold;
}

/* @end */

/* @group Recent Posts and Recent Routes */

#recentposts, #routes #recentroutes, #sidebar {
	float: right;
	width: 360px;
	background: #EEE url(../images/recentposts-top.png) no-repeat;
}

#sidebar {
	background: none;
}

.block {
	float: right;
	clear: right;
	width: 360px;
	margin: 20px 0;
	padding-bottom: 10px;
	background: #EEE url(../images/block-bottom.png) no-repeat bottom right;
}

.block h4 {
	margin: 0;
	padding: 10px 0 0 30px;
	background: url(../images/block-top.png) no-repeat top right;
	font-size: 1.4em;
}

#sidebar-search form, #sidebar-search fieldset{
	margin: 0 0 0 30px;
	padding: 0;
	border: none;
}

#sidebar-search #q {
	width: 265px;
}

#routes #routeinfo { margin: 15px 0; }

.authorinfo {
	margin: 10px 10px 10px 20px;
	padding: 10px;
	background: #FAFAFA;
	border: 1px solid #DDD;
}

.authorinfo:after {
    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;
}

.authorinfo img {
	float: left;
	margin-right: 10px;
}

.authorinfo dl, .authorinfo p, .authorinfo dd { margin: 0; }

.authorinfo dt {
	font-size: 1.2em;
	font-weight: bold;
}

#recentposts h4, #routes #recentroutes h4 {
	margin: 10px 20px 5px 30px !important;
	padding: 0 0 5px;
	font-size: 1.4em;
	border-bottom: 1px solid #C9C9C9;
}

#recentposts ol, #recentposts ul, #routes #recentroutes ol, #routes #recentroutes ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#recentroutes #hidedetails { display: block; }

#routes .collapsed #hidedetails {
	padding: 10px 20px 5px 30px !important;
	background: #EEE url(../images/recentposts-top.png) no-repeat;
}

#routes div.collapsed {
	background: url(../images/recentposts-bottom.png) no-repeat left bottom !important;
	padding-bottom: 6px;
	margin-bottom: 5px;
}

#recentposts ol, #routes #recentroutes dl.details { padding: 0 20px 15px 30px !important; }

#recentroutes .details { padding: 0 20px 0 30px; }

#recentroutes #hidedetails { padding: 10px 20px 10px 30px; }

#recentposts ol, #routes #recentroutes dl.details, #recentroutes #hidedetails { background: url(../images/recentposts-bg.png) no-repeat left bottom; }

#recentposts ul, #routes #recentroutes ul {
	clear: both;
	padding: 0 0 5px !important;
	margin: 0 0 5px !important;
	border-bottom: 1px solid #C9C9C9;
}

#recentposts ul:after, #routes #recentroutes ul:after {
    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;
}

#recentposts ul a, #routes #recentroutes ul a { text-decoration: none; }

#recentposts ul a:hover, #routes #recentroutes ul a:hover { text-decoration: underline; }

#recentposts ul li, #routes #recentroutes ul li {
	float: left;
	width: 80%;
}

#recentposts .entry-title, #routes #recentroutes .entry-title {
	font-size: 1.1em;
	font-weight: bold;
}

#recentposts ul li.entry-meta {
	float: right;
	width: 15%;
	margin-top: -10px;
	font-size: 1.5em;
	text-align: center;
}

/* @end */

/* @group Contact Form */

#contactform dt { font-weight: bold; }

#contactform dd { margin: 0 0 15px; }

#contactform fieldset {
	float: left;
	width: 50%;
	margin: 0;
	padding: 0;
}

#contactform #help {
	float: right;
	width: 40%;
	padding: 10px;
	background: #FCFCFC;
	border: 1px solid #DDD;
}

/* @end */

/* @group Info Windows */

.overlay {
	position: absolute;
	width: 220px;
	z-index: 900;
	padding: 0 0 32px 0;
	background: url(../images/bubble_bottom.png) no-repeat 0 100%;
}

.overlay .inner {
	z-index: 900;
	padding: 12px 15px 12px 15px;
	background: url(../images/bubble_top.png) no-repeat 0 0;
}

.overlay .inner a.close {
	position: absolute;
	top: -5px;
	right: -7px;
	display: block;
	width: 22px;
	height: 23px;
	text-indent: -2000px;
	background: url(../images/closeInfo.png);
}

/* @end */


/* @group Sparkline Charts */

.sparkline { 
	height: 200px;
	margin: 0 0.5em;
	background: #EEE;
	border: 1px solid #CCC;
	border-width: 0 0 2px 2px;
	overflow: hidden;
}

.sparkline .index { 
	position: relative;
	display: block;
	float: left; 
	height: 100%;
	width: 100%;
}

.sparkline .index:hover { background: #CCC; }

.sparkline .index .count { 
	display: block; 
	position: absolute; 
	bottom: 0; 
	left: 0; 
	width: 100%; 
	height: 0; 
	background: #DDD;
	overflow: hidden; 
	text-indent: -9999px;
}
    
#heartrate .sparkline .index:hover .count { background: #F00; }
#altitude .sparkline .index:hover .count { background: #F90; }

#heartrate .sparkline .index .count { border-top: 1px solid #F00; }
#altitude .sparkline .index .count { border-top: 1px solid #F90; }

/* @end */

#results p {
	float: left;
	margin: 5px 10px 10px;
}

#comparisonControls {
	float: right;
	border: none;
}

#comparisonControls img, #comparisonControls button { vertical-align: middle; }

.loading_data { display: none; }

#results {
	background: #DDD;
	border: 5px solid #DDD;
	-webkit-border-radius-bottomright: 5px;
	-moz-border-radius-bottomright: 5px;
}

#results:after {    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;}

#results .details {
	clear: both;
	margin-bottom: 0;
	padding: 10px 15px;
	background: #FAFAFA;
	border: 1px solid #CCC;
}

#results .details p {
	float: none;
}

.show-comparison {
	display: block;
	width: 13.0em;
	background: #DDD;
	border: 5px solid #DDD;
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	-moz-border-radius-bottomleft: 5px;
	-moz-border-radius-bottomright: 5px;
	text-align: center;
}

#pagination {
	clear: both;
	float: right;
	margin: 10px 0;
	padding: 0;
	font-size: 1.1em;
	list-style: none;
}

#pagination li, #pagination a, #pagination .current, #pagination .off {
	display: block;
	float: left;
}

#pagination a, #pagination .current, #pagination .off {
	margin-right: 5px;
	padding: 3px 8px;
}

#pagination a, #pagination .current {
	background: #EEE;
}

#pagination .off {
	color: #AAA;
	font-weight: bold;
}

#pagination .next a, #pagination .previous a {
	font-weight: bold;
	background: none;
}

#pagination .current {
	color: #000;
	font-weight: bold;
	background: none;
}

#pagination a, #pagination a:visited {
	text-decoration: none;
}

#pagination a:hover { background: #DDD; }

#search fieldset {
	width: 400px;
	margin-bottom: 15px;
	padding: 0 10px;
	background: #EEE;
	border: 1px solid #DDD;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#search #q { width: 350px; }

#routeinfo {
	float: right;
	width: 360px;
	padding: 0 0 10px;
	background: #EEE url(../images/recentposts-bg.png) no-repeat left bottom;
}

#routeinfo #info {
	padding: 10px 10px 10px 20px;
	background: url(../images/recentposts-top.png) no-repeat left top;
}

#routeinfo .authorinfo {
	margin: 0;
}

#routeinfo h4 {
	margin: 10px 10px 5px 0;
	padding: 0 0 5px;
	font-size: 1.4em;
	border-bottom: 1px solid #C9C9C9;
}

#routeinfo h5 {
	font-size: 1.1em;
	margin: 5px 0 0;
}

#routeinfo ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#routeinfo ul li { margin: 3px 0; }

ul#data { margin: 0 10px; }
#data li { font-weight: bold; }
#data li .data { font-weight: normal; }

ul#tabs {
	position: relative;
	margin: 10px 0;
	padding-left: 6px;
	border-bottom: 1px solid #CCC;
}

#tabs:after {    content: ".";     display: block;     height: 0;     overflow: hidden;    clear: both;     visibility: hidden;}

ul#tabs li {
	float: left;
	margin: 0 3px;
}

#tabs li a {
	display: block;
	margin: 0 3px;
	padding: 5px 10px;
	border: 1px solid #CCC;
	border-width: 1px 1px 0;
	margin-bottom: -1px;
	background: #CCC;
	text-decoration: none;
}

#tabs li.active a {
	background: #EEE;
	font-weight: bold;
}

.panel { padding: 0 10px; }

#video { padding: 0; }