/* 
 ----------------------------------------------------------------------------
	CSS Copyright 2008 David M. Hepburn Productions, Inc. - DavidMHepburn.com
	Certain coding assistance provided by Drew Stauffer - AlibiProductions.com
	Last Updated: December 26, 2008 at 12:45 PM
	DavidMHepburn.com - v3.0
 ---------------------------------------------------------------------------- 
*/

/* undo some default styling of common (X)HTML browsers
 * ------------------------------------------------------------------------- */

/* No list-markers by default - must redefine bullets w/ bg graphics */
ul,ol { list-style:none; }

/* Avoid browser default inconsistent heading font-sizes and pre/code */
h2,h3,h4,h5,h6,pre,code,td { font-size:1em; }

/* Remove inconsistent (among browsers) default padding or margin */
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input,label,div,dd,dt,dl,table,tr,td {padding:0; }

/* prevent blue linked image borders */
a img,:link img,:visited img,fieldset { border:none; }

/* Fix up IE6 PNG Support */  
img, #logo { behavior: url(framework/scripts/iepngfix/iepngfix.htc); }



/* GLOBAL ELEMENTS
 * ------------------------------------------------------------------------- */

body {
	background-color: #fdb515;
	font-family: arial, verdana, sans-serif;
	text-align: center;
	margin: 0px;
	}

h1,h2,h3 { margin-bottom:8px; }

h1	{ font-size:1.5em; color:#000000; font-weight: normal; padding-left: 30px; }
h2	{ font-size:1.3em; color:#000000; font-weight: normal; padding-left: 30px; }
h3	{ font-size:1.1em; color:#000000; font-weight: normal; padding-left: 30px; }
h4	{ font-size:0.9em; color:#000000; font-weight: normal; padding-left: 30px; }

p {
	font-size: 0.9em;
	color: #000000;
	padding-left: 12px;
	line-height: 150%;
	}

a:link,a:visited	{ color:#000000; text-decoration:underline; font-weight: bold; }
a:hover,a:active	{ color:#11294d; text-decoration:none; font-weight: bold; }

#banner {
	background: url('http://www.davidmhepburn.com/images/banner_slice.png') repeat-x center;
	display: block;
	height: 122px;
	padding-top: 0em;
	position: relative;
	border: 0px;
	}

#container {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	}

#content {
	background-color: #FFFFFF;
	padding-right: 20px;
	padding-bottom: 1px;
	margin-top: -4.9em;
	margin-bottom: -0.1em;
	text-align: left;
	border: 0px;
	width: 980px;
	min-height: 600px;
	}

#content p {
	padding-left: 30px;
	padding-right: 60px;
	line-height: 1.6em;
	}

#logo {
	position: relative;
	left: -540px; /* -600px once Blog nav gets added */
	top: -100px;
	}

#byline {
	}
	
.col {
	float:left;
	display:inline;
	width:320px;
	margin-left: 5px;
	padding-bottom:1em;
	}
	
.first {
	margin-left:2px;
	}

#featured-font {
	float: right;
	margin-top: 0.3em;
	margin-right: 3em;
	margin-left: 0;
	}

#quote-block {
	width: 350px;
	margin-left: 50px;
	margin-right: auto;
	border-left-width: 0px;
	border-left-style: solid;
	border-color: #11294d;
	line-height: 150%;
	}

#quote-block p {
	text-align: right;
	padding: 0 5px;
	font-size: 1em;
	color: #000000;
	line-height: 150%;
	}

#client-quote1 {
	width: 400px;
	margin-left: 25px;
	margin-right: auto;
	border-left-width: 0px;
	border-left-style: solid;
	border-color: #11294d;
	line-height: 150%;
	}

#client-quote1 p {
	text-align: right;
	padding: 0 5px;
	font-size: 1em;
	color: #000000;
	line-height: 150%;
	}

#client-quote2 {
	width: 400px;
	margin-top: 20px;
	margin-left: 100px;
	margin-right: auto;
	border-left-width: 0px;
	border-left-style: solid;
	border-color: #11294d;
	line-height: 150%;
	}

