@charset "UTF-8";
.left {
  float: left; }

.right {
  float: right; }

.center {
  text-align: center; }

.clear,
.clearfix {
  clear: both; }

.uppercase {
  text-transform: uppercase; }

.wrap {
  margin: 0 auto;
  max-width: 1200px;
  padding: 0 1em; }
  @media (min-width: 1200px) {
    .wrap {
      padding: 0; } }
  .wrap::after {
    clear: both;
    content: "";
    display: table; }

.z-low {
  position: relative;
  z-index: 100; }

.z-medium {
  position: relative;
  z-index: 200; }

.z-high {
  position: relative;
  z-index: 300; }

.strong,
.bold {
  font-weight: bold; }

button, input[type="button"], input[type="reset"], input[type="submit"],
.btn {
  appearance: none;
  background-color: #4bcaff;
  border: 0;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "Noto Sans", sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  font-weight: 600;
  line-height: 1;
  padding: 0.9em 1.8em;
  margin-bottom: 1em;
  text-decoration: none;
  transition: background-color 150ms ease;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap; }
  button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="reset"]:hover, input[type="reset"]:focus, input[type="submit"]:hover, input[type="submit"]:focus,
  .btn:hover,
  .btn:focus {
    background-color: #3ca2cc;
    color: #fff; }
  button:disabled, input[type="button"]:disabled, input[type="reset"]:disabled, input[type="submit"]:disabled,
  .btn:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
    button:disabled:hover, input[type="button"]:disabled:hover, input[type="reset"]:disabled:hover, input[type="submit"]:disabled:hover,
    .btn:disabled:hover {
      background-color: #C7D52B; }

.btn-home-hero {
  background: transparent;
  border: 1px solid #53565A;
  border-radius: 0;
  color: #53565A;
  margin-bottom: 0;
  width: 100%; }
  @media screen and (min-width: 450px) {
    .btn-home-hero {
      max-width: 206px;
      margin-bottom: 1em; } }
  .btn-home-hero:hover, .btn-home-hero:focus {
    background: transparent;
    color: #53565A;
    outline: none; }
  .btn-home-hero:hover {
    background: #C7D52B;
    border: 1px solid #C7D52B; }
  .btn-home-hero.active {
    background: #C7D52B;
    border: 1px solid #C7D52B; }

fieldset {
  background-color: #e1e1e3;
  border: 1px solid #858890;
  margin: 0 0 0.9em;
  padding: 1.8em; }

input,
label,
select {
  display: block;
  font-family: "Noto Sans", sans-serif;
  font-size: 1em; }

label {
  font-weight: 600;
  margin-bottom: 0.45em; }
  label.required::after {
    content: "*"; }
  label abbr {
    display: none; }

input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], input:not([type]), textarea,
select[multiple=multiple] {
  background-color: #fff;
  border: 1px solid #858890;
  border-radius: 3px;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  font-family: "Noto Sans", sans-serif;
  font-size: 1em;
  margin-bottom: 0.9em;
  padding: 0.6em;
  transition: border-color 150ms ease;
  width: 100%; }
  input[type="color"]:hover, input[type="date"]:hover, input[type="datetime"]:hover, input[type="datetime-local"]:hover, input[type="email"]:hover, input[type="month"]:hover, input[type="number"]:hover, input[type="password"]:hover, input[type="search"]:hover, input[type="tel"]:hover, input[type="text"]:hover, input[type="time"]:hover, input[type="url"]:hover, input[type="week"]:hover, input:not([type]):hover, textarea:hover,
  select[multiple=multiple]:hover {
    border-color: #6a6d73; }
  input[type="color"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input:not([type]):focus, textarea:focus,
  select[multiple=multiple]:focus {
    border-color: #C7D52B;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 5px rgba(180, 192, 38, 0.7);
    outline: none; }
  input[type="color"]:disabled, input[type="date"]:disabled, input[type="datetime"]:disabled, input[type="datetime-local"]:disabled, input[type="email"]:disabled, input[type="month"]:disabled, input[type="number"]:disabled, input[type="password"]:disabled, input[type="search"]:disabled, input[type="tel"]:disabled, input[type="text"]:disabled, input[type="time"]:disabled, input[type="url"]:disabled, input[type="week"]:disabled, input:not([type]):disabled, textarea:disabled,
  select[multiple=multiple]:disabled {
    background-color: #f2f2f2;
    cursor: not-allowed; }
    input[type="color"]:disabled:hover, input[type="date"]:disabled:hover, input[type="datetime"]:disabled:hover, input[type="datetime-local"]:disabled:hover, input[type="email"]:disabled:hover, input[type="month"]:disabled:hover, input[type="number"]:disabled:hover, input[type="password"]:disabled:hover, input[type="search"]:disabled:hover, input[type="tel"]:disabled:hover, input[type="text"]:disabled:hover, input[type="time"]:disabled:hover, input[type="url"]:disabled:hover, input[type="week"]:disabled:hover, input:not([type]):disabled:hover, textarea:disabled:hover,
    select[multiple=multiple]:disabled:hover {
      border: 1px solid #858890; }

textarea {
  resize: vertical; }

input[type="search"] {
  appearance: none; }

input[type="checkbox"],
input[type="radio"] {
  display: inline;
  margin-right: 0.45em; }
  input[type="checkbox"] + label,
  input[type="radio"] + label {
    display: inline-block; }

input[type="file"] {
  margin-bottom: 0.9em;
  width: 100%; }

select {
  margin-bottom: 1.8em;
  max-width: 100%;
  width: auto; }

ul,
ol {
  margin: 0;
  margin-bottom: 0.9em;
  padding: 0;
  padding-left: 1.8em; }

ul {
  list-style-type: disc; }

ol {
  list-style-type: decimal; }

dl {
  margin-bottom: 0.9em; }
  dl dt {
    font-weight: bold;
    margin-top: 0.9em; }
  dl dd {
    margin: 0; }

table {
  border-collapse: collapse;
  font-feature-settings: "kern", "liga", "tnum";
  margin: 0.9em 0;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid #64666c;
  font-weight: 600;
  padding: 0.9em 0;
  text-align: left; }

tr,
td,
th {
  vertical-align: middle; }

body {
  color: #53565A;
  font-family: "Noto Sans", sans-serif;
  font-feature-settings: "kern", "liga", "pnum";
  font-size: 1em;
  font-weight: 200;
  line-height: 1.8; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Sans", sans-serif;
  font-size: 1em;
  line-height: 1.2;
  margin: 0 0 0.2em; }
  h1.orange,
  h2.orange,
  h3.orange,
  h4.orange,
  h5.orange,
  h6.orange {
    color: #E84017; }

h1 {
  font-size: 2.5em;
  font-weight: 800; }

h2 {
  font-size: 2em;
  font-weight: 800;
  margin-botttom: 0.5em; }

h3 {
  font-size: 1.5em;
  font-weight: 200; }

h4, h5, h6 {
  font-weight: 200; }

p {
  margin: 0 0 1em; }

a {
  color: #4bcaff;
  text-decoration: underline;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: #3898bf; }

hr {
  border-bottom: 1px solid #858890;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  clear: both;
  margin: 1.8em 0; }

.font-size-regular {
  font-size: 1em;
  line-height: 1.8; }

.font-size-medium {
  font-size: 1.5em;
  line-height: 1.8; }

.font-size-large {
  font-size: 2em;
  line-height: 1.2; }

.font-size-x-large {
  font-size: 2.5em;
  line-height: 1.2; }

.font-weight-light {
  font-weight: 200; }

.font-weight-medium {
  font-weight: 500; }

.font-weight-black {
  font-weight: 800; }

img,
picture {
  margin: 0;
  max-width: 100%; }

html {
  box-sizing: border-box; }

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

body {
  padding: 0;
  margin: 0; }

.staff-list {
  padding: 0; }
  .staff-list li {
    float: left;
    list-style: none;
    margin-bottom: 2em;
    width: 33%; }

#services-list .col {
  list-style: none;
  max-width: 400px;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 3em;
  padding: 0 1.5em; }
  #services-list .col p {
    font-size: 14px; }
  @media (min-width: 700px) and (max-width: 1023px) {
    #services-list .col {
      float: left;
      width: 49.2%;
      margin: 1% 0 1% 1.6%;
      min-height: 420px;
      text-align: left; }
      #services-list .col:first-of-type {
        margin-left: 0;
        padding-left: 0; }
      #services-list .col:nth-of-type(3n) {
        margin-left: 0;
        padding-left: 0; } }
  @media (min-width: 1024px) {
    #services-list .col {
      float: left;
      width: 32.26%;
      margin: 1% 0 1% 1.6%;
      text-align: left; }
      #services-list .col:first-of-type {
        margin-left: 0;
        padding-left: 0; }
      #services-list .col:nth-of-type(4n) {
        margin-left: 0;
        padding-left: 0; } }
