/*
------------------------------------------------------
MATTHEW G. HOLMES: Portfolio Home Page CSS
------------------------------------------------------
*/


/*
=============================
Global Styles
=============================
*/

body
{
	margin: 0;
	padding: 0;
	font-family: arial, verdana, sans-serif;
	font-size: small;
	color: #000;
	background: #ffd281;
}

img
{
	border: 0;
}

a:link,
a:visited
{
	color: #666;
	text-decoration: none;
	border-bottom: 1px dotted #666;
}

a:hover
{
	color: #666;
	text-decoration: none;
	border: 0;
}

a:active
{
	color: #666;
	text-decoration: none;
	border-bottom: 1px dotted #666;
}

abbr
{
	border: 0;
}

.hide
{
	display: none;
}


/*
=============================
Container Styles
=============================
*/

#site-wrapper
{
	padding: 2em 2em 1.7em 2em;
	background: #fff url(/images/common/site_header_background.jpg) repeat-x top left;
}

#site-container
{
	width: 68em;
	margin: 0 auto;
}


/*
=============================
Header Styles
=============================
*/

#header
{
	padding: 1em 0 1.5em 0;
	border-bottom: 1px solid orange;
	border-bottom: 1px solid rgba(255, 176, 0, .6);
}

#header #logo
{
	padding: 0 0 2em 0;
}

#header #logo .title
{
	display: inline;
	margin: 0;
	font-size: 250%;
	line-height: 1em;
	font-weight: 900;
	letter-spacing: -.05em;
	text-transform: uppercase;
}

#header #logo .title a:link,
#header #logo .title a:visited,
#header #logo .title a:active
{
	padding: .2em .35em .17em .35em;
	color: #fff;
	text-decoration: none;
	text-shadow: 0 -1px 0 rgba(0,0,0,.2);
	background: orange;
	border-bottom: 0;
	border-radius:.2em;
	-moz-border-radius:.2em;
	-webkit-border-radius:.2em;
	box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-moz-box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-webkit-box-shadow:2px 2px 3px rgba(0,0,0,.3);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 176, 0, .5)), to(rgba(255, 176, 0, 1)));
}

#header #logo .title a:hover
{
	background: #;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 176, 0, 1)), to(rgba(255, 176, 0, .5)));
}

#header #logo .subtitle
{
	display: inline;
	padding: 0 0 0 .2em;
	font-family: "Georgia", Times, serif;
	font-size: 275%;
	line-height: 0;
	color: #666;
	font-weight: normal;
	text-transform: lowercase;
}

#header blockquote
{
	margin: 0;
}

#header blockquote #summary
{
	width: 46em;
	margin: 0;
	font-family: "Georgia", Times, serif;
	font-size: 115%;
	line-height: 125%;
	color: #4c4c4c;
	font-weight: normal;
	font-style: italic;
}

#header blockquote #summary strong
{
	color: #000;
}


/*
=============================
Navigation Styles
=============================
*/

#navigation
{
	margin: 0 0 1.75em 0;
}