#client-quote2 p {
	text-align: right;
	padding: 0 5px;
	font-size: 1em;
	color: #000000;
	line-height: 150%;
	}

#ask {
	border-top: dashed 1px #2F4F4F;
	border-bottom: dashed 1px #2F4F4F;
	font-size: 0.8em;
	text-align: center;
	line-height: 125%;
	padding: 10px 0 10px 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
	margin-top: 4em;
	clear: both;
	width: 400px;
	}

#portfolio-ask {
	font-size: 0.8em;
	text-align: center;
	line-height: 125%;
	padding: 10px 0 20px 0;
	margin-top: 5em;
	}

#crumbs ul, #crumbs li {
	list-style-type:none;
	padding:0;
	margin:0;
	}

#crumbs {
	border-bottom:1px solid #dedede;
	font-size: 0.8em;
	height:2em;
	margin-top: 0;
	margin-right: -1.5em;
	}

#crumbs li {
	float:left;
	line-height:2em;
	padding-left:.75em;
	color:#777;
	}

#crumbs li a {
	display:block;
	padding:0 15px 0 0;
	background:url(../images/crumbs.gif) no-repeat right center;
	}

#crumbs li a:link, #crumbs li a:visited {
	text-decoration:none;
	color:#777;
	}

#crumbs li a:hover, #crumbs li a:focus {
	color:#11294d;
	}

	



/* CLASSES
 * ------------------------------------------------------------------------- */	

.left {
	text-align: left;
	}

.center {
	text-align: center;
	}

.right {
	text-align: right;
	}

.title {
	font-family: Arial, Verdana, sans-serif;
	font-weight: bold;
	}

.image-title {
	padding-top: 20px;
	padding-left: 30px;
	padding-bottom: 8px;
	}
	

div.img {
	float: right;
	padding-top: 1em;
	padding-left: 8px;
	padding-right: 12px;
	}
 
.collapsable { 
	padding-right: 20px;
	font-size: 12px;
	}

img.portfolio {
	border:1px solid #32312f; 
	}

.featured-projects {
	float: right;
	margin-left: 0.5em;
	margin-right: 0;
	margin-bottom: 0.5em;
	border:1px solid #333333;
	background-color:#ffffff;
	padding:5px;
	}

.featured-projects img {
	border:1px solid #b5b5b5;
	}
	
.identity-image {
	float: right;
	margin-right: 1em;
	margin-left: 1em;
	margin-bottom: 0.5em;
	border:1px solid #333333;
	background-color:#ffffff;
	padding:5px;
	}
	
.identity-image img {
	border:1px solid #b5b5b5;
	}
	
.image-right {
	float: right;
	margin-top: 3em;
	margin-right: 4em;
	margin-left: 0.5em;
	margin-bottom: 0.5em;
	}

.img_block {
	margin: 0.5em;
	border:1px solid #333333;
	background-color:#ffffff;
	padding:5px;
	}

.image_block img {
	border:1px solid #b5b5b5;
	}

.ribbon {  
	position:absolute;  
	top:2px;  
	right:82px;  
	}

.strong {
	font-weight: bold;
	}

.indent {
	margin-left: 2em;
	}
	
.address {
	margin-top: -1.8em;
	line-height: 10px;
	}
	
.services-list {
	margin-left: 7em;
	}
	
.services-list li {
	list-style-type: disc;
	font-size: 0.9em;
	line-height: 1.5em;
	}
	
.site-preview {
	margin-top: -0.8em;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #cdcdcd;
	}

.grey {
	color: #474747;
	font-weight: bold;
	}

.alert {
	border: 1px dashed #000000;
	margin: auto;
	width: 700px;
	padding: 5px;
	background-color: #cdcdcd;
	}
	
.preloader {display: none;}

.normal li {
	font-size: 0.9em;
	list-style: disc;
	margin-left: 3em;
	}



