/* Copyright 2008 Wilson Miner */

/* RESET */
html, body, div, span, object, iframe, 
h1, h2, h3, h4, h5, h6, p, blockquote, pre, 
a, abbr, acronym, address, big, cite, code, del, dfn, em, 
img, ins, kbd, q, 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; vertical-align: baseline; background: transparent; }
table { border-spacing: 0; border-collapse: collapse; }
caption, th, td { text-align: left; font-weight: normal; }
blockquote, q { quotes: none; }
:focus { outline: 0; }

/* BASE */

body { 
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
	font-size: 16px;
	line-height: 1.125em;
	background: rgb(150, 150, 150);
	color: rgb(30, 40, 30);
	min-width: 1064px;
}

strong { 
	font-weight: bold; 
}

em { 
	font-style: italic; 
}

input,
button,
textarea { 
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
}

/* LINKS */

a { 
	text-decoration: none; 
	outline: none; 
	font-weight: bold;
	color: rgb(30, 40, 30);
	color: rgba(30, 40, 30, .9);
	*color: rgb(30, 40, 30);
}

a:hover { 
	color: rgba(30, 40, 30, .65);
}

/* UTILITY */

.clear {
	clear: both;
}

.small {
    font-size: 0.75em;
}

.quiet {
	color: rgba(30, 40, 30, .65);
}

.link-list {
	list-style-type: none;
}

.link-list li {
    margin-bottom: 0.25em;
}

.button-list {
	overflow: hidden;
}

.button-list li {
	list-style-type: none;
	display: inline;
}

/* BUTTONS */

.button {
	float: left;
	margin-right: 8px;
	width: 23px;
	height: 23px;
	text-indent: -9999px;
	overflow: hidden;
	opacity: .25;
	filter:alpha(opacity=25);
	zoom: 1;
}

.button:hover {
	opacity: .5;
	filter:alpha(opacity=50);
}

.button.inactive {
	opacity: .1;
	filter:alpha(opacity=10);
}

.button.next {
	background: url(../images/arrow-right.png) no-repeat;
}

.button.prev {
	background: url(../images/arrow-left.png) no-repeat;
}

.searchbutton {
	width: 24px;
	float: left;
	overflow: hidden;
	text-indent: -9999px;
	border: none;
	background: url(../images/search-icon.png) no-repeat 7px .5em;
}

/* FORMS */

.textinputwrap input,
.textinput {
	border: 1px solid #fff;
	padding: 0.1em 2px;
	letter-spacing: -0.05em;
	font-size: 1.125em;
	font-weight: bold;
	line-height: 1em;
	color: rgba(30, 40, 30, .9);
}

textarea {
	border: 1px solid #fff;
	padding: 0.1em 2px;
	font-size: 0.875em;
	line-height: 1.2em;
	color: rgba(30, 40, 30, .9);
}

.formbutton {
	border: none;
	padding: 0.3em 8px 0.4em;
	cursor: pointer;
	text-shadow: 0 0 0 rgb(255, 255, 255);
	letter-spacing: -0.05em;
	font-size: 1.125em;
	font-weight: bold;
	line-height: 1em;
	color: rgb(255, 255, 255);
	background: url(../images/mask-black-25.png);
}

.formbutton:hover {
	background: url(../images/mask-black-50.png);
}

/* SECTIONS */

.section {
	overflow: hidden;
}

.section h1 {
	font-size: 3em;
	margin: 1em 0 0.5em 180px;
	line-height: 1em;
	letter-spacing: -0.05em;
	color: rgb(255, 255, 255);
}

.section h2 {
	font-size: 2.25em;
	margin: 1.1666em 0 0.666em 180px;
	letter-spacing: -0.075em;
	color: rgb(255, 255, 255);
}

.section h3 {
	font-size: 1.5em;
	margin: 1em 0 0.666em 180px;
	letter-spacing: -0.05em;
	color: rgb(255, 255, 255);
}

.section .related { 
    float: right;
    width: 164px;
}

/* GENERIC TEXT */

.generic-text {
    float: left;
    clear: left;
    width: 476px;
    padding: 0 180px;
    line-height: 1.5em;
}

.generic-text p,
.generic-text ul {
    margin-bottom: 1em;
}

.generic-text .intro {
    font-size: 1.125em;
    font-weight: bold;
}

/* POSTS TABLE */

.posts-table {
	background: url(../images/mask-black-25.png) repeat-x;
}

.posts-table td {
	padding: 1em 16px 1em 0;
	font-size: 0.75em;
	vertical-align: bottom;
	width: 148px;
	background: url(../images/mask-black-25.png) 0 100% repeat-x;
}

.posts-table td.date p,
.posts-table td.summary p {
	color: rgb(109, 116, 109);
}

