/* ==========================================================================
   RESETS & FONTS ###########################################################
   ========================================================================== */
/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}

h3 {
  font-size: 1.17em;
  margin: 1em 0;
}

h4 {
  font-size: 1em;
  margin: 1.33em 0;
}

h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}

h6 {
  font-size: 0.67em;
  margin: 2.33em 0;
}

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/**
 * Address styling not present in IE 6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 1em 0;
}

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none;
}

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: "";
  content: none;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0 0 0 40px;
}

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px;
}

/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0; /* 1 */
  -ms-interpolation-mode: bicubic; /* 2 */
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0; /* 1 */
  padding: 0;
  white-space: normal; /* 2 */
  *margin-left: -7px; /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
  vertical-align: baseline; /* 3 */
  *vertical-align: middle; /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
  *overflow: visible; /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
  *height: 13px; /* 3 */
  *width: 13px; /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
html,
button,
input,
select,
textarea {
  color: #222;
}

html {
  font-size: 1em;
  line-height: 1.4;
}

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

audio,
canvas,
img,
video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

.browsehappy {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

a[href^=tel] {
  color: inherit;
  text-decoration: none;
}

/* ==========================================================================
   COMPASS / SASS IMPORTS & VARIABLES #######################################
   ========================================================================== */
/* ==========================================================================
   Mobile / Default Site CSS ################################################
   ========================================================================== */
/* ===============
   Mobile: General
   =============== */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  font-size: 16px;
  line-height: 24px;
  font-family: "Source Sans Pro", Helvetica, Helvetica Neue, Arial;
  -webkit-text-size-adjust: none;
  color: #676767;
}

p {
  max-height: 100000px; /* FIX android from ignoring text adjust */
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
}

b, strong {
  font-weight: 700;
}

a, a:active, a:focus, a:hover, a:visited {
  outline: 0;
}

p a {
  font-weight: 700;
  color: #8f4b04;
}
p a:hover, p a:focus {
  color: #40902d;
}

.scroll-off {
  pointer-events: none;
}

.allcaps {
  text-transform: uppercase;
}

.italic {
  font-style: italic;
}

.titlefont {
  font-family: Georgia;
}

.seriffont {
  font-family: "Sanchez";
}

.light {
  font-weight: 300;
}

.normal {
  font-weight: 400;
}

.semi {
  font-weight: 600;
}

.bold {
  font-weight: 700;
}

.ultra {
  font-weight: 900;
}

.nextline {
  display: block;
}

.anchoroffset {
  display: block;
  position: relative;
  top: -124px;
  visibility: hidden;
}

video {
  display: none;
  width: 100%;
}

/* ==============
   MOBILE: Header
   ============== */
