* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0px;
  padding: 0px;
  border: none;
  color: #666666;
  font-weight: normal;
  z-index: 1;
  box-sizing: border-box; }

a,
a * {
  text-decoration: none;
  cursor: pointer;
  font-size: inherit; }

li {
  list-style-type: none; }

.mob {
  display: block; }

.desk {
  display: none; }

p {
  font-weight: 200; }

.bold {
  font-weight: bold;
  -webkit-text-stroke: 0px #2d2d2d; }

.underline,
.underline * {
  text-decoration: underline; }

.yellow {
  color: #c29545; }

.grey {
  color: #e9e9e9; }

.industry {
  -webkit-text-stroke: 0px #2d2d2d; }

.inline p {
  -webkit-text-stroke: 1px #2d2d2d; }
  .inline p a {
    -webkit-text-stroke: 1px #2d2d2d; }
  .inline p .bold {
    -webkit-text-stroke: 2px #2d2d2d; }
  .inline p .comma {
    -webkit-text-stroke: 0px #2d2d2d;
    font-family: helvetica; }

hr {
  height: 0;
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee; }

.hide {
  display: none !important; }

body {
  width: 100%;
  max-width: 100%; }
  body main {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    width: 100%;
    max-width: 100vw;
    overflow: hidden;
    min-height: 100vh;
    background-color: #e9e9e9;
    display: flex;
    justify-content: center;
    padding-top: 100px; }
    body main header {
      background-color: white;
      width: 100%;
      height: 100px;
      display: flex;
      align-items: center;
      padding: 20px 60px;
      position: fixed;
      z-index: 20;
      top: 0;
      box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.05); }
      body main header .logo-cont {
        flex: 3;
        height: 100%; }
        body main header .logo-cont a img {
          height: 100%;
          width: auto; }
      body main header .main-nav {
        flex: 5;
        display: flex;
        justify-content: flex-end; }
        body main header .main-nav .menu-cont {
          width: 40px;
          height: 33.88px; }
          body main header .main-nav .menu-cont #menu {
            width: 100%; }
        body main header .main-nav .nav-ul a {
          margin-right: 30px;
          opacity: 1; }
          body main header .main-nav .nav-ul a li {
            display: inline-block; }
            body main header .main-nav .nav-ul a li h3 {
              font-weight: bold;
              font-size: 16px; }
        body main header .main-nav .nav-ul a:hover li h3 {
          color: #6d6d6d;
          opacity: 0.7;
          transition: color 0.2s ease; }
        body main header .main-nav .nav-ul a:last-child {
          margin-right: 0; }
      body main header #nav-modal {
        height: 100vh;
        width: 100%;
        background-color: white;
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        justify-content: center;
        align-items: center; }
        body main header #nav-modal #nav-ul-cont ul a {
          text-align: center; }
          body main header #nav-modal #nav-ul-cont ul a li {
            margin-bottom: 30px;
            text-align: center; }
            body main header #nav-modal #nav-ul-cont ul a li h3 {
              font-size: 22px; }
          body main header #nav-modal #nav-ul-cont ul a * {
            cursor: pointer;
            font-weight: bold; }
        body main header #nav-modal #nav-ul-cont ul a:last-child li {
          margin-top: 30px;
          margin-bottom: 0; }
        body main header #nav-modal #nav-ul-cont ul li .nav-close {
          width: 25px;
          height: auto;
          margin: 30px auto 0 auto; }
    body main #home-top {
      height: calc(100vh - 100px);
      width: 100%;
      margin: 0px auto;
      display: flex;
      justify-content: center;
      position: relative;
      bottom: 0px;
      align-items: center; }
      body main #home-top .bg-img-cont {
        min-height: calc(100vh + 100px);
        min-width: calc(100vw + 100px);
        background-size: cover;
        background-repeat: no-repeat;
        background-image: url(pics/IMG_7287.JPG);
        background-position: center;
        position: absolute;
        top: -100px; }
      body main #home-top .top-sect {
        width: 100%;
        padding: 70px; }
        body main #home-top .top-sect .top-cont {
          display: flex;
          align-items: center;
          text-align: center;
          justify-content: center;
          max-width: calc(100% - 40px);
          margin: 0px auto; }
          body main #home-top .top-sect .top-cont img {
            width: 250px;
            height: auto;
            max-width: 100%; }
          body main #home-top .top-sect .top-cont h2 {
            font-family: 'Archivo Black', sans-serif;
            text-align: center;
            width: 80%;
            margin-bottom: 20px;
            font-size: 20px;
            text-shadow: 0px 0px 8px rgba(255, 255, 255, 0.7);
            padding: 20px 0;
            margin: 0px auto; }
          body main #home-top .top-sect .top-cont a button {
            font-family: 'Archivo Black', sans-serif;
            padding: 10px 20px;
            border-radius: 10px;
            background-color: #000;
            color: white;
            font-size: 12px;
            cursor: pointer; }
          body main #home-top .top-sect .top-cont a button:hover {
            transition: background-color 0.5s ease;
            background-color: #c29545; }
    body main .cta-sect {
      display: block;
      background-color: #ffffff;
      position: absolute;
      top: 100vh;
      min-height: 500px;
      width: 100%;
      max-width: 100vw; }
      body main .cta-sect .cta {
        display: flex;
        justify-content: center;
        align-items: center;
        flex: 1;
        padding: 0px 0; }
        body main .cta-sect .cta * {
          cursor: pointer; }
        body main .cta-sect .cta .border-cont {
          padding: 50px 0;
          border-right: 2px solid #e9e9e9;
          width: 100%;
          text-align: center; }
          body main .cta-sect .cta .border-cont .enlarge svg {
            width: 90px; }
            body main .cta-sect .cta .border-cont .enlarge svg * {
              fill: #fff;
              stroke: #2d2d2db5;
              stroke-linecap: round;
              stroke-linejoin: round;
              stroke-width: 1.42px; }
          body main .cta-sect .cta .border-cont .enlarge h3 {
            font-weight: bold;
            text-align: center;
            margin-top: 20px;
            font-size: 20px; }
          body main .cta-sect .cta .border-cont .enlarge:hover {
            transform: scale(1.1);
            transition: transform 0.5s ease; }
      body main .cta-sect .cta:first-child {
        padding-top: 60px; }
      body main .cta-sect .cta:last-child {
        padding-bottom: 60px; }
        body main .cta-sect .cta:last-child .border-cont {
          border: none; }
    body main .page-cont {
      width: 1100px;
      background-color: #ffffff;
      min-height: 100vh;
      max-width: calc(100vw - 40px);
      padding: 0 0 20px 0;
      box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.05); }
      body main .page-cont .watermark {
        background-image: url(pics/logo-grey.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        height: 200px;
        width: 200px;
        opacity: 0.05;
        position: absolute;
        left: 50%;
        bottom: 20px; }
      body main .page-cont .page-header {
        background-color: #c29545;
        color: #ffffff;
        padding: 25px 50px 19px 50px;
        position: relative;
        right: 0px;
        top: 50px;
        font-size: 25px;
        font-weight: bold;
        text-align: center;
        width: 100vw; }
      body main .page-cont .page-header:hover {
        color: white; }
      body main .page-cont .banner-img {
        max-width: 100vw;
        height: 200px;
        width: calc(100% + 40px);
        position: relative;
        right: 20px;
        background-size: cover;
        background-color: #cccccc;
        background-position: center;
        margin-bottom: 40px; }
      body main .page-cont .contact-sect {
        display: block;
        justify-content: center; }
        body main .page-cont .contact-sect .form-sect {
          width: 100%;
          padding: 0px 30px;
          text-align: left;
          display: inline-block; }
          body main .page-cont .contact-sect .form-sect * {
            text-align: left; }
          body main .page-cont .contact-sect .form-sect .container {
            margin: 0; }
            body main .page-cont .contact-sect .form-sect .container #contact button {
              text-align: center;
              border-radius: 4px;
              cursor: pointer;
              width: 100%;
              border: none;
              background-color: #c29545;
              color: #ffffff;
              margin: 0 0 5px;
              padding: 12px 10px 12px 10px;
              font-size: 15px;
              font-weight: bold; }
              body main .page-cont .contact-sect .form-sect .container #contact button:hover {
                background-color: #000; }
        body main .page-cont .contact-sect .deets-sect {
          width: 100%;
          max-width: initial;
          display: inline-block;
          padding: 0px 30px;
          text-align: center; }
          body main .page-cont .contact-sect .deets-sect * {
            text-align: left; }
          body main .page-cont .contact-sect .deets-sect p a:hover {
            text-decoration: underline; }
          body main .page-cont .contact-sect .deets-sect h4 {
            margin: 5px 0 15px; }
          body main .page-cont .contact-sect .deets-sect .contact-list li {
            display: flex;
            align-items: center; }
            body main .page-cont .contact-sect .deets-sect .contact-list li img {
              height: 20px;
              display: inline-block; }
            body main .page-cont .contact-sect .deets-sect .contact-list li p {
              margin-left: 10px;
              display: inline-block;
              position: relative;
              top: 3px; }
      body main .page-cont .services-sect {
        padding: 0 10px;
        width: 100%; }
        body main .page-cont .services-sect .container {
          box-shadow: none;
          border-radius: 10px;
          overflow: hidden; }
          body main .page-cont .services-sect .container .tabs {
            display: table;
            table-layout: fixed;
            width: 100%;
            background-color: #e5e5e5;
            -webkit-transform: translateY(0px);
            transform: translateY(0px); }
            body main .page-cont .services-sect .container .tabs > li {
              transition-duration: .25s;
              display: table-cell;
              list-style: none;
              text-align: center;
              padding: 20px 20px 10px 20px;
              position: relative;
              overflow: hidden;
              cursor: pointer; }
              body main .page-cont .services-sect .container .tabs > li .tab-cont {
                display: flex;
                align-items: center;
                justify-content: center; }
                body main .page-cont .services-sect .container .tabs > li .tab-cont .svg-sect {
                  text-align: center;
                  display: inline-block;
                  margin-bottom: 5px;
                  width: 60px; }
                  body main .page-cont .services-sect .container .tabs > li .tab-cont .svg-sect svg {
                    width: 100%;
                    max-width: 100%; }
                body main .page-cont .services-sect .container .tabs > li .tab-cont h3 {
                  position: relative;
                  top: 2px;
                  font-weight: bold;
                  display: none;
                  margin-left: 15px; }
              body main .page-cont .services-sect .container .tabs > li:before {
                z-index: -1;
                position: absolute;
                content: "";
                width: 100%;
                height: 120%;
                top: 0;
                left: 0;
                background-color: rgba(255, 255, 255, 0.3);
                -webkit-transform: translateY(100%);
                transform: translateY(100%);
                transition-duration: .25s;
                border-radius: 10px 10px 0 0;
                background-color: #ffffff; }
              body main .page-cont .services-sect .container .tabs > li:hover:before {
                -webkit-transform: translateY(70%);
                transform: translateY(70%); }
              body main .page-cont .services-sect .container .tabs > li.active:before {
                transition-duration: .5s;
                background-color: #ffffff;
                -webkit-transform: translateY(0);
                transform: translateY(0); }
          body main .page-cont .services-sect .container .service {
            width: 100%;
            padding: 50px 20px 30px 20px; }
            body main .page-cont .services-sect .container .service .text-cont .text-sect p {
              width: 700px;
              max-width: 100%; }
            body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side {
              display: block; }
              body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side .img-cont {
                flex: 1;
                padding: 10px 5px; }
                body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side .img-cont img {
                  box-shadow: 0px 0px 20px 2px rgba(0, 0, 0, 0.1);
                  max-width: 100%;
                  height: auto; }
                body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side .img-cont:first-child {
                  padding-left: 0; }
                body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side .img-cont:last-child {
                  padding-right: 0; }
            body main .page-cont .services-sect .container .service .text-cont .text-sect h3 {
              margin-bottom: 15px; }
          body main .page-cont .services-sect .container .tab__content {
            background-color: white;
            position: relative;
            width: 100%;
            border-radius: 10px;
            padding: 10px 0; }
            body main .page-cont .services-sect .container .tab__content > li {
              width: 100%;
              top: 0;
              left: 0;
              display: none;
              list-style: none; }
              body main .page-cont .services-sect .container .tab__content > li .content__wrapper {
                text-align: center;
                border-radius: 10px;
                width: 100%;
                padding: 45px 40px 40px 40px;
                background-color: white; }
          body main .page-cont .services-sect .container .content__wrapper h2 {
            width: 100%;
            text-align: center;
            padding-bottom: 20px;
            font-weight: 300; }
          body main .page-cont .services-sect .container .content__wrapper img {
            width: 100%;
            height: auto;
            border-radius: 10px; }
      body main .page-cont .about-sect {
        padding: 0 10px; }
        body main .page-cont .about-sect .about-cont {
          width: 100%;
          max-width: 800px; }
          body main .page-cont .about-sect .about-cont .banner-img {
            width: 100%;
            right: 0; }
          body main .page-cont .about-sect .about-cont p {
            padding: 0px 10px;
            width: 700px;
            max-width: 100%; }
          body main .page-cont .about-sect .about-cont ul {
            padding: 0px 10px; }
          body main .page-cont .about-sect .about-cont button {
            background-color: #c29545;
            color: white;
            padding: 10px 20px;
            font-size: 16px;
            font-weight: bold; }
    body main .home-about {
      position: absolute;
      top: calc(100vh + 849px);
      display: block;
      width: 100%; }
      body main .home-about .header-sect {
        float: left;
        width: 100%;
        display: flex;
        justify-content: flex-end;
        background-color: #c29545;
        background-image: url(pics/1-b.png);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
        padding: 30px 40px 26px 40px; }
        body main .home-about .header-sect h2 {
          width: 500px;
          max-width: 100%;
          color: #ffffff;
          font-weight: bold;
          font-size: 25px;
          text-align: left; }
        body main .home-about .header-sect .img-sect {
          width: 100%;
          text-align: center; }
          body main .home-about .header-sect .img-sect img.logo {
            width: 100%;
            max-width: 200px;
            float: none; }
      body main .home-about .content-sect {
        float: right;
        width: 100%;
        background-color: #e9e9e9;
        padding: 35px 40px 56px 40px; }
        body main .home-about .content-sect p {
          width: 500px;
          max-width: 100%; }
    body main#services-main {
      background-image: url(pics/3-w.png); }
    body main#projects-main {
      background-image: url(pics/4-w.png); }
    body main#contact-main {
      background-image: url(pics/6-w.png); }
    body main#about-main {
      background-image: url(pics/2-w.png); }