#services-list:after {
  clear: both;
  content: "";
  display: block; }

#product-list .logo {
  display: block;
  float: left;
  margin-right: 1em;
  text-align: center;
  width: 32%; }
  #product-list .logo:first-of-type {
    text-align: left; }
  #product-list .logo:last-of-type {
    text-align: right; }

header.navigation {
  background-color: #FFF;
  border-bottom: 1px solid #e6e6e6;
  min-height: 60px;
  width: 100%;
  z-index: 999; }
  header.navigation .address-bar {
    background: #353f47;
    color: #FFF;
    text-transform: uppercase;
    background-image: -webkit-linear-gradient( bottom , #353f47, #3e474f);
    background-image: linear-gradient(to top, #353f47, #3e474f); }
    header.navigation .address-bar p {
      font-size: 14px;
      margin: 0;
      padding: 10px 0;
      text-align: center; }
    @media screen and (min-width: 900px) {
      header.navigation .address-bar p {
        text-align: left; } }
  header.navigation .navigation-wrapper {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    min-height: 130px;
    position: relative;
    z-index: 9999; }
    header.navigation .navigation-wrapper::after {
      clear: both;
      content: "";
      display: table; }
    header.navigation .navigation-wrapper::after {
      clear: both;
      content: "";
      display: table; }
  header.navigation .logo {
    float: left;
    padding-right: 2em; }
    header.navigation .logo img {
      padding: 1.5em 0; }
  header.navigation .navigation-menu-button {
    color: #222;
    display: block;
    float: right;
    line-height: 60px;
    margin: 0;
    padding-right: 1em;
    text-decoration: none;
    text-transform: uppercase; }
    @media screen and (min-width: 900px) {
      header.navigation .navigation-menu-button {
        display: none; } }
    header.navigation .navigation-menu-button:focus, header.navigation .navigation-menu-button:hover {
      color: #222; }
  header.navigation nav {
    float: none;
    min-height: 60px;
    z-index: 9999999; }
    @media screen and (min-width: 900px) {
      header.navigation nav {
        float: left; } }
    @media screen and (min-width: 1200px) {
      header.navigation nav {
        float: right;
        padding: 35px 5px 35px 0; } }
  header.navigation ul.navigation-menu {
    clear: both;
    display: none;
    margin: 0 auto;
    overflow: visible;
    padding: 0;
    width: 100%;
    z-index: 9999; }
    header.navigation ul.navigation-menu.show {
      display: block; }
    @media screen and (min-width: 900px) {
      header.navigation ul.navigation-menu {
        display: inline;
        margin: 0;
        padding: 0; } }
  header.navigation ul li.nav-link {
    background: #FFF;
    display: block;
    line-height: 60px;
    overflow: hidden;
    padding: 0;
    text-align: center;
    width: 100%;
    z-index: 9999;
    box-sizing: border-box; }
    @media screen and (min-width: 900px) {
      header.navigation ul li.nav-link {
        background: transparent;
        display: inline;
        line-height: 60px;
        padding: 0 0.8em;
        text-decoration: none;
        width: auto; } }
    header.navigation ul li.nav-link.active a, header.navigation ul li.nav-link:hover a {
      border: 1px solid #4bcaff;
      color: #4bcaff; }
    header.navigation ul li.nav-link a {
      border: 1px solid transparent;
      color: #353f47;
      display: inline-block;
      font-size: 14px;
      font-weight: bold;
      line-height: 30px;
      padding: 0 0.6em;
      text-align: center;
      text-decoration: none;
      text-transform: uppercase;
      width: 100%; }
      @media screen and (min-width: 900px) {
        header.navigation ul li.nav-link a {
          width: auto; } }
      header.navigation ul li.nav-link a:focus, header.navigation ul li.nav-link a:hover {
        color: #4bcaff; }
  header.navigation .active-nav-item a {
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    padding-bottom: 3px; }
  header.navigation li.more.nav-link {
    padding-right: 0; }
    @media screen and (min-width: 900px) {
      header.navigation li.more.nav-link {
        padding-right: 1em; } }
    header.navigation li.more.nav-link > ul > li:first-child a {
      padding-top: 1em; }
    header.navigation li.more.nav-link a {
      margin-right: 1em; }
    header.navigation li.more.nav-link > a {
      padding-right: 0.6em; }
    header.navigation li.more.nav-link > a:after {
      position: absolute;
      top: auto;
      right: -0.4em;
      bottom: auto;
      left: auto;
      content: '\25BE';
      color: #222; }
  header.navigation li.more {
    overflow: visible;
    padding-right: 0; }
    header.navigation li.more a {
      padding-right: 0.8em; }
    header.navigation li.more > a {
      padding-right: 1.6em;
      position: relative; }
      @media screen and (min-width: 900px) {
        header.navigation li.more > a {
          margin-right: 1em; } }
      header.navigation li.more > a:after {
        content: '›';
        font-size: 1.2em;
        position: absolute;
        right: 0.5em; }
    header.navigation li.more:focus > .submenu, header.navigation li.more:hover > .submenu {
      display: block; }
    @media screen and (min-width: 900px) {
      header.navigation li.more {
        padding-right: 0.8em;
        position: relative; } }
  header.navigation ul.submenu {
    display: none;
    padding-left: 0; }
    @media screen and (min-width: 900px) {
      header.navigation ul.submenu {
        left: -1em;
        position: absolute;
        top: 1.5em; } }
    @media screen and (min-width: 900px) {
      header.navigation ul.submenu .submenu {
        left: 11.8em;
        top: 0; } }
    header.navigation ul.submenu li {
      display: block;
      padding-right: 0; }
      @media screen and (min-width: 900px) {
        header.navigation ul.submenu li {
          line-height: 46.15385px; }
          header.navigation ul.submenu li:first-child > a {
            border-top-left-radius: 3px;
            border-top-right-radius: 3px; }
          header.navigation ul.submenu li:last-child > a {
            border-bottom-left-radius: 3px;
            border-bottom-right-radius: 3px;
            padding-bottom: 0.7em; } }
      header.navigation ul.submenu li a {
        background-color: #f7f7f7;
        display: inline-block;
        text-align: right;
        width: 100%; }
        @media screen and (min-width: 900px) {
          header.navigation ul.submenu li a {
            background-color: #FFF;
            padding-left: 1em;
            text-align: left;
            width: 12em; } }
  header.navigation .navigation-tools {
    background: #505050;
    clear: both;
    display: block;
    height: 60px; }
    @media screen and (min-width: 900px) {
      header.navigation .navigation-tools {
        background: transparent;
        clear: none;
        float: right; } }

.hero {
  background-image: url("/images/hero-image.jpg");
  background-color: #324766;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  color: #FFF;
  padding-bottom: 3em;
  min-height: 400px; }
  .hero .hero-logo img {
    height: 4em;
    margin-bottom: 1em; }
  .hero .hero-inner {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin: auto;
    padding: 3.5em 1em;
    text-align: left; }
    .hero .hero-inner::after {
      clear: both;
      content: "";
      display: table; }
    .hero .hero-inner::after {
      clear: both;
      content: "";
      display: table; }
    @media (min-width: 1200px) {
      .hero .hero-inner {
        padding: 3.5em 0; } }
    .hero .hero-inner .hero-copy {
      text-align: left;
      background: rgba(53, 63, 71, 0.8);
      padding: 1em; }
      .hero .hero-inner .hero-copy h1 {
        font-size: 1.6em;
        margin-bottom: 0.5em; }
        @media screen and (min-width: 900px) {
          .hero .hero-inner .hero-copy h1 {
            font-size: 1.8em; } }
      .hero .hero-inner .hero-copy p {
        line-height: 1.4em; }

#services .col {
  float: left;
  width: 25%; }
#services:after {
  display: block;
  content: "";
  clear: both; }

#home-hero {
  min-height: 680px; }
  #home-hero .hero-copy {
    background: transparent;
    padding: 14em 0;
    text-align: center;
    text-transform: uppercase; }
  #home-hero h1, #home-hero p {
    background: rgba(47, 105, 0, 0.57);
    font-size: 40px;
    font-weight: normal;
    line-height: 1.4em;
    margin: 0 auto; }
  #home-hero h1 {
    font-weight: bold;
    max-width: 800px; }
  #home-hero p {
    max-width: 1065px; }