#navigation ul#primary-navigation
{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#navigation ul#primary-navigation li
{
	float: left;	
}

#navigation ul#primary-navigation li a:link,
#navigation ul#primary-navigation li a:visited,
#navigation ul#primary-navigation li a:active
{
	display: block;
	padding: .5em .7em;
	font-size: 100%;
	line-height: 95%;
	font-weight: 900;
	color: #666;
	border-right: 1px solid orange;
	border-bottom: 1px solid orange;
	border-right: 1px solid rgba(255, 176, 0, .7);
	border-bottom: 1px solid rgba(255, 176, 0, .7);
	text-decoration: none;
	text-transform: uppercase;
	background: #fff;
}

#navigation ul#primary-navigation li:first-child a
{
	border-bottom-left-radius:.4em;
	-moz-border-radius-bottomleft:.4em;
	-webkit-border-bottom-left-radius:.4em;
}

#navigation ul#primary-navigation li:last-child a
{
	border-bottom-right-radius:.4em;
	-moz-border-radius-bottomright:.4em;
	-webkit-border-bottom-right-radius:.4em;
}

#navigation ul#primary-navigation li a:hover
{
	color: #fff;
	background: #666;
}

#navigation ul#primary-navigation li a.first
{
	border-left: 1px solid orange;
	border-left: 1px solid rgba(255, 176, 0, .7);
}

#navigation ul#primary-navigation li a#current
{
	color: #666;
	background: #ccc;
}

#navigation ul#primary-navigation li a#current-tab
{
	color: #666;
	background: #ccc;
	border-bottom: 1px solid #ccc;
}

#navigation ul#secondary-navigation
{
	clear: left;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#navigation ul#secondary-navigation li
{
	float: left;	
}

#navigation ul#secondary-navigation li a:link,
#navigation ul#secondary-navigation li a:visited,
#navigation ul#secondary-navigation li a:active
{
	display: block;
	padding: .4em .5em .3em .5em;
	font-size: 80%;
	font-weight: normal;
	color: #666;
	border-right: 0;
	border-bottom: 0;
	text-decoration: none;
	text-transform: uppercase;
	background: #ccc;
	box-shadow:0 1px 0 rgba(0,0,0,.3);
	-moz-box-shadow:0 1px 0 rgba(0,0,0,.3);
	-webkit-box-shadow:0 1px 0 rgba(0,0,0,.3);
}

#navigation ul#secondary-navigation li:first-child a
{
	border-bottom-left-radius:.4em;
	-moz-border-radius-bottomleft:.4em;
	-webkit-border-bottom-left-radius:.4em;
	border-top-left-radius:.4em;
	-moz-border-radius-topleft:.4em;
	-webkit-border-top-left-radius:.4em;
}

#navigation ul#secondary-navigation li:last-child a
{
	margin-left:-1px;
	border-bottom-right-radius:.4em;
	-moz-border-radius-bottomright:.4em;
	-webkit-border-bottom-right-radius:.4em;
	border-top-right-radius:.4em;
	-moz-border-radius-topright:.4em;
	-webkit-border-top-right-radius:.4em;
	box-shadow:1px 1px 0 rgba(0,0,0,.3);
	-moz-box-shadow:1px 1px 0 rgba(0,0,0,.3);
	-webkit-box-shadow:1px 1px 0 rgba(0,0,0,.3);
}

#navigation ul#secondary-navigation li a:hover
{
	color: #fff;
	background: #666;
}

#navigation ul#secondary-navigation li a#current
{
	color: #333;
	background: #ccc;
}


/*
=============================
Content Styles
=============================
*/

#content
{
	clear: left;
}

#content h1
{
	margin: 0 0 1em 0;
	color: orange;
	font-size: 150%;
	line-height: 100%;
	letter-spacing: -.05em;
	text-transform: uppercase;
}

#content h2
{
	margin: 1em 0 1em 0;
	color: #666;
	font-size: 110%;
	line-height: 100%;
	text-transform: uppercase;
}

#content h2 a
{
	border: 0;
}

#content h3
{
	margin: 0 0 1em 0;
	color: #666;
	font-size: 90%;
	line-height: 100%;
	text-transform: uppercase;
}

#content h4
{
	margin: 0 0 .5em 0;
	color: #000;
	font-size: 85%;
	line-height: 100%;
	text-transform: uppercase;
}

#content p
{
	margin: 0 0 1.5em 0;
	line-height: 1.35em;
}

#content ul
{
	margin: 0 0 .75em 0;
	padding: 0 0 0 1.25em;
	list-style-type: square;
}

#content ul li
{
	padding: 0 0 .5em 0;
	line-height: 1.35em;
}

#content dl
{
	margin: 0 0 1.5em 0;
	padding: 0;
}

#content dl dt
{
	font-size: 100%;
	font-weight: 900;
}

#content dl dd
{
	margin: 0;
	font-size: 85%;
	line-height: 1.35em;
}

#content .column
{
	float: left;
	width: 23.5em;
	margin: 0 3em 0 0;
}

#content .third
{
	width: 14.75em;
	margin: 0;
}

#content .column h1
{
	margin: 0 0 .35em 0;
}

#content .third h1
{
	margin: 0 0 1em 0;
}

#content .column h1 a:link,
#content .column h1 a:visited,
#content .column h1 a:active
{
	color: orange;
	text-decoration: none;
	border: 0;
}

#content .column h1 a:hover
{
	color: #b2b2b2;
}

#content .main-body
{
	float: left;
	width: 39em;
	margin: 0 3em 0 0;
}

#content .main-body-portfolio
{
	float: left;
	width: 53em;
	margin: 0 3em 0 0;
}

#content .main-body h2
{
	margin: 1em 0 1em 0;
}

#content .main-body-portfolio h2
{
	margin: 0 0 1em 0;
}

#content .main-body h2 a,
#content .main-body-portfolio h2 a
{
	text-decoration: none;
}

#content .resume dl#resume-download
{
	float: right;
	width: 12em;
	margin: 0;
	padding: .5em .8em .4em .4em;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
	background: #efefef;
	box-shadow:2px 2px 2px rgba(0,0,0,.3);
	-moz-box-shadow:2px 2px 2px rgba(0,0,0,.3);
	-webkit-box-shadow:2px 2px 2px rgba(0,0,0,.3);
}

#content .resume dl#resume-download img
{
	float: left;
	margin: 0 .5em 0 0;
}

#content .resume dl#resume-download dd
{
	margin: .3em 0 0 0;
	font-size: 110%;
	line-height: 1.25em;
}

#content .resume dl#resume-download dd a
{
	font-weight: 900;
}

#content .resume dl.resume-position
{
	margin: 0 0 .5em 0;
	padding: 0;
}

#content .contactinfo dl
{
	margin: 0;
}

#content .contactinfo dl dd
{
	margin: 0 0 0 8.45em;
}

#content a:link.feature-image-link,
#content a:visited.feature-image-link,
#content a:active.feature-image-link
{
	display: block;
	border: 5px solid #ccc;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
	box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-moz-box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-webkit-box-shadow:2px 2px 3px rgba(0,0,0,.3);
}

#content a:hover.feature-image-link
{
	border: 5px solid orange;
}

#content .selectedworks a:link.feature-image-link,
#content .selectedworks a:visited.feature-image-link,
#content .selectedworks a:active.feature-image-link
{
	box-shadow:0 0 0;
	-moz-box-shadow:0 0 0;
	-webkit-box-shadow:0 0 0;
}

#content a.homepage-feature-image
{
	display: block;
	width: 299px;
	height: 250px;
}

#content a.portfolio-feature-image
{
	display: block;
	width: 145px;
	height: 121px;
}

#content .portfolio-feature-screenshot
{
	margin: 0 0 1.5em 0;
}

#content .portfolio-feature-screenshot .caption
{
	margin: .25em 0 0 0;
	font-size: 85%;
	color: #666;
}

#content img.portfolio-feature-image-large
{
	border: 5px solid #ccc;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
	box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-moz-box-shadow:2px 2px 3px rgba(0,0,0,.3);
	-webkit-box-shadow:2px 2px 3px rgba(0,0,0,.3);
}

#content .client
{
	color: #000;
	font-weight: 900;
}

#content .feature dl
{
	margin: .25em 0 .5em 0;
	padding: 0;
}

#content .feature dl dt
{
	font-size: 100%;
	font-weight: 900;
}

#content .feature dl dd
{
	margin: 0;
	font-size: 85%;
}

#content dl dd.feature-thumb
{
	margin: 0 0 .15em 0;
}

#content dl dd.feature-date
{
	color: #999;
	line-height: 1.5em;
}

#content dl dt.feature-header
{
	line-height: 1.25em;
}

#content dl dt.feature-header a
{
	color: #000;
	text-decoration: none;
	border: 0;
}

#content dl dd.feature-description
{
	line-height: 1.35em;
}

#content dl dd.feature-role
{
	padding: .75em 0 0 0;
}

#content dl dd.feature-ingredients
{
	padding: 0 0 .65em 0;
}

#content dl dd.feature-link
{
	padding: 0 0 .35em 0;
}

#content .feature ul,
#content #main-body-footer-navigation
{
	clear: both;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#content #main-body-footer-navigation li
{
	display: inline;
	margin: 0 .75em 0 0;
}

#content .feature ul li,
#content #main-body-footer-navigation li
{
	padding: 0;
}

#content .feature ul a,
#content #main-body-footer-navigation a
{
	font-size: 85%;
	font-weight: 900;
	text-transform: uppercase;
}

#content .project-header-row
{
	clear: both;
}

#content .projects h2
{
	float: left;
	margin: 0;
	padding: 0 0 .75em 0;
}

#content .projects h2.more
{
	float: right;
	margin: -.1em 1em 0 0;
	font-size: 85%;
}

#content .projects h2.more a:link,
#content .projects h2.more a:visited,
#content .projects h2.more a:active
{
	border-bottom: 1px dotted #666;
}

#content .projects h2.more a:hover
{
	border-bottom: 0;
}

#content .projects .project-row
{
	clear: left;
}

#content .projects dl
{
	float: left;
	width: 11.95em;
	margin: 0 1.5em 0 0;
	padding: 0 0 1.5em 0;
}

#content .projects dl dd.feature-link
{
	line-height: 1.5em;
}

#content .projects dl.last
{
	margin: 0;
	padding: 0 0 1.5em 0;
}

#content .testimonial
{
	margin:0 0 1.49em 0;
}

#content .testimonial blockquote
{
	margin:0;
	font-family: "Georgia", Times, serif;
	color: #4f4f4f;
	font-size:90%;
	font-style: italic;
}

#content .testimonial blockquote p
{
	margin:0 0 .7em 0;
	line-height: 1.2em;
}

#content .testimonial .author
{
	margin:0;
	font-size: 85%;
	line-height: 1.1em;
	color:#999;
}

#content .testimonials .testimonial
{
	margin:0 0 1.8em 0;
}

#content .testimonials .testimonial blockquote
{
	font-size:120%;
}

#content .testimonials .testimonial blockquote p
{
	line-height: 1.3em;
}

/*
======================================================
Sidebar Styles
======================================================
*/

#content .sidebar,
#content .sidebar-portfolio
{
	float: left;
	width: 24em;
	padding: 1em 1em 1.25em 1em;
	background: #e1e1e1;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
	box-shadow:2px 2px 2px rgba(0,0,0,.3);
	-moz-box-shadow:2px 2px 2px rgba(0,0,0,.3);
	-webkit-box-shadow:2px 2px 2px rgba(0,0,0,.3);	
}

#content .sidebar-portfolio
{
	width: 10em;
}

#content .sidebar-portfolio .last
{
	margin: 0;
}

#content .sidebar dl,
#content .sidebar-portfolio dl
{
	margin: 0;
	padding: 0;
}

#content .sidebar ul,
#content .sidebar-portfolio ul
{
	margin: 0 0 .75em 0;
	padding: 0;
	list-style-type: none;
}

#content .sidebar ul li,
#content .sidebar-portfolio ul li
{
	padding: 0 0 .25em 0;
}

#content .sidebar .sidebar-feature
{
	margin: 0 0 .7em 0;
	padding: 0 0 1em 0;
	border-bottom: 1px dotted #999;
}

#content .contactinfo .sidebar-feature,
#content .sidebar-portfolio .sidebar-feature
{
	margin: 0 0 1em 0;
	padding: 0 0 1em 0;
	border-bottom: 1px dotted #999;
}

#content .selectedworks .sidebar-feature
{
	margin: 0 0 1.25em 0;
	padding: 0 0 1em 0;
	border-bottom: 1px dotted #999;
}

#content .sidebar-feature dl
{
	margin: .25em 0 0 0;
	padding: 0;
}

#content .sidebar-feature dl dt
{
	font-size: 100%;
	font-weight: 900;
}

#content .sidebar-feature dl dd
{
	margin: 0;
	font-size: 85%;
}

#content .contactinfo dl dd,
#content .contactinfo .sidebar-feature dl dd
{
	margin: 0 0 0 104px;
}

#content .contactinfo dl dt img,
#content .contactinfo .sidebar-feature dl dt img
{
	float: left;
	margin: 0 1em 0 0;
	border: 5px solid #ccc;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
}

#content .sidebar-portfolio-navigation
{
	margin: 0 0 1em 0;
	padding: 0 0 .85em 0;
	border-bottom: 1px dotted #999;
}

#content .sidebar .sidebar-feature ul,
#content .sidebar-portfolio .sidebar-feature ul
{
	font-size: 85%;
}

#content .sidebar .sidebar-feature ul.last,
#content .sidebar-portfolio .sidebar-feature ul.last
{
	margin: 0;
}

#content .sidebar .sidebar-navigation ul,
#content .sidebar-portfolio .sidebar-navigation ul,
#content .sidebar-portfolio-navigation ul,
#content .column .sidebar-navigation ul
{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#content .sidebar .sidebar-navigation ul li,
#content .sidebar-portfolio .sidebar-navigation ul li,
#content .sidebar-portfolio-navigation ul li,
#content .column .sidebar-navigation ul li
{
	padding: 0;
	line-height: 1.15em;
}

#content .sidebar-portfolio-navigation ul li
{
	display: inline;
	margin: 0 .75em 0 0;
}

#content .sidebar .sidebar-navigation ul a,
#content .sidebar-portfolio .sidebar-navigation ul a,
#content .sidebar-portfolio-navigation ul a,
#content .column .sidebar-navigation ul a
{
	font-size: 85%;
	font-weight: 900;
	text-transform: uppercase;
}


/*
======================================================
Form Styles
======================================================
*/

form
{
	margin: -.15em 0 0 0;
	padding: 0;
	color: #666;
	font-family: arial, verdana, sans-serif;
}

form fieldset
{
	position: relative;
	margin:0;
	padding:0;
	border:0;
	font-size: 100%;
	vertical-align: baseline;
}

#content form p
{
	color: #000;
	margin: 0 0 1.25em 0;
}

form label
{
	color: #666;
	font-size: 100%;
	line-height: 1.25em;
	font-weight: 900;
	text-transform: uppercase;
}

form input
{
	display: block;
	margin: .5em 0 1em 0;
	padding: .65em;
	font-size: 100%;
	background: #e1e1e1;
	border: 1px solid #666;
	border: 1px solid rgba(0,0,0,.3);
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
}

form #name,
form #email,
form #message
{
	width: 37em;
	box-shadow:1px 1px 2px rgba(0,0,0,.3);
	-moz-box-shadow:1px 1px 2px rgba(0,0,0,.3);
	-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.3);
}

form input.button
{
	position:relative;
	margin: .5em 0 0 0;
	padding: .5em .7em;
	font-size: 110%;
	color: #fff;
	text-transform: uppercase;
	border: 1px solid #666;
	background: rgba(0,0,0,.6);
	background: #666;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.5)), to(rgba(0,0,0,.7)));
	-moz-box-shadow:2px 2px 2px rgba(0,0,0,.3);
}

form input.button:hover
{
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,.7)), to(rgba(0,0,0,.5)));
}

