
/* global */

body {
	font-size: 0.8em;
	font-family: Arial, Helvetica, sans-serif;
	margin: 0;
	background-color: #d8e0ce;
  color: #194b1d;
}

#bodywrapper {
  width: 910px;
  margin: 0 auto;
}

.clear {
  clear: both;
}

a {
  font-weight: bold;
  color: #1a4b1d;
}

a img {
  border: 0;
}

/* header */

#header {
  height: 128px;
  position: relative;
  background: #fff url(/site_media/images/header.png) top left;
}

#header h1 {
  margin: 0;
  padding: 0;
}

#navigation {
  position: absolute;
  top: 20px;
  right: 20px;
}

#navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#navigation ul li {
  float: left;
  padding-left: 1.5em;
  font-weight: bold;
}

#navigation ul li a {
  text-transform: uppercase;
  color: #1a4b1d;
  text-decoration: none;
}

#navigation ul li.current a {
  color: #9ccd4f;
}

#search {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 167px;
  background: url(/site_media/images/search-bg.gif) left top no-repeat;
  height: 25px;
}

input:focus {
  outline: 0;
}

input.searchtext {
  -webkit-appearance: none;
  background-color: #d8e0ce;
  padding: 2px;
  margin: 4px 0 0 2px;
  border: 0;
  font-size: 11px;
  width: 132px;
  background-image: none;
}

input.searchbutton {
  position: absolute;
  top: 0;
  right: 0;
  height: 25px;
  width: 25px;
}

/* breadcrumbs */

#breadcrumbs {
  height: 2.5em;
  background: #000000;
  color: #fff;
}

#breadcrumbs ul {
  margin: 0;
  padding: 0 0 0 1em;
  list-style: none;
}

#breadcrumbs ul li {
  float: left;
  height: 2.5em;
  padding-right: 0.5em;
  line-height: 2.5em;
}

#breadcrumbs ul li a {
  display: block;
  float: left;
  position: relative;
  line-height: 2.5em;
  height: 2.5em;
  color: #fff;
  text-decoration: none;
}

#breadcrumbs li.seperator {
  background: #000000 url(/site_media/images/arrow.gif) left center no-repeat;  
  width: 0.5em;
}

#breadcrumbs li.current {
  color: #00bc68;
}

/* content */

#inner {
  padding: 20px 0;
}

#leftcol {
  float: left;
  width: 262px;
}

#content {
  float: right;
  overflow: hidden;
  width: 618px;
  color: #194b1d;
  position: relative;
}

#content .inner-left {
  float: left;
  width: 205px;
  height: 300px;
  overflow: hidden;
}

.inner-left img {
  border: 10px solid #1a4b1d;
}

#content .inner-right {
  float: right;
  width: 385px;
}

#content h1 {
  margin: 0 0 0.75em 0;
  padding: 10px 0 10px 0;
  font-size: 1.6em;
  color: #00b263;
  border-bottom: 1px dashed #afb2b2;
}

#content h1.sector-name,
#content h1.service-name {
    width:280px;
}

#content p {
  margin: 0;
  padding: 0 0 0.75em 0;
  line-height: 1.25em;
}

.icons {
  position: absolute;
  top: 2px;
  right: 0;
  padding: 0 0 0 10px;
  margin: 0;
  background-color: #d8e0ce;
}

.icons li {
  display: inline;
}

/* homepage */

.info-inner {
  height: 160px;
  overflow: hidden;
}

.casestudybox {
    position: relative;
    display:block;
    float: left;
    width: 694px;
    height: 180px;
    margin:0px;
    padding:0px;
    overflow: hidden;
}

.casestudybox li {
    display:block;
    position:relative; 
}

.casestudybox .more-link {
    z-index:1;
    display:block;
    left:541px;
    top:136px;
    position:absolute;
}




.telephone {
  float: right;
  width: 186px;
  background-color: #9ccd4f;
  height: 80px;
  position: relative;
  margin-bottom: 20px;
}