.posts-table td.summary {
	width: 312px;
}

.posts-table td.date {
	width: 164px;
}

.posts-table td.title {
	width: 328px;
	padding-right: 0;
}

.posts-table td.title a {
	font-size: 3em;
	line-height: 1em;
	letter-spacing: -0.05em;
	padding-right: 16px;
	display: block;
}

/* FORM TABLE */

.form-table {
    margin-bottom: 1em;
}

.form-table td {
    padding: 1em 16px 1em 0;
    vertical-align: top;
    background: url(../images/mask-black-25.png) repeat-x;
}

.form-table td .textinputwrap input,
.form-table td .textinput,
.form-table td textarea {
    margin: -0.5em 0;
    width: 99%;
}

.form-table td.label {
    width: 148px;
}

.form-table td.fields {
    width: 460px;
    padding-left: 16px;
}

.form-table td label,
.form-table td p {
    color: rgba(30, 40, 30, .65);
    font-size: 0.75em;
}

#main .form-table tr td.fields,
#main .form-table tr td.helptext {
    background-color: rgb(230, 235, 230);
}

#main .form-table tr.error td.fields,
#main .form-table tr.error td.helptext {
    background-color: rgb(217, 74, 83);
}

.form-table #id_email,
.form-table #id_url {
    font-weight: normal;
}

.form-table .errorlist {
    list-style-type: none;
    color: rgba(30, 40, 30, .65);
    font-size: 0.75em;
}

/* PAGINATOR */

.paginator { 
	margin: 4.25em 0 1em; 
	float: left; 
	width: 164px; 
}

.paginator.bottom {
    margin-top: 2em;
}

/* LAYOUT */

#main,
#secondary {
	overflow: hidden;
	position: relative;
}

#header,
#footer,
#content,
#content-main,
#content-secondary {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	position: relative;
}

#content-main {
    margin-bottom: 3em;
}

/* MAIN/SECONDARY SECTIONS */

#main { 
	background-color: rgb(255, 255, 255);
	color: rgb(53, 62, 52);
}

#secondary {
	background: url(../images/mask-white-25.png);
}

#main .section h1,
#main .section h2,
#main .section h3 { 
	color: rgb(53, 62, 52);
}

#main a {
	color: rgb(0, 133, 189)
}

#main a:hover {
	color: rgb(90, 176, 212)
}

/* HEADER */

#header {
	position: relative;
	margin-bottom: 1em;
	height: 3em;
	margin-top: 4em;
	-webkit-text-size-adjust: none;
}

#header .logo {
	display: block;
	position: absolute;
	width: 164px;
	bottom: 0;
	left: 0;
	padding-bottom: 0.25em;
}

#header .logo:hover {
	opacity: .65;
}

#header #globalnav {
	position: absolute;
	left: 164px;
	bottom: 0;
}

#header #globalnav li { 
	display: inline;
}

#header #globalnav a { 
	float: left;
	width: 148px;
	padding-top: 2em;
	padding-left: 16px;
	padding-bottom: 0.25em;
	font-size: 1.125em;
	color: rgb(255, 255, 255);
	color: rgba(255, 255, 255, .65);
	*color: rgb(255, 255, 255);
}

#header #globalnav a:hover,
.blog #header #globalnav #gn-blog a,
.work #header #globalnav #gn-work a,
.about #header #globalnav #gn-about a,
.contact #header #globalnav #gn-contact a {
	color: rgb(255, 255, 255);
}

#header #globalsearch {
	position: absolute;
	left: 834px;
	bottom: 0;
	padding: 0;
	background: url(../images/mask-black-25.png);
}

#header #globalsearch input {
	margin: 0;
	border: 0 solid transparent;
	float: left;
	padding: 0.1em 2px;
	letter-spacing: -0.05em;
	font-size: 1.125em;
	font-weight: bold;
	line-height: 1em;
	width: 138px;
	color: rgba(30, 40, 30, .9);
}

#header #globalsearch input.placeholder {
	color: rgb(193, 194, 185);
}

/* FOOTER */

#footer {
	clear: both;
	margin-top: 1em;
	padding-bottom: 6em;
	-webkit-text-size-adjust: none;
	zoom: 1;
}

#footer p {
	font-size: 0.75em;
}

#footer .logo {
	float: left;
	width: 180px;
}

#footer .logo:hover {
	opacity: .65;
}


/* DEBUG */

.debug #content,
.debug #content-main {
    background-image: url(../images/gridbg.png);
    background-position: 0 50%;
    background-repeat: repeat-y;
}

/* PRINT */

@media print {
	body {
		background: rgb(255, 255, 255);
	}
	#main {
		overflow: visible;
	}
	#header,
	#footer .logo {
		display: none;
	}
}