form input.button:active
{
	top:1px;
	left:1px;
}

form textarea
{
	width: 37em;
	display: block;
	margin: .5em 0 1em 0;
	padding: .75em;
	font-family: arial, verdana, sans-serif;
	font-size: 100%;
	line-height: 1.25em;
	border: 1px solid #666;
	border: 1px solid rgba(0,0,0,.3);
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
	background: #e1e1e1;
}

form input#name:focus,
form input#email:focus,
form textarea#message:focus
{
	background: #fedea3;
	outline: none;
}

form em
{
	padding: 0 0 0 .15em;
	color: red;
}

form #errormsg
{
	width: 36.75em;
	margin: 1.5em 0 1.35em 0;
	padding: 1em;
	color: red;
	background: #fcc;
	border-radius:.5em;
	-moz-border-radius:.5em;
	-webkit-border-radius:.5em;
}

form #errormsg a
{
	color: red;
	border-bottom: 1px dotted red;
}

form #errormsg p
{
	margin: 0 0 .75em 0;
	color: red;
	font-weight: 900;
}

form #errormsg ul
{
	margin: 0;
	padding: 0;
}

form #errormsg ul li
{
	padding: 0 0 .5em 0;
	list-style-type: none;
}
    
form .error
{
	border: 1px solid red;
	border: 1px solid rgba(255,0,0,.3);
	background: #fcc;
}

