/**************** Body and tag styles ****************/
* {margin: 0;}
body, h1, h2, h3, h4, h5, h6, p, blockquote, label, fieldset, ul, ol, dl, li, object, table, th, tr, td  {padding: 0;}
body {
	font: 100%/1.8 Tahoma, Arial, Helvetica, sans-serif;
	color: #666; background-color: #fff;
}
img {
	border: none;
	vertical-align: bottom;
}
h1 {
	font-size: .9em;
	line-height: 1.3;
	color: #564F82;
	margin-bottom: 1.5em;
}
p, ul, ol {font-size: .8em;
	margin-bottom: 1.9em;
}
ul, ol {margin-left: 2em;
}
a {text-decoration: underline;}
a:link {color: #564F82;}
a:visited {color: #564F82;}
a:hover {color: #696969; text-decoration: none;}
a:active {color: #696969; text-decoration: none;
}
/**************** Container styles ****************/
#container {
	width: 944px;
	margin: 28px auto;
}
/**************** Header styles ****************/
#header {
	height: 120px;
	position: relative;
}
#header img {
	float: left;
}
#header #flashcontainer {
	position: absolute;
	left: -17px; top: -9px;
	height: 120px;
}
#header #ribalogo {
	float: right;
	margin-top: 35px;
}
/**************** Navigation styles ****************/
#navbar {
	float: left;
	width: 100%;
}
#navbar ul {
	float: left;
	margin: 0;
	list-style: none;
	width: 100%;
}
#navbar li {
	float: left;
	width: 180px;
	font-size: 1.4em;
	line-height: 1.35;
	margin-right: 11px;
}
#navbar li a {
	float: left;
	width: 179px;
	display: block;
	background-color: #666;
	text-decoration: none;
	padding-left: 1px;
}
#navbar a:link, #navbar a:visited {color: #fff;}
#navbar a:hover, #navbar a:active, #navbar a.currentpage {color: #fff; background-color: #564F82;
}
#navbar li.lastlistitem {margin-right: 0;
}
#navbar ul#subnavbar {margin-top: 10px;
}
#navbar ul#subnavbar a:link, #navbar ul#subnavbar a:visited {color: #fff; background-color: #999;}
#navbar ul#subnavbar a:hover, #navbar ul#subnavbar a:active, #container #navbar ul#subnavbar a.currentpage {color: #fff; background-color: #9898B0;
}
#subleftnav {
	float: left;
	width: 180px;
	margin-right: 11px;
}
#subleftnav ul {
	margin: 0;
	list-style: none;
	font-size: .7em;
	padding-bottom: 1em;
}
#subleftnav li {
	margin: 0 0 .3em;
}
#subleftnav ul a:link, #subleftnav ul a:visited {color: #666; text-decoration: none;}
#subleftnav ul a:hover, #subleftnav ul a:active, #container #subleftnav ul a.currentpage {color: #564F82; text-decoration: underline;
}
#container #subleftnav ul a.currentpage {font-weight: bold;
}
/**************** Content styles ****************/
#maincontent {
	margin: 55px 0 0;
	float: left;
	width: 100%;
	min-height: 382px;
}
#maincontentsub {
	margin: 21px 0 0;
	float: left;
	width: 100%;
}
#twocolumntext {
	float: left;
	width: 371px;
}
.imagecolumnleft {
	margin: 0 11px 0 202px;
	float: left;
	width: 180px;
}
.subimagecolumn {
	float: left;
	width: 382px;
}
.subimagecolumn img {
	border-bottom: 11px solid #fff;
	border-left: 11px solid #fff;
	float: left;
}
.imagecolumnright {
	float: left;
	width: 180px;
}
.imagecolumnleft img, .imagecolumnright img, .subimagecolumnleft img {
	border-bottom: 11px solid #fff;
	float: left;
}
.textcolumnleft {
	margin: 0 11px;
	float: left;
	width: 180px;
}
.textcolumnright {
	margin: 0;
	float: left;
	width: 180px;
}
ol.alphalist {
	margin-left: 1.8em;
	list-style: upper-alpha;
	font-size: .75em;
}
.singletext {
	float: left;
	width: 180px;
	margin-right: 11px;
}
ul.clientslist {
	margin-left: 1.3em;
	list-style: square;
}
#servicetable {
	padding-bottom: 11px;
	margin-left: 11px;
	float: left;
}
table#workstages {
	border-collapse: collapse;
	border: 1px solid #999;
	font-size: .7em;
	line-height: 1.3;
}
table#workstages td, table#workstages th {
	border-collapse: collapse;
	border: 1px solid #ccc;
	padding: 4px;
}
table#workstages .widecolumn {
	width: 364px;
}
table#workstages th {
	background-color: #9898B0;
	text-align: left;
	color: #fff;
	font-weight: normal;
}
table#workstages .darkpurple {
	background-color: #564F82;
}
table#workstages .lightgrey {
	background-color: #999;
	color: #fff;
	font-weight: bold;
}
table#workstages .darkgrey {
	background-color: #666;
	color: #fff;
}
/* Home page slideshow */
#slideshow, #slideshow2, #slideshow3, #slideshow4 {
	position: relative;
	width: 180px;
	height: 180px;
	float: left;
	border-bottom: 11px solid #fff;
}
#slideshow img, #slideshow2 img, #slideshow3 img, #slideshow4 img {
	display: none;
	position: absolute;
	top: 0; left: 0;
}
/**************** Contact page styles ****************/
table#contacttable, table#contacttable td {
	border-collapse: collapse;
	vertical-align: top;
	border: none;
	margin-bottom: 11px;
}
table#contacttable td {
	padding: .4em 0 .6em .4em;
}
input#yourname, input#email, input#telephone, table#contacttable textarea {
	width: 288px;
	border: 1px solid #564F82;
}
input#telephone {
	width: 170px;
}
table#contacttable td {
	font-size: .75em;
	line-height: 1.2;
}
table#contacttable label {
  	float: right;
	display: block;
	width: 70px;
	text-align: right;
}
/**************** Footer styles ****************/
#footer {
	background-color: #564F82;
	color: #fff;
	font-size: .8em;
	float: left;
	width: 100%;
	clear: both;
}
#footer p {
	margin: 0;
	padding: 3px 0 3px 2px;
	float: left;
}
#footer p#cypherlink {
	margin: 0;
	padding: 3px 2px 3px 0;
	float: right;
}
#footer a:link, #footer a:visited {color: #fff; text-decoration: none;}
#footer a:hover, #footer a:active {color: #fff; text-decoration: underline;
}
/**************** Misc classes and styles ****************/
.imgleft {float: left; margin: 0 1em .5em 0;}
.imgright {float: right; margin: 0 0 .5em 1em;}
.boldtext {font-weight: bold;}
.italictext {font-style: italic;}
.boldpurpletext {font-weight: bold; color: #564F82;}
.smallmargbottom {margin-bottom: .5em;}