/**=================================
 * Global styles
 */
body{
  text-align: center;
  padding: 0 0 39px 0;
}

html, body {
  min-height:100%;
  background-color: #e0e0e0;
}

.indent, .indent-double, .noindent {
  width: 960px;
  margin: 0 auto;
  text-align: left;
  position: relative;
  z-index: 1;
}

.indent {
  padding-left: 10px;
  width: 950px;
}

.indent-double {
  padding-left: 20px;
  width: 940px;
}

hr, div.hr {
  border: none;
  height: 5px;
  background: #fff url(/images/hr.gif) repeat-x 0 0;
  width: 100%;
  margin: 1.5em 0 1.5em;
}


/*
 Generic layout styles
 */
.col-1, .col-2, .col-3, .col-left, .col-right, .col {
  float: left;
  display: inline;
  position: relative;
}
.col-1, .col.odd {
  clear: left;
}

.layout-1 .col-1 {
  width: 470px;
  padding-right: 30px;
}
.layout-1 .col-2 {
  width: 460px;
}

.layout-2 .col-1 {
  width: 270px;
  padding-right: 17px;
}
.layout-2 .col-2 {
  width: 673px;
}

.layout-2 .col-left {
  width: 320px;
  padding-right: 30px;
}

.layout-2 .col-right {
  width: 323px;
}

.layout-3 .col-1 {
  width: 270px;
  padding-right: 17px;
}
.layout-3 .col-2 {
  width: 340px;
  padding-right: 33px;
}
.layout-3 .col-3 {
  width: 300px;
}

.layout-3 .col-2.span-2 {
  width: 673px;
  padding-right: 0;
}

.layout-3 .col-3.hidden {
  display: none;
}

.layout-portfolio .col.odd {
  width: 460px;
  padding-right: 40px;
}
.layout-portfolio .col.even {
  width: 460px;
}

/* Rounded corners */

.top_left, .top_right, .bottom_left, .bottom_right{
  width:11px;
  height:11px;
  line-height: 11px;
  position:absolute;
  overflow: hidden;
  background-repeat: no-repeat;
}

.top_left{top:0;left:0;background-position:0 0;background-image:url("/images/rc-tl.png");}
.top_right{top:0;right:0;background-position:100% 0;background-image:url("/images/rc-tr.png");}
.bottom_left{bottom:0;left:0;background-position:0 0;background-image:url("/images/rc-bl.png");}
.bottom_right{bottom:0;right:0;background-position:100% 0;background-image:url("/images/rc-br.png");}


/**=================================
 * Header styles
 */
#header {
  background: #323232 url(/images/bg.gif) repeat-x 50% 0;
  color: #fff;
}

#header .content {
  height: 140px;
  background: transparent url(/images/bg-hd.gif) no-repeat 100% 100%;
}

body.home #header {
  background-image: url(/images/bg-home.gif);
}

body.home #header .content {
  height: 490px;
  background: transparent url(/images/bg-hd.gif) no-repeat 100% 100%;
}

#logo {
  position: absolute;
  top: 0;
  left: -5px;
}
#logo a, #logo a:visited { border: none; background-color: transparent; }


/*
 Primary nav
*/
#primary_nav {
  position: absolute;
  top: 11px;
  right: 0;
  margin: 0;
  height: 40px;
  width: 675px;
}

#primary_nav li {
  margin: 0 10px;
  padding: 0 18px;
  float: left;
  display: inline;
  line-height: 40px;
  height: 40px;
  font-size: 15px;
}
#primary_nav a {
  line-height: 40px;
  height: 27px;
  padding-top: 13px;
  display: inline-block;
  vertical-align: middle;
  text-decoration: none;
  border: none;
  letter-spacing: -0.75px;
}
#primary_nav a, #primary_nav a:visited { color: #fff; border: none; background-color: transparent; }


#primary_nav li.last {
  margin-right: 0;
  padding: 0 15px;
}

