@charset "UTF-8";
/* unicode: ✓ */
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

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

@font-face {
  font-family: 'Frutiger';
  src: url("../fonts/FrutigerCE-Bold.eot");
  src: url("../fonts/FrutigerCE-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/FrutigerCE-Bold.woff") format("woff"), url("../fonts/FrutigerCE-Bold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal; }

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

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

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

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

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

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

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden; }

body {
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.08), transparent 375px);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0.08), transparent 375px);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.08), transparent 375px);
  color: #353132;
  font: 17px/1.3 Frutiger, sans-serif;
  text-align: center;
  overflow-x: hidden; }
  @media (max-width: 1200px) {
    body {
      font: 15px/1.3 Frutiger, sans-serif; } }
  @media (max-width: 750px) {
    body {
      text-align: left; } }

h1, h2, h3, h4, h5, h6, strong {
  letter-spacing: -.02em; }

h1 {
  font-size: 68px;
  line-height: 1.05; }

h2 {
  font-size: 32px; }

h3 {
  color: #33b652;
  font-size: 27px; }

@media (max-width: 1200px) {
  h1 {
    font-size: 58px; }
  h2 {
    font-size: 28px; }
  h3 {
    font-size: 22px; } }

@media (max-width: 700px) {
  h1 {
    font-size: 34px; }
  h2 {
    font-size: 22px; }
  h3 {
    font-size: 18px; } }

a {
  color: inherit; }

img {
  max-width: 100%; }

hr {
  background: #353132;
  border: none;
  height: 3px;
  margin: 0 auto;
  max-width: 1036px; }

::-webkit-input-placeholder {
  color: inherit;
  opacity: 1; }

:-ms-input-placeholder {
  color: inherit;
  opacity: 1; }

::-ms-input-placeholder {
  color: inherit;
  opacity: 1; }

::placeholder {
  color: inherit;
  opacity: 1; }

[class^=block--] {
  margin: 72px auto; }

@media (max-width: 1000px) {
  [class^=block--] {
    margin: 55px auto; } }

@media (max-width: 700px) {
  [class^=block--] {
    margin: 40px auto; } }

