body {
	margin:0;
	padding:0;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	text-align:center;
	background: #e5e7e2 url(../images/tpl_bg_body.gif) repeat-x 0 0;
}

/** Primary Styles **/
a:link, a:visited {
	color:#000;
	text-decoration:underline;
}
a:hover, a:active {
	color:#000;
	text-decoration:none;
}
h1,h2,h3,h4,h5,h6,p,ul,li,blockquote,form {
	margin:0;
	padding:0;
}
h1,h2,h3,h4,h5,h6 {
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-weight:normal;
	text-transform:uppercase;
	letter-spacing:.1em;
}
h1 {
	font-size:18px;
	color:#b0b91d;
	line-height:22px;
	margin-bottom:14px;
}
h2 {
	font-size:16px;
	color:#333;
}
h3 {
	font-size:14px;
	color:#333;
}
h4 {
	font-size:13px;
	color:#333;
}

p {
	margin-bottom:18px;
}

ul {
	list-style-type:none;
}

/** Custom Styles **/
.bodyText {
	text-align:justify;
}
.upperCase {
	text-transform:uppercase;
}
.lowerCase {
	text-transform:lowercase;
}
.required {
	color:#cc0000;
}
.lighterText {
	color:#999;
}
.projectsSummaryName {
	text-transform:uppercase;
	color:#333;
	letter-spacing:0.05em;
	line-height:8px;
	font-size:10px;
}
.projectsSummaryLocation {
	text-transform:uppercase;
	color:#999;
	letter-spacing:0.05em;
	font-size:10px;
}
.profileImage {
	border:1px solid #ccc;
	padding:2px;
	float:right;
	margin-left:20px;
	margin-bottom:20px;
}

ul.bulletList {}
ul.bulletList li {
	line-height:14px;
	margin-bottom:6px;
	padding-left:12px;
	background: url(../images/list_arrow.gif) no-repeat left 4px;
}


ul.decoratedList li {
	padding-left:16px;
	background:url(../images/bullet_circle.gif) no-repeat 0 4px;
}

.sideBoxWrapper {
	padding-left:10px;
	padding-right:10px;
	padding-bottom:10px;
}

#footer {
	font:10px Arial, Helvetica, sans-serif;
	color:#8a917f;
	line-height:14px;
}
#footer a:link, #footer a:visited {
	text-transform:lowercase;
	color:#8a917f;
	text-decoration:none;
}
#footer a:hover, #footer a:active {
	color:#8a917f;
	text-decoration:underline;
}

/** Layout Elements **/
#wrapper {
	margin:0 auto;
	width:853px;
	text-align:left;
}
#wrapperInner {
	background: transparent url(../images/tpl_bg_site_repeat.gif) repeat-y 0 0;
}
#wrapperMain {
	margin:0 auto;
	width:853px;
	background: transparent url(../images/tpl_bg_site_lines.gif) no-repeat 0 150px;
}
#wrapperContent {
	position:relative;
	width:840px;
	margin:0 6px;
	padding-top:21px;
}
#fixedTopContainer {
	height:324px;
	position:relative;
	margin-bottom:20px;
	border-bottom:1px solid #b0b91d;
}
* html #fixedTopContainer {
	height:325px;
}
#tpgRendering {
	position:absolute;
	left:0px;
	width:160px;
	height:277px;
	bottom:-19px;
	z-index:10;
	background:url(../images/tpg_rendering.jpg) no-repeat left bottom;
}
#contentWrapper {
	min-height:240px;
}
* html #contentWrapper {
	height:240px;
}
#contentLeft {
	float:left;
	width:160px;
	position:relative;
	z-index:11;
	min-height:10px;
}
#contentLeftFill {
	border:1px solid #fff;
	background-color:#fff;
}
#contentRight, #contentRight td, .mceContentBody, .mceContentBody td {
	font-size:11px;
	line-height:18px;
	color:#666;
}
#contentRight, .mceContentBody {
	float:left;
	width:660px;
	font-size:11px;
	line-height:18px;
	color:#666;
}
#wrapperBase {
	height:26px;
	background: transparent url(../images/tpl_bg_site_base.gif) repeat-y 0 0;
}
#footer {
	margin-top:12px;
	margin-bottom:40px;
	margin-left:16px;
	margin-right:16px;
	width:821px;
}
/** Components **/
#tpgLogo {
	position:absolute;
	left:20px;
	top:0;
}
#tpgContact {
	position:absolute;
	right:20px;
	top:0;
}
#tpgHeaderImg {
	position:absolute;
	right:0;
	top:64px;
	overflow:hidden;
}
#tpgNavigation {
	border-top:1px solid #b0b91d;
	position:absolute;
	left:0;
	top:129px;
	width:160px;
	height:195px;
	overflow:hidden;
}
#footerLinks {
	float:left;
}
#copyright {
	float:right;
}
#footerLinks a {
	padding-right:10px;
}