/* BUTTON FRAMEWORK
 * ------------------------------------------------------------------------- */

a.button {  
	background:#fdb415 url(../images/button_bg.jpg) repeat-x;  
	padding:5px 10px 5px 10px;  
	color: #f0ffff;  
	text-decoration: none;  
	border:1px solid #cccccc;  
	text-transform:uppercase;  
	font-size:12px;  
	line-height:30px;     
	}

a.button:hover {  
	background: url(../images/button_bg_hover.jpg) repeat-x;  
	border-color:#cccccc;  
	}

input.button {  
	background:#fdb415 url(../images/button_bg.jpg) repeat-x; 
	height: 30px; 
	padding:5px 10px 5px 10px;  
	color: #f0ffff;  
	text-decoration: none;  
	border:1px solid #cccccc;  
	text-transform:uppercase;  
	font-size:12px;  
	line-height:20px;     
	}

input.button:hover {  
	background: url(../images/button_bg_hover.jpg) repeat-x;
	border-color:#cccccc;
	}



/* NAVIGATION FRAMEWORK
 * ------------------------------------------------------------------------- */

#nav { 
	height:36px; 
	margin:0;
	position: relative;
	left: 475px; /* 475px once Blog nav gets added */
	top: -80px;
	float: left;
	}

#nav li, #nav a {
	display:block;
	height:35px;
	line-height: 35px;
	text-align: center;
	}

#nav li { float:left; list-style:none; display:inline; width: 99px;}


/*-------------- Keeps the hover state on each page based on body #id ------------- */
body#index #nav-01 a { color: #11294d; }
body#about #nav-02 a { color: #11294d; }
body#services #nav-03 a { color: #11294d; }
body#portfolio #nav-04 a { color: #11294d; }
body#blog #nav-05 a { color: #11294d; }
body#contact #nav-06 a { color: #11294d; }



/* Son of Suckerfish: Horizontal Sprite Nav

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

 

#nav li ul {
            position:absolute;
            left:-9999px;
            background-color:#ffffff;        /* Background color of drop down nav - add more styles (i.e. background image) if you want */
            padding-right:1px;                                  /* Fixes one px spacing for border-right in FF */
            margin-top:0px;
            margin-left:-1px;
            z-index:99;
            }

 

#nav li ul li {
			background: #ffffff;
            height:30px;                     /* Height of each drop down nav item */
            border:1px solid #bccad3;
            border-top:none;
            padding:0;
            margin:0;
            }          

 

#nav li ul li a {
            width:100%;
            height:30px;                    /* Height of each drop down nav item, should match above */
            line-height:30px;               /* Height of each drop down nav item again, should match above */
            margin:0;
            padding:0;
            font-weight:normal;        
            }

 

#nav li ul li a span {
            display:block;
            padding-left:5px;
            }

 

/* Drop down link styles */

#nav a:link, #nav a:visited, #nav a:active {
            font-size: 14px;
            font-weight: bold;
            color:#528b8b;
            text-decoration:none;
            }
            
#nav a:hover {
	color: #11294d;
	}

#nav li:hover ul, #nav li.sfhover ul  { left: auto; }
 

/* Hover styles for drop down items */

#nav-04 ul a:hover {
            background: #f6f8f9;
            color:#11294d;
            text-decoration:none;
            }

#nav-04 ul a:link, #nav-04 ul a:visited, #nav-04 ul a:active {
	background: #f6f8f9;
	}
            
#nav-04 ul {
	border-top: 1px solid #70dbdb;
	}


/* width of drop down nav - choose width that allows items to display on one line */

#nav-04 ul, #nav-04 li { margin-left:0px; width:99px; }

#nav-01 a, #nav-02 a, #nav-03 a, #nav-04 a, #nav-05 a {
	border-right: 1px solid #70dbdb;
	}

#nav-06 li, #nav-06 a {border-right:0;}

/* Holly Hack. IE Requirement \*/
* html ul li { float: left; height: 1%; }
* html ul li a { height: 1%; }
/* End */





