/* Reset CSS for A-Grade Browsers ------------------------ */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

/* remember to define focus styles! */

:focus {
	outline: 0;
}

body {
	line-height: 1;
	background: #000 url(../images/blacktable_half_vert.jpg) repeat center top;
}

ol, ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

p {
	margin: 0;
	padding: 0;
	line-height: 0;
}

/* tables still need 'cellspacing="0"' in the markup */

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}

blockquote, q {
	quotes: "" "";
}

.clearHack {
	visibility: hidden;
	clear: both;
	height: 0;
	line-height: 0;
	padding: 0;
	margin: 0;
	display: block;
}

/* Containers & Wrappers ------------------------ */

#outer_wrapper {
	width: 950px;
}

#me_logo {
	position: absolute;
	display: block;
	width: 275px;
	height: 75px;
	left: 50px;
	top: 75px;
}

#nav {
	position: absolute;
	width: 110px;
	height: auto;
	top: 234px;
	left: 50px;
	list-style: none;
	list-style-type: none;
}


#content_wrapper, #quote_wrapper {
	position: relative;
	width: 645px;
	height: auto;
	padding-top: 241px;
	padding-bottom: 65px;
}

#content_wrapper {
	left: 300px;
}

#quote_wrapper {
	left: 275px;
}

#content_inner {
	width: 645px;
	height: auto;
	padding-bottom: 65px;
}

#content_inner_bottom {
	width: 645px;
	height: auto;
	padding-bottom: 0px;
}

#content_inner_text {
	width: 160px;
	height: auto;
}

#content_inner_image {
	float: right;
	width: 455px;
	height: auto;
}

#blog_main {
	float: left;
	display: inline;
	width: 425px;
	height: auto;
	background-color: #252525;
	border: 1px solid #777;
}

#blog_main_title {
	width: 385px;
	height: auto;
	background-color: #40b0ff;
	border: 1px solid #777;
	padding: 18px 20px 5px;
	margin-bottom: 10px;
}

#blog_main_text {
	width: 385px;
	height: auto;
	padding: 0 20px 7px;
}

#blog_sidebar {
	float: right;
	display: inline;
	width: 185px;
	height: auto;
	padding-top: 20px;
	margin-left: 25px;
}

#footer {
	position: relative;
	display: block;
	width: 655px;
	height: 80px;
	margin-left: 50px;
	background: url(../images/separator.gif) repeat-x 0 0;
	padding-top: 20px;
	padding-left: 185px;
	padding-right: 60px;
}

/* Text Styles ------------------------ */

h1, h2 {
	color: #fff;
	font: bold 20px/22px Helvetica, Arial;
	padding-top: 8px;
}

h2 {
	display: block;
	margin-bottom: 5px;
}

h3 {
	color: #fff;
	font: bold 30px/28px Helvetica, Arial;
	letter-spacing: -1px;
	margin: 0;
	padding: 0;
}

h4 {
	color: #40b0ff;
	font: bold 20px/18px Helvetica, Arial;
	margin-top: 10px;
	margin-bottom: 10px;
	padding: 0 0 10px 10px;
	border-bottom: 1px solid #777;
}

#blog_main_title p.posted {
	color: #000;
	font: 9px/11px Helvetica, Arial;
	margin-top: 6px;
	text-transform: uppercase;
}

#content_wrapper p {
	color: #999;
	font: 12px/16px Helvetica, Arial;
	padding-bottom: 8px;
	padding-top: 5px;
}

#content_inner_text p {
	color: #999;
	font: 13px Helvetica, Arial;
	line-height: 1.5em;
	padding-top: 7px;
}

#footer p {
	color: #fff;
	font: 10px/12px Helvetica, Arial;
}

.selected {
	display: block;
	background-color: #fff;
	font: bold 20px/21px Helvetica, Arial;
	margin: 5px;
	padding-top: 5px;
	padding-left: 7px;
	padding-bottom: 5px;
	border: 1px solid #fff;
}