#primary_nav li.selected, #primary_nav li:hover {
  background: transparent url(/images/menu-tab-75-on.png) no-repeat 50% 100%;
}

#primary_nav #primary_Home, #primary_nav #primary_Contactus {
  padding: 0 22px;
}

/* rollovers and selects */
#primary_nav #primary_Home.selected, #primary_nav #primary_Home:hover {background-image: url(/images/menu-tab-75-on.png);}
#primary_nav #primary_Whatwedo.selected, #primary_nav #primary_Whatwedo:hover {background-image: url(/images/menu-tab-100-on.png);}
#primary_nav #primary_Workwevedone.selected, #primary_nav #primary_Workwevedone:hover {background-image: url(/images/menu-tab-130-on.png);}
#primary_nav #primary_Whoweare.selected, #primary_nav #primary_Whoweare:hover {background-image: url(/images/menu-tab-105-on.png);}
#primary_nav #primary_Contactus.selected, #primary_nav #primary_Contactus:hover {background-image: url(/images/menu-tab-95-on.png);}


/* Contact details */
#contact_details {
  position: absolute;
  top: 80px;
  right: 0;
  height: 35px;
  width: 405px;
}

#contact_details div {
  float: left;
  display: inline;
  outline: none;
  height: 30px;
}

#contact_details .phone {
  width: 210px;
}

#contact_details .email {
  width: 187px;
}
#contact_details a {
  border: 0;
  background: none;
}

#intro {
  position: absolute;
  top: 138px;
  left: 0;
  width: 270px;
  height: 305px;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.6em;
}

/* Slider */
#slider {
  position: absolute;
  top: 130px;
  right: 4px;
  background: transparent url(/images/bg-slider.gif) no-repeat 0 0;
}

#slider-inside {
  position: relative;
  width: 640px;
  height: 290px;
  padding: 10px 10px 0 15px;
}

#slider .items div {
  width: 640px;
  height: 240px;
}

#slider a {
  border: 0;
  background-color: transparent;
}

div.scrollable {
    position:relative;
    overflow:hidden;
  width: 640px;
  height: 240px;
}

div.scrollable div.items {
    width:20000em;
    position:absolute;
}

div.scrollable div.items div {
    float:left;
  display: inline;
}

div.items div.active {
    border:1px inset #ccc;
    background-color:#fff;
}

/* this makes it possible to add next button beside scrollable */
div.scrollable {
  float:left;
}

/* prev, next, prevPage and nextPage buttons */
a.prev, a.next {
  display:block;
  width:20px;
  height:80px;
  background:url(/images/slider-prev.png) no-repeat;
  position: absolute;
  top: 80px;
  cursor:pointer;
  font-size:1px;
}

a.prev {
  background:url(/images/slider-prev.png) no-repeat;
  left: 15px;
}

/* mouseover state */
a.prev:hover{
  background:url(/images/slider-prev-on.png) no-repeat;
}

/* next button uses another background image */
a.next {
  background-image:url(/images/slider-next.png);
  right: 10px;
}

a.next:hover{
  background:url(/images/slider-next-on.png) no-repeat;
}

/* position and dimensions of the navigator */
div.navi {
  position: absolute;
  bottom: 20px;
  left: 15px;
}

/* items inside navigator */
#slider div.navi a {
  width:20px;
  height:20px;
  float:left;
  display:inline;
  margin-right:1px;
  font-size:10px;
  text-align: center;
  color: #95b02c;
  background-color: #1a1a1a;
}

/* mouseover state */
#slider div.navi a:hover, #slider div.navi a.active {
  color: #bcdd39;
}

a.portfolio-link {
  position: absolute;
  bottom: 20px;
  right: 10px;
  font-size: 90%;
}



/* Request Quotation button */
#quotation {
  position: absolute;
  bottom: 0;
  left: 0;
  margin-left: -5px;
}

