/*************************************************************************
	3i
	Developed by Matthew Hill (c) 2008 -- http://www.friskdesign.com/
	for DTL - http://www.dtl.net/
	MODULE: 	global.css
	PURPOSE:	all rules for site
*************************************************************************/

/*Auto float clearing for compliant browsers
*************************************************************************/

#top_nav_items:after,
#top_nav_main:after,
#main:after,
#content:after {
	content: ".";
	height:0;
	display:block;
	clear:both;
	visibility:hidden;
}

/* General Rules and classes
*************************************************************************/

html {
	background-color:#8DBDDD;
}

body {
	color:#595959;
	/*background:#8DBDDD url(img/bg-bodytile.png) left top repeat-x;*/
	font: normal 1.00em/1.2em Arial,"Helvetica Neue","Helvetica",sans-serif;
	padding:0;
	margin:0 auto;
	text-align:center;
	height:100%;
}
#skipto {
	position:absolute;
	left:-1000em;
}
.floatright {
	float:right;
	text-align:right;
}
.floatleft {
	float:left;
	text-align:left;
}
.alignright {
	text-align:right;
}
.alignleft {
	text-align:left;
}
.imgleft {
	float:left;
	margin:0 20px 20px 0;
}

#services_page .imgleft {
	margin-top:15px;
}

.centred {
	text-align:center;
	margin:0 auto;
}
.hilite {
	color:#E08547;
}

/* Layout (sizes / floats / positions of main elements)
*************************************************************************/
#wrapper {
	width:910px;
	margin:0 auto;
	text-align:left;
}
#mainwrap {
	clear:both;
	background:url(img/bg-maintile-sidebar.png) 0 419px repeat-y;
	min-height:354px;
}
#maininner {
	background:url(img/bg-bottom-sidebar.png) left bottom no-repeat;
	padding:0 0 20px 0;
}
#main {
	clear:both;
	background:url(img/bg-maingrad.png) top left no-repeat;
	min-height:354px;	
	padding:65px 34px 0 47px;
}
#content {
	float:left;
	width:562px;
	padding:0;
	font-size:0.75em;
	line-height:1.4em;
}
#sidebar {
	float:left;
	width:247px;
}

/* No sidebar  */
#about_page #content,
#client_page #content,
#contact_page #content,
#privacy_page #content,
#rims_page #content,
#media_page #content,
#request_page #content,
#document_page #content,
#esquire_page #content,
#esquirepartners_page #content
{
	width:auto;
	padding:0 20px 0 0;
	float:none;
}

#about_page #mainwrap,
#client_page #mainwrap,
#contact_page #mainwrap,
#privacy_page #mainwrap,
#rims_page #mainwrap,
#media_page #mainwrap,
#request_page #mainwrap,
#document_page #mainwrap,
#esquire_page #mainwrap,
#esquirepartners_page #mainwrap
{
	background:url(img/bg-maintile.png) 0 419px repeat-y;
}

#about_page #maininner,
#client_page #maininner,
#contact_page #maininner,
#privacy_page #maininner,
#rims_page #maininner,
#media_page #maininner,
#request_page #maininner,
#document_page #maininner,
#esquire_page #maininner,
#esquirepartners_page #maininner
{
	background:url(img/bg-bottom.png) left bottom no-repeat;
}



/* Typography
*************************************************************************/
a,a:link {
	color:#084E80;
	text-decoration:underline;
}
a:visited {
	
}
a:hover {
	color:#387EAD;
}
a img {
	border:none;
}
p,ol,ul,dl,blockquote {
	margin:1em 0;
}
h1,h2,h3,h4,h5,h6 {
	font: bold 1em/normal Arial,"Helvetica Neue","Helvetica",sans-serif;
	color:#084E80;
	margin:1em 0;	
}
h1 {
	font-size:1.2em;
	line-height:normal;
}
h1+p {
	margin-bottom:1em;
}
h2+p {
	margin:-1em 0 0 0;
}

/* Banner
*************************************************************************/
#banner {
	height:127px;
	position:relative;
	background:transparent url(img/bg-banner.png) no-repeat;
	width:100%;
}

/* Logo and heading */
#banner #logo {
	position:absolute;
	top:39px;
	left:50px;
	z-index:10;
}
#banner strong {
	display:none;
}

/* Navigation
*************************************************************************/
#top_nav {
}
#top_nav_items {
/*	background:#A5622C url(img/bg-navbar.png) top right no-repeat;*/
	width:390px;	
	margin:0 0 0 239px;	
	padding-top:106px;
}
#top_nav_main {
	background:url(img/bg-navline.png) left bottom no-repeat;
	list-style:none;
	padding:0;
	margin:0 30px 0 0;
	float:right;
}
#top_nav_main li {
	float:left;
	list-style:none;
	min-height:21px;
	background:url(img/bg-navline.png) right bottom no-repeat;
}
#top_nav_main li a,
#top_nav_main li a:visited {
	display:block;
	text-decoration:none;
	font: bold 0.75em/normal "Trebuchet MS",Arial,"Helvetica Neue","Helvetica",sans-serif;
	text-transform:uppercase;
	line-height:19px;
	padding:2px 10px 0;
	margin:0 2px 0 0;
	color:#EFF4F7;
}