header {
  border-bottom: 5px solid #40902d;
  min-height: 124px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #ffffff;
}
header .headwrap {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 10px 0 0 0;
}
header .logo {
  text-align: center;
}
header .logo a {
  display: inline-block;
}
header .logo a img {
  width: 120px;
  max-width: 100%;
}
header .logo .designelement {
  display: none;
}
header .headphone {
  padding: 4px 0 6px 4%;
}
header .headphone p {
  margin: 0;
  font-size: 1.3em;
}
header .headphone p a {
  color: #40902d;
}
header .headphone p a:hover, header .headphone p a:focus {
  color: #8f4b04;
}
header .togglewrap {
  position: absolute;
  right: 4%;
  top: 85px;
  width: 27px;
  cursor: pointer;
}
header .togglewrap img {
  width: 100%;
}
header .headnav ul {
  display: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
header .headnav ul li {
  list-style: none;
  display: block;
}
header .headnav ul li a {
  color: #40902d;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 600;
  display: block;
  padding: 3px 0;
}
header .headnav ul li a:hover, header .headnav ul li a:focus {
  background: #40902d;
  color: #ffffff;
}

/* ==============
   MOBILE: Body
   ============== */
.introslider {
  height: 350px;
  color: #ffffff;
  position: relative;
  margin: 126px 0 0 0;
}
.introslider .introwrap {
  position: absolute;
  top: 50%;
  -webkit-transform: translatey(-50%);
          transform: translatey(-50%);
  padding: 0 4%;
  text-align: center;
  width: 100%;
}
.introslider .introwrap h1 {
  margin: 0 0 15px 0;
  background: url("../images/greenshade.png") center center;
  font-size: 1em;
  letter-spacing: 1px;
  padding: 5px;
  display: inline-block;
}
.introslider .introwrap p {
  margin: 0;
  font-size: 0.9em;
  line-height: 1.5em;
  text-shadow: 0 0 5px #000000;
}
.introslider .triangleelement {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 40px;
  width: 100%;
  background: url("../images/large_triangle.png") no-repeat center bottom;
  background-size: auto 100%;
}

.homeslider {
  background: url("../images/jaj_construction_projects.jpg") no-repeat center center;
  background-size: cover;
}

.contactslider {
  background: url("../images/projectsslide.jpg") no-repeat center center;
  background-size: cover;
}

.servicesslider {
  background: url("../images/jaj_construction_services.jpg") no-repeat center center;
  background-size: cover;
}

.projectsslider {
  background: url("../images/loader.jpg") no-repeat center center;
  background-size: cover;
}

.careersslider {
  background: url("../images/jaj_careers.jpg") no-repeat center center;
  background-size: cover;
}

.aboutslider {
  background: url("../images/jaj_construction_about.jpg") no-repeat center center;
  background-size: cover;
}

.ltgreysection {
  background: #f3f3f3;
}

.offwhitesection {
  background: #e6e6dd;
}

.contentsection {
  padding: 40px 4%;
}
.contentsection .sectionwrap {
  margin: 0 auto;
  max-width: 1000px;
  position: relative;
}
.contentsection .sectionwrap h2 {
  text-align: center;
  margin: 0 0 15px 0;
  font-size: 1.2em;
  color: #40902d;
}
.contentsection .sectionwrap p:last-child {
  margin: 0;
}
.contentsection .sectionwrap .tabwrap .tab, .contentsection .sectionwrap .tabwrap .tablink, .contentsection .sectionwrap .tabwrap .tablinkalt {
  padding: 10px 15px;
  margin: 0 auto 40px auto;
  background: url("../images/whitebar.png") repeat-x left bottom #8f4b04;
  max-width: 320px;
}
.contentsection .sectionwrap .tabwrap .tab p, .contentsection .sectionwrap .tabwrap .tablink p, .contentsection .sectionwrap .tabwrap .tablinkalt p {
  color: #ffffff;
  margin: 0;
  font-size: 1.4em;
}
.contentsection .sectionwrap .tabwrap .tab p span, .contentsection .sectionwrap .tabwrap .tablink p span, .contentsection .sectionwrap .tabwrap .tablinkalt p span {
  font-style: normal;
  display: block;
}
.contentsection .sectionwrap .tabwrap .tablink {
  padding: 0;
  background: url("../images/whitebarlink.png") repeat-x left bottom #8f4b04;
}
.contentsection .sectionwrap .tabwrap .tablink a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
}
.contentsection .sectionwrap .tabwrap .tablink:hover {
  background: url("../images/whitebarlink_hover.png") repeat-x left bottom #40902d;
}
.contentsection .sectionwrap .tabwrap .tablinkalt {
  padding: 0;
  background: url("../images/whitebarlink_alt.png") repeat-x left bottom #8f4b04;
}
.contentsection .sectionwrap .tabwrap .tablinkalt a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
}
.contentsection .sectionwrap .tabwrap .tablinkalt:hover {
  background: url("../images/whitebarlink_hover_alt.png") repeat-x left bottom #40902d;
}
.contentsection .sectionwrap .boxes3 .box {
  margin: 0 0 30px 0;
  margin: 0 auto 30px auto;
  max-width: 320px;
}
.contentsection .sectionwrap .boxes3 .box:last-child {
  margin: 0 auto;
}
.contentsection .sectionwrap .boxes3 .box img {
  width: 100%;
}
.contentsection .sectionwrap .boxes3 .box a {
  display: block;
  background: #40902d;
  color: #ffffff;
  text-decoration: none;
  padding: 10px 0;
  text-align: center;
  letter-spacing: 2px;
  font-size: 1.1em;
}
.contentsection .sectionwrap .boxes3 .box a:hover, .contentsection .sectionwrap .boxes3 .box a:focus {
  background: #8f4b04;
}
.contentsection .sectionwrap .slideaside .listarea .listheading {
  display: block;
  background: #40902d;
  color: #ffffff;
  text-decoration: none;
  padding: 10px 0;
  text-align: center;
  letter-spacing: 2px;
  font-size: 1.1em;
  margin: 0 0 1em 0;
}
.contentsection .sectionwrap .slideaside .listarea ul {
  padding: 0;
}
.contentsection .sectionwrap .slideaside .listarea ul li {
  text-align: center;
  list-style: none;
  color: #40902d;
}
.contentsection .sectionwrap .contactbox {
  background: #8f4b04;
  padding: 10px 15px;
  margin: 0 0 30px 0;
}
.contentsection .sectionwrap .contactbox p {
  text-align: center;
  color: #ffffff;
  margin: 0;
  font-size: 0.9em;
}
.contentsection .sectionwrap .contactbox p span {
  display: block;
}
.contentsection .sectionwrap .joblistings {
  margin: 0 0 50px 0;
}
.contentsection .sectionwrap .joblistings .listing {
  background: #ffffff;
  padding: 20px;
  margin: 0 0 20px 0;
}
.contentsection .sectionwrap .joblistings .listing:last-child {
  margin: 0;
}
.contentsection .sectionwrap .joblistings .listing h3 {
  margin: 0 0 15px 0;
  color: #40902d;
}
.contentsection .sectionwrap .joblistings .listing h4 {
  margin: 0 0 5px 0;
}
.contentsection .sectionwrap .joblistings .listing ul {
  padding: 0 0 0 19px;
  margin: 0 0 15px 0;
}
.contentsection .sectionwrap .joblistings .listing p {
  margin: 0 0 15px 0;
}
.contentsection .sectionwrap .joblistings .listing p:last-child {
  margin: 0;
}
.contentsection .sectionwrap .joblistings .listing .applybutton {
  display: block;
  margin: 10px auto;
  width: 150px;
  border: none;
  background: #40902d;
  color: #ffffff;
  font-weight: 700;
  text-transform: uppercase;
  padding: 8px 0 6px 0;
}
.contentsection .sectionwrap .joblistings .listing .applybutton:hover, .contentsection .sectionwrap .joblistings .listing .applybutton:focus {
  cursor: pointer;
  background: #8f4b04;
}
.contentsection .sectionwrap .joblistings .listing .appform .contactform {
  margin: 0 !important;
  padding: 0 !important;
}