/* VIDEO PORTFOLIO FRAMEWORK
 * ------------------------------------------------------------------------- */

#video-description {
	float:left;
	width: 450px;
	}

#video {
	float: right;
	margin-top: 20px;
	margin-right: 20px;
	margin-bottom: 50px;
	width: 500px;
	}

#quicktime {
	width: 315px;
	float: right;
	text-align: left;
	}
	
.portfolio-list {
	width: 650px;
	padding-left: 30px;
	}
	
.portfolio-list li {
	list-style-type: none;
	display: inline;
	}
	
.portfolio-list img {
	margin-right: 1px;
	}
	
a.video-button-small {  
	background:#fdb415 url(../images/video_button.jpg) repeat-x;  
	padding:5px 30px 5px 30px;  
	color: #f0ffff;  
	text-decoration: none;  
	border:1px solid #528B8B;  
	font-size:18px;  
	line-height:40px;     
	}

a.video-button-small:hover {  
	background: url(../images/video_button_hover.jpg) repeat-x;  
	border-color:#528B8B;  
	}
	
a.video-button-large {  
	background:#fdb415 url(../images/video_button.jpg) repeat-x;  
	padding:10px 50px 10px 50px;  
	color: #f0ffff;  
	text-decoration: none;  
	border:1px solid #528B8B;  
	font-size:18px;  
	line-height:40px;     
	}

a.video-button-large:hover {  
	background: url(../images/video_button_hover.jpg) repeat-x;  
	border-color:#528B8B;  
	}




/* WEB DESIGN PORTFOLIO FRAMEWORK
 * ------------------------------------------------------------------------- */

#web-description {
	width: 450px;
	margin-top: 25px;
	}

#web-image {
	float: right;
	width: 450px;
	margin-top: -17em;
	margin-right: 8.5em;
	}



/* CONTACT FRAMEWORK
 * ------------------------------------------------------------------------- */

#contact-form {
	margin-left: 30px;
	}

#contact-info {
	float: right;
	margin-top: 20px;
	margin-right: 100px;
	padding: 5px;
	border: 4px solid #cccccc;
	background-color: #f1f1f1;
	}

#contact-info p {
	margin-bottom: 2em;
	}

.contact-image {
	margin-bottom: -0.8em;
	}

form.contact-form fieldset {
	margin-bottom: 10px;
	}

form.contact-form legend {
	display: none;
	}

form.contact-form label {
	display: inline-block;
	line-height: 1.8;
	vertical-align: top;
	font-size: 12px;
	}

form.contact-form fieldset ol {
	margin: 0;
	padding: 0;
	}

form.contact-form fieldset li {
	list-style: none;
	padding: 5px;
	margin: 0;
	}



/* FOOTER FRAMEWORK
 * ------------------------------------------------------------------------- */

#footer {
	padding-top: 1px;
	padding-right: 10px;
	margin-top: 0.5em;
	margin-bottom: 1.5em;
	text-align: center;
	clear: both;
	}

#footer p {
	font-size: 11px;
	color: #000000;
	line-height: 150%;
	margin-bottom: 1em;
	}
	
#footer a {
	color: #000000;
	}
	
#footer a:hover {
	color: #000000;
	text-decoration: none;
	}
	
	
/* SITE MAP FRAMEWORK
 * ------------------------------------------------------------------------- */
 
 #sitemap {
 	font-size: 0.8em;
 	padding-left: 40px;
 	line-height: 2em;
 	}
 
 #sitemap ul {
 	padding-left: 40px;
 	}
 	
 #sitemap a {
 	text-decoration: none;
 	color: #383838;
 	}
 	
 #sitemap a:hover {
 	text-decoration: underline;
 	color: #383838;
 	}
 	
 /* BLOG FRAMEWORK
 * ------------------------------------------------------------------------- */
 
 #sidebar h2 {
	font-size: 1em;

.entry p a:visited {
	color: #b85b5a;
	}