.required
{
	color: red;
}


/*
=============================
Footer Styles
=============================
*/

#footer-wrapper
{
	background: #ffd281 url(/images/common/site_footer_background.jpg) repeat-x bottom left;
}

#footer
{
	width: 80em;
	margin: 0 auto;
	padding: 1.95em 2.5em 1.4em 2.5em;
	font-size: 85%;
	color: #666;
}

#footer #footer-navigation
{
	margin: 0 0 .75em 0;
	padding: 0;
	list-style-type: none;
}

#footer #footer-notation,
#footer #footer-copyright
{
	margin: 0 0 .75em 0;
	padding: 0;
	list-style-type: none;
}

#footer #footer-navigation li,
#footer #footer-notation li,
#footer #footer-copyright li
{
	display: inline;
	padding: 0 .5em 0 0;
}

#footer #footer-navigation li a
{
	font-weight: 900;
}

#footer #footer-email
{
	text-decoration: none;
}


/*
=============================
CSS Hacks
=============================
*/

/* clear fix */
.clearfix
{
	clear: both;
}

/* clearing floated block elements -
fixes problem in Firefox, Safari, and Opera where floated element does not define height of the container box */
.clearfix:after,
.clearfix dl:after
{
	content: ".";
	display: block;
	height: 0;
	clear: both; 
	visibility: hidden;
}