#contact-hero.hero {
  background-image: url("/images/hero-image-contact.jpg"); }

#services-hero.hero {
  background-image: url("/images/hero-image-services.jpg"); }

#estimates-hero.hero {
  background-image: url("/images/hero-image-estimates.jpg"); }

#about-hero.hero {
  background-image: url("/images/hero-image-about.jpg"); }

#customers-hero.hero {
  background-image: url("/images/hero-image-customers.jpg"); }

#customer-list:after {
  display: block;
  content: '';
  clear: both; }
#customer-list ul {
  float: left;
  max-width: 255px;
  margin-right: 2em; }
  #customer-list ul:last-of-type {
    margin-right: 0; }

#sub-section {
  min-height: 400px;
  padding: 2em 0; }

.footer {
  background: #353f47;
  color: #FFF;
  padding: 1em 0;
  text-transform: uppercase;
  background-image: -webkit-linear-gradient( bottom , #353f47, #3e474f);
  background-image: linear-gradient(to top, #353f47, #3e474f); }
  .footer .footer-logo {
    margin-bottom: 2em;
    text-align: center; }
    .footer .footer-logo img {
      height: 3em; }
  .footer .copyright {
    text-align: center; }
    @media screen and (min-width: 800px) {
      .footer .copyright {
        display: inline-block;
        text-align: left; } }
  .footer ul {
    padding: 0; }
  .footer li {
    display: block;
    line-height: 1.5em;
    list-style: none;
    text-align: center;
    padding-right: 1.5em; }
    @media screen and (min-width: 800px) {
      .footer li {
        display: inline-block;
        text-align: left; } }
    .footer li a {
      color: #FFF;
      display: block;
      padding: .5em 0;
      text-decoration: none;
      width: 100%; }
      .footer li a:focus, .footer li a:hover {
        color: white; }

/*# sourceMappingURL=styles.css.map */