#quotation a {
  display: block;
  text-indent: -9000px;
  outline: none;
  height: 45px;
  width: 205px;
  overflow: hidden;
  border: 0;
  background: transparent url(/images/quotation.png) no-repeat 0 0;
}

#quotation a:hover {
  background-position: -205px 0;
}

body.home .speech-bubble {
  text-align: center;
  font-size: 25px;
  letter-spacing: -1px;
  padding: 40px 25px;
}

body.home .speech-bubble p {
  margin-bottom: 0;
}

.speech-bubble p:last-child {
  margin-bottom: 0;
}

/**=================================
 * Body Header styles
 */
#body-header {
  background-color: #fff;
}

#body-header .col-1 img {
  margin-top: -32px;
  margin-left: 0;
}

#body-header .col-1 img.left {
  margin-left: -30px;
}

#body-header .col-2, #body-header .col-3 {
  padding-top: 40px;
}

#body-header .col-2 p {
  font-size: 16px;
  line-height: 1.6em;
}

#body-header .quote-link {
  text-align: right;
  padding-top: 1em;
}


#body-header .quote-link p {
  margin: 0;
}

#body-header .col-3 .client-quote {
  background: #fff url(/images/bg-client-quote.gif) no-repeat 0 100%;
  padding-bottom: 1em;
  color: #3f3f3f;
}

#body-header .col-3 .client-quote div {
  background: #fff url(/images/bg-client-quote.gif) no-repeat 0 0;
  padding: 40px 5px 0 18px;
}

#body-header .col-3 .client-quote h3 {
  color: #fff;
  margin-bottom: .5em;
}

#body-header .col-3 .client-quote p {
  margin-bottom: .5em;
}

/**=================================
 * Body styles
 */
#body {
  background: #fff url(/images/bg-body-bottom.gif) repeat-x 50% 100%;
  padding: 0 0 75px;
}

#body .content {
  background: #fff url(/images/bg-body-top.gif) no-repeat 50% -5px;
  padding-top: 40px;
}
body.home #body .content {
  background-position: 50% 0;
  padding-top: 40px;
}

.col-1 .twitter {
  background: #ededed url(/images/twitter1.gif) no-repeat 0 100%;
  padding-bottom: 6px;
  margin-bottom: 1em;
}

.col-1 .twitter div {
  background: transparent url(/images/twitter1.gif) no-repeat 0 0;
  padding: 55px 17px 0;
}

.col-3 .twitter {
  background: #ededed url(/images/twitter2.gif) no-repeat 0 100%;
  padding-bottom: 6px;
  margin-bottom: 1em;
  margin-top: 1.5em;
}

.col-3 .twitter div {
  background: transparent url(/images/twitter2.gif) no-repeat 0 0;
  padding: 55px 17px 0;
}

table.services .icon {
  padding-top: .5em;
}
table.services .icon a {
  border: 0;
  background-color: transparent;
}

table.services .details {
  padding-bottom: 1.5em;
}

.call-to-action a, .call-to-action a:hover {
  border: none;
  background-color: transparent;
}

.layout-2 .call-to-action {
  padding-top: 1em;
  clear: left;
}

body.contact-us .col-1 a {
  border: none;
}

/* sidemenu nav */

#sidemenu_nav {
  margin: 0;
  padding: 0;
  margin-bottom: 26px;
  list-style: none;
  list-style-image: none;
}

#sidemenu_nav li {
  margin: 0 0 6px 0;
  padding: 0;
  float: left;
  display: inline;
  width: 270px;
  clear: both;
}

#sidemenu_nav a {
  line-height: 30px;
  height: 34px;
  width: 270px;
  text-indent: 18px;
  display: block;
  vertical-align: middle;
  text-decoration: none;
  border: none;
  background: transparent url(/images/sidemenu.gif) no-repeat 0 0;
  font-weight: bold;
  color: #8da62b;
}

#sidemenu_nav a, #sidemenu_nav a:visited { color: #8da62b; border: none; background-color: transparent; }