/** Primary Navigation **/
ul#mainNav {
	list-style-type:none;
	margin:12px 0 0 35px;
	padding:0;
}
ul#mainNav li {
	margin-bottom:12px;
}
ul#mainNav li a {
	display:block;
	height:24px;
	text-indent:-2000px;
	background-image:url(../images/main_nav_sprite.gif);
	background-repeat:no-repeat;
	text-decoration:none;
}

ul#mainNav #nav-home a {
	background-position:0 0;
}
ul#mainNav #nav-home a.active {
	background-position:-250px 0;
}
ul#mainNav #nav-home a:hover, ul#mainNav #nav-home a.activated {
	background-position:-125px 0;
}


ul#mainNav #nav-profile a {
	background-position:0 -24px;
}
ul#mainNav #nav-profile a.active {
	background-position:-250px -24px;
}
ul#mainNav #nav-profile a:hover, ul#mainNav #nav-profile a.activated {
	background-position:-125px -24px;
}


ul#mainNav #nav-portfolio a {
	background-position:0 -48px;
}
ul#mainNav #nav-portfolio a.active {
	background-position:-250px -48px;
}
ul#mainNav #nav-portfolio a:hover, ul#mainNav #nav-portfolio a.activated {
	background-position:-125px -48px;
}


ul#mainNav #nav-services a {
	background-position:0 -72px;
}
ul#mainNav #nav-services a.active {
	background-position:-250px -72px;
}
ul#mainNav #nav-services a:hover, ul#mainNav #nav-services a.activated {
	background-position:-125px -72px;
}


ul#mainNav #nav-contact a {
	background-position:0 -96px;
}
ul#mainNav #nav-contact a.active {
	background-position:-250px -96px;
}
ul#mainNav #nav-contact a:hover, ul#mainNav #nav-contact a.activated {
	background-position:-125px -96px;
}


/** Sub Navigation **/
#mainSubNav {
	position:absolute;
	left:160px;
	top:64px;
	height:260px;
	width:200px;
	background-color:#fff;
}
ul#subNavItems {
	list-style-type:none;
	margin-top:80px;
	margin-left:20px;
	width:180px;
}
ul#subNavItems li {
	font-size:10px;
	text-transform:uppercase;
	margin-bottom:10px;
}

/** Side Navigation **/
ul.sideNav, ul.sideNav ul {
	margin-top:8px;
}
ul.sideNav li {
	line-height:12px;
	margin-bottom:8px;
}
ul.sideNav li a.current {
	font-weight:bold;
}
ul.sideNav li a:link, ul.sideNav li a:visited  {
	font-size:10px;
	color:#333;
	letter-spacing:0.05em;
	text-transform:uppercase;
	text-decoration:none;
}
ul.sideNav li a:hover, ul.sideNav li a:active {
	color:#999;
}
ul.sideNav li ul {
	margin-left:14px;
	display:none;
}
ul.sideNav li.active ul {
	display:block;
}

/** Site Map **/
ul.siteMap { }
ul.siteMap li { }
ul.siteMap li a:link, ul.siteMap li a:visited  {
	font-size:10px;
	color:#333;
	font-weight:bold;
	letter-spacing:0.05em;
	text-transform:uppercase;
	text-decoration:none;
}
ul.siteMap li a:hover, ul.siteMap li a:active {
	color:#999;
}
ul.siteMap li ul {
	margin-left:14px;
	margin-bottom:8px;
}
ul.siteMap li ul li a:link, ul.siteMap li ul li a:visited  {
	font-weight:normal;
}

/** Homepage Boxes **/
#homeBoxContainer {
	position:relative;
	height:168px;
}
#projectsBox {
	position:absolute;
	left:0;
	top:0;
}
#portfolioBox {
	position:absolute;
	left:340px;
	top:0;
}
.homeBox {
	width:320px;
	background: url(../images/homebox_repeat.gif) repeat-y 0 0;
}
.homeBoxContent {
	min-height:120px;
	padding: 16px 16px 0 16px;
	background: url(../images/homebox_cap.gif) no-repeat 0 0;
}
.homeBoxBase {
	height:15px;
	line-height:0;
	font-size:0;
	background: url(../images/homebox_base.gif) no-repeat 0 0;
}
.homeBox a:link, .homeBox a:visited {
	color:#b0b91d;
	font-size:10px;
	letter-spacing:0.1em;
	text-transform:uppercase;
	text-decoration:none;
}
.homeBox p {
	margin-bottom:0;
}
.homeBox a:hover, .homeBox a:active {
	color:#000;
}
.homeBox h2 {
	color:#333;
	margin-bottom:0px;
}
.homeBox h4 {
	color:#999;
	margin-bottom:10px;
}

