/********************************************
* default CSS STYLE SHEET
* c. 2008 Technology Management International
********************************************/

/********** CSS Rest to ensure cross-browser compatability ***************/
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, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
option, optgroup, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: inherit;
	font-family: inherit;
/*	vertical-align: middle;*/
	background: transparent;
/*	font-family: verdana, arial, helvetica, sans-serif;*/
}
li {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a {
	cursor: pointer;
}
a img {
	border: none;
}

/********** Set the base styles ***************/
html {
	/* IE (Always scroll bars) */
	overflow-y: scroll; 
	/* Moz (Always scroll bars) */
	height: 100%;
	margin-bottom: 0.1em;
	font-size: 62.5%; /* Sets to 1em=10px: */
}
body {
/*	overflow: hidden;*/
}
h1 {
	font-size: 2.5em;
}
strong {
	font-weight: bold;
}

/***************** Basic Elements ******************/
.outline {
	border: solid 1px red;
}
.offscreen { /* Used for accesibility */
	position: absolute;
	left: -99999px;
}
.clear {
	clear: both;
}
.left {
	float: left;
}
.right {
	float: right;
}html {
	font-family: Palatino Linotype, Book Antiqua, Palatino, serif;
}
a {
	color: #EE1A30;
}
h1, h2, h3 {
	font-weight: bold;
	letter-spacing: 1px;
}
h1 {
	font-size: 2.5em;
}
h2 {
	padding-top: .8em;
	font-size: 1.7em;
}
h3 {
	font-size: 1.5em;
	font-style: italic;
	color: #565458;
}
p {
	font-size: 1.2em;
	line-height: 1.4em;
	text-align: justify;
	padding-bottom: .8em;
}
hr {
    color: #fff;
    background-color: #fff;
	height: 5px;
	border: none;	
	margin: 20px;
}
hr.top {
    border-top: 3px solid #EE1A30;
    border-bottom: 1px solid #EE1A30;
}
hr.bottom {
    border-top: 1px solid #EE1A30;
    border-bottom: 3px solid #EE1A30;
	clear: both;
}
#content {
	background: #EDEDED;
}
#header, #footer {
	padding: 12px 0;
	background: white;
}
#header {
	height: 261px;
}
.container {
	padding: 5px 0;
	width: 900px;
	margin: 0 auto;
}
#content .container {
	z-index: 98;
	position: relative;
}
/********************************
Quote							*/
#quote h1 {
	padding: 20px 0 20px 50px;
	font-style: italic;
	font-size: 4em;
	font-weight: normal;
	line-height: .9em;
}
#quote .new_line {
	display: block;
	margin-left: 5em;
}

/********************************
Navigation						*/

#logo {
	position: absolute;
	background: transparent url(/images/header.jpg) no-repeat;
	height: 491px;
	width: 445px;
	left: -240px;
	z-index: 0;
}

.nav {
	position: relative;
}
.nav a {
	margin: 1px 0 1px 235px;
	display: block;
	font-size: 1.4em;
	padding: 3px 0 4px 30px;
	background: transparent url(/images/icons.gif) no-repeat;
	text-decoration: none;
}
.nav a:hover {
	background-color: #EDEDED;
}
#nav-home #home, #nav-about #about, #nav-gallery #gallery, #nav-process #process, #nav-recognition #recognition, #nav-cabinetry #cabinetry, #nav-green #green, #nav-realestate #realestate, #nav-contact #contact {
	color: black;
	background-color: #EDEDED;
}
.nav a#home {
	background-position: 5px -2px;
}
.nav a#about {
	background-position: 5px -95px;
}
.nav a#gallery {
	background-position: 5px -62px;
}
.nav a#process {
	background-position: 5px -32px;
}
.nav a#recognition {
	background-position: 5px -123px;
}
.nav a#cabinetry {
	background-position: 5px -155px;
}
.nav a#green {
	background-position: 5px -184px;
}
.nav a#realestate {
	background-position: 5px -184px;
}
.nav a#realestate {
	background-position: 5px -212px;
}
.nav a#contact {
	background-position: 5px -241px;
}
#top-image {
	position: absolute;
	height: 341px;
	width: 493px;
	top: -3px;
	right: -40px;
	z-index: 0;
}
#nav-home #top-image {
	background: transparent url(/images/top-home.jpg) no-repeat;
}
#nav-about #top-image {
	background: transparent url(/images/top-about.jpg) no-repeat;
}
#nav-gallery #top-image {
	background: transparent url(/images/top-gallery.jpg) no-repeat;
}
#nav-process #top-image {
	background: transparent url(/images/top-process.jpg) no-repeat;
}
#nav-recognition #top-image {
	background: transparent url(/images/top-recognition.jpg) no-repeat;
}
#nav-cabinetry #top-image {
	background: transparent url(/images/top-cabinetry.jpg) no-repeat;
}
#nav-green #top-image {
	background: transparent url(/images/top-green.jpg) no-repeat;
}
#nav-realestate #top-image {
	background: transparent url(/images/top-realestate.jpg) no-repeat;
}
#nav-contact #top-image {
	background: transparent url(/images/top-contact.jpg) no-repeat;
}