body {
  padding-top: 144px; }
  body > header {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 144px;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.13);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.13); }
    body > header ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    body > header li {
      display: inline-block; }
    body > header a {
      text-decoration: none; }
    body > header nav.top-menu {
      background: #353132;
      color: #fff;
      font-family: Montserrat, sans-serif;
      font-size: 14px;
      font-weight: 300;
      line-height: 28px;
      text-align: right;
      text-transform: uppercase; }
      body > header nav.top-menu ul {
        margin: 0 auto;
        max-width: 1460px;
        padding: 0 32px; }
      body > header nav.top-menu li {
        margin-left: 3em; }
      body > header nav.top-menu a {
        -webkit-transition: color .15s;
        -o-transition: color .15s;
        transition: color .15s; }
        body > header nav.top-menu a:hover {
          color: #33b652; }
    body > header > div {
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: end;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 20px;
      font-weight: bold;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin: 0 auto;
      max-width: 1460px;
      padding: 0 32px;
      background: white; }
    body > header .logo {
      padding: 36px 0 16px 0; }
      body > header .logo img {
        width: 280px;
        display: block; }
    body > header nav.main-menu {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      margin-top: auto; }
      body > header nav.main-menu > ul:before, body > header nav.main-menu > ul:after {
        content: ''; }
      body > header nav.main-menu > ul > li.menu-item-has-children > a:after {
        border-color: rgba(255, 255, 255, 0);
        border-top-color: white;
        border-style: solid;
        border-width: 20px;
        content: '';
        left: 50%;
        margin: 0 -20px;
        position: absolute;
        top: 100%;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
        -webkit-transition: -webkit-transform .15s;
        transition: -webkit-transform .15s;
        -o-transition: transform .15s;
        transition: transform .15s;
        transition: transform .15s, -webkit-transform .15s;
        z-index: -1; }
      body > header nav.main-menu > ul > li > a {
        display: block;
        padding: 16px;
        position: relative;
        z-index: 50; }
      body > header nav.main-menu > ul > li > ul {
        background: #e9e9e9;
        -webkit-box-shadow: 0 1px 0px rgba(0, 0, 0, 0.05);
        box-shadow: 0 1px 0px rgba(0, 0, 0, 0.05);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        left: 0;
        padding: 28px 24px 24px;
        position: absolute;
        right: 0;
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        transform: scaleY(0);
        -webkit-transform-origin: 50% 0;
        -ms-transform-origin: 50% 0;
        transform-origin: 50% 0;
        -webkit-transition: -webkit-transform .15s;
        transition: -webkit-transform .15s;
        -o-transition: transform .15s;
        transition: transform .15s;
        transition: transform .15s, -webkit-transform .15s;
        z-index: 10;
        text-align: center; }
        body > header nav.main-menu > ul > li > ul ul {
          display: none; }
        body > header nav.main-menu > ul > li > ul li {
          border-left: thin solid;
          opacity: 0;
          -webkit-transition: opacity .15s;
          -o-transition: opacity .15s;
          transition: opacity .15s; }
          body > header nav.main-menu > ul > li > ul li:first-child {
            border: none; }
        body > header nav.main-menu > ul > li > ul a {
          display: block;
          font-size: 14px;
          padding: 0 24px 20px;
          -webkit-transition: color .15s;
          -o-transition: color .15s;
          transition: color .15s;
          width: 200px; }
          body > header nav.main-menu > ul > li > ul a:before {
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-variant: normal;
            line-height: 1;
            speak: none;
            text-transform: none;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            content: '';
            display: block;
            font-size: 80px;
            height: 80px;
            margin-bottom: 15px; }
          body > header nav.main-menu > ul > li > ul a:hover {
            color: #33b652; }
        body > header nav.main-menu > ul > li > ul li.icon--calculator a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--calendar a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--caret-left a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--caret-right a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--checklist a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--handshake a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--happy-speech-bubble a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--house-1 a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--house-2 a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--house-plus a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--info-speech-bubble a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--minus a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--newspaper a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--plus a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--question-speech-bubbles a:before {
          content: ""; }
        body > header nav.main-menu > ul > li > ul li.icon--telephone a:before {
          content: ""; }
      body > header nav.main-menu > ul > li:hover > ul {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        z-index: 20; }
        body > header nav.main-menu > ul > li:hover > ul li {
          opacity: 1; }
      body > header nav.main-menu > ul > li:hover > a:after {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
    body > header .phone {
      margin: auto 0 14px 0; }
      body > header .phone span {
        color: #33b652;
        font-size: 1.33em;
        letter-spacing: -.02em;
        display: inline-block; }
    body > header button.toggle-menu {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      width: 26px;
      height: 17px;
      position: absolute;
      top: 23px;
      right: 20px;
      z-index: 10;
      display: none; }
      body > header button.toggle-menu span {
        position: absolute;
        content: '';
        background: #353132;
        display: inline-block;
        width: 26px;
        height: 3px;
        right: 0;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        body > header button.toggle-menu span:nth-child(1) {
          top: 0; }
        body > header button.toggle-menu span:nth-child(2), body > header button.toggle-menu span:nth-child(3) {
          top: 7px; }
        body > header button.toggle-menu span:nth-child(4) {
          top: 14px; }
      .main-menu-open body > header button.toggle-menu span:nth-child(1), .main-menu-open body > header button.toggle-menu span:nth-child(4) {
        opacity: 0;
        top: 6px; }
      .main-menu-open body > header button.toggle-menu span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg); }
      .main-menu-open body > header button.toggle-menu span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg); }
    body > header nav.mobile-menu {
      background: white;
      position: fixed;
      top: 0;
      bottom: 0;
      width: 100%;
      z-index: 5;
      visibility: hidden;
      opacity: 0;
      padding-top: 62px;
      display: none; }
      .main-menu-open body > header nav.mobile-menu {
        visibility: visible;
        opacity: 1; }
      body > header nav.mobile-menu > ul {
        position: fixed;
        top: 62px;
        bottom: 0;
        width: 100%;
        overflow: auto;
        padding: 17px 0 50px 0; }
        body > header nav.mobile-menu > ul > li.menu-item-has-children > a:after {
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          speak: none;
          text-transform: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: "";
          font-size: 22px;
          line-height: 0;
          position: absolute;
          right: 25px;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%); }
        body > header nav.mobile-menu > ul > li.expanded > a:after {
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          line-height: 1;
          speak: none;
          text-transform: none;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: ""; }
        body > header nav.mobile-menu > ul > li > a {
          display: block;
          font-size: 20px;
          font-weight: bold;
          padding-top: 8px;
          padding-bottom: 8px;
          position: relative; }
          body > header nav.mobile-menu > ul > li > a:before {
            content: '';
            background: black;
            position: absolute;
            left: 25px;
            right: 25px;
            bottom: 0;
            height: 1px; }
        body > header nav.mobile-menu > ul > li > ul {
          height: 0;
          overflow: hidden;
          -webkit-transition: height 0.2s;
          -moz-transition: height 0.2s;
          -ms-transition: height 0.2s;
          -o-transition: height 0.2s;
          transition: height 0.2s; }
          body > header nav.mobile-menu > ul > li > ul > li:first-child {
            padding-top: 10px; }
          body > header nav.mobile-menu > ul > li > ul > li:last-child {
            padding-bottom: 10px; }
          body > header nav.mobile-menu > ul > li > ul > li > a {
            padding-top: 3px;
            padding-bottom: 3px; }
        body > header nav.mobile-menu > ul li {
          display: block; }
      body > header nav.mobile-menu a {
        display: block;
        padding-left: 25px;
        padding-right: 25px; }
  @media (max-width: 1200px) {
    body > header > div {
      position: relative;
      z-index: 10; }
    body > header nav.main-menu {
      text-align: right;
      margin-right: -16px; }
      body > header nav.main-menu > ul > li > ul a {
        font-size: 14px;
        padding: 0 20px 16px;
        width: 180px; }
        body > header nav.main-menu > ul > li > ul a:before {
          font-size: 65px;
          height: 65px;
          margin-bottom: 12px; }
    body > header .phone {
      position: absolute;
      top: 10px;
      right: 32px; } }
  @media (max-width: 1000px) {
    body {
      padding-top: 125px; }
      body > header {
        height: 125px; }
        body > header nav.top-menu {
          font-size: 10px; }
        body > header > div {
          font-size: 16px; }
        body > header .logo {
          padding: 36px 0 15px 0; }
          body > header .logo img {
            width: 200px; }
        body > header nav.main-menu > ul > li > ul a {
          font-size: 12px;
          padding: 0 16px 12px;
          width: 120px; }
          body > header nav.main-menu > ul > li > ul a:before {
            font-size: 50px;
            height: 50px;
            margin-bottom: 9px; } }
  @media (max-width: 700px) {
    body {
      padding-top: 62px; }
      body > header {
        height: 62px;
        -webkit-box-shadow: none;
        box-shadow: none; }
        body > header nav.top-menu {
          display: none; }
        body > header > div {
          padding: 0 15px;
          -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.13);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.13); }
        body > header .logo {
          padding: 16px 0 16px 0; }
          body > header .logo img {
            width: 132px; }
        body > header nav.main-menu {
          display: none; }
        body > header .phone {
          display: none; }
        body > header button.toggle-menu {
          display: inline-block; }
        body > header nav.mobile-menu {
          display: block; } }

