/**
* Global Styles Defintions
*
* @author			Matt Gifford
* @copyright		2008 Timeshifting Interactive Limited
* @version		1.5.1
*/

html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	margin: 0; padding: 0;
	}

html {
	/* always display vertical scrollbar, stops centered content jumping between pages */
	overflow: -moz-scrollbars-vertical; overflow-y: scroll;
	min-height: 100%;
	}

body {
	background: #000;
	font: normal 11px verdana, bitstream vera sans, arial, geneva, helvetica, sans-serif;
	min-height: 100%; color: #fff;
	}

body p {
	color: #ddd;
	}

select, input, textarea {
	font: normal 12px arial, geneva, helvetica, sans-serif;
	}

table {
	border-collapse: collapse; border-spacing: 0;
	font-size: inherit; font: 100%;
	}

fieldset, img {
	border: 0; display: block;
	}

address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal; font-weight: normal;
	}

pre, code {
	font: 115% monospace;
	}

caption, th {
	text-align: left;
	}

ul, ol {
	list-style: none;
	}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%; font-weight: normal;
	}

q:before, q:after {
	content: '';
	}

abbr, acronym {
	border: 0;
	}

sup {
	position: relative; display: inline-block; vertical-align: 0.3em; height: 1.2em;
	}

sub {
	position: relative; display: inline-block; vertical-align: -0.1em; height: 1.2em;
	}

body * {
	line-height:1.22em;
	}

strong {
	font-weight: bold;
	}

em {
	font-style: italic;
	}

a {
	color: #81bfff; text-decoration: underline;
	outline: none !important;
	}

a:hover {
	color: #baa484; text-decoration: none;
	}

a.active {
	cursor: default;
	}

.clear {
	clear: both;
	}

.hidden {
	display: none !important;
	}

.invisible {
	visibility: hidden !important;
	}

span.emailAddress i {
	color: #333;
	}



/*  ::  Global Styles  */

#background {
	position: fixed; width: 100%; height: 100%;
	}

#overlay {
	position: fixed; left: 50%; width: 960px; height: 100%; margin-left: -480px;
	background: #000;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=88)";
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=88);
	opacity: 0.88;
	}

#page {
	position: relative; margin: 0 auto; padding: 0; width: 960px;
	}



/*  ::  Global Styles  --  Header  */

#globalHeader {
	position: relative; width: 960px; height: 125px;
	}

body.portfolio #globalHeader {
	height: 100px;
	}

#globalHeaderLogo {
	position: absolute; left: 29px; top: 23px;
	}



/*  ::  Global Styles  --  Header  ::  Navigation  */

#globalHeaderNav {
	position: absolute; left: 563px; top: 35px; width: 349px; height: 29px;
	background: url(../images/global-header-nav-bg-array-i8a8.png) no-repeat 0px 0px;
	}

#globalHeaderNav li {
	position: absolute; height: 29px;
	}

#globalHeaderNav li a {
	display: block; width: 100%; height: 29px;
	background-image: url(../images/global-header-nav-bg-array-i8a8.png);
	background-position: -9999px 0px;
	text-indent: -9999px;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
	opacity: 0;
	}

#globalHeaderNav li a.active {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
	opacity: 1.0;
	}

#globalHeaderNav #navHome {
	left: 0px; width: 48px;
	}

#globalHeaderNav #navHome a {
	background-position: 0px -29px;
	}

#globalHeaderNav #navHome a.active {
	background-position: 0px -58px;
	}

#globalHeaderNav #navServices {
	left: 54px; width: 64px;
	}

#globalHeaderNav #navServices a {
	background-position: -54px -29px;
	}

#globalHeaderNav #navServices a.active {
	background-position: -54px -58px;
	}

#globalHeaderNav #navPortfolio {
	left: 124px; width: 62px;
	}

#globalHeaderNav #navPortfolio a {
	background-position: -124px -29px;
	}

#globalHeaderNav #navPortfolio a.active {
	background-position: -124px -58px;
	}

#globalHeaderNav #navAbout {
	left: 192px; width: 48px;
	}

#globalHeaderNav #navAbout a {
	background-position: -192px -29px;
	}

#globalHeaderNav #navAbout a.active {
	background-position: -192px -58px;
	}

#globalHeaderNav #navBlog {
	left: 246px; width: 38px;
	}

#globalHeaderNav #navBlog a {
	background-position: -246px -29px;
	}