#corporate-email {
	font-weight: bold;
	padding: 0 0 20px 40px;
	font-size: 11pt;
	background: transparent url(/images/corporate-email.png) no-repeat 5px 0px;
	float: right;
}

/********************************
Contact							*/
.bio {
	clear: both;
	overflow: hidden;
}
.bio img {
	float: left;
	margin: 15px 15px 0px 0px;
	border: solid 1px gray;
}

/********************************
Process							*/
#meeting, #design, #construction, #completion {
	padding: 1px 1px 1px 120px;
	border: solid 1px #EDEDED;
}
#meeting {
	background: transparent url(/images/steps/handshake.png) no-repeat 0 50%;
}
#design {
	background: transparent url(/images/steps/tools.png) no-repeat 0 50%;
}
#construction {
	background: transparent url(/images/steps/construction.png) no-repeat top left;
}
#completion {
	background: transparent url(/images/steps/completion.png) no-repeat 10px 50%;
}
/********************************
Footer							*/
#footer {
	z-index: 97;
	position: relative;
	text-align: center;
}
.contact-info {
	font-size: 1.2em;
	padding-bottom: 1.5em;
}
.contact-info img {
	padding: 0 5px;
}
#footer .copywrite {
	display: inline;
}
#footer .builtby {
	display: inline;
}

.side-image {
	float: left;
	margin: 25px 15px 15px 15px;
	border: solid 1px gray;
}

/********************************
Contact							*/
#contact_information {
	display: block;
	margin: 0 auto;
	width: 450px;
	font-size: 10pt;
}
#contact_information th {
	text-align: right;
	padding: 5px;
	font-weight: bold;
}
#contact_information td {
	text-align: left;
	padding: 5px;
}
#contact_form {
	display: block;
	margin: 0 auto;
	width: 560px;
}
#contact_form legend {
	font-weight: bold;
	padding: 0 5px;
}
#contact_form label {
	display: block;
	margin: 10px 0 2px 0;
	font-size: 10pt;
}
#contact_form input, #contact_form select {
	font-size: 12pt;
	padding: 2px;
}
#contact_form textarea {
	padding: 5px;
	font-size: 11pt;
}
#personal_information li {
	float: left;
	width: 280px;
	height: 60px;
}
#personal_information input, #personal_information select, #personal_information textarea {
	width: 250px;
}
#email {
	margin-top: 15px;
	clear: both;
}
#email input {
	width: 530px;
}
#email textarea {
	width: 530px;
}
#contact_form p {
	text-align: center;
	padding-top: 10px;
}
#contact_form p input {
	padding: 5px;
}
.required {
	color: #EE1A30;
}

input.error, textarea.error {
	border: solid 2px #EE1A30;
}
#error_messages {
	background: white;
	display: block;
	padding: 20px;
	width: 600px;
	margin: 15px auto;
	border: solid 1px gray;
}
#error_messages li {
	list-style: disc;
	font-size: 10pt;
	margin: 3px 20px;
}
input:target, textarea:target {
	outline: solid 5px white;
}/* ---------->>> Gallery Stuff <<<-----------------------------------------------------------------------------*/

#photo-copywrite {
	text-align: right;
	padding: 30px 20px 0px 0px;
	margin: 0;
}

/****************************************
  				Gallery Login
/****************************************/
#padlock {
	display: block;
	background: transparent url('/images/gallery/padlock.gif');
	width: 28px;
	height: 28px;
	float: right;
	border: none !important;
	margin: 15px;
}
#login_form {
	float: right;
	padding: 0;
	margin-top: 20px;
}
#login_form input, label {
	float: left;
	margin-right: 5px;
	font-size: 9pt;
}
#login_form label {
	margin: 3px 5px 0 10px;
}
#logout_form {
	float: right;
}