.telephone h2 {
  background-color: #1a4b1d;
  margin: 0;
  padding: 0 1em;
  font-size: 1em;
  line-height: 2.5em;
  color: #fff;
  text-transform: uppercase;
}

.telephone a {
  color: #fff;
  text-decoration: none;
}

.telephone p {
  margin: 0;
  padding: 0;
  font-size: 24px;
  line-height: 52px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background: #9ccd4f url(/site_media/images/telephone-bg.gif) top center no-repeat;  
}

.telephone .icon {
  position: absolute;
  right: 5px;
  top: 0;
}

.rowspace {
  clear: both;
  height: 20px;
}

.partners {
  float: right;
  clear: right;  
  width: 186px;
  background-color: #9ccd4f;
  height: 80px;
  position: relative;
}

.partners .icon {
  position: absolute;
  right: 5px;
  top: 1px;
}

.partners h2 {
  background-color: #1a4b1d;
  margin: 0;
  padding: 0 1em;
  font-size: 1em;
  line-height: 2.5em;
  color: #fff;
  text-transform: uppercase;
}

.info {
  height: 213px;
  width: 250px;
  float: left;
  overflow: hidden;
  position: relative;
}

.info h2 {
  margin: 0;
  padding: 0 1em;
  font-size: 1em;
  line-height: 2.5em;
  background: #9ccd4f url(/site_media/images/arrow-down.gif) 95% 50% no-repeat;
  color: #fff;
  text-transform: uppercase;
  font-weight: normal;  
  border: 1px solid #5e9a6a;
}

.info p {
  margin: 0;
  padding: 10px;
  color: #1a4b1d;
  line-height: 1.3em;
}

.info .more-link {
  bottom: 0px;
  right: 0px;
  position: absolute;
  padding-right: 20px;
  text-decoration: none;
  background-image: url(/site_media/images/plus.gif);
  background-position: right center;
  background-repeat: no-repeat;
}

.info .more-link a:hover {
  text-decoration: underline;
}

.sectionbox {
  float: right;
  height: 213px;
  width: 216px;
  position: relative;
  overflow: hidden;
}

.hover {
  cursor: pointer;
}

.about {
  width: 186px;
}

.sectors .padding {
  padding-right: 30px;
}

.services .padding {
  padding-right: 30px;
}

.sectionbox .corner {
  position: absolute;
  bottom: 0px;
}

.sectionbox .icon {
  position: absolute;
}

.services .corner {
  right: 30px;
}

.sectors .corner {
  right: 30px;
}

.about .corner {
  right: 0;
}

.sectors .icon {
  top: 5px;
  right: 40px;
}

.services .icon {
  top: 9px;
  right: 40px;
}

.about .icon {
  top: 3px;
  right: 10px;
}

.sectionbox h2 {
  margin: 0;
  padding: 0 1em;
  font-size: 1em;
  line-height: 2.5em;
  height: 2.5em;
  background-color: #000000;
  color: #fff;
  text-transform: uppercase;
  font-weight: normal;
}

.sectionbox h2 a {
  color: #fff;
  text-decoration: none;
  font-weight: normal;
}

#content .casestudy-h1 {
  padding-top: 2em;
}

.people-listing,
.images-listing {
  margin: 0;
  padding: 0;
  list-style: none;
}


.people-listing li {
  float: left;
  margin: 0 8px 21px 8px;
  
}

.people-listing li a img {
  border: 10px solid #1a4b1d;
}

.people-listing li.first {
  margin-left: 0px;
}

.people-listing li.last {
  margin-right: 0px;
}


.images-listing li {
  float: left;
  margin-bottom: 21px;
}

.images-listing li.first {
  margin-right: 21px;
}

.images-listing li.last {
  margin-left: 21px;
}

.images-listing li a img {
  border: 10px solid #1a4b1d;
}


/* subnav */

dl.telephonebox {
  margin: 0 0 20px 0;
}

.telephonebox dt {
  height: 2.5em;
  line-height: 2.5em;
  position: relative;
  color: #fff;
  text-transform: uppercase;
  font-weight: normal;
  background: #1a4b1d;
  padding: 0 1em;
}

