/*

	COMMON

*/
* {
	padding: 0;
	margin: 0;
}
body {
	line-height: 1.5em;
}
object, img {
	display: block
}
a img {
	border: none;
}
.hide {
	display: none;
}
.float-left {
	float: left;
}
.float-right {
	float: right;
}
.clear {
	clear: both;
	height: 1px;
  overflow: hidden;
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/*

	RE-DEFINE HTML STYLES

*/
html {
  overflow-y: scroll!important; /* Enables firefox scrollbar as default */
}
body {
	background: #fff;
	color: #000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 0;
	margin: 0 0 20px 0;
}

h1 {
  font-size: 10px;
  color: #e6e6e6;
  font-weight: normal;
  text-align: left;
  position: absolute;
  top: -5px;
  left: 30px;
  z-index: 99;
}

p {
	margin: 12px 0;
}
ul {
	list-style-type: square;
	list-style-position: outside;
	margin: 10px 0 10px 0;
	padding: 0;
}
li {
	padding: 0;
	margin-bottom: 2px;
	margin-left: 20px;
}
ol {
	list-style-position: outside;
	margin: 10px 0 10px 8px;
	padding: 0;
}
ol li {
	padding: 0;
	margin-bottom: 2px;
	margin-left: 20px;
}
hr { /* For Internet Explorer */
	height: 1px;
	color: #CCC;
	border: none;
}
html>body hr { /* For Opera and Gecko-based browsers */
	height: 1px;
	background-color: #CCC;
	border: 0px solid #CCC;
}
a {
  cursor: pointer;
}
a:link, a:visited, a:active {
	color: #261C02;
	font-weight: normal;
	text-decoration: underline;
}
a:hover {
	color: #958D78;
	font-weight: normal;
	text-decoration: underline;
}


/*

	LAYOUT

*/
#outerwrapper {
	margin: 10px 0 0 0;
	padding: 0;
	background: #fff url(images/wrapper.gif) no-repeat top center;
}
#header {
  background: url(images/header.gif) no-repeat;
  height: 145px;
  position: relative;
}
a#logo {
  font-size: 0;
  text-indent: -9999px;
  display: block;
  width: 300px;
  height: 125px;
  position: absolute;
  top: 0;
  right: 0;
  outline: 0;
  z-index: 98;
}
a#logo:hover {
  background: #fff;
  opacity: 0.3;
}
#structure {
  background: url(images/structure.gif) repeat-y top center;
  width: 100%;
}
#banner {
  background: #023867 url(images/banners/internal.jpg) no-repeat;
  height: 166px;
}
#index #banner {
  background: #023867 url(images/banners/home.jpg) no-repeat;
  height: 342px;
}
#family-law #banner { background: #023867 url(images/banners/family.jpg) no-repeat; }
#criminal-law #banner { background: #023867 url(images/banners/criminal.jpg) no-repeat; }
#litigation #banner { background: #023867 url(images/banners/litigation.jpg) no-repeat; }
#wills-and-estates #banner { background: #023867 url(images/banners/wills.jpg) no-repeat; }
#commercial-business-law #banner { background: #023867 url(images/banners/commercial.jpg) no-repeat; }
#property-law #banner { background: #023867 url(images/banners/property.jpg) no-repeat; }

.container {
  margin: 0 auto;
  width: 990px;
}
#spacer-wrapper {
  background: url(images/spacer-wrapper.gif) no-repeat top center;
}
#spacer {
  height: 14px;
  background: url(images/spacer.gif) no-repeat;
}
#footer {
  background: url(images/footer.gif) repeat-y top center;
}
#bar {
  border-bottom: 2px solid #fff;
  background: #000;
  height: 188px;
}
#additional {
  background: #5d7c93;
  height: 119px;
  position: relative;
}
#keywords {
  color: #859FB7;
  padding: 16px 30px 0 30px;
  text-align: justify;
  font-size: 11px;
}
#keywords p { margin: 0; }
#footer-links {
  position: absolute;
  bottom: 5px;
  left: 30px;
  font-size: 13px;
  line-height: 22px;
  color: #BDCBD8;
  list-style: none;
}
#footer-links li {
  float: left;
  margin: 0;
  padding: 0;
  height: 22px;
}
#footer-links li span {
  height: 22px;
  margin: 0 18px;
  width: 1px;
  background: #BDCBD8;
  display: inline-block;
  vertical-align: middle;
}
#footer-links li a {
  color: #BDCBD8;
  text-decoration: none;
  display: inline-block;
}
#footer-links li a:hover {
  color: #fff;
}
#banner-content {
  font-size: 12px;
  color: #fff;
  padding: 20px 0 0 30px;
  width: 440px;
  position: relative;
}
#vcard {
  position: absolute;
  top: 270px;
  left: 30px;
  font-size: 12px;
  color: #fff;
}
#vcard .fn {
  font-weight: bold;
  font-size: 16px;
  color: #9CB1C4;
}
#vcard .fn span {
  color: #fff;
  margin-left: 15px;
}
#vcard p {
  margin: 4px 0 0 0;
}
a#emailus {
  display: block;
  width: 126px;
  height: 22px;
  font-size: 0;
  text-indent: -9999px;
  background: url(images/emailus.gif) no-repeat;
  position: absolute;
  bottom: -2px;
  left: 320px;
}
a#emailus:hover {
  opacity: 0.7;
}