#globalHeaderNav #navBlog a.active {
	background-position: -246px -58px;
	}

#globalHeaderNav #navContact {
	left: 290px; width: 59px;
	}

#globalHeaderNav #navContact a {
	background-position: -290px -29px;
	}

#globalHeaderNav #navContact a.active {
	background-position: -290px -58px;
	}


/*  ::  Global Styles  --  Content  */

#globalContent {
	position: relative; padding: 0 0 50px 0;
	min-height: 400px;
	word-wrap: break-word;		/* stops very long words from increasing the width of their container */
	}



/*  ::  Global Styles  --  Footer  */

#globalFooter {
	position: relative; width: 960px;
	}

#globalFooter span {
	color: #2c2923;
	}

#globalFooter a {
	color: #5a554e;
	}

#globalFooter a:hover {
	color: #baa484;
	}

#globalFooter p.legal {
	width: 890px; margin: 0 30px; padding: 10px 5px 4px 5px;
	font-family: cambria, georgia, times new roman, times, serif;
	color: #5a554e; font-size: 12px;
	border-top: 1px solid #333;
	}

#globalFooter p.legal strong {
	font-weight: normal;
	}

#globalFooter p.services {
	width: 890px; margin: 0 30px; padding: 0px 5px 4px 5px;
	font-family: cambria, georgia, times new roman, times, serif;
	color: #2c2925; font-size: 12px;
	}

#globalFooter p.services a,
#globalFooter p.services b,
#globalFooter p.services strong {
	font-weight: normal; color: #2c2925; text-decoration: none;
	cursor: text;
	}

#globalFooter p.links {
	width: 896px; margin: 0 30px; padding: 30px 2px 50px 2px;
	font-size: 10px; color: #2c2923;
	}

#globalFooter p.links a {
	float: left; display: block; width: 160px; padding: 30px 0 0 0;
	font-size: 10px; color: #888;
	text-align: center; text-decoration: none;
	}

#globalFooter p.links a.facebook {
	background: url(../images/global-footer-logo-facebook-i8a8.png) no-repeat 50% 0;
	}

#globalFooter p.links a.twitter {
	background: url(../images/global-footer-logo-twitter-i8a8.png) no-repeat 50% 0;
	}

#globalFooter p.links a.linkedin {
	background: url(../images/global-footer-logo-linkedin-i8a8.png) no-repeat 50% 0;
	}



/*  ::  Page Styles  --  Home  ::  Intro  */

#homeIntro {
	position: relative; width: 780px; padding: 0 0 20px 90px;
	}

#homeIntro h1 {
	padding: 0 0 16px 0;
	font: bold 21px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeIntro h2 {
	padding: 0 0 16px 0;
	font-size: 18px; font-family: cambria, georgia, times new roman, times, serif; color: #ddd;
	}

#homeIntro p {
	padding: 0 0 16px 0;
	font-size: 18px; font-family: cambria, georgia, times new roman, times, serif; color: #ddd;
	}

#homeIntro h2 b,
#homeIntro h2 strong,
#homeIntro p b,
#homeIntro p strong {
	font-weight: normal;
	}



/*  ::  Page Styles  --  Home  ::  Featured  */

#homeFeatured {
	position: relative; width: 802px; height: 360px; padding: 0 0 0 79px; overflow: hidden;
	}

#homeFeatured h2 {
	padding: 0 11px 10px 11px;
	font: bold 19px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeFeatured div.thumbnails {
	position: relative; width: 560px; height: 280px; padding: 11px 0 0 12px;
	}

#homeFeatured div.thumbnails li {
	float: left; width: 122px; height: 122px; padding: 2px; margin: 0 11px 10px 0;
	background: #000;
	}

#homeFeatured div.thumbnails li:hover {
	background: #7e6643;
	}

#homeFeatured div.thumbnails a {
	display: block; width: 120px; height: 120px;
	border: 1px solid #57595a;
	}

#homeFeatured div.thumbnails a:hover {
	border-color: #000;
	}

#homeFeatured div.overviewWeb {
	position: absolute; left: 571px; top: 14px; width: 220px;
	}

#homeFeatured div.overviewPhotography {
	position: absolute; left: 571px; top: 156px; width: 220px;
	}

#homeFeatured div.overviewWeb h3,
#homeFeatured div.overviewPhotography h3 {
	padding: 0 0 2px 0;
	font: bold 17px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeFeatured p.sectionEnd {
	position: absolute; right: 0px; top: 103px;
	text-align: right;
	}

