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,dd,dl,dt,li,ol,ul,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;}table{border-collapse:collapse;border-spacing:0;}ol,ul{list-style:none;}q:before,q:after,blockquote:before,blockquote:after{content:"";}

* {
	outline: none;
	-moz-outline: none;
}

.clear{
	clear:both;
	height:1px;
	margin-bottom:-1px;
}

.hidden{
	display:none;	
}

body{
	background-color:#f6f5ed;
	color:#484848;
	font-size:13px;
	line-height:1.4em;
	font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif; 
	background:url(/images/bg-tile.png) repeat top center;
}

a{
	color:#484848;
	border:0;
	border-bottom:1px dotted #999892;
	text-decoration:none;
}

a:hover{
	border-style: solid;
}

p{
	margin-bottom:.5em;
}

p+p{
	margin-top:.5em;
}

h1, h2, h3, h4, h5, h6{
	font-family: Georgia, Palatino, "Palatino Linotype", Times, "Times New Roman", serif;
}

h3{
	font-size:19px;
	font-weight:normal;
	color:#585858;
}

#wrap-top{
	background: url(/images/bg-top.png) repeat-x top left;
	height:65px;
	display:block;
	margin:0 auto;
}

#wrap{
	width:960px;
	margin:0 auto;
}


#wrap-bot{
	background: url(/images/bg-bot.png) repeat-x bottom left;
	height:82px;
	display:block;
	margin:0 auto;
}

#header a{
	border:0;
}

#header h1 a{
	background: url(/images/title.png) no-repeat top left;
	display:block;
	width:698px;
	height:52px;
	text-indent:-99999em;
	margin:0 auto;
	margin-bottom:12px;
}

#header h2{
	background: url(/images/title-tagline.png)  no-repeat top left;
	display:block;
	width:583px;
	height:31px;
	text-indent:-99999em;
	margin:0 auto;
	margin-bottom:35px;
}

#header hr{
	height:0;
	padding:0;
	border:0;
	margin:0;
	border-top:1px solid #97958b;
	border-bottom:1px solid #fff;
	margin-top:35px;
}

.morelink{
	font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif;
	color:#ab1e1e;
	font-weight:bold;
	font-size:11px;
}

.morelink:hover{
	border-color:#ab1e1e;
}

#main-content{ /* This is basically a wrapper used to display the center divider */
	overflow:auto;
	background: url(/images/divider-ver.png) repeat-y 430px top;
	margin-top:10px;
}

#left{
	width:420px;
	float:left;
	padding-right:10px;
}

#left .section{
	padding-bottom:20px;
	padding-top:15px;
}

#right{
	float:left;
	width:515px;
	margin-left:15px;
}

#right .section{
	margin-bottom:10px;
}

/* ABOUT SECTION */

#about {
 	font-family: Georgia, Palatino, "Palatino Linotype", Times, "Times New Roman", serif;

}

	#about #about-portrait{
		float:left;
		display:block;
		border:1px solid #c8c7ba;
		padding:4px;
		background-color:#fff;
		margin-top:0px;
		margin-right:12px;
		margin-bottom:10px;	
		position:relative;
	}
	
	#about #about-portrait img{
		border: 1px solid #555653;
		display:block
	}
	
	#about #about-portrait b{
		position:absolute;
		margin:0 1px;
		height:1px;
		width:100%;
		bottom:0px;
		left:-1px;
		-moz-box-shadow: 0px 1px 1px #dcdbd3;
		-webkit-box-shadow: 0px 2px 1px #dcdbd3;
		box-shadow: 0px 1px 1px #dcdbd3;		

		
	}

	#about h3{
		font-size:23px;
		line-height:31px;

		color:#730505;
		font-weight:normal;
		margin-bottom:15px;
		margin-top: -20px;
	}
	
		#about h3 a{
			border:0;
			text-decoration:none;
			color:#c30c0c;
		}
	
		#about h3 a:hover{
			text-decoration:underline;
		}
		
		
	#about #rest-of-bio{
	
	}	