#content {
  background: url(images/content.gif) no-repeat;
  padding: 17px 30px 20px 30px;
  width: 930px;
  font-size: 12px;
  color: #666666;
}

#left {
  width: 218px;
  float: left;
}
#right {
  float: left;
  width: 620px;
  border-left: 1px solid #D1D1D1;
  padding-left: 35px;
  min-height: 390px;
  height: auto !important;
  height: 390px;
  padding-bottom: 10px;
  color: #555555;
}

ul#service-nav {
  margin-top: 15px;
  color: #6688A4;
}

ul#service-nav a {
  color: #6688A4;
  text-decoration: none;
}

ul#service-nav a:hover, ul#service-nav li.active a {
  color: #003768;
	text-decoration: underline;
}

#linkslist p {
  border-bottom: 1px solid #ccc;
  padding-bottom: 10px;
}

/* CONTACT PAGE */

#contact-details {
  float: left;
  width: 520px;
  padding-left: 35px;
  color: #555555;
}
#enquiry-form {
  float: left;
  width: 359px;
  border-right: 1px solid #ccc;
  padding-bottom: 20px;
}
#contact-us dl dt {
  float: left;
  width: 50px;
}

a#mapdownload {
  color: #003768;
	text-decoration: underline;
}
a#mapdownload:hover {
  color: #5D7C93;
	text-decoration: none;
}

span.print {
  display: none;
}


/*

	SHOW AND TELL

*/
#show {
	font-size: 10px;
	color: #afbdc9;
	width: 930px;
	margin: 0 auto;
	background: #809ab3;
	height: 27px;
	line-height: 27px;
	padding: 0 30px;
}
#show a:link, #show a:visited, #show a:active {
	color: #afbdc9;
	font-weight: normal;
}
#show a:hover {
	color: #bbcad6;
	font-weight: normal;
}
#show p {
	text-align: right;
	margin: 0;
}

#legal-link {
	float: left;
	color: #BAC9D6;
}
#show #legal-link a {
	color: #BAC9D6;
}
#show #legal-link a:hover {
  color: #c8d8e6;
  text-decoration: underline;
}

#show a.st {
	text-decoration: none;
}
/*

	HEADINGS

*/
h2 {
  font-size: 22px;
  font-weight: normal;
  margin: 0 0 18px 0;
  line-height: 22px;
  border-bottom: 2px dashed #577697;
  padding-bottom: 7px;
}

h3 {
  font-size: 22px;
  font-weight: normal;
  margin: 30px 0 20px 0;
  line-height: 22px;
  color: #003867;
}
#left h3 {
  color: #6688A4;
}
h3.first {
  padding-top: 10px;
  margin-top: 0;
}

h4 {
  margin: 25px 0 12px 0;
  font-size: 15px;
  color: #000;
}

h5 {
  margin: 18px 0 12px 0;
  color: #003867;
  font-size: 12px;
  font-weight: bold;
}/*

	NAVIGATION

*/
#nav-wrapper {
  width: 696px;
  height: 116px;
  background: url(images/nav-wrapper.gif) no-repeat;
}
ul#nav {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 84px;
  left: 0;
  list-style: none;
  background: url(images/nav.gif) no-repeat;
  width: 595px;
  height: 32px;
}
ul#nav li {
  margin: 0 1px 0 0;
  padding: 0;
  float: left;
}
ul#nav li a {
  display: block;
  font-size: 0;
  text-indent: -9999px;
  height: 32px;
}

ul#nav li#nav1 a { width: 86px; }
ul#nav li#nav1 a:hover { background: url(images/nav.gif) no-repeat 0 -90px; }
ul#nav li#nav1.active a { background: url(images/nav.gif) no-repeat 0 -182px !important; }

ul#nav li#nav2 a { width: 98px; }
ul#nav li#nav2 a:hover { background: url(images/nav.gif) no-repeat -87px -90px; }
ul#nav li#nav2.active a { background: url(images/nav.gif) no-repeat -87px -182px !important; }

ul#nav li#nav3 a { width: 95px; }
ul#nav li#nav3 a:hover { background: url(images/nav.gif) no-repeat -186px -90px; }
ul#nav li#nav3.active a { background: url(images/nav.gif) no-repeat -186px -182px !important; }

ul#nav li#nav4 a { width: 67px; }
ul#nav li#nav4 a:hover { background: url(images/nav.gif) no-repeat -282px -90px; }
ul#nav li#nav4.active a { background: url(images/nav.gif) no-repeat -282px -182px !important; }

ul#nav li#nav5 a { width: 106px; }
ul#nav li#nav5 a:hover { background: url(images/nav.gif) no-repeat -350px -90px; }
ul#nav li#nav5.active a { background: url(images/nav.gif) no-repeat -350px -182px !important; }