.animated {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  visibility: visible; }

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@media only screen and (min-width: 1200px) {
  body main .page-cont .page-header {
    right: 50px;
    width: auto;
    display: inline-block;
    text-align: left; } }
@media only screen and (min-width: 768px) {
  .desk {
    display: block; }

  .mob {
    display: none; }

  body main #home-top .top-cont img {
    width: 400px; }
  body main #home-top .top-cont h2 {
    font-size: 24px; }
  body main #home-top .top-cont a button {
    font-size: 16px; }
  body main .page-cont .contact-sect {
    display: flex; }
    body main .page-cont .contact-sect .form-sect {
      width: 48%;
      text-align: center; }
    body main .page-cont .contact-sect .deets-sect {
      width: 48%; }
  body main .page-cont .about-sect {
    padding: 0 30px; }
  body main .page-cont .services-sect {
    padding: 0 30px; }
    body main .page-cont .services-sect .container {
      box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.05); }
      body main .page-cont .services-sect .container .tabs > li .tab-cont h3 {
        display: inline-block;
        padding: 0px 0px 9px 0px; }
      body main .page-cont .services-sect .container .service {
        width: 100%;
        padding: 50px 50px 40px 50px; }
        body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side {
          display: flex; }
          body main .page-cont .services-sect .container .service .text-cont .text-sect .side-by-side .img-cont {
            padding: 30px 20px; }
  body main .page-cont .banner-img {
    height: 400px; }
  body main .cta-sect {
    display: flex; }
    body main .cta-sect .cta {
      padding: 30px 0; }
      body main .cta-sect .cta .border-cont .enlarge svg {
        width: 130px; }
    body main .cta-sect .cta:first-child {
      padding-top: 30px; }
    body main .cta-sect .cta:last-child {
      padding-bottom: 30px; }
  body main .home-about {
    top: calc(100vh + 500px);
    display: flex; }
    body main .home-about .header-sect {
      width: 50%; }
      body main .home-about .header-sect h2 {
        text-align: right;
        font-size: 30px; }
      body main .home-about .header-sect .img-sect {
        text-align: right; }
    body main .home-about .content-sect {
      width: 50%;
      min-height: 400px; }
      body main .home-about .content-sect p {
        display: inline-block;
        width: 100%;
        max-width: 500px; }
      body main .home-about .content-sect .img-sect {
        display: inline-block;
        width: 50%;
        float: right; }
        body main .home-about .content-sect .img-sect img {
          max-width: 100%;
          height: 200px;
          float: right; } }
