@font-face {
  font-family: 'Montserrat-Reg';
  src: url(fonts/Montserrat-Regular.otf); }
@font-face {
  font-family: 'Montserrat-Bold';
  src: url(fonts/Montserrat-Bold.otf); }
@font-face {
  font-family: 'Museo-Slab';
  src: url(fonts/Museo-Slab.otf); }
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0px;
  padding: 0px;
  border: none;
  color: #2d2d2d;
  font-weight: normal;
  z-index: 1;
  box-sizing: border-box; }

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

a.anchor {
  display: block;
  visibility: hidden;
  position: relative;
  left: 0;
  top: -100px; }
  @media only screen and (min-width: 768px) {
    a.anchor {
      top: -80px; } }

li {
  list-style-type: none; }

.mob {
  display: block; }
  @media only screen and (min-width: 768px) {
    .mob {
      display: none !important; } }

.desk {
  display: none; }
  @media only screen and (min-width: 768px) {
    .desk {
      display: block; } }

p {
  font-size: 16px;
  color: #7f7f7f;
  font-family: 'Open Sans'; }
  p i {
    color: #00a2fc; }
  p span {
    color: #7f7f7f; }
  p a {
    color: #7f7f7f; }

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

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

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

.hide {
  display: none !important; }

body {
  min-height: 100vh;
  background-color: #f4f4f4;
  padding-top: 80px; }
  body main header.header-sect {
    background-color: white;
    position: fixed;
    width: 100%;
    height: 80px;
    padding: 0px 20px;
    z-index: 20;
    top: 0;
    align-items: center;
    box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03); }
    @media only screen and (min-width: 768px) {
      body main header.header-sect {
        padding: 0px 60px; } }
    body main header.header-sect .header-cont {
      width: 1200px;
      max-width: 100%;
      margin: 0px auto;
      height: 100%;
      align-items: center; }
      body main header.header-sect .header-cont .logo-cont {
        display: flex;
        align-items: center;
        height: 100%;
        justify-content: center;
        padding: 10px 10px 0 10px;
        float: left;
        width: 100%;
        text-align: center; }
        @media only screen and (min-width: 968px) {
          body main header.header-sect .header-cont .logo-cont {
            justify-content: initial;
            width: auto;
            padding: 10px; } }
        body main header.header-sect .header-cont .logo-cont a img {
          height: 60px;
          width: auto;
          margin-right: 20px; }
        body main header.header-sect .header-cont .logo-cont h3 {
          display: inline-block;
          color: #00a2fc;
          font-size: 16px;
          font-family: 'Montserrat'; }
          body main header.header-sect .header-cont .logo-cont h3 a {
            font-size: 16px;
            font-family: 'Montserrat'; }
            body main header.header-sect .header-cont .logo-cont h3 a:hover {
              text-decoration: underline; }
      body main header.header-sect .header-cont .main-nav {
        float: none;
        display: flex;
        align-items: center;
        width: 100vw;
        justify-content: center;
        background-color: white;
        position: relative;
        right: 20px; }
        @media only screen and (min-width: 968px) {
          body main header.header-sect .header-cont .main-nav {
            justify-content: flex-end;
            height: 100%;
            width: auto;
            left: 0px;
            float: right; } }
        @media only screen and (min-width: 768px) {
          body main header.header-sect .header-cont .main-nav {
            right: 60px; } }
        body main header.header-sect .header-cont .main-nav ul {
          justify-content: center;
          display: flex;
          flex-wrap: wrap;
          align-items: center; }
          body main header.header-sect .header-cont .main-nav ul a li {
            padding: 10px;
            display: inline-block;
            font-family: "Helvetic Neue", Helvetic-Neue, Helvetica, Arial, sans-serif; }
            @media only screen and (min-width: 968px) {
              body main header.header-sect .header-cont .main-nav ul a li {
                padding: 20px; } }
            body main header.header-sect .header-cont .main-nav ul a li:hover {
              background-color: #00a2fc; }
              body main header.header-sect .header-cont .main-nav ul a li:hover h3 {
                color: white; }
            body main header.header-sect .header-cont .main-nav ul a li h3 {
              color: #00a2fc;
              font-size: 16px; }
            body main header.header-sect .header-cont .main-nav ul a li.menu-cont {
              width: 40px; }
              body main header.header-sect .header-cont .main-nav ul a li.menu-cont #menu {
                width: 100%; }
            body main header.header-sect .header-cont .main-nav ul a li svg {
              width: 50px; }
          body main header.header-sect .header-cont .main-nav ul a:last-child li:hover {
            background-color: transparent; }
      body main header.header-sect .header-cont #nav-modal {
        height: 100vh;
        width: 100%;
        background-color: white;
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 3;
        justify-content: center;
        align-items: center; }
        body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul a {
          text-align: center; }
          body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul a li {
            margin-bottom: 30px;
            text-align: center; }
            body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul a li h3 {
              font-size: 22px;
              font-family: 'Open Sans';
              color: #00a2fc; }
          body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul a * {
            cursor: pointer; }
        body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul a:last-child li {
          margin-top: 30px;
          margin-bottom: 0; }
        body main header.header-sect .header-cont #nav-modal #nav-ul-cont ul li .nav-close {
          width: 25px;
          height: auto;
          margin: 30px auto 0 auto; }
  body main .page-sect {
    width: 100%;
    position: relative; }
    body main .page-sect .home-top-sect .home-top-cont {
      padding: 0 20px 80px 20px;
      width: 1200px;
      max-width: 100%;
      margin: 0px auto;
      height: 500px;
      background-image: url("pics/hero.jpg");
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      display: flex;
      align-items: center;
      justify-content: flex-start; }
      body main .page-sect .home-top-sect .home-top-cont .white-box-sect {
        width: 1080px;
        max-width: 100%;
        margin: 0px auto; }
        body main .page-sect .home-top-sect .home-top-cont .white-box-sect .white-box-cont {
          position: relative;
          animation: fadeInUp 1.5s linear;
          box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03);
          padding: 20px 20px;
          width: 540px;
          max-width: 100%;
          display: flex;
          align-items: center;
          background-color: white;
          background-color: rgba(255, 255, 255, 0.9); }
          @media only screen and (min-width: 768px) {
            body main .page-sect .home-top-sect .home-top-cont .white-box-sect .white-box-cont {
              padding: 40px 40px; } }
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    top: 3rem; }
  to {
    opacity: 1;
    top: 0; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    top: 3rem; }
  to {
    opacity: 1;
    top: 0; } }
          body main .page-sect .home-top-sect .home-top-cont .white-box-sect .white-box-cont .text-sect h1 {
            font-size: 35px;
            font-family: Montserrat-Reg;
            color: #00a2fc; }
            @media only screen and (min-width: 768px) {
              body main .page-sect .home-top-sect .home-top-cont .white-box-sect .white-box-cont .text-sect h1 {
                font-size: 50px; } }
    body main .page-sect .about-sect {
      position: relative;
      bottom: 80px; }
      body main .page-sect .about-sect .about-cont {
        box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03);
        width: 1080px;
        max-width: calc(100% - 40px);
        margin: 0px auto;
        background-color: white; }
        body main .page-sect .about-sect .about-cont .heading-sect {
          display: flex;
          align-items: center;
          height: 80px;
          padding: 0 40px;
          border-bottom: 2px solid #cccccc; }
          @media only screen and (min-width: 768px) {
            body main .page-sect .about-sect .about-cont .heading-sect {
              padding: 0 40px; } }
          body main .page-sect .about-sect .about-cont .heading-sect h2 {
            text-align: left;
            color: #00a2fc;
            font-family: Montserrat-Bold; }
        body main .page-sect .about-sect .about-cont .copy-sect {
          padding: 40px 40px; }
          @media only screen and (min-width: 768px) {
            body main .page-sect .about-sect .about-cont .copy-sect {
              padding: 40px 40px; } }
    body main .page-sect .screen-sect {
      display: flex;
      padding: 80px 0;
      justify-content: center;
      align-items: center;
      min-height: 1px; }
      @media only screen and (min-width: 768px) {
        body main .page-sect .screen-sect {
          min-height: calc(80vh - 80px); } }
      body main .page-sect .screen-sect .screen-cont {
        width: 1080px;
        max-width: 100%; }
        body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul {
          display: flex;
          justify-content: center;
          flex-wrap: wrap; }
          body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li {
            margin: 10px 20px; }
            @media only screen and (min-width: 768px) {
              body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li {
                margin: 10px 10px; } }
            body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article {
              width: 100%;
              height: 100%;
              box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03); }
              @media only screen and (min-width: 768px) {
                body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article {
                  width: 330px; } }
              body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .serv-top-sect {
                width: 100%;
                background-color: #00a2fc;
                justify-content: center;
                display: flex;
                align-items: center;
                padding: 20px; }
                body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .serv-top-sect .serv-icon-sect {
                  margin-right: 20px;
                  display: inline-block;
                  justify-content: center;
                  align-items: center; }
                body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .serv-top-sect .heading-sect {
                  display: inline-block;
                  align-items: center;
                  background-color: #00a2fc; }
                  body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .serv-top-sect .heading-sect h2 {
                    color: white;
                    font-family: Montserrat-Bold;
                    font-size: 16px; }
              body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .copy-sect {
                color: #7f7f7f;
                padding: 20px 40px; }
                body main .page-sect .screen-sect .screen-cont .service-list-sect .service-list-cont ul li article .copy-sect p {
                  line-height: 1.5em;
                  text-align: center;
                  color: #7f7f7f;
                  max-width: 400px; }
        body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul {
          display: flex;
          flex-wrap: wrap; }
          body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li {
            margin: 10px 10px 10px 10px;
            display: inline-block;
            width: calc(100% - 20px); }
            @media only screen and (min-width: 768px) {
              body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li {
                width: calc(50% - 20px); } }
            body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article {
              height: 100%;
              box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03);
              background-color: white;
              padding: 20px;
              position: relative; }
              body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .number-sect {
                position: absolute;
                top: 0;
                left: 0;
                right: 20px;
                bottom: 20px;
                width: 40px;
                height: 40px;
                background-color: #00a2fc;
                text-align: center;
                display: flex;
                justify-content: center;
                align-items: center;
                z-index: 3; }
                body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .number-sect h3 {
                  color: white;
                  font-family: Montserrat-Bold; }
              body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .article-cont {
                position: relative;
                z-index: 2;
                display: flex; }
                body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .article-cont .copy-sect {
                  padding: 0 20px;
                  width: 600px;
                  max-width: 100%;
                  display: inline-block; }
                body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .article-cont .img-sect {
                  display: inline-block; }
                  body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .article-cont .img-sect .img-cont img {
                    height: 120px;
                    width: auto; }
                    @media only screen and (min-width: 768px) {
                      body main .page-sect .screen-sect .screen-cont .orth-list-sect .orth-list-cont ul li article .article-cont .img-sect .img-cont img {
                        height: 150px; } }
        body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul {
          display: flex;
          flex-wrap: wrap; }
          body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li {
            width: 100%;
            display: inline-block;
            margin: 10px 10px 10px 10px; }
            body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li:last-child {
              margin-bottom: 0; }
            body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article {
              box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03);
              background-color: white;
              width: 100%;
              padding: 20px;
              position: relative;
              display: block; }
              @media only screen and (min-width: 568px) {
                body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article {
                  display: flex; } }
              body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .img-sect {
                padding: 20px;
                display: inline-block;
                width: 100%; }
                @media only screen and (min-width: 568px) {
                  body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .img-sect {
                    padding: 0px;
                    width: auto; } }
                body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .img-sect img {
                  width: 100%; }
                  @media only screen and (min-width: 568px) {
                    body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .img-sect img {
                      width: 180px; } }
              body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .copy-sect {
                display: inline-block;
                padding: 0px 20px 20px 20px; }
                body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .copy-sect h2 {
                  font-family: 'Montserrat-Bold';
                  color: #00a2fc;
                  padding: 0px 0 2px 0;
                  font-size: 18px; }
                body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .copy-sect p {
                  margin-top: 15px; }
                  body main .page-sect .screen-sect .screen-cont .team-list-sect .team-list-cont ul li article .copy-sect p.position {
                    margin-top: 0;
                    opacity: 0.7; }
        body main .page-sect .screen-sect .screen-cont > .heading-sect {
          margin-bottom: 50px; }
          body main .page-sect .screen-sect .screen-cont > .heading-sect h2 {
            text-align: center;
            color: #00a2fc;
            font-family: Montserrat-Bold; }
        body main .page-sect .screen-sect .screen-cont .contact-sect {
          box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.03);
          display: block;
          justify-content: center;
          max-width: 100%;
          margin: 0px auto;
          background-color: white;
          padding: 50px 20px; }
          @media only screen and (min-width: 768px) {
            body main .page-sect .screen-sect .screen-cont .contact-sect {
              padding: 30px 30px;
              display: flex; } }
          body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect {
            max-width: initial;
            text-align: center;
            flex: 1;
            margin-bottom: 30px; }
            body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect * {
              text-align: left; }
            @media only screen and (min-width: 768px) {
              body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect {
                margin-bottom: 0px; } }
            body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect p a:hover {
              text-decoration: underline; }
            body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect h4 {
              color: #00a2fc;
              font-size: 16px;
              margin: 5px 0 15px;
              font-family: 'Montserrat-Bold'; }
            body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect ul li p {
              margin-bottom: 7px; }
            body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect ul.contact-list {
              margin-bottom: 30px; }
              body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect ul.contact-list li {
                display: flex;
                align-items: center; }
                body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect ul.contact-list li img {
                  height: 20px;
                  display: inline-block; }
                body main .page-sect .screen-sect .screen-cont .contact-sect .deets-sect ul.contact-list li p {
                  font-family: 'Open Sans';
                  display: inline-block;
                  position: relative;
                  top: 3px; }
          body main .page-sect .screen-sect .screen-cont .contact-sect .map-sect {
            flex: 1; }
      body main .page-sect .screen-sect:nth-of-type(2n - 1) {
        background-color: white; }
  body main footer.footer-sect {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 20px;
    background-color: white;
    min-height: 100px; }
    body main footer.footer-sect .footer-cont {
      width: 1200px;
      margin: 0px auto;
      max-width: 100%;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        body main footer.footer-sect .footer-cont {
          text-align: left; } }
      body main footer.footer-sect .footer-cont p {
        display: inline-block; }
      body main footer.footer-sect .footer-cont ul {
        display: inline-block;
        max-width: 100%;
        text-align: center; }
        @media only screen and (min-width: 768px) {
          body main footer.footer-sect .footer-cont ul {
            text-align: left; } }
        body main footer.footer-sect .footer-cont ul li {
          display: inline-block;
          margin: 0 5px; }
          body main footer.footer-sect .footer-cont ul li img {
            height: 30px; }
            @media only screen and (min-width: 768px) {
              body main footer.footer-sect .footer-cont ul li img {
                height: 40px; } }
        body main footer.footer-sect .footer-cont ul.creds-list {
          margin-bottom: 20px;
          justify-content: center; }
          body main footer.footer-sect .footer-cont ul.creds-list li {
            display: block; }
        body main footer.footer-sect .footer-cont ul.brands-list {
          float: none;
          display: flex;
          flex-wrap: wrap;
          justify-content: center; }
          @media only screen and (min-width: 768px) {
            body main footer.footer-sect .footer-cont ul.brands-list {
              float: right;
              display: inline-block; } }
          body main footer.footer-sect .footer-cont ul.brands-list li {
            margin: 10px; }

@media only screen and (min-width: 815px) {
  body main header .main-nav .menu-cont {
    width: 30px; }
  body main .page-sect .page-cont .row .art-sect {
    width: 25%; } }