/* TWITTER SECTION */

	#twitter{
		/* border-bottom: 1px dotted #000; */
			border-top: 1px dotted #000;
	}
	#twitter h3{
		float:left;
		
	}
	
	#twitter .morelink{
		float:right;
		font-size:11px;
	}
	
	#twitter ul{
		display:block;
		clear:both;
		margin-top:10px;
		width:380px;
	}
	
	#twitter ul li{
		margin-bottom:1.5em;
	}
	
	#twitter ul li span {
		font-size:13px;
		font-style:italic;
		font-family:Georgia, Palatino, Palatino Linotype, Times, "Times New Roman", serif;
		color:#3b3b3b;
		text-shadow: 0 1px 0 #fff;
		display:block;
		line-height:1.5em;
		margin-bottom:4px;
	}
	
	#twitter ul li a {
		font-size:10px;
		font-weight:bold;
		color:#ab1e1e;
	}

	#twitter ul li a:hover {
		border-color:#ab1e1e
	}


/* RECENT BLOG POSTS SECTION */
	
	#blog{
		border-bottom:0;
	}

	#blog h3{
		float:left;
		
	}
	
	#blog span{
		float:right;
		font-size:11px;
	}
	
	#blog a{
		color:#ab1e1e;
		font-weight:bold;
	}
	
	#blog a:hover{
		border-color:#ab1e1e;
	}
	
	#blog ul{
		margin-top:30px;
		font-size:10px;

	}
	
	#blog ul li{
		margin-bottom:1.55em;
	}
	
	#blog ul li a{
		background:url(/images/bullet-blog.png) no-repeat left center;
		padding-left:13px;
	}

/* 37SIGNALS SECTION */

#thirtyseven h3{
	background: url(/images/heading-37-signals.png) no-repeat top left;
	width:514px;
	height:34px;
	display:block;
	text-indent:-99999em;
	margin-bottom:16px;
}
	
	#thirtyseven .left{
		width:182px;
		padding-left:55px;
		float:left;
		font-size:12px;
		font-family:Georgia, Palatino, Palatino Linotype, Times, "Times New Roman", serif;
		position:relative;
	}
	
	#thirtyseven .left img.logo{
		position:absolute;
		top:5px;
		left:2px;
	}

	#thirtyseven ul#products{
		display:block;
		position:relative;
		width:210px;
	}
	
	#thirtyseven ul#products li{
		margin-right:8px;
		float:left;
	}
	
	#thirtyseven ul#products li.bubble{
		position:absolute;
		display:block;
		top:-75px;
		left:0;
		width:117px;
		background: url(/images/bubble-over-icons.png) no-repeat top left;
		padding:7px 15px 0px 15px;
		font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif;
		font-size:11px;
		line-height:1.35em;		

	}	
	#thirtyseven ul#products li.bubble span{
		width:149px;
		height:20px;
		display:block;
		background: url(/images/bubble-over-icons.png) no-repeat bottom left;
		position:absolute;
		lefT:0;
		bottom:-20px;
	}	
	
	#thirtyseven ul#products li.bubble p{
		padding:0;
		margin:0;
	}	
	
	#thirtyseven ul#products #bc-bub{
		left:-55px;
	}	
	#thirtyseven ul#products  #hr-bub{
		left:-9px;
	}	
	#thirtyseven ul#products  #bp-bub{
		left:39px;
	}	
	#thirtyseven ul#products  #cf-bub{
		left:85px;
	}				
	
	
	#thirtyseven ul#products li.bubble h5{
		font-weight:bold;
		font-size:12px;
		font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
		text-align: center;
		
	}	

	#thirtyseven ul#products li:last-child{
		margin-right:0;
	}	
	
	#thirtyseven ul#products li a{
		display:block;
		width:39px;
		height:33px;
		text-indent:-99999em;
		border:0;
	}	

	#thirtyseven ul#products li div{
		position:absolute;
		display:block;
	}

	
	#thirtyseven ul#products li.bc a{
		background: url(/images/logo-basecamp.png) no-repeat top left;
	}
	
	#thirtyseven ul#products li.hr a{
		background: url(/images/logo-highrise.png) no-repeat top left;
	
	}
	
	 #thirtyseven ul#products li.bp a{
		background: url(/images/logo-backpack.png) no-repeat top left;
	
	}
	
	 #thirtyseven ul#products li.cf a{
		background: url(/images/logo-campfire.png) no-repeat top left;
	}			

	 #thirtyseven .left .morelink{
		float:left;
		clear:left;
	}	
	

	 #thirtyseven #svn-posts{
		float:right;
		background-color:#fcf6e7;
		border:1px solid #d1d0c8;
		padding:6px 10px;
		width:220px;
		font-weight:bold;
		font-size:11px;
		-moz-border-radius:4px;
		-webkit-border-radius:4px;
		border-radius:4px;
		margin-right:9px;
	}
	
	 #thirtyseven #svn-posts h4{
		font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif;
		font-size:11px;
		margin-bottom:4px;
	}	
	
		 #thirtyseven #svn-posts li {
			background: url(/images/bullet.png) no-repeat left 5px;
			padding-left:20px;
			margin-bottom:4px;
		}

		 #thirtyseven #svn-posts li a{
			border:0;
			color:#ab1e1e;
		}	

		 #thirtyseven #svn-posts li a:hover{
			border-bottom: 1px solid #ab1e1e;
		}
		
