/******** Core setup ********/

* {
	margin: 0;
	padding: 0;
	border: 0;
}

img {
	display: block;
}

html, 
body {
	background-color: #ecedeb;
}

body {
	font-family: Verdana, Helvetica, Arial, sans-serif;
	font-size: x-small; /* Assuming normal defaults, sets a base font size of 10 pixels. The use of x-small is insurance against text becoming too small if the user has reduced their default text size */
	color: black;
	padding: 9px;
}

a {
	text-decoration: none;
	color: #f00;
}

/* a:visited {
	color: #900;
} */

a:hover {
	text-decoration: underline;
	color: black;
}

.rel {
	position: relative;
}

/* For testing only */

.testing {
	border: 1px dotted blue;
	}



/******** Main block layout elements ********/

#container {
	font-size: 120%; /* Ups the base font size to a default of 12 pixels */
	max-width: 77em; /* Allows the content area to scale when fonts are scaled up */
	margin: auto;
}

#page {
	background-color: white;
	padding: 10px 1%;
}

.wrapper {
	width: 100%;
	overflow: hidden;
}

#top-nav, 
#customer-types, 
#breadcrumb, 
#footer {
	margin-left: 25%;
	clear: both;
}

#main {
	position: relative;
}

#left-col {
	float: left;
	width: 23%;
}

#brand {
	position: absolute;
	top: 18px;
	left: 1%;
	width: 172px;
	height: 113px;
	/* margin-bottom: 30px; */
}

#right-col {
	float: right;
	width: 194px;
}

.header {
	margin-left: 25%;
	border-top: 1px solid #d3d4d2;
}

#content {
	margin: 0 27% 0 25%;
}

.wide #content {
	margin-right: 0;
}



/******** Core typography ********/

h1, h2, h3, h4, h5, h6 {
	line-height: 120%;
}

h1 {
	font-size: 166.67%;
	margin-bottom: 0.6em;
}

.header h1 {
	text-indent: -999em;
}

#content h2 {
	font-size: 133.33%;
	margin-top: 1.33em;
	border-top: 1px solid #d3d4d2;
	padding-top: 1em;
}

h3 {
	font-size: 100%;
}

#content h3 {
	margin-top: 2em;
}

p {
	margin-top: 1em;
}

.large {
	font-size: 116.67%;
}



/******** Navigation ********/

/* Global nav styles */

.nav, 
.nav ul, 
.nav ul ul, 
.nav ul ul ul {
	list-style: none;
}

.nav {
	font-size: 91.67%;
	line-height: 118.18%;
}

.nav a, 
.nav h3, 
#copyright {
	display: block;
	padding: 0.364em 6px 0.455em;
}

.floated li, 
.floated label {
	float: left;
}

.floated .first a {
	padding-left: 0;
}

#top-nav .current, 
#top-nav .current:hover, 
#footer .current, 
#footer .current:hover {
	color: black;
	cursor: default;
	text-decoration: none;
}

/* Tabs */

.tabs {
	margin-top: 8px;
}

.tabs .nav {
	float: left;
	width: 100%;
}

.tabs li {
	float: right;
	margin-left: -15px;
}

.tabs a {
	color: white;
	font-weight: bold;
	padding: 6px 20px 4px 16px;
}

.tabs a.current, 
.tabs a.current:hover {
	cursor: default;
}

#customer-types {
	margin-top: 18px;
	border-top: 1px solid white;
	/* Seems to fix white-space rendering error in Windows IE5-IE7! */
}

#customer-types .tab1 {
	width: 30%;
}

#customer-types .tab2 {
	width: 21%;
}

#customer-types .tab3 {
	width: 17%;
}

#customer-types .tab4 {
	width: 23%;
	margin-right: 9%;
	padding-right: 45px;
}

#companyNavHolderNest a, 
.tab1 a {
	background: transparent url('../images/tab1.png') 100% 0 no-repeat;
}

.tab2 a {
	background: transparent url('../images/tab2.png') 100% 0 no-repeat;
}

.tab3 a {
	background: transparent url('../images/tab3.png') 100% 0 no-repeat;
}

.tab4 a {
	background: transparent url('../images/tab4.png') 100% 0 no-repeat;
}

.tab5 a {
	background: transparent url('../images/tab5.png') 100% 0 no-repeat;
}

.tabs a:hover {
	text-decoration: none;
	color: white;
	background: transparent url('../images/tab-hover.png') 100% 0 no-repeat;
}

.tabs a.current, 
.tabs a.current:hover {
	background: transparent url('../images/tab-current.png') 100% 0 no-repeat;
}

/* Breadcrumb */

#breadcrumb {
	border-top: 1px solid #d3d4d2;
	padding: 0.5em 0 66px;
}

#breadcrumb a {
	padding-right: 12px;
	background: url('../images/breadcrumb-delimiter.gif') 100% 56% no-repeat;
}

#breadcrumb .current {
	color: black;
	background-image: none;
}

#breadcrumb .current:hover {
	cursor: default;
	text-decoration: none;
}

/* Left column main nav and right column related nav */