.commentlist li, #commentform input, #commentform textarea {
	font-size: 0.9em;
	}
.commentlist li ul li {
	font-size: 1em;
}

.commentlist li {
	font-weight: bold;
}

.commentlist li .avatar { 
	float: right;
	border: 1px solid #eee;
	padding: 2px;
	background: #fff;
	}

.commentlist cite, .commentlist cite a {
	font-weight: bold;
	font-style: normal;
	font-size: 1.1em;
	}

.commentlist p {
	font-weight: normal;
	line-height: 1.5em;
	text-transform: none;
	}

#commentform p {
	}

.commentmetadata {
	font-weight: normal;
	}

small, #sidebar ul ul li, #sidebar ul ol li, .nocomments, .postmetadata, blockquote, strike {
	color: #777;
	}

code {
	font: 1.1em 'Courier New', Courier, Fixed;
	}

acronym, abbr, span.caps
{
	font-size: 0.9em;
	letter-spacing: .07em;
	}

#wp-calendar #prev a, #wp-calendar #next a {
	font-size: 9pt;
	}

#wp-calendar a {
	text-decoration: none;
	}

#wp-calendar caption {
	font-size: bold 1.3em;
	text-align: center;
	}

#wp-calendar th {
	font-style: normal;
	text-transform: capitalize;
	}

.narrowcolumn {
	float: left;
	padding: 0 0 20px 45px;
	margin: 0px 0 0;
	width: 450px;
	}

.widecolumn {
	padding: 10px 0 20px 0;
	margin: 5px 0 0 150px;
	width: 450px;
	}

.post {
	margin: 0 0 40px;
	text-align: justify;
	}

.post hr {
	display: block;
	}

.widecolumn .post {
	margin: 0;
	}

.narrowcolumn .postmetadata {
	padding-top: 5px;
	}

.widecolumn .postmetadata {
	margin: 30px 0;
	}

.widecolumn .smallattachment {
	text-align: center;
	float: left;
	width: 128px;
	margin: 5px 5px 5px 0px;
}

.widecolumn .attachment {
	text-align: center;
	margin: 5px 0px;
}

.postmetadata {
	clear: both;
}

.clear {
	clear: both;
}

h3.comments {
	padding: 0;
	margin: 40px auto 20px ;
	}

/* Begin Images */
p img {
	padding: 0;
	max-width: 100%;
	}

/*	Using 'class="alignright"' on an image will (who would've
	thought?!) align the image to the right. And using 'class="centered',
	will of course center the image. This is much better than using
	align="center", being much more futureproof (and valid) */

img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
	}

img.alignright {
	padding: 4px;
	margin: 0 0 2px 7px;
	display: inline;
	}

img.alignleft {
	padding: 4px;
	margin: 0 7px 2px 0;
	display: inline;
	}

.alignright {
	float: right;
	}

.alignleft {
	float: left
	}
/* End Images */

/* Begin Lists

	Special stylized non-IE bullets
	Do not work in Internet Explorer, which merely default to normal bullets. */

html>body .entry ul {
	margin-left: 0px;
	padding: 0 0 0 30px;
	list-style: none;
	padding-left: 10px;
	text-indent: -10px;
	}

html>body .entry li {
	margin: 7px 0 8px 10px;
	}

.entry ul li:before, #sidebar ul ul li:before {
	content: "\00BB \0020";
	}

.entry ol {
	padding: 0 0 0 35px;
	margin: 0;
	}

.entry ol li {
	margin: 0;
	padding: 0;
	}

.postmetadata ul, .postmetadata li {
	display: inline;
	list-style-type: none;
	list-style-image: none;
	}

#sidebar ul, #sidebar ul ol {
	margin: 0;
	padding: 0;
	}

#sidebar ul li {
	list-style-type: none;
	list-style-image: none;
	margin-bottom: 15px;
	}

#sidebar ul p, #sidebar ul select {
	margin: 5px 0 8px;
	}

#sidebar ul ul, #sidebar ul ol {
	margin: 5px 0 0 10px;
	}