/* Img Styles ------------------------ */

#footer img {
	float: left;
	margin-right: 25px;
	margin-bottom: 15px;
}

.preload {
	display: none;
}

/* Link Styles ------------------------ */

a.nav, a.nav:link, a.nav:visited, .chosen {
	display: block;
	width: 110px;
	height: 30px;
	background: transparent;
	text-align: center;
	text-decoration: none;
	font: bold 20px Helvetica, Arial;
	color: #444;
	line-height: 1.5em;
	border: 1px solid #777;
	overflow: hidden;
	margin: 7px 0 0;
}

a.nav:hover {
	color: #fff;
	background: #222;
}

a.nav:active, .chosen {
	color: #222;
	background: #fff;
}

#me_logo a, #me_logo a:visited, #me_logo a:hover, #me_logo a:link {
	background-color: transparent;
	text-decoration: none;
}

#content_inner_text a, #content_inner_text a:visited {
	display: block;
	color: #fff;
	margin-left: -5px;
	padding: 1px 5px;
}

#content_inner_text a:hover {
	display: block;
	color: #222;
	background: #ffffff;
	text-decoration: none;
	margin-right: -5px;
}

#content_inner_image a, #content_inner_image a:visited {
	position: relative;
	float: left;
	display: block;
	width: 10px;
	color: #444;
	text-decoration: none;
	font: bold 14px Helvetica, Arial;
	border: 1px solid #777;
	padding: 3px 5px 2px 7px;
	margin-right: 7px;
	margin-left: 1px;
}

#content_inner_image a:hover {
	color: #222;
	background: #ffffff;
	text-decoration: none;
}

#coolstuff a {
	font-weight: bold;
	text-decoration: none;
	margin-left: -5px;
	padding: 2px 5px 1px;
}

#blog_sidebar a, #blog_main a, a.footer {
	color: #fff;
}

#blog_sidebar a:hover, #blog_main a:hover, a.footer:hover {
	color: #222;
	background: #ffffff;
	text-decoration: none;
}

#blog_sidebar a {
	font-weight: bold;
}

/* Flickr Badge --------------------------------------- */

#flickr {
	width: 185px;
	height: 55px;
}

#flickr img {
	float: left;
	width: 53px;
	height: 53px;
	margin: 0 3px;
	border: 1px solid #777;
	padding: 0;
}

/* Blog --------------------------------------- */

#spacer {
	position: relative;
	width: 185px;
	height: 1px;
	padding: 0;
	margin: 10px 0 10px;
	border-top: 1px solid #777;
}


#coolstuff {
	width: 185px;
	height: auto;
	margin-top: 60px;
}

#coolstuff p {
	margin: 0;
	padding: 0 0 0 10px;
	font-size: 13px;
	line-height: 18px;
}

/* Form --------------------------------------- */

form .left {
	width: 260px;
	float: left;
}

form .right {
	width: 350px;
	height: auto;
	float: right;
}

form {
	overflow: hidden;
}

form p {
	font: 75%/2em Helvetica, Arial;
	color: #888;
	height: auto;
}

form input {
	width: 250px;
	background-color: #242729;
	height: 19px;
	border-style: none;
	color: #7d7d7d;
	padding-left: 5px;
	padding-right: 5px;
	border: 1px solid #777;
}

form input:focus {
	background-color: #383d41;
	color: #fff;
}

form textarea {
	width: 330px;
	border-style: none;
	background-color: #242729;
	height: 112px;
	color: #7d7d7d;
	overflow: auto;
	padding: 5px;
	border: 1px solid #777;
	line-height: inherit;
	font-family: Helvetica, Arial;
}

form textarea:focus {
	background-color: #383d41;
	color: #fff;
}

form input.button {
	width: 50px;
	height: 25px;
	color: #fff;
	font: bold 12px Helvetica, Arial;
	border: 1px solid #777;
}

.error {
	background-color: #722e2e;
}