.stacked {
	padding-bottom: 1em;
}

.stacked li a {
	border-top: 1px solid white;
}

.stacked a:hover {
	text-decoration: none;
}

#left-col .stacked a {
	background-color: #b2b4af;
	color: white;
	font-weight: bold;
	border-left: 1px solid white;
}

#left-col .stacked .hasmenu {
	background-image: url('../images/menu-arrow-1r.gif');
	background-position: 97% 7px;
	background-repeat: no-repeat;
	padding-right: 18px;
}

#left-col .stacked li.current .hasmenu {
	background-image: url('../images/menu-arrow-1d.gif');
}

#left-col .stacked ul .hasmenu, 
#left-col .stacked li.current ul .hasmenu {
	background-image: url('../images/menu-arrow-2r.gif');
}

#left-col .stacked a:hover, 
#left-col .stacked li.current a:hover, 
#left-col .stacked li:hover a {
	background-color: #f00;
}

#left-col .stacked li.current a {
	background-color: black;
}

#left-col .stacked li.current ul a, 
#left-col .stacked li.current:hover ul a, 
#left-col .stacked ul a, 
#left-col .stacked li:hover ul a, 
#left-col .stacked ul li:hover ul a, 
#left-col .stacked li:hover ul li:hover ul a, 
#right-col .stacked a, 
#content .stacked a {
	background-color: #ecedeb;
	font-weight: normal;
	color: #f00;
}

/* #left-col .stacked ul a:visited, 
#right-col .stacked a:visited {
	color: #900;
} */

#left-col .stacked ul {
	border-right: 1px solid white;
	border-bottom: 1px solid white;
}

#left-col .stacked li.current ul {
	border-right: 0;
	border-bottom: 0;
}

#left-col .stacked ul li.current a, 
#left-col .stacked li.current:hover .current a {
	background-color: #dfe0dc;
	color: #676964;
}

#right-col .stacked h3, 
#left-col .stacked li.current ul a:hover, 
#left-col .stacked li:hover ul a:hover, 
#left-col .stacked li:hover ul li:hover a, 
#left-col .stacked li:hover ul li:hover ul li:hover a, 
#right-col .stacked a:hover {
	background-color: #d4d6d0;
	color: black;
}

/* Positioning */

#left-col .stacked li {
	width: 100%;
	position: relative;
}

#left-col .stacked li ul, 
#left-col .stacked li:hover ul ul, 
#left-col .stacked li:hover ul ul ul, 
#left-col .stacked li.current ul ul, 
#left-col .stacked li.current:hover ul ul {
	position: absolute;
	top: 0;
	left: -1000px;
	width: 100%;
	z-index: 1000;
}

#left-col .stacked li:hover ul, 
#left-col .stacked li:hover ul li:hover ul {
	position: absolute;
	left: 100%;
}

#left-col .stacked li.current ul, 
#left-col .stacked li.current:hover ul {
	position: static;
}

/* Footer */

#footer {
	padding-top: 100px;
	color: #b2b4af;
}

#site-credit a {
	color: #b2b4af;
}

/* RSS */

#newsticker h3 {
	padding-left: 0;
}

#newsticker a {
	padding: 0 6px;
}

/* In page anchors */

#content .in-page li {
	margin-left: 0;
	list-style: none;
}

#content .in-page li a {
	padding-left: 14px;
	background: url('../images/in-page-arrow.gif') 0 50% no-repeat;
}

#content .in-page li a:hover {
	background: url('../images/in-page-arrow-hover.gif') 0 50% no-repeat;
}



/******** Section page styles ********/

.section #left-col {
	padding-top: 86px;
}

.section #right-col, 
.section #content {
	margin-top: 12px;
	padding-top: 6px;
}

.header {
	background-color: black;
	color: white;
	height: 212px;
}

.header-info {
	position: absolute; /* Relative to #main */
	top: 65px;
	right: 20px;
	width: 175px;
	background-color: black;
}

.home {
	background: black url('../images/laser-cutting-home.jpg') 100% 0 no-repeat;
}

.home h1 {
	height: 197px;
	background: url('../images/home-header.png') no-repeat;
}

.manufacturer {
	background: black url('../images/diagram-temp-manufacturer.jpg') no-repeat;
}

.integrator {
	background: black url('../images/diagram-temp-integrator.jpg') no-repeat;
}
.job-shop {
	background: black url('../images/diagram-temp-job-shop.jpg') no-repeat;
}
.academia {
	background: black url('../images/diagram-temp-academia.jpg') no-repeat;
}



/******** Content area styles ********/

#content h1 {
	margin-top: -3px;
}

#content p, 
#content li {
	line-height: 133.33%;
}

#content ul, 
#content ol {
	padding-bottom: 0.5em;
}

#content ul li {
	margin: 0.5em 0 0 1.33em;
}

#content ol li {
	margin: 0.5em 0 0 2.33em;
}

/* #content p a, 
#content li a {
	color: black;
	border-bottom: 1px dotted #f00;
} */

/* #content p a:visited {
	color: #666;
	border-bottom: 1px dotted #900;
} */