/* RoR SECTION*/
	#rails{
		float:left;
		width:265px;
		font-family:Georgia, Palatino, Palatino Linotype, Times, "Times New Roman", serif;
		font-size:12px;
	}
	
	#rails h3{
		display:block;
		background: url(/images/heading-ror.png) no-repeat top left;
		width:265px;
		height:34px;
		text-indent:-99999em;
	}
	
	#rails .inner{
		background: url(/images/divider-ver.png) repeat-y top right;
		margin-top:5px;	
		padding-top:12px;
		padding-right:12px;
		position:relative;
		padding-left:52px;
		padding-bottom:5px;
	}
	
	#rails .inner img{
		position:absolute;
		top:15px;
		left:3px;
	}
	

/* Books SECTION */		
	#books{
		float:left;
		width:249px;
		font-size:10px;
	}
	
	#books h3{
		display:block;
		background: url(/images/heading-books.png) no-repeat top left;
		width:249px;
		height:34px;	
		text-indent:-99999em;
	}
	
	#books .inner{
		margin-top:13px;
		margin-left:11px;
	}
	
	#books ul li{
		overflow:auto;
		margin-bottom:6px;
	}
	
	#books ul li a.cover{
		float:left;
		margin-right:5px;
		border:0;	
	}
	
	#books ul li a.cover img{
		-moz-box-shadow: 0px 0px 2px #000;
		-webkit-box-shadow: 0px 0px 2px #000;
		box-shadow: 0px 0px 2px #000;
	}
	
	#books ul li div{
		float:left;
		margin-top:1px;
	}
		
	#books ul li a{
		font-weight:bold;
		font-size:11px;
		color:#ab1e1e;
	}
	
	#books ul li a:hover{
		border-color:#ab1e1e
	}
	
/* FLICKR */

	#flickr{
		background: url(/images/flickr-box.png) no-repeat top left;
		width:515px;
		height:102px;
		margin-bottom:13px;
		position:relative;
	}		
	
	#flickr a{
		border:0;
	}
	
	#flickr a#to-flickr{
		height:102px;
		width:42px;
		float:right;

		display:block;
		text-indent:-99999em;
	}
	
	#flickr a#flickr-logo{
		background: url(/images/logo-flickr.png) no-repeat top left;
		width:32px;
		height:32px;
		display:block;
		text-indent:-99999em;
		float:left;
		margin-top:35px;
		margin-left:7px;
	}	
	
	#flickr ul#photos{
		padding-top:12px;
		float:left;
		margin-left:8px;

	}
	
	#flickr ul#photos li{
		float:left;
		margin-right:5px;
	}	

	#flickr ul#photos li a{
		position:relative;
		display:block;
	}	
	
	#flickr ul#photos li a img{
		padding: 1px 2px 3px 2px;
	}
	
	
	#flickr ul#photos li a span{
		position:absolute;
		width:79px;
		height:79px;
		top:0;
		left:0;
		background: url(/images/flickr-photo-overlay-75.png) no-repeat top left;
		display:block;
	}
	