#top_nav_current,
#top_nav_main li a:hover {
	background:url(img/bg-navbar-hover.png) 0 bottom repeat-x;
}

.top_nav_first {
	margin-left:2px;
}

#top_nav_current {
	cursor:default;
}


/* Sidebar
*************************************************************************/

#sidebar {
	margin-top:-58px;
	margin-left:20px;
	background:#2176ae;
	min-height:477px;
	position:relative;
	left:1px;
	background:#2176ae url(img/bg-sidebar.jpg) 0 0 no-repeat;	
}

#sidebar h3 {
	color:#084E80;
	font: bold 0.85em/normal "Trebuchet MS",Arial,"Helvetica Neue","Helvetica",sans-serif;
	text-align:center;
	text-transform:uppercase;
	line-height:30px;
	margin:0;
	padding:0;
	position:relative;
	z-index:10;
}

#sidebar ul {
	list-style:none;
	width:247px;
	padding:0;
	margin:0;
}

#sidebar li {
	list-style:none;
	padding:0;
	margin:0;
	width:246px;
	height:110px;
	vertical-align:top;
}

#sidebar li a,
#sidebar li a:visited {
	position:relative;
	display:block;
	width:247px;
	height:110px;
	color:#FFF;
	font: bold 0.75em/normal "Trebuchet MS",Arial,"Helvetica Neue","Helvetica",sans-serif;
	text-align:center;
	text-transform:uppercase;
	text-decoration:none;
}

#sidebar li a:hover {
	text-decoration:underline;
}

#sidebar li a span,
#sidebar li a:visited span {
	position:absolute;
	bottom:0;
	left:0;
	width:246px;
	text-align:center;
}

#sidebar a:hover { background:#2176ae url(img/bg-sidebar.jpg) 0 0 no-repeat; }

#sidebar #serviceOnsite a:hover  {		background-position:100% -30px; }
#sidebar #serviceTelephone a:hover  {	background-position:100% -140px; }
#sidebar #serviceDoctrans a:hover  {	background-position:100% -250px; }
#sidebar #serviceTransport a:hover  {	background-position:100% -360px; }


/* Contact us
*************************************************************************/
#addresses {

}
#addresses div {
	width:200px;
	float:left;
}
#addresses div.last {
	width:160px;
}
#addresses p {
	width:160px;
	margin-top:0;
}

/* Forms
*************************************************************************/

form {
	float:left;
	width:600px;
}
fieldset {
	border:1px solid #DDD;
	padding:10px;
	margin:0 0 2em 0;
	background:#F4F4F4;
}
legend {
	color:#084E80;
	font-weight:bold;
}
label {
	display:block;
	clear:both;
	font-size:0.90em;
	font-weight:normal;
	color:#387EAD;
	margin:0 10px 0 0;
	float:left;
	width:120px;
	text-align:right;
	line-height:2em;	
}
label.short {
/*	width:70px;*/
}
input,textarea {
	background:#FFF;
	width:250px;
	border:1px solid #EAEAEA;
	border-top-color:#CCC;
	border-left-color:#CCC;	
	padding:4px;
	margin:0 0 0.6em 0;
	float:left;
}
textarea {
	width:98%;
}
input.short {
	width:70px;
}
form div.radiocol {
	width:200px;
	float:left;
	margin:10px 0 0 20px;
}
form div.radiocol input {
	width:20px;
	border:none;
	float:left;
	margin:0 0 0 -200px;
	background:none;
}
form div.radiocol label {
	width:170px;
	border:none;
	float:left;
	text-align:left;
	line-height:normal;
}
form span {
	display:block;
	float:left;
	line-height:2em;
	font-size:0.90em;
	font-weight:normal;
	margin:0 0 0 10px;
}
form span.wrap {
	line-height:normal;
	width:150px;
}
form button {
	background:#387EAD;
	color:#FFF;
	font-weight:bold;
	padding:6px;
}

/* Footer
*************************************************************************/
#footer {
	width:910px;
	min-height:36px;
	margin:0 auto;
	color:#FFF;
	background:url(img/bg-footer.png) no-repeat;
}
#footer p {
	float:right;
	font-size:0.55em;
	margin:8px 80px 0 0;
	text-transform:uppercase;
}

/* Homepage
*************************************************************************/
#home_page #content {
	text-align:center;
}
#home_page #content p img {
	display:block;
	margin:70px auto 0;
}

/* Media page
*************************************************************************/
#media_page td {
	text-align:center;
	width:100px;
}
#media_page td a {
	display:block;
}
#media_page td a img {
	vertical-align:middle;
	margin-bottom:.5em;
	height:71px;
	width:72px;
}
#media_page #tp_logos a img {
	height:90px;
	width:64px;
}
