/*! normalize.css v3.0.2 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

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

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * 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;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * 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 Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

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.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 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 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/* FONTS */
@font-face {
  font-family: 'OpenSans';
  src: url('../fonts/OpenSansLight.eot');
  src: url('../fonts/OpenSansLight.eot?#iefix') format('embedded-opentype'),
       url('../fonts/OpenSansLight.woff') format('woff'),
       url('../fonts/OpenSansLight.ttf')  format('truetype'),
       url('../fonts/OpenSansLight.svg#OpenSansLight') format('svg');
       
  font-style:   normal;
  font-weight:  100;
}

@font-face {
  font-family: 'OpenSans';
  src: url('../fonts/OpenSansRegular.eot');
  src: url('../fonts/OpenSansRegular.eot?#iefix') format('embedded-opentype'),
       url('../fonts/OpenSansRegular.woff') format('woff'),
       url('../fonts/OpenSansRegular.ttf')  format('truetype'),
       url('../fonts/OpenSansRegular.svg#OpenSansRegular') format('svg');
       
  font-style:   normal;
  font-weight:  normal;
}

@font-face {
  font-family: 'OpenSans';
  src: url('../fonts/OpenSansSemiBold.eot');
  src: url('../fonts/OpenSansSemiBold.eot?#iefix') format('embedded-opentype'),
       url('../fonts/OpenSansSemiBold.woff') format('woff'),
       url('../fonts/OpenSansSemiBold.ttf')  format('truetype'),
       url('../fonts/OpenSansSemiBold.svg#OpenSansSemiBold') format('svg');
       
  font-style:   normal;
  font-weight: 900;
}

@font-face {
  font-family: 'OpenSans';
  src: url('../fonts/OpenSansBold.eot');
  src: url('../fonts/OpenSansBold.eot?#iefix') format('embedded-opentype'),
       url('../fonts/OpenSansBold.woff') format('woff'),
       url('../fonts/OpenSansBold.ttf')  format('truetype'),
       url('../fonts/OpenSansBold.svg#OpenSansBold') format('svg');
       
  font-style:   normal;
  font-weight: bold;
}

@font-face {
  font-family: 'RobotoSlab';
  src: url('../fonts/RobotoSlabThin.eot');
  src: url('../fonts/RobotoSlabThin.eot?#iefix') format('embedded-opentype'),
       url('../fonts/RobotoSlabThin.woff') format('woff'),
       url('../fonts/RobotoSlabThin.ttf')  format('truetype'),
       url('../fonts/RobotoSlabThin.svg#RobotoSlabThin') format('svg');
       
  font-style:   normal;
  font-weight:  normal;
}