.callout {
  padding: 15px 4%;
  background: #40902d;
}
.callout .calloutwrap {
  text-align: center;
  background: url("../images/whitebarbasic.png") repeat-x center center;
}
.callout .calloutwrap h2 {
  color: #ffffff;
  font-size: 1.1em;
  margin: 0.1em 0 0 0;
  display: inline-block;
  background: #40902d;
  padding: 0 10px;
}

.photobg {
  padding: 40px 4%;
}

.greenbarsection {
  max-width: 1000px;
  margin: 0 auto;
  border-top: 10px solid #40902d;
  border-bottom: 10px solid #40902d;
  padding: 20px 0;
}

.trusted {
  background: url("../images/skyline.jpg") center center;
  background-size: cover;
}
.trusted .trustedbox .trustedleft img {
  width: 90%;
  max-width: 290px;
  margin: 0 auto;
  display: block;
}
.trusted .trustedbox .trustedright h2 {
  text-align: center;
  font-size: 1.1em;
  color: #40902d;
}
.trusted .trustedbox .trustedright .socialbuttons {
  font-size: 0;
  text-align: center;
}
.trusted .trustedbox .trustedright .socialbuttons a {
  display: inline-block;
  font-size: 16px;
  width: 33px;
  margin: 0 6px 0 0;
}
.trusted .trustedbox .trustedright .socialbuttons a:last-child {
  margin: 0;
}
.trusted .trustedbox .trustedright .socialbuttons a img {
  width: 100%;
}

.charcoalbg {
  background: #565a5c;
}

.testimonials {
  position: relative;
}
.testimonials .testimonial {
  position: relative;
  z-index: 2;
  padding: 80px 4% 80px 4%;
}
.testimonials .testimonial .testimonialwrap {
  margin: 0 auto;
  max-width: 1000px;
  height: 120px;
}
.testimonials .testimonial .testimonialwrap .bx-wrapper {
  background: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border: none !important;
  margin: 0 !important;
}
.testimonials .testimonial .testimonialwrap .bx-wrapper ul {
  margin: 0;
  padding: 0;
}
.testimonials .testimonial .testimonialwrap .bx-wrapper .quotewrap1 {
  padding: 20px 0 0 0;
}
.testimonials .testimonial .testimonialwrap .quote, .testimonials .testimonial .testimonialwrap .attribution {
  color: #ffffff;
  text-align: center;
  display: block;
  margin: 0 auto;
  max-width: 345px;
}

.serviceswrap .servicesleft {
  margin: 0 0 25px 0;
}
.serviceswrap .servicesleft ul {
  margin: 0;
  padding: 0 0 0 18px;
}
.serviceswrap .servicesright img {
  width: 100%;
}

.profilewrap {
  margin: 0 0 30px 0;
}
.profilewrap:last-child {
  margin: 0;
}
.profilewrap .profileright img {
  width: 100%;
}