#sidemenu_nav li.selected a, #sidemenu_nav li a:hover {
  background-image: url(/images/sidemenu-on.gif);
  color: #3f3f3f;
}


/**=================================
 * Portfolio styles
 */
.def {
  padding: 0 0 10px 14px;
  margin: 0 0 10px;
  border-bottom: 1px dashed #aaa;
}

.defCTA {
  padding: 0 0 10px 0px;
  margin: 0 0 10px;
  border: none;
}

.defButton {
  padding: 0 0 0 14px;
  margin: 0;
  border: none;
}


body.portfolio-item .def {
  padding: 0 0 10px 10px;
}

.def span {
  float: left;
  display: inline;
  width: 80px;
  font-weight: bold;
}

body.portfolio .def a {
  margin-right: 35px;
}

.def p {
  margin: 0;
}

.layout-portfolio .col {
  margin-top: 10px;
  margin-bottom: 10px;
}

.layout-portfolio .call-to-action {
  padding-left: 13px;
}

body.portfolio-item .layout-portfolio .call-to-action {
  padding-left: 0;
}

.layout-portfolio .call-to-action a, .layout-portfolio .call-to-action a:visited {
  border: none;
}

.thumbs {
  padding-top: 0.666em;
  margin-left: -20px;
}

.thumbs img {
  margin-left: 20px;
  padding-bottom: 1em;
  float: left;
  display: inline;
}

.like {
  margin-bottom: 0.5em;
  float: left;
}

body.portfolio-item .layout-portfolio .call-to-action p {
  clear: left;
}

body.portfolio-item .layout-portfolio .call-to-action p.buttons {
  clear: none;
}

.buttons {
  width: 144px;
  float: right;
  display: inline;
  text-align: right;
  padding-top: 2px;
  padding-bottom: 7px;
}

.buttons a {
  display: block;
  margin-bottom: 7px;
}

.quote {
  background: #fff url(/images/bg-client-quote2.gif) no-repeat 0 100%;
  padding-bottom: 1em;
  margin-bottom: 1.6em;
  color: #3f3f3f;
}

.quote div {
  background: #fff url(/images/bg-client-quote2.gif) no-repeat 0 0;
  padding: 50px 5px 0 15px;
}

.quote p {
  margin-bottom: .5em;
}


/**=================================
 * Menubar styles
 */

#menubar {
  background: #f4f4f4 url(/images/bg-menubar.gif) no-repeat 50% 0;
  padding: 5px 0 10px;
  font-size: 12px;
}

#menubar ul {
  margin: 0;
  padding: 5px 0;
}

#menubar ul li {
  margin: 0;
  padding: 0 55px 0 10px;
  white-space: nowrap;
  display: inline;
  float: left;
  line-height: 24px;
  background: transparent url(/images/arrow-main.gif) no-repeat 0 50%;
}

#menubar ul li.last {
  padding-right: 0;
}

#menubar ul a {
  text-decoration: none;
  border: none;
}

#menubar ul#footermain_nav {
}

#menubar ul#footersub_nav {
  font-size: 11px;
  border-top: 1px solid #d8d8d8;
  margin-top: 1em;
}

#menubar ul#footersub_nav li {
  padding: 0 45px 0 9px;
  background: transparent url(/images/arrow-sub.gif) no-repeat 0 50%;
}


/**=================================
 * Footer copyright styles
 */
#footer-copyright {
  padding: 10px 0 0;
  margin-bottom: 50px;
  color: #7a7a7a;
  font-size: 10px;
  line-height: 1.6em;
  background: transparent url(/images/bg-footer.gif) no-repeat 50% 100%;
}

#footer-copyright .content {
  background: transparent url(/images/footer-icon.gif) no-repeat 100% 13px;
  padding: 10px 0 20px;
}

.contact {
  float: left;
  display: inline;
}

.copyright {
  float: right;
  display: inline;
  text-align: right;
  padding-right: 40px;
}

#footer-copyright a {
  text-decoration: none;
  border: 0;
}