#sidebar ul ul ul, #sidebar ul ol {
	margin: 0 0 0 10px;
	}

ol li, #sidebar ul ol li {
	list-style: decimal outside;
	}

#sidebar ul ul li, #sidebar ul ol li {
	margin: 3px 0 0;
	padding: 0;
	}
/* End Entry Lists */



/* Begin Form Elements */
#searchform {
	margin: 10px auto;
	padding: 5px 3px;
	text-align: center;
	}

#sidebar #searchform #s {
	width: 108px;
	padding: 2px;
	}

#sidebar #searchsubmit {
	padding: 1px;
	}

.entry form { /* This is mainly for password protected posts, makes them look better. */
	text-align:center;
	}

select {
	width: 130px;
	}

#commentform input {
	width: 170px;
	padding: 2px;
	margin: 5px 5px 1px 0;
	}

#commentform {
	margin: 5px 10px 0 0;
	}
#commentform textarea {
	width: 100%;
	padding: 2px;
	}
#respond:after {
		content: "."; 
	    display: block; 
	    height: 0; 
	    clear: both; 
	    visibility: hidden;
	}
#commentform #submit {
	margin: 0 0 5px auto;
	float: right;
	}
/* End Form Elements */



/* Begin Comments*/
.alt {
	margin: 0;
	padding: 10px;
	}

.commentlist {
	padding: 0;
	text-align: justify;
	}

.commentlist li {
	margin: 15px 0 10px;
	padding: 5px 5px 10px 10px;
	list-style: none;

	}
.commentlist li ul li { 
	margin-right: -5px;
	margin-left: 10px;
}

.commentlist p {
	margin: 10px 5px 10px 0;
}
.children { padding: 0; }

#commentform p {
	margin: 5px 0;
	}

.nocomments {
	text-align: center;
	margin: 0;
	padding: 0;
	}

.commentmetadata {
	margin: 0;
	display: block;
	}
/* End Comments */



/* Begin Sidebar */
#sidebar {
	font-size: 0em;
	float: right;
	width: 190px;
	}

#sidebar form {
	margin: 0;
	}
/* End Sidebar */



/* Begin Calendar */
#wp-calendar {
	empty-cells: show;
	margin: 10px auto 0;
	width: 155px;
	}

#wp-calendar #next a {
	padding-right: 10px;
	text-align: right;
	}

#wp-calendar #prev a {
	padding-left: 10px;
	text-align: left;
	}

#wp-calendar a {
	display: block;
	}

#wp-calendar caption {
	text-align: center;
	width: 100%;
	}

#wp-calendar td {
	padding: 3px 0;
	text-align: center;
	}

#wp-calendar td.pad:hover { /* Doesn't work in IE */
	background-color: #fff; }
/* End Calendar */



/* Begin Various Tags & Classes */
acronym, abbr, span.caps {
	cursor: help;
	}

acronym, abbr {
	border-bottom: 1px dashed #999;
	}

blockquote {
	margin: 15px 30px 0 10px;
	padding-left: 20px;
	border-left: 5px solid #ddd;
	}

blockquote cite {
	margin: 5px 0 0;
	display: block;
	}

.center {
	text-align: center;
	}

.hidden {
	display: none;
	}

hr {
	display: none;
	}

a img {
	border: none;
	}

.navigation-blog {
	display: block;
	text-align: center;
	margin-top: 10px;
	margin-bottom: 60px;
	}
/* End Various Tags & Classes*/



/* Captions */
.aligncenter,
div.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	border: 1px solid #ddd;
	text-align: center;
	background-color: #f3f3f3;
	padding-top: 4px;
	margin: 10px;
	-moz-border-radius: 3px;
	-khtml-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

.wp-caption img {
	margin: 0;
	padding: 0;
	border: 0 none;
}

.wp-caption p.wp-caption-text {
	font-size: 11px;
	line-height: 17px;
	padding: 0 4px 5px;
	margin: 0;
}
/* End captions */