.fourohfour {
  position: relative;
}
.fourohfour .fourohfourcontainer {
  position: relative;
  z-index: 2;
  padding: 80px 4% 80px 4%;
}
.fourohfour .fourohfourcontainer .fourohfourwrap {
  margin: 0 auto;
  max-width: 1000px;
}
.fourohfour .fourohfourcontainer .fourohfourwrap p {
  text-align: center;
}
.fourohfour .fourohfourcontainer .fourohfourwrap .firstnotice {
  font-size: 1.5em;
}
.fourohfour .fourohfourcontainer .fourohfourwrap .secondnotice a {
  color: #40902d;
}

.vignette {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) inset;
          box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4) inset;
}

.lastsection {
  position: relative;
}
.lastsection .triangles {
  background: url("../images/large_triangle_double.png") center bottom repeat-x;
  height: 68px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}

.lastsectionspacer {
  width: 100%;
  height: 40px;
}

/* ==========================================================================
   Mobile Form               ################################################
   ========================================================================== */
.contactform {
  padding: 0 0 10px 0;
  margin: 0 0 30px 0;
}
.contactform .contactformwrap h3 {
  font-size: 1.3em;
  margin: 0 0 10px 0 !important;
}
.contactform .contactformwrap form {
  width: 100%;
}
.contactform .contactformwrap form label {
  display: block;
  font-weight: 700;
  color: #40902d;
  text-transform: uppercase;
  font-size: 0.9em;
  letter-spacing: 1px;
}
.contactform .contactformwrap form .name input, .contactform .contactformwrap form .name select, .contactform .contactformwrap form .name textarea, .contactform .contactformwrap form .email input, .contactform .contactformwrap form .email select, .contactform .contactformwrap form .email textarea, .contactform .contactformwrap form .message input, .contactform .contactformwrap form .message select, .contactform .contactformwrap form .message textarea, .contactform .contactformwrap form .subject input, .contactform .contactformwrap form .subject select, .contactform .contactformwrap form .subject textarea {
  width: 100%;
  margin: 0px 0px 10px 0px;
  background: #ffffff;
  border: 2px solid #cdcdcd;
  color: #565a5c;
  padding: 5px;
}
.contactform .contactformwrap form .name textarea, .contactform .contactformwrap form .email textarea, .contactform .contactformwrap form .message textarea, .contactform .contactformwrap form .subject textarea {
  height: 80px;
}
.contactform .contactformwrap form .reminder p {
  font-size: 0.7em;
  margin: 0 0 10px 0;
  text-align: center;
}
.contactform .contactformwrap form .formfoot .captcha {
  width: 100%;
  margin: 0px 0px 25px 0px;
}
.contactform .contactformwrap form .formfoot .captcha label {
  text-align: center;
}
.contactform .contactformwrap form .formfoot .captcha img {
  display: block;
  margin: 0 auto;
}
.contactform .contactformwrap form .formfoot .captcha input {
  width: 166px;
  display: block;
  margin: 10px auto 0 auto;
  background: #ffffff;
  border: 2px solid #cdcdcd;
  color: #565a5c;
  padding: 5px;
}
.contactform .contactformwrap form .formfoot .submission {
  width: 100%;
  padding: 0px;
}
.contactform .contactformwrap form .formfoot .submission input {
  width: 100%;
  max-width: 250px;
  border: none;
  padding: 8px 7px 6px 7px;
  font-weight: 700;
  margin: 0px auto 10px auto;
  display: block;
  background: #40902d;
  text-transform: uppercase;
  color: #ffffff;
}
.contactform .contactformwrap form .formfoot .submission input:hover, .contactform .contactformwrap form .formfoot .submission input:focus {
  background: #8f4b04;
}

.emailnotification {
  position: fixed;
  z-index: 9999;
  bottom: 0px;
  left: 0px;
  width: 100%;
  padding: 0 40px;
}
.emailnotification p {
  color: #ffffff !important;
  font-weight: 700;
  text-align: center !important;
  margin: 12px 0 !important;
}
.emailnotification .closebutton {
  width: 20px;
  position: absolute;
  top: 12px;
  right: 10px;
  cursor: pointer;
}
.emailnotification .closebutton img {
  width: 100%;
}

.rednote {
  background: #ff0000;
}

.greennote {
  background: #009933;
}

/* ==============
   MOBILE: Footer
   ============== */