/****************************************
  				File Uploader 
/****************************************/
#fileadmin {
	background: #F5F5F5;
	overflow: hidden;
	border: solid 1px #6E7E8B;
	margin: 30px auto;
	width: 750px;
	padding-bottom: 20px;
}
#fileadmin {
	overflow: hidden;
	border: solid 1px #6E7E8B;
	margin: 30px auto;
	width: 750px;
}
#fileadmin h3 {
	font-weight: bold;
	padding: 5px;
	background: #6E7E8B;
	text-align: center;
	color: white;
	font-size: 12pt;
}
#file_upload {
	float: right;
}
#fileadmin form {
	padding: 15px;
}
.image_title {
	clear: right;
	width: 250px;
}
.image_title input {
	width: 120px;
}
.image_file {
	width: 450px;
}
#fileadmin .button {
	clear: both;
	float: right;
}
#create_album {
	clear: right;
	float: right;
	padding-top: 15px;
}
#create_album li {
	padding: 5px;
	clear: both;
}
#create_album textarea, #create_album input {
	width: 300px;
	padding: 3px;
}
#create_album label {
	float: left;
	width: 100px;
	text-align: right;
	padding-right: 5px;
}
#create_album textarea {
vertical-align: middle;
}

/****************************************
  			gallery	Navigation
/****************************************/
.gallery_navigation {
	text-align: center;
	margin: 10px;
}
.gallery_navigation li {
	display: inline;
	font-size: 11pt;
	font-weight: bold;
	padding: 0 20px;
}
/****************************************\
 				Gallery 				 
\****************************************/
#albums, #photos {
	margin-top: 20px;
}
#albums th h2, #photos th h2 {
	margin: 0;
	padding: 0 8px;
	position: relative;
	top: 32px;
	background: #EDEDED;
	display: inline;
}
#albums {
	width: 300px;
	float: left;
}
#albums td {
	padding: 5px 0;
	vertical-align: middle;
}
.album_cover {
	width: 100px;
}
.album_cover img {
	border: solid 1px #6e7e8b;
	padding: 1px;
	float: right;
	margin-right: 10px;
	max-width: 55px;
	min-height: 30px;
}
.album_cover a:hover img {
	border: solid 1px #b6b6b6;
}
.restored_cover {
	width: 130px;
}
.restored_cover img {
	border: solid 1px #6e7e8b;
	padding: 1px;
	float: right;
	margin-right: 10px;
}
.restored_cover a:hover img {
	border: solid 3px #b6b6b6;
}



.album_details {
	width: 250px;
}
.album_details p {
	margin: 0 20px 0 0;
}
.album_details h3 {
	font-size: 10pt;
}
#albums .album_details a, #photos a {
	border: none;
	display: block;
}
#albums a:hover, #photos a:hover {
	border: none;
}
#photos {
	float: left;
}
#photos td {
	vertical-align: middle;
	text-align: center !important;
	padding: 10px 0px;
	width: 170px;
	height: 170px;
}
#photos td a {
	margin: 0 15px 3px 15px;
}
#photos td a img {
	margin: 0 auto;
}
.loading {
/*	background: transparent url('/images/gallery/loadingAnimation.gif') no-repeat 50% 50% !important;*/
	width: 140px;
	height: 140px;
	border: solid 1px gray;
}
#photos img {
	text-align: center;
	padding: 8px;
	border: solid 1px #6e7e8b;
}
#photos a:hover {
	text-decoration: none;
}


/* Renaming */
#albums fieldset, #photos fieldset {
	border: none;
}
#albums .button, #photos .button {
	display: inline !important;
	margin-top: 5px;
	padding: 3px;
	vertical-align: middle;
}
#albums a.button, #photos a.button {
	padding: 5px;
}
.edit {
	font-style: italic;
}
#newname {
	text-align: center;
	width: 120px;
}