#homeFeatured div.overviewInactive {
	margin: 0 0 0 10px;
	}

#homeFeatured div.overviewInactive,
#homeFeatured div.overviewInactive * {
	cursor: pointer !important;
	}

#homeFeatured div.overviewInactive h3 {
	color: #676665;
	}

#homeFeatured div.overviewInactive p {
	color: #585858;
	}

#homeFeatured div.overviewInactive p.sectionEnd {
	display: none;
	}



/*  ::  Page Styles  --  Home  ::  Featured  ::  Web  */

#homeFeatured #homeWeb {
	position: relative; width: 802px; height: 284px;
	background: url(../images/home-featured-web-bg-i8a8.png) no-repeat 0px 0px;
	}


/*  ::  Page Styles  --  Home  ::  Featured  ::  Photography  */

#homeFeatured #homePhotography {
	position: relative; width: 802px; height: 284px;
	background: url(../images/home-featured-photography-bg-i8a8.png) no-repeat 0px 0px;
	}



/*  ::  Page Styles  --  Home  ::  Twitter  */

#homeTwitter {
	position: relative; float: left; width: 220px; padding: 0 0 0 90px;
	}

#homeTwitter h3 {
	padding: 0 0 12px 0;
	font: bold 18px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeTwitter li {
	padding: 0 0 10px 0;
	font-size: 11px; color: #ddd;
	}

#homeTwitter li a {
	font-size: 10px; color: #a08a6c;
	text-decoration: none;
	}

#homeTwitter p a {
	float: right; margin: 8px 0 0 0;
	}


/*  ::  Page Styles  --  Home  ::  Blog  */

#homeBlog {
	position: relative; float: left; width: 220px; padding: 0 60px;
	}

#homeBlog h3 {
	padding: 0 0 12px 0;
	font: bold 18px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeBlog li {
	padding: 0 0 10px 0;
	font-size: 11px; color: #ddd;
	}

#homeBlog li a {
	display: block; padding: 0 0 1px 0;
	}

#homeBlog li span {
	font-size: 10px; color: #aaa;
	text-decoration: none;
	}

#homeBlog p {
	padding: 8px 0 0 0; text-align: right;
	}



/*  ::  Page Styles  --  Home  ::  Flickr  */

#homeFlickr {
	position: relative; float: left; width: 225px; overflow: hidden;
	}

#homeFlickr h3 {
	padding: 0 0 12px 0;
	font: bold 18px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#homeFlickr div.photoContainer {
	position: relative; width: 225px;
	}

#homeFlickr div.flickr_badge_image {
	float: left; width: 71px; height: 71px; padding: 0 4px 4px 0;
	overflow: hidden;
	}

#homeFlickr div.flickr_badge_image a {
	display: block; width: 65px; height: 65px; border: 2px solid #181818; padding: 1px;
	}

#homeFlickr div.flickr_badge_image img {
	float: none; width: 65px; height: 65px;
	max-width: 65px; max-height: 65px;
	}



/*  ::  Page Styles  --  Portfolio  ::  Intro  */

#portfolioIntro {
	position: relative; width: 780px; padding: 0 0 20px 90px;
	}

#portfolioIntro h1 {
	padding: 0 0 2px 0;
	font: bold 21px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#portfolioIntro p.section {
	float: left;
	font-size: 11px; font-family: cambria, georgia, times new roman, times, serif; color: #404040;
	}

#portfolioIntro p.section span {
	color: #808080;
	}

#portfolioIntro p.pagination {
	float: right;
	font-size: 12px; font-family: cambria, georgia, times new roman, times, serif; color: #404040;
	}

#portfolioIntro p.pagination span {
	color: #808080;
	}

#portfolioIntro p.pagination a {
	font-weight: bold;
	}



/*  ::  Page Styles  --  Portfolio  ::  Images  */

#portfolioImages {
	position: relative; width: 960px; height: 380px; overflow: hidden;
	}

#portfolioImages div.prevImage {
	position: absolute; left: -501px; top: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
	opacity: 0.2;
	border: 1px solid #666;
	}

#portfolioImages div.mainImage {
	position: absolute; left: 159px; top: 0;
	border: 1px solid #333;
	}

#portfolioImages div.nextImage {
	position: absolute; left: 819px; top: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
	opacity: 0.2;
	border: 1px solid #666;
	}


