/* ----------------------------------------------------------------------------
	 CSS Reset
---------------------------------------------------------------------------- */

/* © 2008 Eric Meyer: http://meyerweb.com/eric/tools/css/reset/ */
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,b,u,i,center,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-size:100%;background:transparent;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}

/* ----------------------------------------------------------------------------
	 SITE
---------------------------------------------------------------------------- */
html,
body {
	height: 100%;
	width: 100%;
}
a {
	-webkit-transition: color 0.25s ease-in-out;
	-webkit-transition: background 0.25s ease-in-out;
	color: #B40007;
}
a:hover,
a:active { 
	color: #990006;
	text-decoration: none;
}

body {
	color: #333;
	font: 14px/1.6 Palatino, "Palatino Linotype", Georgia, Times, "Times New Roman", serif;
	text-shadow: 0 -1px 1px rgba(255, 255, 255, .01);
}
p { margin-bottom: 1em; }

h1, h2, h3, h4 { color: #000; }
h1 { 
	font-size: 48px;
	letter-spacing: -1px;
}
h2 { font-size: 30px; }
h3 { font-size: 18px; }
h4 { font-size: 14px; }
h5 { font-size: 24px; }

html { background: #FDED00 url(../img/grain.bg.png) 0 0 repeat; }

strong { color: #000; }

#wrapper {
	background: url(../img/vertical.bar.png) 56px 0 no-repeat;
	border-bottom: 45px solid #000;
	margin: 0 auto;
	padding-top: 72px;
	width: 960px;
}

/* ------------------------------------------------------------------------- */

#masthead { margin-bottom: 100px; }
#masthead p {
	clear: left;
	float: left;
}
#masthead #logo {
	color: #000;
	font-size: 102px;
	font-weight: bold;
	height: 104px;
	letter-spacing: -5px;
	margin-bottom: 15px;
	width: 300px;	
}
#masthead #logo a {
	color: #000;
	text-decoration: none;
}
#masthead #logo .kern-ab { letter-spacing: -9px; }
#masthead #nav {
	border-top: 15px solid #000;
	float: right;
	position: relative;
	top: -29px;
	width: 470px;
}
#masthead #nav li {
/* 
	Absolute positioning is needed because 
	Cufon inserts spans for the canvas 
	that push the lis down.
*/
	position: absolute;
	top: 0;
}
#masthead #nav li#n_home { left: 0; }
#masthead #nav li#n_work { left: 117px; }
#masthead #nav li#n_blog { left: 234px; }
#masthead #nav li#n_about { left: 351px; }
#masthead #nav li a {
	-webkit-transition: border 0.25s ease-in-out;
	border-bottom: 5px solid #FDED00;
	color: #B1A500;
	cursor: pointer;
	display: block;
	font-size: 18px;
	font-weight: bold;
	padding: 10px;
	text-decoration: none;
	width: 97px;
}
#masthead #nav li a:hover {
	border-bottom-color: #655F00;
	color: #655F00;
}
#p_home #masthead #nav li#n_home a,
#p_work #masthead #nav li#n_work a,
#p_blog #masthead #nav li#n_blog a,
#p_about #masthead #nav li#n_about a {
	border-bottom: none;
	color: #000;
	cursor: default;
}

/* ------------------------------------------------------------------------- */

#callout {
	clear: both;
	margin-bottom: 150px;
	position: relative;
}
#callout .screenshot { 
	float: left;
	margin-top: 20px;
	width: 460px;
}
#callout .screenshot.iphone {
	margin-bottom: -200px;
	position: relative;
	top: -40px;
}
#callout .info {
	border-top: 15px solid #000;
	float: right;
	margin: 20px 0 0 10px;
	padding: 37px 10px 0;
	width: 450px;
}
#callout .info h2 a {
	color: #000;
	text-decoration: none;
}
#callout .info h2 a:hover { color: #B40007; }
#callout .tagline { font-size: 18px; }
#callout .last { margin-bottom: 2em; }
#callout .button { float: left; }

.product #callout .thumbs {
	clear: none;
	float: left;
	list-style: none;
	margin: 0;
	width: 460px;
}
.product #callout .thumbs.iphone {
	float: right;
	margin: 60px 0 0;
}
.product #callout .thumbs li { 
	float: left;
	margin-right: 20px;
}
.product #callout h3 { margin-top: 2em; }
.product #callout h4 {
	clear: both;
	margin-top: 3em;
}
.product #callout h3,
.product #callout ul {
	clear: left;
	float: left;
	margin-right: 20px;
	width: 220px;
}
.product #callout ul { list-style: disc outside; }
.product #callout ul.wide {
	float: none;
	margin-right: 0;
	width: auto;
}
.product #callout .button { float: right; }
.product #callout div.platform { 
	clear: right;
	float: right;
	position: relative;
	right: 10px;
	top: 15px;
}
.product #callout ul.platform {
	list-style: none;
	position: absolute;
	right: -137px;
	top: 43px;
}
.product #callout ul.platform li { float: left; }
.product #callout ul.platform a {
	-moz-border-radius-bottomleft: 5px;
	-moz-border-radius-bottomright: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	background: #000;
	color: #EEE;
	opacity: 0.25;
	padding: 10px;
	text-decoration: none;
}
.product #callout ul.platform a:hover { opacity: 0.5; }
.product #callout ul.platform a.current {
	cursor: default;
	opacity: 1;
}