/* PRESENTATIONS SECTION */
		
		#presentations h3{
			background: url(/images/heading-presentations.png) no-repeat top left;
			width:514px;
			height:34px;
			text-indent:-99999em;
			margin-bottom:15px;
		}	
		
		#presentations .inner{
			background: url(/images/divider-ver.png) repeat-y 264px top;
			overflow:auto;	
		}
		
		#presentations .vids{
			width:255px;
			float:left;
			margin-left:8px;
		}
		
			#presentations .vids ul{
				font-size:11px;
			}
			
			#presentations .vids a.vid{
				border:0;
				position:relative;
				display:block;
			}
			
			#presentations .vids a.vid img{
				width:242px;
				height:114px;
				padding:1px 1px 2px 1px;
			}
			
			#presentations .vids a.vid span.overlay{
				position:absolute;
				left:0;
				top:0;
				width:244px;
				height:117px;
				background: url(/images/overlay-video-242x114.png) no-repeat top left;
				z-index:100;
			}

			#presentations .vids a.vid span.button{
				position:absolute;
				left:102px;
				top:38px;
				width:47px;
				height:42px;
				background: url(/images/icon-play.png) no-repeat top left;
				z-index:50;
			}			
			
			#presentations .vids a {
				font-weight:bold;
				color:#ab1e1e;
			}
			
			#presentations .vids a:hover {
				border-color:#ab1e1e;
			}
			
			#hidden_embed_videos{
				display:none;
			}
		
		#presentations .right{
			width:237px;
			float:left;
			margin-left:13px;
		}
		
		#presentations .right h4{
			font-size:19px;
			font-weight:normal;
			margin-bottom:5px;
		}
		
		#presentations .right ul {
			margin-bottom:7px;
		}
				
		#presentations .right ul li{
			padding-left:15px;
			background:url(/images/bullet.png) no-repeat left center;
			font-size:10px;
			padding-top:3px;
		}
		
				#presentations .right ul li a{
					color:#ab1e1e;
					font-size:11px;
					font-weight:bold;
				}
				
				#presentations .right ul li a:hover{
					border-color:#ab1e1e
				}
				
				#presentations .right ul li span{
					display:block;
				}

		
		#presentations #hire-me{
			width:200px;
			border:1px solid #cdcbc1;
			padding: 3px 12px;
			padding-bottom:5px;
			background-color:#fcf6e7;
			display:block;
			margin:13px 0px;
			font-size:10px;
			border-radius: 1px;
			-moz-border-radius: 1px;
			-webkit-border-radius:1px;
		}	
		
		#presentations #hire-me h5{
			font-weight:bold;
			font-size:11px;
			font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif;
		}
		
		
		#presentations #hire-me p{
			margin-bottom:0.1em;
		}

#footer{
	font-weight:bold;
	font-size:11px;
	margin-top:8px;
	padding-bottom:80px;
}

	#footer hr{
		height:0;
		padding:0;
		border:0;
		border-top:1px solid #97958b;
		border-bottom:1px solid #fff;
		margin:0;
	}
	
	
/* SECOND PAGE */
	
#main-content-second-page{
	overflow:auto;
	background: url(/images/divider-ver.png) repeat-y center top;
	margin-top:10px;
}	

/* PRESENTATIONS ON 2nd PAGE */

#presentations-full{
	float:left	;
	width:450px;
	margin-bottom:20px;
}

#presentations-full h3{
	background: url(/images/heading-presentations-full.png) no-repeat top left;
	width:450px;
	height:34px;
	display:block;
	text-indent:-99999em;
	margin-bottom:20px;
}

ul.videos{
	font-family: Georgia,Palatino,"Palatino Linotype",Times,"Times New Roman",serif;
}

ul.videos li{
	margin-bottom:15px;
	padding-bottom:15px;
	/* border-bottom: 1px dotted #000; */
	padding-left:10px;
	padding-right:10px;
}