/*  ::  Page Styles  --  Portfolio  ::  Story  */

#portfolioStory {
	position: relative; width: 620px; padding: 0 0 60px 170px;
	}

#portfolioStory p.viewSite {
	float: right; padding: 2px 0 0 0;
	font-size: 12px; font-family: cambria, georgia, times new roman, times, serif; color: #404040;
	}

#portfolioStory p.viewSite a {
	font-weight: bold;
	}

#portfolioStory p.viewSite a b {
	position: absolute; left: -9999px; width: 1000px;
	}

#portfolioStory h3 {
	margin: 0 0 15px 0;
	font: bold 18px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#portfolioStory h5 {
	margin: -13px 0 15px 0;
	font-size: 10px; color: #b8a284;
	}

#portfolioStory p {
	padding: 0 40px 16px 0;
	}

#portfolioStory cite {
	font-style: italic;
	}



/*  ::  Page Styles  --  Text  ::  Content  */

#textContent {
	position: relative; width: 680px; padding: 0 0 20px 90px;
	}

#textContent h1 {
	padding: 0 0 16px 0;
	font: bold 21px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#textContent h2 {
	padding: 0 0 6px 0;
	font: bold 19px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#textContent h3 {
	padding: 0 0 6px 0;
	font: bold 17px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#textContent p {
	padding: 0 90px 16px 0;
	}

#textContent p.runOn {
	padding: 0 90px 6px 0;
	}

#textContent p.sectionEnd {
	padding: 0 90px 36px 0;
	}

#textContent ul {
	padding: 0 0 30px 30px; list-style: disc;
	}

#textContent ul li {
	padding: 0 0 6px 0;
	color: #ddd;
	}

#textContent img.alignright {
	clear: right; float: right; margin: 0 0 20px 20px;
	}

#textContent img.photoMatt {
	clear: right; float: right; margin: 0 0 9px 20px;
	}

#textContent img.certificationLogos {
	clear: right; float: right; margin: 0 30px 8px 55px;
	}

#textContent #contactFormWrapper {
	float: right; width: 410px;
	}

#textContent #contactFormWrapper form label {
	float: left; width: 90px; margin: 4px 8px 8px 0;
	font: normal 11px tahoma, arial, geneva, helvetica, sans-serif; color: #ccc;
	text-align: right;
	}

#textContent #contactFormWrapper form label.required {
	color: #fff;
	}

#textContent #contactFormWrapper form label.required span {
	color: #004Ea1;
	}

#textContent #contactFormWrapper form input.text {
	float: left; display: block; margin: 0 0 8px 0; width: 300px; height: 18px; padding: 2px 3px;
	background: #fff; border: 1px solid #ddd;
	font: normal 0.9em 'lucida grande',verdana,arial,sans-serif;
	}

#textContent #contactFormWrapper form textarea {
	float: left; display: block; margin: 0 0 8px 0; width: 303px; height: 90px; padding: 2px 0 2px 3px;
	background: #fff; border: 1px solid #ddd;
	}

#textContent #contactFormWrapper form input.button {
	float: left; display: block; margin: 0 0 8px 0; padding: 2px; width: 170px;
	outline: none;
	font: normal 0.9em 'lucida grande',verdana,arial,sans-serif;
	}

#textContent #contactFormWrapper form span.help {
	float: left; margin: 8px 0 0 15px;
	font: normal 10px tahoma, arial, geneva, helvetica, sans-serif; color: #666;
	}

#textContent #contactFormWrapper form span.help span {
	color: #004E81;
	}

#textContent #contactFormWrapper form div.submitButton {
	position: relative; float: left; width: 300px;
	}

#textContent #contactFormWrapper form div.submitButton #formProcessing {
	position: absolute; left: 0; top: 0; padding: 8px 0 8px 30px; width: 280px;
	background: #fff url(../images/global-elements-processing.gif) no-repeat 6px 50%;
	font: bold 11px tahoma, arial, geneva, helvetica, sans-serif; color: #333;
	}

#textContent #contactFormWrapper form.processing label,
#textContent #contactFormWrapper form.processing input,
#textContent #contactFormWrapper form.processing textarea {
	opacity: 0.5;
	}

#textContent #contactFormWrapper #contactFormSent {
	position: relative; width: 100%; padding: 40px 0;
	}


#textContent #contactFormWrapper #contactFormSent h3,
#textContent #contactFormWrapper #contactFormSent p {
	text-align: center;
	}