body > footer {
  background: #353132;
  -webkit-box-shadow: 0 99em 0 99em #353132;
  box-shadow: 0 99em 0 99em #353132;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  margin-top: 144px;
  min-height: 300px;
  padding: 32px 32px 96px 32px; }
  body > footer a {
    text-decoration: none; }
  body > footer > div {
    margin: 0 auto;
    max-width: 1280px; }
  body > footer .logo {
    float: left;
    padding-bottom: 14px; }
    body > footer .logo img {
      width: 184px; }
  body > footer .phone {
    float: right;
    margin: 8px 16px 0 0; }
    body > footer .phone span {
      color: #33b652;
      font-size: 1.5em;
      letter-spacing: -.02em; }
  body > footer nav {
    border-top: 3px solid #fff;
    border-bottom: 3px solid #fff;
    clear: both;
    margin-top: 16px;
    text-align: left;
    padding-bottom: 40px; }
    body > footer nav ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    body > footer nav a[href] {
      -webkit-transition: color .15s;
      -o-transition: color .15s;
      transition: color .15s; }
      body > footer nav a[href]:hover {
        color: #33b652; }
    body > footer nav > ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      body > footer nav > ul > li {
        padding: 0 16px 0 8px; }
        body > footer nav > ul > li > a {
          display: block;
          min-height: 4em;
          padding: 20px 0 6px 0; }
    body > footer nav ul ul {
      font-size: .95em;
      font-weight: 300;
      text-transform: uppercase; }
      body > footer nav ul ul li {
        margin-bottom: 6px; }
    body > footer nav ul ul ul {
      display: none; }
  body > footer p {
    font-weight: normal;
    text-align: right; }
  @media (max-width: 1200px) {
    body > footer {
      font-size: 14px;
      margin-top: 65px; } }
  @media (max-width: 750px) {
    body > footer {
      padding: 32px 25px 96px 25px;
      margin-top: 0; }
      body > footer .phone {
        float: left;
        margin: 8px 16px 20px 0;
        clear: left; }
      body > footer nav > ul {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        body > footer nav > ul > li {
          width: 50%;
          padding: 10px 25px 10px 0; }
          body > footer nav > ul > li > a {
            min-height: 55px; } }

.block--feature_slideshow {
  margin: 0 auto;
  position: relative;
  z-index: 0; }
  .block--feature_slideshow ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .block--feature_slideshow a {
    text-decoration: none; }
  .block--feature_slideshow .slides {
    line-height: 0;
    overflow: hidden;
    white-space: nowrap; }
    .block--feature_slideshow .slides > li {
      display: inline-block;
      width: 100%; }
    .block--feature_slideshow .slides a {
      display: inline-block;
      margin: 0 64px; }
  .block--feature_slideshow .flex-control-nav {
    display: none; }
  .block--feature_slideshow .flex-direction-nav a {
    padding: 42px 0;
    margin: -42px 0;
    position: absolute;
    top: 50%;
    z-index: 10; }
    .block--feature_slideshow .flex-direction-nav a:before {
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      speak: none;
      text-transform: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      color: #000;
      display: block;
      font-size: 75px;
      line-height: 0;
      -webkit-transition: -webkit-transform .15s;
      transition: -webkit-transform .15s;
      -o-transition: transform .15s;
      transition: transform .15s;
      transition: transform .15s, -webkit-transform .15s; }
    .block--feature_slideshow .flex-direction-nav a.flex-prev {
      left: 0;
      padding-left: 10px; }
      .block--feature_slideshow .flex-direction-nav a.flex-prev:before {
        content: ""; }
      .block--feature_slideshow .flex-direction-nav a.flex-prev:hover:before {
        -webkit-transform: translateX(-12px);
        -ms-transform: translateX(-12px);
        transform: translateX(-12px); }
    .block--feature_slideshow .flex-direction-nav a.flex-next {
      padding-right: 10px;
      right: 0; }
      .block--feature_slideshow .flex-direction-nav a.flex-next:before {
        content: ""; }
      .block--feature_slideshow .flex-direction-nav a.flex-next:hover:before {
        -webkit-transform: translateX(12px);
        -ms-transform: translateX(12px);
        transform: translateX(12px); }
  @media (max-width: 1000px) {
    .block--feature_slideshow .slides a {
      margin: 0 45px; }
    .block--feature_slideshow .flex-direction-nav a:before {
      font-size: 55px; }
    .block--feature_slideshow .flex-direction-nav a.flex-prev {
      padding-left: 5px; }
    .block--feature_slideshow .flex-direction-nav a.flex-next {
      padding-right: 5px; } }
  @media (max-width: 700px) {
    .block--feature_slideshow .slides a {
      margin: 0 22px; }
    .block--feature_slideshow .flex-direction-nav a:before {
      font-size: 30px; }
    .block--feature_slideshow .flex-direction-nav a.flex-prev {
      padding-left: 0; }
      .block--feature_slideshow .flex-direction-nav a.flex-prev:hover:before {
        -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
        transform: translateX(0px); }
    .block--feature_slideshow .flex-direction-nav a.flex-next {
      padding-right: 0; }
      .block--feature_slideshow .flex-direction-nav a.flex-next:hover:before {
        -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
        transform: translateX(0px); } }

.block--title_image {
  background: #f5f5f5;
  background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), color-stop(60%, #f8f8f8), color-stop(72.6%, #f2f2f2), to(#f8f8f8));
  background: -webkit-linear-gradient(top, #f2f2f2, #f8f8f8 60%, #f2f2f2 72.6%, #f8f8f8);
  background: -o-linear-gradient(top, #f2f2f2, #f8f8f8 60%, #f2f2f2 72.6%, #f8f8f8);
  background: linear-gradient(to bottom, #f2f2f2, #f8f8f8 60%, #f2f2f2 72.6%, #f8f8f8);
  margin: 0 auto; }
  .block--title_image img {
    display: block;
    margin: auto; }

.block--text {
  max-width: 1100px;
  padding: 0 32px; }
  .block--text h2 {
    max-width: 16em;
    margin-left: auto;
    margin-right: auto; }
  .block--text.include-award h2 {
    max-width: 18em;
    padding: 0.5em 3.5em;
    margin-bottom: 0.5em;
    position: relative; }
    .block--text.include-award h2:first-of-type:before {
      content: '';
      display: block;
      width: 3em;
      height: 3em;
      position: absolute;
      top: 0;
      left: 0;
      background-image: url("../images/award-2020.png");
      background-size: 100% auto; }
  @media (max-width: 750px) {
    .block--text {
      padding: 0 25px; }
      .block--text h2 {
        margin-left: 0;
        margin-right: 0; } }

.page--contact-us .block--text:first-of-type {
  margin-top: 5em; }

.page--contact-us .block--text h2 {
  font-size: 3.5em;
  margin-bottom: 0.1em; }

.page--contact-us .block--text p {
  font-size: 1.6em;
  font-weight: bold;
  margin: 0; }

.page--contact-us .block--text a {
  color: #33b652;
  text-decoration: none;
  display: inline-block; }

.page--contact-us .block--text + footer {
  margin-top: 0; }

@media (max-width: 750px) {
  .page--contact-us .block--text:first-of-type {
    margin-top: 72px; }
  .page--contact-us .block--text h2 {
    font-size: 28px; }
  .page--contact-us .block--text p {
    font-size: 18px; } }

.block--feature_image img {
  display: block;
  margin: auto; }

.block--image_links {
  text-align: center;
  margin: 45px; }
  .block--image_links ul {
    list-style: none;
    margin: 0 auto;
    max-width: 1320px;
    padding: 15px; }
  .block--image_links li {
    display: inline-block;
    padding: 15px;
    vertical-align: top;
    width: 33.33%; }
  .block--image_links a {
    display: block;
    -webkit-transition: opacity .15s;
    -o-transition: opacity .15s;
    transition: opacity .15s; }
    .block--image_links a:hover {
      opacity: .8; }
  .block--image_links img {
    display: block;
    margin: auto; }
  @media (max-width: 800px) {
    .block--image_links li {
      width: 50%; } }
  @media (max-width: 650px) {
    .block--image_links {
      margin: 0; }
      .block--image_links ul {
        padding: 10px; }
      .block--image_links li {
        width: 100%; } }

.block--icon_links {
  text-align: center;
  margin: 45px; }
  .block--icon_links ul {
    list-style: none;
    margin: 0 auto;
    max-width: 1320px;
    padding: 15px; }
  .block--icon_links li {
    display: inline-block;
    padding: 15px;
    vertical-align: top;
    width: 33.33%; }
  .block--icon_links a {
    color: #33b652;
    display: block;
    font-size: 27px;
    font-weight: bold;
    line-height: 1.15;
    text-decoration: none; }
    .block--icon_links a:before {
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      line-height: 1;
      speak: none;
      text-transform: none;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      color: #353132;
      content: '';
      display: block;
      font-size: 128px;
      margin-bottom: 35px; }
    .block--icon_links a.icon--calculator:before {
      content: ""; }
    .block--icon_links a.icon--calendar:before {
      content: ""; }
    .block--icon_links a.icon--caret-left:before {
      content: ""; }
    .block--icon_links a.icon--caret-right:before {
      content: ""; }
    .block--icon_links a.icon--checklist:before {
      content: ""; }
    .block--icon_links a.icon--handshake:before {
      content: ""; }
    .block--icon_links a.icon--happy-speech-bubble:before {
      content: ""; }
    .block--icon_links a.icon--house-1:before {
      content: ""; }
    .block--icon_links a.icon--house-2:before {
      content: ""; }
    .block--icon_links a.icon--house-plus:before {
      content: ""; }
    .block--icon_links a.icon--info-speech-bubble:before {
      content: ""; }
    .block--icon_links a.icon--minus:before {
      content: ""; }
    .block--icon_links a.icon--newspaper:before {
      content: ""; }
    .block--icon_links a.icon--plus:before {
      content: ""; }
    .block--icon_links a.icon--question-speech-bubbles:before {
      content: ""; }
    .block--icon_links a.icon--telephone:before {
      content: ""; }
    .block--icon_links a:after {
      background: #353132;
      color: white;
      content: 'Click here';
      display: block;
      font-size: 16px;
      margin: 25px auto 0;
      max-width: 212px;
      padding: 12px 8px 8px;
      -webkit-transition: background .15s;
      -o-transition: background .15s;
      transition: background .15s; }
    .block--icon_links a:hover:after {
      background: #33b652; }
  @media (max-width: 1200px) {
    .block--icon_links a {
      font-size: 20px; }
      .block--icon_links a:before {
        font-size: 100px; }
      .block--icon_links a:after {
        font-size: 13px; } }
  @media (max-width: 800px) {
    .block--icon_links li {
      width: 50%;
      margin-bottom: 30px; } }
  @media (max-width: 750px) {
    .block--icon_links {
      margin: 25px; } }
  @media (max-width: 650px) {
    .block--icon_links a {
      font-size: 16px; }
      .block--icon_links a:before {
        font-size: 80px;
        margin-bottom: 20px; }
      .block--icon_links a:after {
        font-size: 13px;
        margin: 15px auto 0; }
    .block--icon_links li {
      width: 100%; } }

.block--accordion {
  margin-top: 64px;
  max-width: 1100px;
  padding: 0 32px; }
  .block--accordion > h2 {
    font-size: 35px;
    margin-bottom: 12px; }
  .block--accordion > section {
    border-bottom: thin solid;
    margin: auto;
    text-align: left; }
    .block--accordion > section > h3 {
      color: inherit;
      cursor: pointer;
      font-size: 21px;
      line-height: 1.2;
      margin: 0;
      padding: 17px 42px 13px 0;
      position: relative; }
      .block--accordion > section > h3:after {
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        line-height: 1;
        speak: none;
        text-transform: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: "";
        font-size: 22px;
        line-height: 0;
        position: absolute;
        right: 10px;
        top: 50%; }
    .block--accordion > section > .content {
      max-width: 960px;
      padding: 0 0 16px; }
      .block--accordion > section > .content > :first-child {
        margin-top: 0; }
      .block--accordion > section > .content.has-chart {
        max-width: 100%; }
        .block--accordion > section > .content.has-chart > :first-child {
          margin-top: 30px; }
    .block--accordion > section.is-active > h3:after {
      content: ""; }
  @media (max-width: 1000px) {
    .block--accordion > h2 {
      font-size: 28px;
      margin-bottom: 9px; }
    .block--accordion > section > h3 {
      font-size: 16px; }
      .block--accordion > section > h3:after {
        font-size: 20px; } }
  @media (max-width: 700px) {
    .block--accordion {
      padding: 0 25px; }
      .block--accordion > h2 {
        font-size: 26px; }
      .block--accordion > section > h3 {
        font-size: 14px; }
        .block--accordion > section > h3:after {
          font-size: 18px; } }

.block--contact_form {
  margin: 0;
  padding: 0 32px;
  text-align: left; }
  .block--contact_form > div {
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 32px;
    background: #e9e9e9; }
  .block--contact_form h2 {
    margin: 0; }
  .block--contact_form p {
    margin: 0;
    font-weight: bold; }
  .block--contact_form form {
    margin: auto;
    max-width: 760px;
    position: relative; }
    .block--contact_form form:after {
      clear: both;
      content: '';
      display: table; }
  .block--contact_form input,
  .block--contact_form select {
    background: #fff;
    border-radius: 0;
    border: none;
    display: block;
    font-size: .8em;
    font-weight: 300;
    margin: 20px 0;
    padding: 8px 20px;
    width: 100%; }
  .block--contact_form select {
    padding-left: 16px; }
  .block--contact_form small {
    display: block;
    float: left;
    font-size: .52em;
    max-width: 53em;
    padding: 6px 0; }
    .block--contact_form small.required {
      position: absolute;
      right: 0;
      top: 20px; }
  .block--contact_form button {
    background: #000;
    border-radius: 0;
    border: none;
    color: #fff;
    cursor: pointer;
    float: right;
    font-weight: bold;
    -webkit-transition: background .15s;
    -o-transition: background .15s;
    transition: background .15s;
    padding: 8px 20px; }
    .block--contact_form button:after {
      content: " ›";
      font-size: 1.7em;
      font-weight: normal;
      line-height: 0;
      vertical-align: -2px; }
    .block--contact_form button:hover {
      background: #353132; }
  .block--contact_form + footer {
    margin-top: 0; }
  @media (max-width: 750px) {
    .block--contact_form {
      padding: 0; } }

.block--logo_list {
  max-width: 1230px;
  padding: 0 32px;
  text-align: center;
  font-size: 14px; }
  .block--logo_list ul {
    margin: 0;
    padding: 0;
    position: static; }
    .block--logo_list ul > li:before {
      content: none;
      left: auto;
      position: static; }
  .block--logo_list li {
    display: inline-block;
    vertical-align: middle;
    padding: 0 1em;
    margin-bottom: 1.5em; }
  .block--logo_list img {
    display: block; }
  @media (max-width: 850px) {
    .block--logo_list {
      font-size: 11px; } }
  @media (max-width: 750px) {
    .block--logo_list {
      padding: 0 25px; } }
  @media (max-width: 700px) {
    .block--logo_list {
      font-size: 8px; } }

.block--chart {
  max-width: 1100px;
  padding: 0 32px; }
  @media (max-width: 750px) {
    .block--chart {
      padding: 0 25px; } }

.block--review {
  max-width: 1100px;
  padding: 0 32px; }
  .block--review h2 {
    font-size: 29px;
    max-width: 20em;
    margin-left: auto;
    margin-right: auto;
    font-weight: 600; }
  .block--review .stars {
    margin-right: 1em; }
  .block--review p span {
    display: inline-block; }
  .block--review p:nth-of-type(2) {
    font-size: 21px; }
  @media (max-width: 750px) {
    .block--review {
      padding: 0 25px; }
      .block--review h2 {
        margin-left: 0;
        margin-right: 0; }
      .block--review .stars {
        display: block;
        margin-bottom: 0.5em; }
      .block--review p:nth-of-type(2) {
        font-size: 16px; } }

.page--home h2 {
  font-size: 51px;
  line-height: 1.05; }

.page--home hr {
  background: #a3a1a1;
  height: 1px;
  max-width: 1260px; }

@media (max-width: 1200px) {
  .page--home h2 {
    font-size: 35px; } }

@media (max-width: 700px) {
  .page--home h2 {
    font-size: 28px; } }

.page--news .news-articles time {
  display: block;
  font-size: .8em;
  font-style: italic; }

.page--news .block--accordion > h2 {
  border-bottom: 3px solid black;
  padding-bottom: 0.8em;
  margin-bottom: 1.5em; }

.single-post .block--text > time {
  display: block;
  font-size: .8em;
  font-style: italic; }