.telephonebox dd {
  padding: 0 0.8em;
  margin: 0;
  font-size: 1.3em;
  background-color: #9ccd4f;
  border: 1px solid #72a67b;
  height: 2em;
  line-height: 2em;   
  font-weight: bold; 
  color: #fff;
}

.telephonebox dd a {
  color: #fff;
  text-decoration: none;
}

#leftcol .subnav li span {
  margin: 0;
  padding: 0 1em;
  font-size: 1em;
  line-height: 2.5em;
  color: #fff;
  height: 2.5em;
  text-transform: uppercase;
  display: block;
  font-weight: normal;
  background: #1a4b1d url(/site_media/images/arrow-down.gif) 95% 50% no-repeat;
  color: #fff;
  text-decoration: none;  
  display:block;
  position: relative;
}

#leftcol .subnav ul {
  margin: 0 0 2px 0;
  padding: 0;
  list-style: none;
}

#leftcol .subnav ul li li {
  margin-top: 2px;
}

#leftcol .subnav ul li li a {
  display: block;
  position: relative;
  background-color: #00b263;
  height: 2.5em;
  line-height: 2.5em;
  color: #fff;
  text-decoration: none;
  border: 1px solid #83a66b;
  font-weight: normal;
  padding: 0 1em;
}

#leftcol .subnav ul li a:hover,
#leftcol .subnav ul li.current a {
  background-color: #9ccd4f;
  border: 1px solid #72a67b;
}

/* footer */

#footer {
  background-color: #1a4b1d;
  color: #fff;
  height: 2.5em;
}

#footer p {
  margin: 0;
  padding: 0 1em;
  line-height: 2.8em;
  font-size: 0.9em;
}

#footer p a {
  color: #fff;
}

#footer p.designedby {
  float: right;
  padding-top: 4px;
}

/* sitemap */

.sitemap a {
  text-decotation: none;
}

.sitemap h2,
.sitemap-sectors li a span {
  font-size: 1.4em;
  font-weight: bold;
  text-decoration: none;
  padding: 1em 0 0.5em 0;
  margin: 0;
  display: block;
}

.sitemap h2 a {
  padding: 0;
  text-decoration: none;
}

.sitemap ul {
  margin: 0;
  padding: 0 0 0 1em;
  list-style: none;
}

.sitemap-sectors ul {
  padding-left: 0;
}

.sitemap ul ul {
  padding-left: 1em;
}

.sitemap li {
  padding-bottom: 0.5em;
}

.sitemap li li {
  padding-top: 0.5em;
}

.sitemap ul li a {
  font-weight: normal;
  text-decoration: none;
}

/* about */

.inner-left-right {
  float: left;
  width: 394px;
  position: relative;
}

.inner-right-right {
  float: right;
  width: 186px;
}

.inner-right-right .sectionbox {
  width: 186px;
}

.inner-right-right .sectionbox .corner {
  right: 0;
}

.inner-right-right .sectionbox .icon {
  right: 10px;
}

.space-about {
  clear: both;
  height: 21px;
}

/* people */

#content .people-h1 {
  padding-top: 2em;  
}

/* contact */

.field {
  margin-bottom: 1.5em;
}

.contact-form label {
  display:block;
  padding: 0 0 0.5em 0;
  font-weight: bold;
  text-transform: uppercase;
}

.contact-form input {
  width: 98%;
  border: 1px solid #ccc;
  font-size: 1em;
  height: 25px;
  padding: 1px 1%;
}

.contact-form textarea {
  width: 98%;  
  padding: 1% 1%;
  border: 1px solid #ccc;
}

input.button-submit {
  width: 100%;
  height: 30px;
  background: #1a4b1d url(/site_media/images/button-submit.gif) right top no-repeat;
  border: 0;
  color: #fff;
  padding: 0 0 0 2%;
  font-weight: bold;
  text-align: left;
  cursor: pointer;
}

ul.errorlist {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 2em;
}

.fieldRequired {
  color: #d8e0ce;
}

.map {
  position: relative;
  height: 175px;
  overflow: hidden;
}