/** Portfolio **/

/** Portfolio Category **/
.portfolioCatWrapper {
	border-bottom:1px solid #ccc;
	padding:10px 6px;
}

.portfolioCatWrapper h2 {
	margin-bottom:8px;
}
.portfolioCatWrapper a:link, .portfolioCatWrapper a:visited  {
	color:#b0b91d;
	letter-spacing:0.1em;
	text-decoration:none;
}

.portfolioCatThumb {
	padding:2px;
	background-color:#fff;
	float:left;
	border:1px solid #ccc;
}
.portfolioCatSummary {
	line-height:14px;
	margin-left:280px;
}
.portfolioCatSummary p {
	margin-bottom:0;
}
a.portfolioCatLink {
	padding-top:6px;
	text-transform:uppercase;
	float:right;
}

/** Portfolio Project **/
.portfolioProjectCol-A, .portfolioProjectCol-B {
	width:320px;
	float:left;
}
.portfolioProjectCol-B {
	margin-left:20px;
}
.portfolioProjectSep {
	margin-bottom:20px;
}
.portfolioProjectWrapper {
	padding:8px;
}
.portfolioProjectWrapper a:link, .portfolioProjectWrapper a:visited  {
	color:#b0b91d;
	letter-spacing:0.1em;
	text-decoration:none;
	text-transform:uppercase;
}

/** Portfolio Gallery **/
#portfolioGalleryWrapper {
	padding-top:14px;
	margin-top:14px;
	border-top:1px solid #ccc;
}
.portfolioGalleryThumb {
	padding:2px;
	background-color:#fff;
	float:left;
	margin-left:15px;
	margin-bottom:15px;
	border:1px solid #ccc;
}
.pgtFirst {
	margin-left:0;
}

/** Portfolio jQuery hover styles **/
.portfolioBlockOver {
	background:#efefef;
	cursor:pointer;
	cursor:hand;
}
.portfolioBlockOver a:link, .portfolioBlockOver a:visited  {
	color:#333;
}


.portfolioThumb {
	padding:2px;
	background-color:#fff;
	float:left;
	border:1px solid #ccc;
}
.portfolioSummary {
	font-size:10px;
	line-height:13px;
	margin-left:130px;
}


/** Forms **/
form.sgformbuilder {

}
form.sgformbuilder label {
	display:block;
}
form.sgformbuilder .required {
	color:#cc0000;
}
form.sgformbuilder input.text, form.sgformbuilder textarea.textarea {
	width:300px;
	border:1px solid #999;
	font:12px Arial, Helvetica, sans-serif;
	color:#333;
	padding:2px;
}
form.sgformbuilder textarea.textarea {
	height:120px;
}

.formSuccessContainer {
	color:#b0b91d;
	font-weight:bold;
	font-size:12px;
	margin-bottom:14px;
}
.formErrorContainer {
	border:2px solid #999;
	background:#efefef;
	padding: 6px;
	color: #CC0000;
	margin-bottom:14px;
}
.formErrorHeader {
	font-size:14px;
	font-weight:bold;
}

/** Table Templates **/
table.tableCleaner {
	padding:0;
	border:0;
	border-width:0px;
	border-spacing:0px;
	border-style:none;
}
table.twoColAB {
	width:660px;
}
table.twoColAB td {
	vertical-align:top;
}
table.twoColAB td.twoColAB-A {
	padding-right:20px;
	border-right:1px solid #ccc;
}
table.twoColAB td.twoColAB-B {
	padding-left:20px;
	width:400px;
}

table.table3col {
	width:660px;
}
table.table3col td {
	vertical-align:top;
	width:33%;
}
table.table3col td.table3col-A {
	padding-right:14px;
}
table.table3col td.table3col-B {
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	padding:0 14px;
}
table.table3col td.table3col-C {
	padding-left:14px;
}

table.table3colBasic {
	width:660px;
	margin-bottom:14px;
}
table.table3colBasic td {
	vertical-align:top;
	width:33%;
}
table.table3colBasic td.table3colBasic-A, table.table3colBasic td.table3colBasic-B {
	padding-right:14px;
}


/** General **/
.floatR {
	float:right;
}
.floatL {
	float:left;
}
/* Clearfixins */
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.clearfix {
    display: inline-block;
}

html[xmlns] .clearfix {
    display: block;
}

* html .clearfix {
    height: 1%;
}