#textContent #contactFormWrapper #contactFormSent h3 img {
	display: inline;
	}

#textContent div.serviceItem {
	float: left; width: 295px; padding: 12px 20px 0 10px; margin: 0 11px 15px 4px; min-height: 150px;
	background: #333;
	border-radius: 7px; -moz-border-radius: 7px; -webkit-border-radius: 7px;
	}

#textContent div.serviceItem h3 {
	padding-left: 8px;
	}

#textContent div.serviceItem h3 a,
#textContent div.serviceItem h3 b,
#textContent div.serviceItem h3 strong {
	color: #fff; text-decoration: none; cursor: text;
	font-weight: bold;
	}
	

#textContent div.serviceItem1 {
	background: #181f21;
	}

#textContent div.serviceItem2 {
	background: #291e17;
	}

#textContent div.serviceItem3 {
	background: #26201f;
	}

#textContent div.serviceItem4 {
	background: #282517;
	}

#textContent div.serviceItem5 {
	background: #16181c;
	}

#textContent div.serviceItem6 {
	background: #231816;
	}

#textContent div.serviceItem7 {
	background: #1f1917;
	}

#textContent div.serviceItem8 {
	background: #1d1c1d;
	}



/*  ::  Page Styles  --  Blog  ::  Content  */

#blogContent {
	position: relative; width: 820px; padding: 0 0 20px 90px;
	}

#blogContent h1 {
	padding: 0 0 16px 0;
	font: bold 21px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#blogContent div.blogSidebar {
	float: left; width: 200px; padding: 35px 0 0 80px;
	}

#blogContent div.blogSidebar h2 {
	padding: 0 0 6px 0;
	font: bold 15px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#blogContent div.blogSidebar form {
	display: block; padding: 0 0 20px 0;
	}

#blogContent div.blogSidebar form input {
	display: block; width: 170px; margin: 0 0 4px 0;
	}

#blogContent div.blogSidebar form #searchsubmit {
	width: auto;
	}

#blogContent div.blogSidebar p,
#blogContent div.blogSidebar ul {
	padding-bottom: 24px;
	}

#blogContent div.blogBody {
	float: left; width: 540px; padding: 30px 0;
	}

#blogContent div.blogBody div.navigation {
	overflow: hidden; padding: 0 0 20px 0;
	}

#blogContent div.blogBody h2 {
	padding: 0 0 6px 0;
	font: bold 19px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#blogContent div.blogBody h2 a {
	color: #fff; text-decoration: none;
	}

#blogContent div.blogBody h3 {
	padding: 0 0 2px 0;
	font: bold 17px cambria, georgia, times new roman, times, serif; color: #fff;
	}

#blogContent div.blogBody h3 a {
	color: #fff; text-decoration: none;
	}

#blogContent div.blogBody h3 a:hover {
	color: #baa484; text-decoration: underline;
	}

#blogContent div.blogBody strong {
	font-weight: bold;
	}

#blogContent div.blogBody em {
	font-style: italic;
	}

#blogContent div.blogBody p {
	padding: 0 0 16px 0;
	line-height: 1.4;
	}

#blogContent div.blogBody p.sectionEnd {
	padding: 0 0 36px 0;
	}

#blogContent div.blogBody ul {
	margin: 0 0 20px 30px; padding: 0; list-style: disc;
	}

#blogContent div.blogBody ol {
	margin: 0 0 20px 30px; padding: 0; list-style: decimal;
	}

#blogContent div.blogBody li {
	padding: 0 0 6px 0;
	color: #ddd;
	text-indent: 0;
	}

#blogContent div.blogBody small {
	color: #bbb;
	}

#blogContent div.blogBody pre {
	display: block; padding: 10px; margin: 0 0 20px 0;
	background: #191919;
	word-wrap: break-word;
	}

#blogContent div.blogBody span.note {
	color: #aaa;
	}

#blogContent div.blogBody div.entry {
	padding-top: 14px;
	}

#blogContent div.blogBody div.post {
	padding: 0 0 45px 0;
	}

#blogContent div.blogBody p.postmetadata {
	padding: 10px 15px; margin-top: 5px !important;
	background: #222;
	border: 0; color: #aaa;
	}

#blogContent div.blogBody div.comment-body {
	padding: 7px 9px 0 9px;
	}

#blogContent div.blogBody div.comment-body p {
	padding: 0 0 8px 0;
	}