ul.videos li:last-child{
	border-bottom:0;
	
	}

ul.videos li .vid-desc{
	margin-top:10px;
	display:block;
}

ul.videos li h4{
	font-size:19px;
	font-weight:normal;
	margin-bottom:10px;	
}

/*ul.videos .embed-wrap{
	border: 1px solid #727272;
	display:block;
	float:left;
	-moz-box-shadow: 0px 0px 4px #000;
	-webkit-box-shadow: 0px 0px 4px #000;
	box-shadow: 0px 0px 4px #000;		
	margin-bottom:10px;
}*/

ul.videos .embed-wrap *{
	display:block;
}

/* SPEAKING ON 2nd PAGE */


#speaking-full{
	float:right;
	width:450px;
	margin-bottom:20px;
}

#speaking-full .inner{
	margin: 0 10px;
}

#speaking-full h3{
	background: url(/images/heading-presentations.png) no-repeat top left;
	width:450px;
	height:34px;
	display:block;
	text-indent:-99999em;
	margin-bottom:20px;
}

/*
		#speaking-full ul li{
			padding-left:20px;
			background:url(/images/bullet.png) no-repeat left center;
			font-size:12px;
			padding-top:3px;
		}
		
				#speaking-full  ul li a{
					color:#ab1e1e;
					font-size:12px;
					font-weight:bold;
				}
				
				#speaking-full  ul li a:hover{
					border-color:#ab1e1e
				}
				
				#speaking-full ul li span{
					display:block;
				}
				
		#speaking-full ul{
			margin-bottom:1em;
			margin-left:1em;	
		}		
				

		#speaking-full #hire-me{
			border:1px solid #cdcbc1;
			padding: 3px 12px;
			padding-bottom:5px;
			background-color:#fcf6e7;
			display:block;
			margin:20px 0px;
			font-size:11px;
			border-radius: 1px;
			-moz-border-radius: 1px;
			-webkit-border-radius:1px;
		}

		#speaking-full #hire-me h5{
			font-weight:bold;
			font-size:12px;
			font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Trebuchet,  Arial, sans-serif;
		}
		
		#speaking-full h4{
			font-size:19px;
			font-weight:normal;
			margin-bottom:5px;
		}
*/		
		
/* FANCYZOOM OVERLAY  TWEAKS*/


#zoom {
	z-index:999
}		

#zoom a{
	border:0;
}

/* BLOG PAGE */

#main-content.blog{
		background:transparent url(/images/divider-ver.png) repeat-y scroll 670px top;		
		margin-top:20px;
		margin-bottom:10px;
		overflow:visible;
		}
 
#blog-post  {
	width:650px;
	float:left;

}

	#blog-post .entry{
		font-family:Georgia, Palatino, Palatino Linotype, Times, "Times New Roman", serif;	
		font-size:15px;
		line-height:1.45em;
	}
	
	
	#blog-post .entry h2 a{
		font-size:23px;
		color:#c30c0c;
		font-weight:normal;
		border:0;
		margin-bottom: .1em;
		display:block;
	
	}
	
	#blog-post .entry  .timestamp{
		font-style: italic;
		margin-bottom:1em;
		display:block; 
	
	}
	
	#blog-post p{
		margin-bottom:.85em;
	}
	
	#blog-post p+p{
		margin-top:.85em;
	}

	
#blog-side{
	float:right;
	width:265px;
}

	#blog-side .section{
		margin-bottom:10px;
	}
	
	#blog-side #rails .inner {
		background: none;
	
	}
	
	#blog-side #presentations .vids {
		float:left;
		margin-left:10px;
		width:253px;
	}
	
	#blog-side #thirtyseven h3{
		background: url(/images/heading-37-signals-blog.png) no-repeat top left;
		width:265px;
		height:34px;
	
	}
	
	#blog-side #rails h3{
			background: url(/images/heading-ror-blog.png) no-repeat top left;
			width:265px;
			height:34px;
		}
		
	#blog-side #presentations h3{
			background: url(/images/heading-presentations-blog.png) no-repeat top left;
			width:265px;
			height:34px;
		}		
		