/* ------------------------------------------------------------------------- */

.app_container {
	border-top: 15px solid #000;
	float: left;
	height: 565px;
	margin: 0 10px 150px 10px;
	padding: 10px 10px 0;
	position: relative;
	width: 286.5px;
}
.app_container h3 a {
	color: #000;
	text-decoration: none;
}
.app_container h3 a:hover { color: #B40007; }
.app_container.one { margin-left: 0; }
.app_container.three { margin-right: 0; }
.app_container .tagline { font-size: 14px; }
.app_container .screenshot {
	-moz-border-radius: 2px;
	-o-border-radius: 2px;
	-webkit-border-radius: 2px;
	border: 5px solid #000;
	height: 50px;
}
.app_container .button,
.app_container .platform {
	bottom: 0;
	position: absolute;
}
.app_container .button { left: 0; }
.app_container .platform { right: 0; }

/* ------------------------------------------------------------------------- */

.platform {
	float: right;
	font-size: 10px;
	font-weight: bold;
	text-transform: uppercase;
	width: 60px;
}
.platform .heading {
	margin: -5px 0 4px;
	position: relative;
}
.platform .one {
	float: left;
	margin-left: 5px;
}
.platform .two {
	float: right;
	margin-right: 5px;
}

/* ------------------------------------------------------------------------- */

.button { width: 200px; }
.button a {
	-moz-border-radius: 3px;
	-o-border-radius: 3px;
	-webkit-border-radius: 3px;
	-webkit-transition: none;
	background: #000000;
	color: #EEE;
	display: block;
	line-height: 42px;
	height: 40px;
	padding: 0 15px;
	position: relative;
	text-decoration: none;
}
.button a:hover {
	background: #111;
	color: #FDED00;
}
.button a .arrow {
	background: url(../img/button.arrow.png) 0 0 no-repeat;
	height: 12px;
	position: absolute;
	right: 15px;
	top: 15px;
	width: 14px;
}
.button a:hover .arrow { background-position: 0 100%; }

.button.bright a { 
	background: #B40007;
	color: #FDED00;
}
.button.bright a:hover { 
	background: #990006;
	color: #FFF;
}
.button.bright a .arrow { background-image: url(../img/button.arrow.red.png); }

.error,
.success {
	-moz-border-radius: 3px;
	-o-border-radius: 3px;
	-webkit-border-radius: 3px;
	background: #B40007;
	color: #FFF;
	padding: 7px 12px 5px;
}
.success { background: #31A90B; }

.street-address { display: block; }

/* ------------------------------------------------------------------------- */

#footer { clear: both; }
#about,
#contact {
	border-top: 15px solid #000;
	float: left;
	margin: 0 20px 150px 0;
	padding: 10px 10px 0;
	width: 450px;
}
#contact { margin-right: 0; }
#contact input,
#contact textarea {
	-moz-border-radius: 2px;
	-o-border-radius: 2px;
	-webkit-border-radius: 2px;
	border: 2px solid #7E7600;
	color: #333;
	font: 14px/1.6 Palatino, "Palatino Linotype", Georgia, Times, "Times New Roman", serif;
	padding: 5px;
}
#contact input { width: 203px; }
#contact textarea {
	height: 100px;
	width: 436px;
}
#contact .alt {
	color: #999;
	font-style: italic;
	text-transform: capitalize;
}
#contact .one { float: left; }
#contact .two { float: right; }
#contact .textarea { clear: both; }
#contact .sending {
	background: url(../img/loader.gif) 0 50% no-repeat;
	padding-left: 25px;
}

#content, #info {
	width: 450px;
  float: left;
	margin: 0 20px 150px 0;
	padding: 10px 10px 0;
}

#info {
  border-top: 15px solid #000;
}

#contact_tab td { 
  padding-right: 15px; 
  padding-bottom: 20px;
  vertical-align: top;
} 

#contact_tab td.key {
  font-weight: bold;
}

#info { margin-right: 0; }

.small { font-size: 11px; }

.post_container {
  margin-top: -10px;
  border-top: 15px solid #000;
  padding-bottom: 2em;
  padding-left: 10px;
  padding-right: 10px;
}

.post_container h3 {
  padding-top: 10px;
}

.post_container h3 a {
	color: #000;
	text-decoration: none;
}
.post_container h3 a:hover { color: #B40007; }

/* ----------------------------------------------------------------------------
	 HACKS
---------------------------------------------------------------------------- */
.ir{text-indent:-20000em;overflow:hidden;}
.clearfix:after{clear:both;content:'.';display:block;visibility:hidden;height:0;}
.clearfix{display:inline-block;}
* html .clearfix{height:1%;}
.clearfix{display:block;}
.clear{clear:both;}
.hidden{display:none;}