#content p a:hover, 
#content li a:hover {
	text-decoration: none;
	border-bottom: 1px solid black;
	background-color: #ecedeb;
}

span.title {
	display: block;
}


/* Alignment */

.align-left {
	float: left;
	display: inline;
	margin-right: 1em;
}

.align-right {
	float: right;
	display: inline;
	margin-left: 1em;
}

#content p img {
	display: inline;
}

#content .pics img {
	margin-right: 6px;
}

/* Log in prompt */

.protected {
	margin-top: 1em;
}

.protected a {
	background-color: #b2b4af;
	color: white;
	display: block;
	padding: 6px;
}

.protected a:hover {
	text-decoration: none;
	background-color: #f00;
	color: white;
}



/******** Forms ********/

input.text, 
select,
input.search, 
input.submit,
textarea, 
select, 
button {
	font-size: 8pt;
	color: black;
	font-family: Verdana, Helvetica, Arial, sans-serif;
}

input,
select, 
textarea, 
button {
	padding: 2px 0.25em;
	vertical-align: middle;
}

input.text, 
select,
textarea, 
select {
	background-color: #ecedeb;
	border: 1px solid #b2b4af;
}

input.text:focus, 
textarea:focus {
	background-color: white;
	border: 1px solid black;
}

button, 
input.submit, 
input.search {
	font-weight: bold;
	color: white;
	background-color: #f00;
	padding: 2px;
	text-transform: uppercase;
}

button:hover, 
input.submit:hover, 
input.search:hover {
	background-color: black;
	cursor: pointer;
}

label {
	color: #676964;
}

optgroup {
	background-color: #ecedeb;
}

option {
	background-color: white;
}

.required {
	font-weight: bold;
	color: black;
}

.invalid {
	font-weight: bold;
	color: #f00;
}

/* Site search box */

#top label {
	font-size: 91.67%;
	float: left;
	display: block;
	padding: 0.364em 3px 0.455em 12px;
}

#top input.text {
	width: 15%;
}

/* Register form */

#register label {
	display: block;
	float: left;
	text-align: right;
	width: 9.5em;
	margin-bottom: 3px;
	padding: 2px 0.25em;
	border: 1px solid white;
}

#register p, 
.field-group {
	margin-bottom: 1em;
}

#register .text {
	float: left;
	width: 19.5em;
	margin-bottom: 3px;
}

#register .text, 
#register select {
	font-size: 9pt;
}

#register select {
	width: 20.2em;
}

#register br {
	clear: left;
}

#register input.submit {
	margin-left: 9.5em;
}

/* Wizard form */

#wizard {
	width: 74%;
}

#wizard .wrapper {
	background-color: #ecedeb;
}

#wizard p {
	margin-bottom: 1em;
}

#wizard .field-group {
	padding: 6px 0 0 6px;
	float: left;
	background-color: #ecedeb;
}

#wizard label {
	display: block;
}

#wizard select {
	font-size: 9pt;
	margin-top: 3px;
	display: block;
	font-weight: normal;
	background-color: white;
}

#wizard #submit-wrapper {
	padding-top: 9px;
}

#wizard input.submit {
	margin-top: 1.5em;
	font-size: 8pt;
}

#wizard .wrapper p {
	margin-top: 0.5em;
	color: #676964;
	clear: left;
	padding: 0 6px;
}


/******** Matrix ********/

.matrix {
	margin-top: 1.5em;
}

.matrix td {
	text-align: center;
}
	
table th, 
table td {
	padding: 3px 5px;
	border-top: 1px solid white;
	border-right: 1px solid white;
}

.matrix td, 
.matrix th {
	font-size: 91.67%;
}
	
.matrix th, 
.matrix .product td {
	vertical-align: bottom;
	text-align: left;
}
	
table th {
	background-color: #dfe0dc;
	text-align: left;
}
	
.matrix #application {
	font-weight: bold;
}
	
table td, 
.matrix .alt1 td {
	background-color: #ecedeb;
}
	
.matrix .alt2 td {
	background-color: #dfe0dc;
}
	
.matrix th.rowkey, 
.matrix #application td {
	background-color: white;
}
	
.matrix .grid {
	width: 5em;
}
	
.matrix th.rowkey, 
.matrix .rowkey, 
.matrix .product .rowkey {
	text-align: right;
	width: auto;
}
	
.matrix .check span {
	display: block;
	color: black;
	background-color: black;
	width: 1.1em;
	margin: auto;
	font-size: 6px;
}
	


/***** Customer types *****/

#diagram {
	background-color: #b2b4af;
	padding: 12px 0 0 12px;
}





/***** Investor feed *****/


#DigitalLookContent img {
	display: none;
}





#left-col #xmas {
  clear: left;
  margin-top: 11px;
  width: 100%;
  background: white url('/images/xmas-2007-tct.gif') 50% 0 no-repeat;
  /* Make sure the path to the image is as you need it! */
}

#left-col #xmas a {
  display: block;
  height: 299px;
  text-decoration: none;
  text-indent: -200em;
}

#left-col #xmas a:hover {
  text-decoration: none;
}