footer {
  padding: 20px 4%;
}
footer .footerwrap {
  background: #ffffff;
}
footer .footerwrap .footertop .footlogo {
  text-align: center;
  margin: 0 0 20px 0;
}
footer .footerwrap .footertop .footlogo a {
  display: inline-block;
}
footer .footerwrap .footertop .footlogo a img {
  width: 100%;
  max-width: 120px;
}
footer .footerwrap .footertop .footsocial {
  font-size: 0;
  text-align: center;
}
footer .footerwrap .footertop .footsocial a {
  display: inline-block;
  font-size: 16px;
  width: 33px;
  margin: 0 6px 0 0;
}
footer .footerwrap .footertop .footsocial a:last-child {
  margin: 0;
}
footer .footerwrap .footertop .footsocial a img {
  width: 100%;
}
footer .footerwrap .footertop .footcontact p {
  color: #40902d;
  text-align: center;
  margin: 20px 0;
  font-size: 1.1em;
}
footer .footerwrap .copyright p {
  text-align: center;
  font-size: 0.7em;
  line-height: 1.5em;
}
footer .footerwrap .copyright p a {
  color: inherit;
  text-decoration: none;
}
footer .footerwrap .copyright p a:hover, footer .footerwrap .copyright p a:focus {
  color: #8f4b04;
}
footer .footerwrap .copyright p span {
  display: block;
}

/* ==========================================================================
   Tablet ###################################################################
   ========================================================================== */