@font-face {
  font-family: 'TrajanPro';
  src: url('../fonts/TrajanPro.eot');
  src: url('../fonts/TrajanPro.eot?#iefix') format('embedded-opentype'),
       url('../fonts/TrajanPro.woff') format('woff'),
       url('../fonts/TrajanPro.ttf')  format('truetype'),
       url('../fonts/TrajanPro.svg#TrajanPro') format('svg');
       
  font-style:   normal;
  font-weight:  normal;
}
.mobile-menu-link {position: fixed; top: 0; right: 0; padding-right: 10px; height: 40px; background-color: #204A5B; z-index: 4000; display: none}
  .mobile-menu-link a {display: block; text-align: right; background: transparent url(../images/menu.png) 98% 50% no-repeat; height: 40px; line-height: 40px; padding-right: 50px; color: #fff; font-size: 1.2rem; text-transform: uppercase; text-decoration: none}

.mobile-menu {background-color: #204A5B; width: 200px; position: fixed; z-index: 4001; height: 100%; top: 0; left: -200px; transition: left 0.5s; display: none; overflow: hidden; box-shadow: 2px 2px 10px #000; padding-top: 40px}
.mobile-menu.active {left: 0}

.mobile-menu ul {margin: 0; padding: 0}
  .mobile-menu ul li {margin: 0; padding: 0; list-style: none; background: none}
    .mobile-menu ul li a {display: block; padding: 10px; text-decoration: none; text-transform: uppercase; color: #fff}
    .mobile-menu ul li.current-menu-item a,
    .mobile-menu ul li.current_page_ancestor a {background-color: #fff; color: #000}
      .mobile-menu ul ul {display: none}
* {outline: none !important; box-sizing: border-box; cursor: default; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale}
html {font-size: 18px}
body {font-family: 'OpenSans', Helvetica, Arial, sans-serif; line-height: 1; background-color: #f9f7f0; color: #145164; letter-spacing: 0.5px}

.gmap {height: 385px; width: 100%; margin-top: 25px;}

h4, h5, p, dt, dd, li, address {line-height: 1.5rem}
p {margin: 0 0 10px 0}
address {font-style: normal; margin-bottom: 20px}

p:empty {display: none}

a {text-decoration: none; cursor: pointer; color: #f00}
  a * {cursor: pointer}

ul {margin: 0 0 20px 15px; padding: 0}
  ul > li {margin: 0; padding: 0; list-style: disc}

ol {margin: 0 0 20px 15px; padding: 0}
  ol > li {margin: 0; padding: 0; list-style: decimal}

ul.no-list {margin: 0; padding: 0}
  ul.no-list > li {list-style: none; background: none; margin: 0; padding: 0}

ul.list-type-links {padding: 0; margin-left: 0}
  ul.list-type-links li {list-style: none; background: none; margin: 0; padding: 0 10px 0 0}
    ul.list-type-links li a {display: block; background: transparent url(../images/arrow-right.png) 100% 50% no-repeat; padding: 10px; background-size: 9px 15px}
  ul.list-type-links li:nth-child(2n) {background-color: #fbfbfb}

ul.accordion {padding: 0; margin-left: 0; margin-top: 30px;}
  ul.accordion li {list-style: none; background: none; margin: 0; padding: 0 10px 0 0; border-bottom: 1px solid #204a5b}
  ul.accordion li:first-child {border-top: 1px solid #204a5b}
    ul.accordion li .expander {padding: 10px 12px; margin: 0; cursor: pointer; position: relative; color: #145164; font-weight: normal; font-size: 15px; font-size: 1rem; font-weight: bold;}
      ul.accordion li .expander:after {background: transparent url(../images/accordion-arrow-astronautblue-down.png) 100% 50% no-repeat; width: 20px; height: 20px; position: absolute; right: 0; top: 50%; margin-top: -10px; content: ''; transition: transform 0.5s, -webkit-transform 0.5s}
    ul.accordion li.active .expander {}
      ul.accordion li.active .expander:after {transform: rotate(-180deg); -webkit-transform: rotate(-180deg)}
    ul.accordion li .expander-target {display: none; padding: 10px}
    .no-js ul.accordion li .expander-target {display: block}

.text-white ul.accordion li {border-bottom: 1px solid #fff}
  .text-white ul.accordion li:first-child {border-top: 1px solid #fff}
      .text-white ul.accordion li .expander:after {background-image: url(../images/accordion-arrow-white-down.png)}


h1, h2, h3, h4 {font-family: 'OpenSans'; font-weight: normal; text-transform: uppercase; font-weight: bold}
h4 {text-transform:none;}
h1 {display: none}
h2 {font-family: 'RobotoSlab'; font-weight: normal}
.os {font-family: 'OpenSans'}
.rs {font-family: 'RobotoSlab'}
.normal {font-weight: normal}
.bold {font-weight: bold}
.semi-bold {font-weight: 900}

h2,
.h2 {font-size: 3.3rem; margin: 0 0 20px 0}
h3,
.h3 {font-size: 1.3rem; margin: 0 0 15px 0; color: #08c7ce}
h4,
.h4 {font-size: 1rem; margin: 0 0 0 0; color: #145164}

h2 a,
h3 a,
h4 a {color: #000}

#header {}
  #header .logo {margin-top: 0 !important; margin-bottom: 0 !important; display: block; font-family: 'TrajanPro'; font-weight: normal; font-size: 37px}
    #header .logo a {display: block}
      #header .logo a img {display: block; max-width: 100%; height: auto}

.sections {overflow: hidden}
  .sections .section {float: left; margin: 0 2% 20px 0; padding: 2% 20px}
  
  .sections .section-1-1 {float: none; width: 100%; margin-right: 0}
  
  .sections .section-1-2 {width: 48%}
  
  .sections .section-1-3 {width: 31.3%}
  .sections .section-2-3 {width: 65.4%}
  
  .sections .section-1-3:nth-child(3n+1) {clear: both}
  
  .sections .section-1-4 {width: 22%}
  .sections .section-3-4 {width: 74%}
  
  .sections .section-last {margin-right: 0}
  
  .sections-no-padding > .section {padding: 0}
  .sections-no-margin > .section {margin: 0}
  
  .sections-no-margin > .section-1-2 {width: 50%}
  .sections-no-margin > .section-1-3 {width: 33.3%}
  .sections-no-margin > .section-1-4 {width: 25%}
  
  .sections-content > .section {margin-bottom: 0}
  
  .sections > .section-no-padding {padding: 0}
  .sections > .section-no-padding-bottom {padding-bottom: 0}
  .sections > .section-no-padding-top {padding-top: 0}
  
  .image {}
    .image a {display: block}
    .image img,
    .image a img {display: block; max-width: 100%; height: auto; float: none; margin: 0 auto}
    .image > br { display: none; }
  
  .button,
  .field-submit input {font-weight: bold; border: none; padding: 15px 35px; border-radius: 5px; text-transform: uppercase; line-height: 1; text-decoration: none; background-color: #08c7ce !important; color: #fff !important; display: inline-block; font-size: 1rem; transition: color 0.5s, background-color 0.5s}
  
  .button:hover,
  .field-submit input:hover {background-color: #fff !important; color: #08c7ce !important}
  
  form {}
    form label {display: none}
    form .field-text input,
    form textarea {border: none; background-color: #efefef; color: #000; font-family: 'OpenSans'; font-size: 1rem; padding: 0 5px; height: 35px; width: 100%}
    form textarea {resize: none; height: 200px; padding: 5px}
  
  .gform_wrapper {margin: 0}
    .gform_wrapper br {display: none}
      .gform_wrapper form {}
        .gform_wrapper form label {display: none !important}
          .gform_wrapper form .gform_body input,
          .gform_wrapper form .gform_body textarea {border: 1px solid #000; background-color: #fff; width: 100% !important; padding: 0 5px; height: 30px}
          .gform_wrapper form .gform_body textarea {padding: 5px; height: 200px; resize: none}
          .gform_wrapper form .gform_body ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
              color:    #FFF;
          }
          .gform_wrapper form .gform_body :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
             color:    #FFF;
             opacity:  1;
          }
          .gform_wrapper form .gform_body ::-moz-placeholder { /* Mozilla Firefox 19+ */
             color:    #FFF;
             opacity:  1;
          }
          .gform_wrapper form .gform_body :-ms-input-placeholder { /* Internet Explorer 10-11 */
             color:    #FFF;
          }

          .contact .gform_wrapper form .gform_body ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
              color:    #AAA;
          }
          .contact .gform_wrapper form .gform_body :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
             color:    #AAA;
             opacity:  1;
          }
          .contact .gform_wrapper form .gform_body ::-moz-placeholder { /* Mozilla Firefox 19+ */
             color:    #AAA;
             opacity:  1;
          }
          .contact .gform_wrapper form .gform_body :-ms-input-placeholder { /* Internet Explorer 10-11 */
             color:    #AAA;
          }
  
  table {width: 100%; border: none}
    table tr {}
      table tr td:empty {display: none}
      table tr td {padding: 10px; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc}
      table tr td:first-child {border-left: 1px solid #ccc}
      table tr:first-child td {border-top: 1px solid #ccc}
  
  table.generated-table {}
    table.generated-table tr {}
    table.generated-table tr:first-child {background-color: #aaa}
      table.generated-table tr td {}
      table.generated-table tr:first-child td {font-weight: bold; text-transform: uppercase; color: #fff}
.banner {position: absolute; top: 0; left: 0; z-index: -1; height: 100%; width: 100%;}
  .banner .banner-inner {width: 100%; height: 100%}
    .banner ul {width: 100%; height: 100%; position: relative}
      .banner ul li {position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: opacity 2s; opacity: 0; z-index: 900}
        .banner ul li img {display: none}
        
.banner ul li.prev-active {opacity: 0; z-index: 998}
.banner ul li.active {opacity: 1; z-index: 1000}
.banner ul li.next-active {opacity: 0; z-index: 999}

.testimonials {}
  ul.testimonial-list {position: relative}
    ul.testimonial-list li {position: absolute; top: 0; left: 0; width: 100%; transition: opacity 2s; opacity: 0; z-index: 900}
        
ul.testimonial-list li.prev-active {opacity: 0; z-index: 998}
ul.testimonial-list li.active {opacity: 1; z-index: 1000}
ul.testimonial-list li.next-active {opacity: 0; z-index: 999}


.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* VALIGN CLASSES */
.ghost,
.pacman {
  display: inline-block;
  vertical-align: middle;
}
.ghost {
  height: 100%;
  width: 0.01%;
}
.pacman {
  width: 99.9%;
}

#header-wrapper {position: fixed; width: 100%; top: 0; left: 0; background-color: #204a5b; z-index: 2000}
  #header-wrapper-inner {}
    
    #pre-header {background-color: #283031; padding: 10px 0}
      #pre-header-inner {padding: 0 40px; position: relative}
      
      #pre-header ul {text-align: right}
        #pre-header ul li {display: inline-block; margin: 0 10px 0 0; padding: 0 10px 0 0; border-right: 1px solid #fff}
        #pre-header ul li:last-child {margin-right: 0; padding-right: 0; border-right: none}
          #pre-header ul li a {display: block; text-decoration: none; color: #fff; font-size: 12px; font-size: 0.8rem; font-weight: bold; text-transform: uppercase}
      
      .search-box {position: absolute; width: 270px; right: 50px; top: 100%; z-index: 1000}
        .search-box form {overflow: hidden; background-color: #fff; border-radius: 5px; padding: 15px}
          .search-box form label {display: none}
          .search-box form input.input-text {float: left; width: 170px; height: 35px; background-color: #5B5F60; box-shadow: 1px 1px 4px #424546 inset; border: none; border-radius: 4px 0 0 4px; color: #fff; font-size: 12px; font-size: 0.8rem; padding: 0 10px}
          .search-box form input.button {float: left; width: 70px; padding: 0; height: 35px; border-radius: 0 4px 4px 0; font-size: 12px; font-size: 0.8rem}
      
    #header-nav-wrapper {height: 90px; padding: 30px 40px 25px 30px; margin: 0 auto}
      #header {float: left}
        #header .logo a {color: #fff; font-weight: normal; letter-spacing: -2px; display: block; text-transform: uppercase;}
      
      #navigation {float: right}
        #navigation ul.nav-menu {margin: 0 auto}
          #navigation ul.nav-menu > li {display: inline-block; margin: 0 40px 0 0; list-style: none; background: none; padding: 0 0 33px 0; position: relative}
          #navigation ul.nav-menu > li:last-child {margin-right: 0}
            #navigation ul.nav-menu > li > a {padding: 5px 0 3px 0; text-decoration: none; text-transform: uppercase; color: #fff; font-weight: bold; display: block; font-size: 0.93rem; font-size: 14px; border-bottom: 3px solid #204A5B}
            #navigation ul.nav-menu > li.current-menu-item > a {border-bottom: 3px solid #fff}
      
      #navigation ul.sub-menu {display: none; margin: 0; padding: 0; position: absolute; left: 0; top: 100%; background-color: #204A5B}
      #navigation #menu-item-189 ul.sub-menu {left: -63px}
      #navigation #menu-item-184 ul.sub-menu {left: -46px}
      #navigation li:hover ul.sub-menu {display: block}
        #navigation ul.sub-menu li {margin: 0; padding: 0; list-style: none; background: none; text-align: center}
          #navigation ul.sub-menu li a {display: block; color: #fff !important; padding: 15px 20px; font-weight: 900; white-space: nowrap; font-size: 12px; font-size: 0.8rem; text-transform: none}
          #navigation ul.sub-menu li:hover a {background-color: #283031}
      
.page-section {position: relative}
  .page-section-inner {position: relative}
    .page-section .sections-wrapper > .sections-content {padding-top: 0}
    .page-section .sections-wrapper:first-child > .sections-content {padding-top: 165px}
    
    .page-section .sections-wrapper > .sections-content.full-height-page-section {padding-top: 100px; height: 100vh; min-height: 750px;}
      .page-section .sections-wrapper > .sections-content > .section {position: relative}
        .page-section .sections-wrapper > .sections-content.full-height-page-section > .section > .section-inner {/* position: absolute; top: 50%; transform: translateY(-50%); width: calc(100% - 40px) */}
    .page-section .section-inner {}
    .page-section .sections-wrapper > .sections-content {padding-bottom: 40px}

.page-section:last-child > .page-section-inner > .sections-wrapper:last-child > .sections > .section {/* padding-bottom: 100px */}
.full-height-page-section { min-height: 100vh }
.home .full-height-page-section {padding-bottom: 0 !important; padding-top: 0 !important;}
.home #page-section-id-0 h2 {font-size: 29px; font-size: 2.0rem; } /*ox previously 1.9rem*/
.home #page-section-id-0 .section {padding: 191px 40px 60px 40px; min-height: 100vh; width: 485px; float: right; display: none; margin:0;}
.home #page-section-id-0 .section-last {display: block;}
.homeh2 {margin: 45px 0 17px 0;letter-spacing:-0.5px;} /* the main heading on home page */

.section-title {margin: 50px 0 30px 0}


/* .page-slide-nav {display: block; position: absolute; bottom: 30px; left: 50%; margin-left: -39px; width: 78px; height: 78px; text-indent: -9999em; background: transparent url(../images/scroll-arrow.png) 0 0 no-repeat} */
.page-slide-nav {display: block; position: absolute; bottom: 30px; left: 50%; margin-left: -39px; width: 95px; height: 50px; text-indent: -9999em; background: transparent url(../images/scroll.png) 50% 50% no-repeat}
.about #page-section-id-0 .page-slide-nav {
  background: transparent url(../images/scroll-white.png) 50% 50% no-repeat
}

blockquote {display: block; margin: 0}
  blockquote h4 {font-size: 1.3rem}
  blockquote p {text-align: center; font-size: 39px; font-size: 2.6rem; line-height: 45px; line-height: 3rem; color: #204a5b; font-weight: 100}
    blockquote p:first-child:before {content:'\201c'}
    blockquote p:last-of-type:after {content:'\201d'}
  blockquote p:last-child {margin-bottom: 0}
  blockquote footer {text-align: right; margin: 0; color: #595858; font-size: 21px; font-size: 1.4rem; color: #204a5b}

.sections-ctas > .section {padding: 0}
.sections-ctas .section {overflow: hidden}
  .sections-ctas .section a {position: relative; text-align: center}
    .sections-ctas .section a img {}
    .sections-ctas .section a .cta-hover {position: absolute; left: 0; top: calc(100% - 48px); width: 100%; height: 100%; padding: 15px; transition: top 0.5s; background: transparent url(../images/cta-hover-back.png) 0 0 repeat}
    .sections-ctas .section a .cta-hover:before {background: transparent url(../images/cta-hover-pointer.png) 0 0 no-repeat; width: 66px; height: 10px; left: 50%; margin-left: -33px; top: -10px; content: ''; opacity: 1; transition: opacity 0.5s; display: block; position: absolute}
    .sections-ctas .section a:hover .cta-hover:before {opacity: 0}
    .sections-ctas .section a:hover .cta-hover {top: 0}
    
    .sections-ctas .section a .cta-hover-inner {top: 0; transform: translateY(0); -webkit-transform: translateY(0); position: relative; display: block; transition: all 0.5s}
    .sections-ctas .section a:hover .cta-hover-inner {top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%)}
    
    
    .sections-ctas .section a .h4 {display: block; font-weight: bold; text-align: center; padding-bottom: 20px; text-transform: uppercase}
    .sections-ctas .section a .cta-hover-content {opacity: 0; transition: opacity 0.5s; position: relative; padding-top: 20px; display: block; line-height: 19px; line-height: 1.2rem; z-index: 0}
    .sections-ctas .section a .cta-hover-content:before {position: absolute; width: 56px; height: 2px; background-color: #fff; left: 50%; margin-left: -28px; top: 0; content: ''}
    .sections-ctas .section a:hover .cta-hover-content {opacity: 1}

.data-accordion-wrapper {}
  .data-accordion-wrapper-inner {padding: 40px; background-color: #eeeeee}
    .data-accordion {max-width: 100%; padding: 50px; margin: 0 auto; margin-bottom: 40px; background-color: #fff}
      .data-accordion:last-child {margin-bottom: 0}
      
      .c-header {overflow: hidden}
        .c-header .c-image {float: left; width: 40%; margin-right: 10%}
          .c-header .c-image img {display: block; max-width: 100%; width: 100%; height: auto}
        .c-header .c-intro {float: left; width: 50%; padding: 40px 0 10px 0}
          .c-header .c-intro a.read-more {font-weight: bold; color: #08c7ce; padding-left: 35px; height: 27px; display: inline-block; line-height: 27px; position: relative; margin-top: 25px;}
          .c-header .c-intro a.read-more:before {background: transparent url(../images/arrow-irisblue-right.png) 0 50% no-repeat; width: 26px; height: 27px; position: absolute; left: 0; top: 0; transition: transform 0.5s, -webkit-transform 0.5s; content: ''}
          .data-accordion.active .c-header .c-intro a.read-more:before {transform: rotate(-90deg); -webkit-transform: rotate(-90deg)}
          
  .c-body {/* -moz-column-count: 3; -moz-column-gap: 50px; */ opacity: 0; display: none; position: relative; padding-top: 30px}

.testimonials {max-width: 100%; margin: 0 auto; margin-bottom: 70px}

.button-stack {}
  .button-stack-inner {}
    .button-stack .stack-button {margin-bottom: 15px; }
    .button-stack .stack-button .sb-icon,
    .button-stack .stack-button .sb-label-wrap {
      display: block;
    }
    .button-stack .stack-button .sb-icon {width: 90px; float: left;} 
    .button-stack .stack-button .sb-label-wrap {font-size: 16px; margin-left: 64px; height: 54px;}
    
      .button-stack .stack-button a {display: block; padding: 20px 20px 20px 20px; background-color: #08c7ce !important; color: #fff; border-radius: 10px; font-weight: bold; text-transform: uppercase}
    

.image-border img {border: 10px solid #fff}


.about #page-section-id-1 {}
.about #page-section-id-1 h2 {margin-top: 0px;}
.about #page-section-id-1 h2:after {
  content: " ";
  display: block;
  width: 100%;
  max-width: 112px;
  height: 3px;
  background: #204a5b;
  margin: 60px auto;
}
.about #page-section-id-1 .col-wrap {
  border-top: 1px solid #204a5b;
  border-bottom: 1px solid #204a5b;
  padding: 25px 2px;
  margin-bottom: 50px;
}

.about #page-section-id-2 .sections-wrapper:first-child > .sections-content {padding-top: 65px;padding-bottom: 65px}
.about #page-section-id-3 .sections-wrapper:first-child > .sections-content {padding-top: 65px;padding-bottom: 65px}
.about #page-section-id-4 .sections-wrapper:first-child > .sections-content {padding-top: 65px;padding-bottom: 65px}

.pacman > .section-1-2 img {
  width: 100%;
  height: auto;
}

.resources {}
.resources .page-slide-nav {display: none;}
.resources .page-section-no-0 .sections {padding-bottom: 0 !important}
.resources .page-section-no-0 .sections .section {padding-bottom: 0 !important}

.resources .page-section-no-0 p {
  width: 66%;
}
.resources .page-section-no-1 .sections {padding-top: 0 !important}
.resources .page-section-no-1 .sections .section-no-1 {padding-top: 0 !important}
.resources .accordion h3.expander {text-transform: none; font-weight: normal;}
.resources .accordion li:first-child {border-top: none;}
.resources .accordion li {border-bottom: 1px solid #FFF;}

.contact .pacman > .section {
  display: inline-block;
  vertical-align: top;
  float: none;
}
.contact .section-no-1 {padding-bottom: 0 !important; width: 70%;}
.contact .section-no-2 {width: 25%;}
.contact .sections-no-padding .section-1-4 { width: 22%; margin: 0; padding-right: 5px}
.contact .sections-no-padding .section-1-4.section-last {padding-right: 0}
.contact form {}
  .contact form label {}
  .contact form ul {margin: 0; padding: 0}
    .contact form ul li {margin: 0 0 20px 0; padding: 0; list-style: none; background: none}
    .contact form .gform_body li input,
    .contact form .gform_body li textarea {color: #204A5B !important; text-transform: uppercase; font-weight: bold; border-radius: 5px; height: 50px; padding: 0 30px 0 50px; resize: none; font-family: 'OpenSans'; font-size: 13px; font-size: 0.8rem; background-color: #dcdbdb !important}
    .contact form .gform_body li textarea {height: 200px; padding-top: 20px}
    
    .icon-name input,
    .field-name input {background: #dcdbdb url(../images/field-name.png) 16px 50% no-repeat}
    .icon-email input,
    .field-email input {background: #dcdbdb url(../images/field-email.png) 16px 50% no-repeat}
    .icon-phone input,
    .field-phone input {background: #dcdbdb url(../images/field-phone.png) 16px 50% no-repeat}
    .icon-enquiry textarea {background: #dcdbdb url(../images/field-enquiry.png) 16px 25px no-repeat}
    .field-enquiry input {background: #dcdbdb url(../images/field-enquiry.png) 16px 50% no-repeat}

    .contact .rounded-edges {margin-top: 0}
    .contact .rounded-edges p {display: none}
    
    .contact #body .main h4 {color: #204A5B !important}
    .contact .gform_footer {text-align: center}

#footer-wrapper {height: 13 0px;padding-bottom:30px;background-color:#213133;}
#footer-form {position: fixed; width: 100%; left: 0; bottom: 0; z-index: 1000; padding: 20px 0 25px 0; background-color: #213133; display: none; height: 100px}
#footer-form.relative {position: relative; width: auto; left: auto; bottom: auto; z-index: auto}

  #footer-form-inner {max-width: 1920px; width: 90%; margin: 0 auto; padding: 0 10px}

  #footer-form-inner p strong {font-size:0.85rem;}
  #footer-form-inner p {padding:5px 0 15px 0;} /*default 0.6rem-------------*/

    #footer-form p {font-size: 10px; font-size: 0.6rem; color: #01c7ce !important; text-transform: uppercase; font-weight: 900; line-height: 1rem; margin: 0}
      #footer-form p strong {color: #01c7ce !important}
    
    #footer-form form {overflow: hidden; padding: 0}
    #footer-form .gform_body {float: left; width: 85%}
      #footer-form .gform_body input {background-color: #5b5f60 !important; box-shadow: 1px 1px 4px #424546 inset; border: none; border-radius: 5px; padding-left: 40px; color: #fff !important; font-size: 12px; font-size: 0.8rem; font-weight: bold; text-transform: uppercase; height: 40px}
    #footer-form .gform_footer {float: right; width: 12%}
      #footer-form .gform_footer input {width: 100%; height: 40px; padding: 0 20px; font-size: 12px; font-size: 0.8rem}
      
      #footer-form ul {margin: 0; padding: 0; overflow: hidden}
        #footer-form ul li {margin: 0 2% 0 0; width: 23.5%; padding: 0; float: left; list-style: none; background: none}
        #footer-form ul li:last-child {margin-right: 0}
        
          #footer-form ul li input {color: #000 !important; width: 100%}

    .field-name input {background: #dcdbdb url(../images/field-name-white.png) 16px 50% no-repeat}
    .field-email input {background: #dcdbdb url(../images/field-email-white.png) 14px 50% no-repeat}
    .field-phone input {background: #dcdbdb url(../images/field-phone-white.png) 16px 50% no-repeat}
    .field-enquiry input {background: #dcdbdb url(../images/field-enquiry-white.png) 14px 50% no-repeat}


#footer {padding: 0 0 50px 0; background-color: #213133}

#footer * {font-size: 12px; font-size: 0.8rem; line-height:1.0rem;}
#footer h4 {color: #01c7ce !important}
#footer .section {margin-bottom: 0; margin-right: 1%}
#footer .section:last-child {margin-right: 0}


.footer-sections {overflow: hidden; padding: 20px 0; border-top: 1px solid #000; border-bottom: 1px solid #000}
  .footer-sections .footer-section-1 {float: left; width: 40%}
  
  .footer-sections .footer-section-2 {float: right; width: 31%}

.rounded-edges {border-radius: 10px}

.portal .main {
  text-align: center;
}
.portal .portal-file {
  vertical-align: top;
  display: inline-block;
  float: none;
  max-width: 220px;
  padding: 30px !important;
}

.portal-file .title {
  margin: 10px 0;
}
.portal-file .description {
  color: #333;
  font-size: 11px;
  line-height: 1.3em;
}

.footer-login {
  padding-top: 20px;
  position: relative;
  text-align: center;
}
#footer .footer-login a {
  font-size: 1.3em;
}


/* ##### BLACK ##### */
.background-black {background-color: #000000 !important; background-color: rgba(0, 0, 0, 1) !important}
.text-black {color: #000000 !important; color: rgba(0, 0, 0, 1) !important}
.text-black * {color: #000000 !important; color: rgba(0, 0, 0, 1) !important}

/* ##### WHITE ##### */
.background-white {background-color: #ffffff !important; background-color: rgba(255, 255, 255, 1) !important}
.text-white {color: #ffffff !important; color: rgba(255, 255, 255, 1) !important}
.text-white * {color: #ffffff !important; color: rgba(255, 255, 255, 1) !important}

/* ##### MEDIUM TURQUOISE - 90% ##### */
.background-medium-turquoise-90 {background-color: #30cad0 !important; background-color: rgba(48, 202, 208, 0.9) !important}
.text-medium-turquoise-90 {color: #30cad0 !important; color: rgba(48, 202, 208, 0.9) !important}
.text-medium-turquoise-90 * {color: #30cad0 !important; color: rgba(48, 202, 208, 0.9) !important}

/* ##### HUMMING BIRD ##### */
.background-humming-bird {background-color: #cdeee9 !important; background-color: rgba(205, 238, 233, 1) !important}
.text-humming-bird {color: #cdeee9 !important; color: rgba(205, 238, 233, 1) !important}
.text-humming-bird * {color: #cdeee9 !important; color: rgba(205, 238, 233, 1) !important}

/* ##### ASTRONAUT BLUE ##### */
.background-astronaut-blue {background-color: #204a5b !important; background-color: rgba(32, 74, 91, 1) !important}
.text-astronaut-blue {color: #204a5b !important; color: rgba(32, 74, 91, 1) !important}
.text-astronaut-blue * {color: #204a5b !important; color: rgba(32, 74, 91, 1) !important}

/* ##### WHITE SMOKE ##### */
.background-white-smoke {background-color: #eeeeee !important; background-color: rgba(238, 238, 238, 1) !important}
.text-white-smoke {color: #eeeeee !important; color: rgba(238, 238, 238, 1) !important}
.text-white-smoke * {color: #eeeeee !important; color: rgba(238, 238, 238, 1) !important}

/* ##### ONAHAU ##### */
.background-onahau {background-color: #c5ece8 !important; background-color: rgba(197, 236, 232, 1) !important}
.text-onahau {color: #c5ece8 !important; color: rgba(197, 236, 232, 1) !important}
.text-onahau * {color: #c5ece8 !important; color: rgba(197, 236, 232, 1) !important}

/* ##### MEDIUM TURQUOISE ##### */
.background-medium-turquoise {background-color: #30cad0 !important; background-color: rgba(48, 202, 208, 1) !important}
.text-medium-turquoise {color: #30cad0 !important; color: rgba(48, 202, 208, 1) !important}
.text-medium-turquoise * {color: #30cad0 !important; color: rgba(48, 202, 208, 1) !important}

/* ##### IRIS BLUE ##### */
.background-iris-blue {background-color: #0dc3ca !important; background-color: rgba(13, 195, 202, 1) !important}
.text-iris-blue {color: #0dc3ca !important; color: rgba(13, 195, 202, 1) !important}
.text-iris-blue * {color: #0dc3ca !important; color: rgba(13, 195, 202, 1) !important}

/* ##### NERO ##### */
.background-nero {background-color: #2d2d2d !important; background-color: rgba(45, 45, 45, 1) !important}
.text-nero {color: #2d2d2d !important; color: rgba(45, 45, 45, 1) !important}
.text-nero * {color: #2d2d2d !important; color: rgba(45, 45, 45, 1) !important}

/* ##### MORTAR ##### */
.background-mortar {background-color: #595858 !important; background-color: rgba(89, 88, 88, 1) !important}
.text-mortar {color: #595858 !important; color: rgba(89, 88, 88, 1) !important}
.text-mortar * {color: #595858 !important; color: rgba(89, 88, 88, 1) !important}

/* ##### SWAMP ##### */
.background-swamp {background-color: #283031 !important; background-color: rgba(40, 48, 49, 1) !important}
.text-swamp {color: #283031 !important; color: rgba(40, 48, 49, 1) !important}
.text-swamp * {color: #283031 !important; color: rgba(40, 48, 49, 1) !important}

/* ##### MEDIUM TURQUOISE - 80% ##### */
.background-medium-turquoise-80 {background-color: #30cad0 !important; background-color: rgba(48, 202, 208, 0.8) !important}
.text-medium-turquoise-80 {color: #30cad0 !important; color: rgba(48, 202, 208, 0.8) !important}
.text-medium-turquoise-80 * {color: #30cad0 !important; color: rgba(48, 202, 208, 0.8) !important}

/* ##### OXFORD BLUE ##### */
.background-oxford-blue {background-color: #213133 !important; background-color: rgba(33, 49, 51, 1) !important}
.text-oxford-blue {color: #213133 !important; color: rgba(33, 49, 51, 1) !important}
.text-oxford-blue * {color: #213133 !important; color: rgba(33, 49, 51, 1) !important}


/* GLOBAL OVERRIDES */

#footer-menu-inner,
#footer-inner,
.sections-content {width: 100%; width: 90%; max-width: 1400px; padding: 0 10px; margin: 0 auto}

.sections.full-width-page-section {width: auto; max-width: 100%; padding: 0}
  .sections.full-width-page-section > .section {}
  
.sections.full-height-page-section {}
  .sections.full-height-page-section > .section {min-height: 100%}

p:last-child,
ul:last-child,
h2:last-child,
h3:last-child,
h4:last-child {margin-bottom: 0}

.hidden {display: none !important}

.align-left {text-align: left}
.align-center {text-align: center}
.align-right {text-align: right}
img.alignleft {float: left}
img.aligncenter {display: block; margin: 0 auto}
img.alignright {float: right}


.large {font-size: 1.3rem; line-height: 1.7rem; letter-spacing:-0.05rem;margin-bottom:20px;} /*ox.prior 1.3, 1.7*/

.uppercase {text-transform: uppercase}
.lowercase {text-transform: lowercase}
.nocase {text-transform: none}

.flicker-fix {-webkit-transform-style: preserve-3d; transform-style: preserve-3d}
@media only screen and (max-width: 1600px){
  html {font-size: 15px}
  
  .testimonials {margin-bottom: 0}
}

@media only screen and (max-width: 1350px){
  html {font-size: 14px}

  .home #page-section-id-0 .section { width: 420px}
}

@media only screen and (min-width: 1350px) and (max-height: 930px) {
  .home #page-section-id-0 .sections-wrapper > .sections-content.full-height-page-section { min-height: 930px;}
  .home #page-section-id-0 .section { height: 930px }
}

@media only screen and (max-width: 1295px){
  /*
  .sections > .section {margin-right: 0; padding: 10px}
  .sections > .section-1-2 {width: 50% !important}
  .sections > .section-1-3 {width: 33.3% !important}
  .sections > .section-1-4 {width: 25% !important}
  */
}

@media only screen and (max-width: 1150px){
  #header-inner, #footer-menu-inner, #footer-inner, .sections-content {max-width: 100%; width: 100%}
}

@media only screen and (max-width: 1045px){
  #navigation ul.nav-menu > li {margin-right: 15px}
  
  .data-accordion-wrapper-inner {padding: 10px}
    .data-accordion-wrapper-inner .data-accordion {padding: 10px; margin-bottom: 10px;}
    
  .c-header .c-image,
  .c-header .c-intro {float: none; width: 100%}
}


/* MOBILE NAV BREAKPOINT */
@media only screen and (max-width: 980px){
  #header-wrapper {height: 40px; overflow: hidden;}
  #pre-header {display: none}
  #header-nav-wrapper {padding: 10px 0 10px 20px; height: auto; overflow: hidden}
    #header .logo {font-size: 20px; margin-top: 2px !important}
    
  #navigation {display: none}
  .mobile-menu-link {display: block}
  .mobile-menu {display: block}
    .contact .pacman > .section {
    width: 100%;
  }
}

.footemph {color:#01c7ce !important;font-weight:bold;} /* this does'nt belong here*/

@media only screen and (max-width: 910px){
  .empty {display: none}
  .sections > .section {width: auto !important; max-width: 100%; float: none !important; margin-right: 0; padding-left: 0; padding-right: 0}
  .banner {width: 100%; height: 100%}
  /*.page-section .sections-wrapper:first-child > .sections-content {padding-top: 65px}*/
  a.page-slide-nav {display: none}
  
  
  
  #footer-form {display: none}
  #footer {padding-top: 40px}
  .page-section .sections-wrapper > .sections-content.full-height-page-section {padding-top: 65px}
  .page-section .sections-wrapper > .sections-content {padding-top: 10px}
  
  
  .footer-sections .footer-section-1 {display: none}
  .footer-sections .footer-section-2 {width: 100%; float: none; margin-right: 0}

  .sections .section-1-2 {
    width: 100%;
    float: none;
  }

  .full-height-page-section {
    height: auto !important;
  }

  #footer-form {
    height: auto;
  }
  #footer-form .gform_body,
  #footer-form .gform_footer {
    float: none;
    width: 100%;
  }
  #footer-form ul li {
    margin: 0;
    width: 100%;
  }

  #footer {
    padding-top: 0;
  }

  .resources .page-section-no-0 p {
    width: 100%;
  }


}

.home.page #page-section-id-0 {
  padding-top: 145px;
}
#home-banner {
  position: absolute;
  top: 145px;
  left: 0;
  right: 0;
  height: 90px;
  padding: 20px 0;
  background-color: white;
  text-align: center;
  z-index: 999;
}
#home-banner p {
  margin: 0;
  font-weight: bold;
}
@media only screen and (max-width: 1600px) {
  #home-banner {
    top: 140px;
  }
  .home.page #page-section-id-0 {
    padding-top: 140px;
  }
}
@media only screen and (max-width: 1350px) {
  #home-banner {
    top: 135px;
  }
  .home.page #page-section-id-0 {
    padding-top: 135px;
  }
}
@media only screen and (max-width: 980px) {
  #home-banner {
    top: 40px;
  }
  .home.page #page-section-id-0 {
    padding-top: 40px;
  }
}

@media only screen and (max-width: 540px){
  .home #page-section-id-0 .section {
    width: 100%;
  }
}