#map {
  height: 160px;
}

.map h2 {
  font-size: 1em;
  padding-left: 1em;
  background: #000000 url(/site_media/images/arrow-down.gif) 95% 50% no-repeat; 
  margin: 0;
  padding: 0 0 0 1em;
  height:;
  display: block;
  height: 2.5em;
  line-height: 2.5em;
  color: #fff;
  text-decoration: none;
  font-weight: normal;
}

.map .corner {
  bottom: 0;
  right: 0;
  position: absolute;
}

.contactinfo {
  position: relative;
}

.contactinfo h2 {
  font-size: 1em;
  padding-left: 1em;
  background: #1a4b1d; 
  margin: 0;
  padding: 0 0 0 1em;
  height: 2.5em;
  line-height: 2.5em;
  text-transform: uppercase;
  color: #fff;
  font-weight: normal;
}

.contactinfo .icon {
  position: absolute;
  right: 5px;
  top: 2px;
}

.contactinfo dl {
  margin: 2px 0 0 0;
  padding: 0 0 0 1em;
  font-size: 0.9em;
  height: 1%;
  background-color: #00b263;
  border: 1px solid #83a66b;
}

.contactinfo a {
  color: #fff;
  text-decoration: none;
  font-weight: normal;
}

.contactinfo dt {
  float: left;
  width: 2em;
  padding: 0.7em 0;
}

.contactinfo dd {
  float: left;
  margin: 0;
  padding: 0.7em 0;
}

.contactinfo .hover {
  background-color: #9ccd4f;
  border: 1px solid #72a67b;
}

ul.search-listing {
  padding: 0;
  margin: 0;
  list-style: none;
}

.search-listing li {
  padding-bottom: 1em;
}

/* lightbox */

.close-link {
  position: absolute;
  bottom: 20px;
  right: 20px;
  font-size: 1em;
  font-weight: bold;
  color: #00b263;
  text-transform: uppercase;
  text-decoration: none;
}

#TB_overlay {
  position: fixed;
  z-index:100;
  top: 0px;
  left: 0px;
  height:100%;
  width:100%;
}
.TB_overlayMacFFBGHack { background: url(/site_media/images/macFFBgHack.png) repeat;}
.TB_overlayBG {
  background-color:#000;
  filter:alpha(opacity=75);
  -moz-opacity: 0.75;
  opacity: 0.75;
}

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

#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{
  display: none;
  background-color:#e8e8e8;
  height:27px;
}
#TB_ajaxContent{
  clear:both;
  padding:15px 15px 15px 15px;
  overflow:auto;
  text-align:left;
  line-height:1.4em;
}
#TB_ajaxContent.TB_modal{
  padding:20px;
}
#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;
}

/* lightbox inner */

.img-frame {
  position: relative;
  overflow: hidden;
  width: 728px;
  height: 252px;
}

.img-frame .next-link {
    position: absolute;
    right: 0;
    bottom: 0;
    height: 35px;
    list-style:none;
}

.img-frame .prev-link {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 35px;
}


.casestudylb {
  width: 728px;
  color: #194b1d;
  height: 530px;
  overflow: hidden;
}

div.casestudy-content {
    height:200px;
    overflow:auto;
}

.casestudylb h1 {
  margin: 0 0 0.75em 0;
  padding: 10px 0 10px 0;
  font-size: 1.6em;
  color: #00b263;
  border-bottom: 1px dashed #afb2b2;
}

.casestudylb h1 span {
  font-size: 0.6em;
  color: #9ccd4f;
  text-transform: uppercase;
  padding-left: 10px;
}

.csindex {
  color: #999;
  float: right;
  padding: 1.2em 0 0 0;
  font-size: 0.9em;
}

.casestudy-listing {
  margin: 0;
  padding: 0;
  list-style: none;
}

.casestudy-listing li a img {
  border: 10px solid #194b1d;
  margin-right: 21px;
}

.casestudy-container .next {
  position: absolute;
  right: 21px;
  top: 0px;
  z-index: 99;
}

.casestudy-container .prev {
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 99;
}