ul#nav li#nav6 a { width: 112px; }
ul#nav li#nav6 a:hover { background: url(images/nav.gif) no-repeat -457px -90px; }
ul#nav li#nav6.active a { background: url(images/nav.gif) no-repeat -457px -182px !important; }

ul#banners {
  margin: 0;
  padding: 0;
  width: 990px;
  height: 188px;
  background: url(images/banners.gif) no-repeat;
  list-style: none;
}
ul#banners li {
  border-right: 2px solid #fff;
  margin: 0;
  padding: 0;
  float: left;
}
ul#banners li.last { border-right: none; }
ul#banners li a {
  display: block;
  width: 163px;
  height: 188px;
  font-size: 0;
  text-indent: -9999px;
  position: relative;
}
ul#banners li.long a, ul#banners li.long span {
  width: 164px;
}
ul#banners li span {
  display: block;
  width: 163px;
  height: 34px;
}
ul#banners li a:hover span {
  background: #000;
  opacity: 0.1;
}
ul#banners li a:hover img {
  opacity: 0.9;
}
ul#banners li a .overlay {
  position: absolute;
  z-index: 999;
  bottom: 10px;
  right: 10px;
}








/*

	FORMS

*/
/*

	FORMS

*/
form {
  margin: 0;
  padding: 0;
}
form p {
  margin: 10px 0 15px 0;
}
fieldset {
	border: none;
	margin: 15px 0 0 0;
	padding: 0;
}
fieldset p {
  margin: 15px 0 5px 0;
}
label {
	color: #666;
}
fieldset dl, fieldset dt, fieldset dd {
	margin: 0;
	padding: 0;
}
fieldset dd {
	margin: 0 0 8px 0;
}
fieldset dl {
  margin: 5px 0 10px 0;
}

#contact-us form dl dt {
  width: 80px;
}

/* !important to get rid of Google Toolbar yellow background */
.fieldset {
	background: #EAEAEA !important;
	border: 1px solid #5D7C93 !important;
	font-size: 12px !important;
	padding: 2px !important;
	width: 240px !important;
	color: #5D7C93 !important;
}
textarea.fieldset {
	background: #E8EFF7;
	border: 1px solid red;
	font-size: 12px;
	color: #5D7C93;
	font-family: Arial, Helvetica, sans-serif;
	width: 240px;
	height: 100px;
	overflow: auto;
}

select {
  width: 245px;
  border: 1px solid #5D7C93;
  padding: 2px;
  background: #EAEAEA;
}

input.error, select.error {
  border: 1px solid #cc0000 !important;
}

input:focus, textarea:focus, input.focus, textarea.focus {
  border: 1px solid #003768 !important;
  background: #f7f7f7 !important;
}

button.submit {
	background: #5D7C93;
	border: 1px solid #5D7C93;
	margin: 10px 0 0 80px;
	padding: 1px 0 3px 0;
	color: #fff;
	cursor: pointer;
	font-size: 12px;
	width: 70px;
	height: 22px;
	text-align: center;
	line-height: 18px;
	font-size: 12px;
	outline: 0;
}

button.submit:hover, button.submit.hover {
  background: #CCC;
  color: #5D7C93;
}

.required {
  color: #003768;
}

/*

	VERIFICATION

*/
#verification {
	margin: 15px 0 5px 80px;
	display: block;
	position: relative;
	height: 35px;
}

#verification span {
	display: block;
	width: 30px;
	height: 30px;
	float: left;
	margin: 0 0 8px 0;
}

#verification span.underline {
	display: inline;
	width: auto;
	float: none;
	margin: 0;
}

#verification span.cz { background: url(images/verification.gif) no-repeat 0 0; }
#verification span.cx { background: url(images/verification.gif) no-repeat 0 -30px; }
#verification span.cy { background: url(images/verification.gif) no-repeat 0 -60px; }
#verification span.ch { background: url(images/verification.gif) no-repeat 0 -90px; }
#verification span.cf { background: url(images/verification.gif) no-repeat 0 -120px; }
#verification span.ca { background: url(images/verification.gif) no-repeat 0 -150px; }
#verification span.cb { background: url(images/verification.gif) no-repeat 0 -180px; }
#verification span.cg { background: url(images/verification.gif) no-repeat 0 -210px; }
#verification span.cp { background: url(images/verification.gif) no-repeat 0 -240px; }
#verification span.cm { background: url(images/verification.gif) no-repeat 0 -270px; }


.button-reset {
  background: none !important;
  border: 1px none #000;
  text-align: left;
  font-size: 10px;
  margin: auto 0 10px 80px;
  cursor: pointer;
  width: 260px;
}
.button-reset:hover, .button-reset.hover {
  text-decoration: none;
  background: none !important;
}

.underline {
	text-decoration: underline;
}

.button-reset:hover .underline, .button-reset.hover .underline {
	text-decoration: none;
}

div.error {
  border: 1px solid #cc0000;
  padding: 15px;
  margin-right: 35px;
  background: #f7f7f7;
  margin-bottom: 20px;
}
div.error ul {
  margin: 0;
}