.message {
	padding: 15px;
	width: 500px;
	border: solid 1px #6E7E8B;
	margin: 10px auto;
	text-align: center;
	background: #F5F5F5;
	font-weight: bold;
	position: relative;
}
.message .close {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 20px;
	height: 20px;
	background: #961919 url('/images/gallery/close.gif') no-repeat;
	border-bottom: solid 1px #6E7E8B;
	border-left: solid 1px #6E7E8B;
}
.thumbnail {
	display: block;
}
/****************************************
  				Trash 
/****************************************/
#trash, #restore {
	height: 20px;
	width: 80px;
	padding-top: 39px;
	text-align: center;
	font-weight: bold;
	font-style: italic;
	float: left;
	clear: both;
	
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 99;
}
#trash {
	background: transparent url('/images/gallery/trash.gif') no-repeat 50% 0%;
}
#restore {
	background: transparent url('/images/gallery/restore.gif') no-repeat 50% 0%;
}
#empty-trash {

	position: fixed;
	bottom: 40px;
	right: 100px;
	z-index: 300;

	vertical-align: middle;
	border: solid 1px #6e7e8b;
	color: #ab3c3c;
	letter-spacing: 1px;
	padding: .3em;
	cursor: pointer;
	font-size: 1.2em;
	margin-top: -6px;
	display: block;
	float: left;
}
#empty-trash:hover {
	border-color: #000; 
	text-decoration: none;
}

#albums td.selected {
	background-color: #DADDDF !important;
}

.thickbox {
	min-width: 60px;
	min-height: 60px;
}



.droppable-hover {
	color: red;
	border-color: red;
	font-size: 120%;
}
#albums .droppable-hover {
	font-size: 100%;
	color: black;
	background: white !important;
	border: solid 1px #EE1A30;
	border-collapse: separate;
}
#albums .droppable-hover .album_cover{
	border-color: red !important;
}
#photos .droppable-insert {
	border-left: solid 2px #EE1A30;
}
#albums .droppable-insert {
	border-collapse: separate;
	border-top: solid 2px #EE1A30 !important;
}
/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
*{padding: 0; margin: 0;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
#TB_window {
	font: 12px Arial, Helvetica, sans-serif;
	color: #333333;
}

#TB_secondLine {
	font: 10px Arial, Helvetica, sans-serif;
	color:#666666;
}

#TB_window a:link {color: #666666;}
#TB_window a:visited {color: #666666;}
#TB_window a:hover {color: #000;}
#TB_window a:active {color: #666666;}
#TB_window a:focus{color: #666666;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
#TB_overlay {
	position: fixed;
	z-index:100;
	top: 0px;
	left: 0px;
	height:100%;
	width:100%;
}

.TB_overlayMacFFBGHack {background: url('/images/gallery/macFFBgHack.png') repeat;}
.TB_overlayBG {
	background-color:#000;
	filter:alpha(opacity=75);
	-moz-opacity: 0.75;
	opacity: 0.75;
}

* html #TB_overlay { /* ie6 hack */
     position: absolute;
     height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

#TB_window {
	position: fixed;
	background: #ffffff;
	z-index: 102;
	color:#000000;
	display:none;
	border: 4px solid #525252;
	text-align:left;
	top:50%;
	left:50%;
}

* html #TB_window { /* ie6 hack */
position: absolute;
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
}

#TB_window img#TB_Image {
	display:block;
	margin: 15px 0 0 15px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}

#TB_caption{
	height:25px;
	padding:7px 30px 10px 25px;
	float:left;
}

#TB_closeWindow{
	height:25px;
	padding:11px 25px 10px 0;
	float:right;
}

#TB_closeAjaxWindow{
	padding:7px 10px 5px 0;
	margin-bottom:1px;
	text-align:right;
	float:right;
}

#TB_ajaxWindowTitle{
	float:left;
	padding:7px 0 5px 10px;
	margin-bottom:1px;
}

#TB_title{
	background-color:#e8e8e8;
	height:27px;
}

#TB_ajaxContent{
	clear:both;
	padding:2px 15px 15px 15px;
	overflow:auto;
	text-align:left;
	line-height:1.4em;
}

#TB_ajaxContent.TB_modal{
	padding:15px;
}

#TB_ajaxContent p{
	padding:5px 0px 5px 0px;
}

#TB_load{
	position: fixed;
	display:none;
	height:13px;
	width:208px;
	z-index:103;
	top: 50%;
	left: 50%;
	margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
}

* html #TB_load { /* ie6 hack */
position: absolute;
margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
}

#TB_HideSelect{
	z-index:99;
	position:fixed;
	top: 0;
	left: 0;
	background-color:#fff;
	border:none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	height:100%;
	width:100%;
}

* html #TB_HideSelect { /* ie6 hack */
     position: absolute;
     height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

#TB_iframeContent{
	clear:both;
	border:none;
	margin-bottom:-1px;
	margin-top:1px;
	_margin-bottom:1px;
}