@media only screen and (min-width: 480px) {
  /* ===============
     TABLET: General
     =============== */
  /* ===============
     TABLET: Header
     =============== */
  /* ===============
     TABLET: Body
     =============== */
  /* ===============
     TABLET: Footer
     =============== */
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .anchoroffset {
    display: block;
    position: relative;
    top: -64px;
    visibility: hidden;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  header {
    padding: 0 4%;
    min-height: 64px;
  }
  header .logo {
    position: absolute;
    left: 0;
    bottom: -68px;
    width: 150px;
  }
  header .logo a {
    position: relative;
    z-index: 9999;
  }
  header .logo a img {
    width: 120px;
  }
  header .logo .designelement {
    position: relative;
    z-index: 9998;
    top: -23px;
    display: block;
    height: 45px;
    width: 100%;
    background: #ffffff;
    border-left: 5px solid #40902d;
    border-right: 5px solid #40902d;
    border-bottom: 5px solid #40902d;
  }
  header .headphone {
    padding: 5px 10px 0 0;
    text-align: right;
  }
  header .headphone p {
    font-size: 1.1em;
  }
  header .togglewrap {
    display: none;
  }
  header .headnav ul {
    display: block;
    text-align: right;
  }
  header .headnav ul li {
    display: inline-block;
  }
  header .headnav ul li a {
    padding: 3px 8px;
    font-size: 0.8em;
  }
}
@media only screen and (min-width: 480px) {
  .introslider {
    height: 350px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .introslider {
    margin: 64px 0 0 0;
  }
}
@media only screen and (min-width: 480px) {
  .introslider .introwrap h1 {
    font-size: 1.2em;
    letter-spacing: 1px;
    padding: 10px;
  }
  .introslider .introwrap p {
    font-size: 0.95em;
    line-height: 1.5em;
  }
  .introslider .introwrap p .nextline {
    display: inline;
  }
  .introslider .triangleelement {
    height: 45px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .introslider {
    height: 410px;
  }
  .introslider .introwrap h1 {
    font-size: 1.5em;
    letter-spacing: 1px;
    padding: 15px;
  }
  .introslider .introwrap p {
    font-size: 1em;
    letter-spacing: 1px;
  }
  .introslider .triangleelement {
    height: 55px;
  }
}
@media only screen and (min-width: 480px) {
  .contentsection .sectionwrap h2 {
    font-size: 1.2em;
  }
  .contentsection .sectionwrap .tabwrap .tab, .contentsection .sectionwrap .tabwrap .tablink, .contentsection .sectionwrap .tabwrap .tablinkalt {
    max-width: 1000px;
  }
  .contentsection .sectionwrap .tabwrap .tab p, .contentsection .sectionwrap .tabwrap .tablink p, .contentsection .sectionwrap .tabwrap .tablinkalt p {
    font-size: 1.4em;
  }
  .contentsection .sectionwrap .boxes3 {
    font-size: 0;
    text-align: center;
  }
  .contentsection .sectionwrap .boxes3 .box {
    display: inline-block;
    width: 30%;
    font-size: 16px;
    margin: 0 5% 0 0;
    max-width: 320px;
  }
  .contentsection .sectionwrap .boxes3 .box:last-child {
    margin: 0;
  }
  .contentsection .sectionwrap .boxes3 .box a {
    font-size: 0.9em;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .contentsection {
    padding: 50px 4%;
  }
  .contentsection .sectionwrap h2 {
    text-align: left;
    font-size: 1.4em;
  }
  .contentsection .sectionwrap .boxes3 .box a {
    font-size: 1em;
  }
  .contentsection .sectionwrap .slideaside {
    font-size: 0;
  }
  .contentsection .sectionwrap .slideaside .listarea {
    font-size: 16px;
    display: inline-block;
    width: 30%;
    margin: 0 5% 0 0;
    vertical-align: top;
  }
  .contentsection .sectionwrap .slideaside .listarea .listheading {
    font-size: 1em;
  }
  .contentsection .sectionwrap .slideaside .listarea ul li {
    font-size: 0.9em;
  }
  .contentsection .sectionwrap .slideaside .slidearea {
    font-size: 16px;
    display: inline-block;
    width: 65%;
    vertical-align: top;
  }
  .contentsection .sectionwrap .contactbox p {
    font-size: 1em;
  }
  .contentsection .sectionwrap .contactbox p span {
    display: inline;
    margin: 0 10px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 760px) {
  .contentsection .sectionwrap h2 {
    font-size: 1.5em;
  }
  .contentsection .sectionwrap .tabwrap {
    font-size: 0;
  }
  .contentsection .sectionwrap .tabwrap .maincontent {
    font-size: 16px;
    display: inline-block;
    width: 65%;
    margin: 0 5% 30px 0;
    vertical-align: top;
  }
  .contentsection .sectionwrap .tabwrap .tab, .contentsection .sectionwrap .tabwrap .tablink, .contentsection .sectionwrap .tabwrap .tablinkalt {
    font-size: 16px;
    max-width: 1000px;
    margin: 6px 0 30px 0;
    display: inline-block;
    width: 30%;
    vertical-align: top;
  }
  .contentsection .sectionwrap .tabwrap .tab p, .contentsection .sectionwrap .tabwrap .tablink p, .contentsection .sectionwrap .tabwrap .tablinkalt p {
    font-size: 1.26em;
  }
}
@media only screen and (min-width: 480px) and (min-width: 760px) and (min-width: 830px) {
  .contentsection .sectionwrap .tabwrap .tab p, .contentsection .sectionwrap .tabwrap .tablink p, .contentsection .sectionwrap .tabwrap .tablinkalt p {
    font-size: 1.4em;
  }
}
@media only screen and (min-width: 480px) and (min-width: 760px) {
  .contentsection .sectionwrap .boxes3 .box a {
    font-size: 1.1em;
  }
  .contentsection .sectionwrap .slideaside .listarea .listheading {
    font-size: 1.1em;
  }
  .contentsection .sectionwrap .slideaside .listarea ul li {
    font-size: 1em;
    margin: 0 0 8px 0;
  }
}
@media only screen and (min-width: 480px) {
  .callout {
    padding: 15px 4%;
  }
  .callout .calloutwrap h2 {
    font-size: 1.3em;
    padding: 0 15px;
    letter-spacing: 1px;
  }
  .callout .calloutwrap h2 span {
    margin: 0 0 0 7px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .callout {
    padding: 20px 4%;
  }
  .callout .calloutwrap h2 {
    font-size: 1.5em;
    padding: 0 18px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 720px) {
  .callout {
    padding: 25px 4%;
  }
  .callout .calloutwrap h2 {
    font-size: 1.8em;
    padding: 0 20px;
  }
}
@media only screen and (min-width: 480px) {
  .trusted .trustedbox .trustedright h2 {
    font-size: 1.3em;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .photobg {
    padding: 50px 4%;
  }
  .trusted .trustedbox .trustedright h2 {
    font-size: 1.5em;
  }
}
@media only screen and (min-width: 480px) and (min-width: 720px) {
  .photobg {
    padding: 50px 4%;
  }
  .trusted .trustedbox {
    position: relative;
  }
  .trusted .trustedbox .trustedleft {
    position: absolute;
    top: 0;
    left: 0;
  }
  .trusted .trustedbox .trustedleft img {
    max-width: 200px;
  }
  .trusted .trustedbox .trustedright {
    margin: 0 0 0 230px;
  }
  .trusted .trustedbox .trustedright h2 {
    text-align: left;
    font-size: 1.6em;
  }
  .trusted .trustedbox .trustedright .socialbuttons {
    text-align: right;
  }
}
@media only screen and (min-width: 480px) {
  .testimonials .testimonial {
    padding: 80px 4% 80px 4%;
  }
  .testimonials .testimonial .testimonialwrap {
    height: 120px;
  }
  .testimonials .testimonial .testimonialwrap .quote, .testimonials .testimonial .testimonialwrap .attribution {
    font-size: 1.1em;
    max-width: 380px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .testimonials .testimonial {
    padding: 100px 4% 100px 4%;
  }
  .testimonials .testimonial .testimonialwrap {
    height: 135px;
  }
  .testimonials .testimonial .testimonialwrap .quote, .testimonials .testimonial .testimonialwrap .attribution {
    font-size: 1.3em;
    max-width: 450px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 720px) {
  .testimonials .testimonial {
    padding: 120px 4% 120px 4%;
  }
  .testimonials .testimonial .testimonialwrap {
    height: 180px;
  }
  .testimonials .testimonial .testimonialwrap .quote, .testimonials .testimonial .testimonialwrap .attribution {
    font-size: 1.5em;
    line-height: 1.5em;
    max-width: 500px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  .profilewrap {
    position: relative;
  }
  .profilewrap .profileleft {
    margin: 0 220px 0 0;
  }
  .profilewrap .profileright {
    position: absolute;
    top: 0;
    right: 0;
    width: 200px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 720px) {
  .profilewrap {
    position: relative;
  }
  .profilewrap .profileleft {
    margin: 0 260px 0 0;
  }
  .profilewrap .profileright {
    position: absolute;
    top: 0;
    right: 0;
    width: 240px;
  }
}
@media only screen and (min-width: 480px) and (min-width: 600px) {
  footer {
    padding: 0px 4% 20px 4%;
  }
  footer .footerwrap {
    max-width: 740px;
    margin: 0 auto;
  }
  footer .footerwrap .footertop {
    font-size: 0;
  }
  footer .footerwrap .footertop .footlogo {
    font-size: 16px;
    text-align: left;
    display: inline-block;
    width: 30%;
    vertical-align: top;
  }
  footer .footerwrap .footertop .footsocial {
    display: inline-block;
    width: 40%;
    vertical-align: top;
    padding: 26px 0 0 0;
  }
  footer .footerwrap .footertop .footcontact {
    font-size: 16px;
    display: inline-block;
    width: 30%;
    vertical-align: top;
  }
  footer .footerwrap .footertop .footcontact p {
    text-align: right;
    margin: 5px 0 0 0;
    font-size: 1em;
  }
  footer .footerwrap .copyright p span {
    display: inline;
    margin: 0 0 0 10px;
  }
}
/* END TABLET */
/* ==========================================================================
   Desktop ##################################################################
   ========================================================================== */
@media only screen and (min-width: 800px) {
  /* ===============
     DESKTOP: General
     =============== */
  .anchoroffset {
    display: block;
    position: relative;
    top: -59px;
    visibility: hidden;
  }
  video {
    display: block;
  }
  /* ===============
     DESKTOP: Header
     =============== */
  header {
    min-height: 59px;
  }
  header .headphone {
    padding: 0;
    text-align: right;
    position: absolute;
    right: 0;
    bottom: 15px;
  }
  header .headphone p {
    font-size: 1.2em;
  }
  header .togglewrap {
    display: none;
  }
  header .headnav {
    margin: 0 125px 0 0;
  }
  header .headnav ul {
    display: block;
    text-align: right;
  }
  header .headnav ul li {
    display: inline-block;
  }
  header .headnav ul li a {
    padding: 15px 5px 15px 5px;
    font-size: 0.8em;
    width: 77px;
    text-align: center;
  }
  header .headnav ul li a:hover, header .headnav ul li a:focus {
    background: url("../images/header_triangle_new.png") no-repeat center bottom;
    background-size: 100%;
    color: #8f4b04;
  }
  /* ===============
     DESKTOP: Body
     =============== */
  /* ===============
     DESKTOP: Footer
     =============== */
}
@media only screen and (min-width: 800px) and (min-width: 900px) {
  header .headnav ul li {
    margin: 0 15px 0 0;
  }
}
@media only screen and (min-width: 800px) {
  .introslider {
    height: 470px;
    margin: 59px 0 0 0;
  }
  .introslider .introwrap h1 {
    font-size: 1.6em;
    letter-spacing: 2px;
    padding: 20px;
  }
  .introslider .introwrap p {
    font-size: 1.2em;
    letter-spacing: 1px;
  }
  .introslider .triangleelement {
    height: 60px;
  }
  .contentsection .sectionwrap .slideaside .listarea ul li {
    font-size: 1.1em;
    margin: 0 0 10px 0;
  }
  .contentsection .sectionwrap .contactbox p {
    font-size: 1.1em;
  }
  .contentsection .sectionwrap .contactbox p span {
    display: inline;
    margin: 0 20px;
  }
}
@media only screen and (min-width: 800px) and (min-width: 900px) {
  .introslider {
    height: 530px;
  }
  .introslider .introwrap h1 {
    font-size: 1.9em;
    letter-spacing: 3px;
    padding: 23px;
  }
  .introslider .introwrap p {
    font-size: 1.3em;
  }
}
@media only screen and (min-width: 800px) {
  .callout {
    padding: 25px 4%;
  }
  .callout .calloutwrap h2 {
    font-size: 2em;
  }
}
@media only screen and (min-width: 800px) and (min-width: 900px) {
  .callout {
    padding: 25px 4%;
  }
  .callout .calloutwrap h2 {
    font-size: 2.2em;
  }
}
@media only screen and (min-width: 800px) and (min-width: 900px) {
  .trusted .trustedbox {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .trusted .trustedbox .trustedleft {
    position: relative;
    top: 0;
    left: 0;
    margin: 0 30px 0 0;
  }
  .trusted .trustedbox .trustedleft img {
    width: 250px;
    max-width: 250px;
  }
  .trusted .trustedbox .trustedright {
    margin: 0;
  }
  .trusted .trustedbox .trustedright h2 {
    text-align: left;
    font-size: 1.6em;
  }
  .trusted .trustedbox .trustedright .socialbuttons {
    text-align: right;
  }
}
@media only screen and (min-width: 800px) {
  .testimonials .testimonial {
    padding: 140px 4% 140px 4%;
  }
  .testimonials .testimonial .testimonialwrap {
    height: 200px;
  }
  .testimonials .testimonial .testimonialwrap .quote, .testimonials .testimonial .testimonialwrap .attribution {
    font-size: 1.7em;
    line-height: 1.5em;
    max-width: 600px;
  }
  .serviceswrap .servicesleft {
    float: left;
    width: 43%;
    margin: 0 4% 0 0;
  }
  .serviceswrap .servicesleft ul {
    margin: 0;
    padding: 0 0 0 18px;
  }
  .serviceswrap .servicesright {
    float: right;
    width: 53%;
  }
  .serviceswrap .servicesright img {
    width: 100%;
  }
}
@media only screen and (min-width: 800px) and (min-width: 960px) {
  .contactform .contactformwrap form .name {
    width: 48.5%;
    float: left;
  }
  .contactform .contactformwrap form .email {
    width: 48.5%;
    float: right;
  }
  .contactform .contactformwrap form .reminder p {
    text-align: left;
  }
  .contactform .contactformwrap form .name textarea, .contactform .contactformwrap form .email textarea, .contactform .contactformwrap form .message textarea, .contactform .contactformwrap form .subject textarea {
    height: 180px;
  }
  .contactform .contactformwrap form .formfoot .captcha {
    float: left;
    width: 70%;
    margin: 0 0 10px 0;
  }
  .contactform .contactformwrap form .formfoot .captcha label {
    text-align: left;
    line-height: 0;
    margin: 15px 0 0 0;
  }
  .contactform .contactformwrap form .formfoot .captcha img {
    display: inline;
  }
  .contactform .contactformwrap form .formfoot .captcha input {
    display: inline;
  }
  .contactform .contactformwrap form .formfoot .submission {
    float: right;
    width: 30%;
    padding: 25px 0 0 0;
    text-align: right;
  }
  .contactform .contactformwrap form .formfoot .submission input {
    margin: 0;
    display: inline-block;
  }
}
@media only screen and (min-width: 800px) and (min-width: 900px) {
  .profilewrap {
    position: relative;
  }
  .profilewrap .profileleft {
    margin: 0 320px 0 0;
  }
  .profilewrap .profileright {
    position: absolute;
    top: 0;
    right: 0;
    width: 300px;
  }
}
/* END DESKTOP*/
/* ==========================================================================
   Helper classes ###########################################################
   ========================================================================== */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  *text-indent: -9999px;
}

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.invisible {
  visibility: hidden;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

/* ==========================================================================
   Print styles #############################################################
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: none;
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
/* ==========================================================================
   Additional CSS Imports ###################################################
   ========================================================================== */
/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  margin-bottom: 60px;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.bx-wrapper img {
  max-width: 100%;
  display: block;
}

.bxslider {
  margin: 0;
  padding: 0;
}

ul.bxslider {
  list-style: none;
}

.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}

/** THEME
===================================*/
.bx-wrapper {
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  border: 5px solid #fff;
  background: #fff;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}

/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url("../images/bx_loader.gif") center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: 0.85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #40902d;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #40902d;
}

.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline;
}

.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url("../images/controls.png") no-repeat 0 -32px;
}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0;
}

.bx-wrapper .bx-next {
  right: 10px;
  background: url("../images/controls.png") no-repeat -43px -32px;
}

.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9998;
}

.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url("../images/controls.png") -86px -11px no-repeat;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url("../images/controls.png") -86px -44px no-repeat;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%;
}

.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: 0.85em;
  padding: 10px;
}