﻿/* Text Elements */

h1.h1-main-01 {
  margin-top: 0;
  margin-bottom: 0;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  text-shadow: #000 2px 2px 3px;
  font-size: 30px;
  font-family: Oswald-Regular, Arial, sans-serif;
}

h2.h2-main {
  margin-top: 0;
  margin-bottom: 15px;
  color: #313d54;
  font-size: 28px;
  font-family: Oswald-Regular, Arial, sans-serif;
  line-height: 1;
}

h2 span.text-top {
  color: #60a5fa;
  text-transform: uppercase;
  font-size: 1.375rem;
  font-family: OpenSans-Regular, Arial, sans-serif;
}

h2.h2-main.h2-white {
  color: #fff;
  font-family: Oswald-Light, Arial, sans-serif;
}

h3.h3-title {
  margin: 0 auto 15px;
  width: 100%;
  color: #222a3a;
  font-size: 24px;
  font-family: Oswald-Regular, Arial, sans-serif;
}

h3.h3-title.h3-uppercase {
  text-transform: uppercase;
}

p.paragraph.par-body {
  margin-top: 0;
  margin-bottom: 15px;
  width: 100%;
  color: #333;
  font-family: OpenSans-Regular, Arial, sans-serif;

  grid-area: cont-03;
}

p.paragraph.par-body.par-zero-margin {
  margin-bottom: 0;
}

p.paragraph.par-body.par-white {
  color: #fff;
  font-family: OpenSans-Light, Arial, sans-serif;
}

p.paragraph span.text-bold {
  font-weight: 600;
}

p.paragraph.par-body.par-italic {
  font-style: italic;
}

span.text-element.nav-text-main {
  width: 100%;
  text-transform: uppercase;
  font-size: 18px;
  font-family: OpenSans-Light, Arial, sans-serif;
  line-height: 1.1;

  grid-area: cont-06;
}

span.text-element.text-btn {
  text-align: center;
  text-transform: uppercase;
  font-size: 16px;
  font-family: OpenSans-Light, Arial, sans-serif;
}

span.text-element.text-tilte-bottom {
  margin-bottom: 9px;
  color: #222a3a;
  font-size: 24px;
  font-family: Oswald-Regular, Arial, sans-serif;
}

span.text-element.text-1 {
  color: #222a3a;
  text-align: center;
  font-size: 41px;
  font-family: Oswald-Light, Arial, sans-serif;
}

a.link-text.text-link-index {
  display: block;
  padding-top: 5px;
  padding-bottom: 5px;
  color: #333;
}

a.link-text.text-link-credits {
  color: #4389e1;
  text-align: center;
}

a.link-text.text-link-index:hover {
  color: #60a5fa;
}

a.link-text.text-link-credits:hover {
  color: #222a3a;
}

/* Layout Elements */

body.nelmech {
  background-color: #e6e6e6;
}

.link-container.nav-link-main {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-align: center;
  padding: 16px;
  width: 100%;
  border-bottom: .0625rem solid transparent;
  background-color: transparent;
  color: #fff;
  -webkit-transition-delay: 0s;
     -moz-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0s;
     -moz-transition-duration: 0s;
       -o-transition-duration: 0s;
          transition-duration: 0s;
  -webkit-transition-property: none;
     -moz-transition-property: none;
       -o-transition-property: none;
          transition-property: none;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
}

.link-container.line-bottom.nav-link-main {
  border-bottom-color: #313d54;
}

.link-container.link-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  margin-right: auto;
  margin-left: auto;
  padding-right: 10px;
  padding-left: 10px;
  max-width: 200px;
  width: 100%;
  height: 40px;
  border-radius: 7px;
  background-color: #60a5fa;
  color: #fff;
  -webkit-transition-timing-function: ease-in-out;
     -moz-transition-timing-function: ease-in-out;
       -o-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: .3s;
     -moz-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.link-container.nav-link-main:hover {
  color: #60a5fa;
}

.link-container.link-btn:hover {
  background-color: #4389e1;
}

.container-grid.cont-menu {
  position: fixed;
  z-index: 990;
  min-height: auto;
  width: 100%;
  height: 55px;
  background-color: #222a3a;
  box-shadow: rgba(0, 0, 0, .5) 0 5px 10px 0;
}

.container-grid {
  position: relative;
}

.container-grid.cont-navigation {
  height: 55px;
  background-color: transparent;
  box-shadow: none;
}

.container-grid.nav-wrapper {
  height: 55px;
}

.container-grid.mobile-nav-btn {
  position: fixed;
  z-index: 100;
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: end;
  -ms-flex-align: center;
  padding-right: 16px;
  padding-left: 16px;
  width: 100%;
  height: 55px;
  background-color: #222a3a;
  cursor: pointer;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
          justify-content: flex-end;
}

div.responsive-picture {
  max-width: none;
}

div.responsive-picture.menu-btn {
  max-width: 35px;
}

.container-grid.nav-links {
  visibility: hidden;
  opacity: 0;
  -webkit-transition-duration: 0s;
     -moz-transition-duration: 0s;
       -o-transition-duration: 0s;
          transition-duration: 0s;
}

.container-grid.nav-list {
  position: fixed;
  top: 0;
  z-index: 100;
  overflow: auto;
  padding-top: 0;
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  height: 100%;
  background-color: #222a3a;
}

ul.list-container.collapsible {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  border-top-width: 0;
  border-top-color: transparent;
  border-right-width: 0;
  border-right-color: transparent;
  border-left-width: 0;
  border-left-color: transparent;
  box-shadow: none;
}

ul.list-container.collapsible.pad-mobile {
  padding-top: 60px;
  padding-right: 16px;
  padding-left: 16px;
}

li.list-item-container.nav-item {
  width: 100%;
  background-color: transparent;
}

li.list-item-container.nav-item.pad-bottom {
  padding-bottom: 60px;
}

.html-element.navigation-code {
  display: none;
}

.container-grid.cont-logo-menu {
  position: absolute;
  top: 0;
  z-index: 105;
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-align: center;
  padding-left: 16px;
  height: 55px;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
}

a.responsive-picture.logo-menu-top {
  max-width: 150px;
}

.container-grid.cont-logo-top {
  position: absolute;
  z-index: 50;
  padding: 60px 25px 25px;
  width: 100%;
}

a.responsive-picture.logo-main-top {
  margin-right: auto;
  margin-left: auto;
}

.container-grid.cont-content-main {
  padding-top: 40px;
  padding-bottom: 40px;
  width: 100%;
}

.container-grid.cont-content {
  margin-right: auto;
  margin-left: auto;
  padding-right: 25px;
  padding-left: 25px;
  width: 100%;
}

.container-grid.cont-credits {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  margin-top: 40px;
  padding-top: 25px;
  padding-bottom: 25px;
  width: 100%;
  background-color: #c8c8c8;

  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container-grid.cont-bottom {
  padding-top: 40px;
  width: 100%;
}

.container-grid.cont-content-main.cont-med-blue {
  background-color: #313d54;
}

.container-grid.cont-slideshow {
  padding-top: 55px;
  width: 100%;
  height: 100vh;
}

.container-grid.allinside-wrap {
  width: 100%;
  height: 100%;
  background-color: #000;
}

.container-grid.x-fade-allinside {
  position: relative;
  display: block;
  -ms-flex-pack: center;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  min-height: auto;
  width: 100%;
  height: 100%;

  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container-grid.crossfade-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-pack: center;
  -ms-flex-align: start;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  height: 100%;

  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
     -moz-box-align: start;
          align-items: flex-start;
}

div.responsive-picture.crossfade-img {
  position: absolute;
  top: 0;
  max-width: none;
  height: 100%;
  opacity: 0;
  -webkit-transition-delay: 0s;
     -moz-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transition-timing-function: linear;
     -moz-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transition-duration: 1s;
     -moz-transition-duration: 1s;
       -o-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-property: opacity;
     -moz-transition-property: opacity;
       -o-transition-property: opacity;
          transition-property: opacity;
}

div.responsive-picture.crossfade-img > picture {
  height: 100%;
}

div.responsive-picture.crossfade-img > picture > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% center;
     object-position: 50% center;
}

.container-grid.parallax-container {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  min-height: 50vh;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container-grid.cont-tab {
  z-index: -1;
  margin-top: -55px;
  width: 100%;
  height: 55px;
}

.container-grid.cont-h1-main {
  position: absolute;
  bottom: 0;
  z-index: 50;
  padding: 20px 25px 130px;
  width: 100%;
}

.container-grid.cont-motion {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  width: 100%;
  background-color: transparent;
  -webkit-transition-timing-function: ease-in-out;
     -moz-transition-timing-function: ease-in-out;
       -o-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: .8s;
     -moz-transition-duration: .8s;
       -o-transition-duration: .8s;
          transition-duration: .8s;

  grid-area: project-2;
}

.container-grid.cont-content-main.cont-med-grey {
  background-color: #c8c8c8;
}

.container-grid.cont-colum {
  display: grid;

  grid-template-areas: 'cont-01' 'cont-02' 'cont-03' 'cont-04' 'cont-05' 'cont-06';
  grid-template-columns: auto;
  grid-template-rows: repeat(6 , auto);
}

.container-grid.cont-01 {
  grid-area: cont-01;
}

.container-grid.cont-02 {
  grid-area: cont-02;
}

.container-grid.cont-03 {
  grid-area: cont-03;
}

.container-grid.cont-04 {
  grid-area: cont-04;
}

.container-grid.cont-05 {
  grid-area: cont-05;
}

.container-grid.cont-06 {
  grid-area: cont-06;
}

.container-grid.cont-white-block-01 {
  padding: 20px;
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, .3) 0 0 10px 0;
}

div.responsive-picture.icons-big {
  margin-right: auto;
  margin-left: auto;
  max-width: 120px;
}

.container-grid.cont-2col-icons-01 {
  display: grid;

  grid-row-gap: 20px;
  grid-template-columns: auto;
  grid-template-rows: repeat(2 , auto);
  grid-column-gap: 20px;
}

.container-grid.cont-rows-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-align: center;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
}

.container-grid.cont-1600.cont-content {
  max-width: 1600px;
}

.container-grid.cont-text-group.cont-text-home-02 {
  max-width: 655px;
}

.container-grid.cont-rating {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  margin-bottom: 10px;
  width: 100%;

  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

span.glyph.icon-star {
  margin-right: 1px;
  margin-left: 1px;
  color: #60a5fa;
  text-align: center;
  font-size: 20px;
}

span.glyph.icon-star i {
  font-size: 20px;
}

.container-grid.cont-1300.cont-content {
  max-width: 1300px;
}

.container-grid.cont-text-group.margin-text-group-01 {
  margin-bottom: 40px;
}

.container-grid.cont-btn-main.margin-top-01 {
  margin-top: 40px;
}

.container-grid.cont-review-bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-align: end;
  width: 100%;

  -webkit-box-align: end;
  -webkit-align-items: flex-end;
     -moz-box-align: end;
          align-items: flex-end;
}

.container-grid.cont-review-top {
  width: 100%;
}

.container-grid.cont-review-group {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: justify;
  width: 100%;
  height: 100%;

  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
          justify-content: space-between;
}

.container-grid.cont-3col-reviews-01 {
  display: grid;

  grid-template-areas: 'cont-01' 'cont-02' 'cont-03';
  grid-template-columns: auto;
  grid-template-rows: repeat(3 , auto);
  grid-row-gap: 25px;
  grid-column-gap: 25px;
}

.container-grid.cont-white-block-02 {
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, .3) 0 0 10px 0;
}

.container-grid.neutral-container-picture-wrap {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.container-grid.cont-photo-zoom {
  width: 100%;
  height: 100%;
  -webkit-transition-timing-function: ease-in-out;
     -moz-transition-timing-function: ease-in-out;
       -o-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: .3s;
     -moz-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s;
}

div.responsive-picture.photo-full > picture > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% center;
     object-position: 50% center;
}

div.responsive-picture.photo-full {
  height: 100%;
}

div.responsive-picture.photo-full > picture {
  height: 100%;
}

.container-grid.cont-client-text {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  padding: 20px;
  width: 100%;

  grid-area: cont-02;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container-grid.cont-3col-clients-01 {
  display: grid;

  grid-template-areas: 'cont-01' 'cont-02' 'cont-03';
  grid-template-columns: auto;
  grid-template-rows: repeat(3 , auto);
  grid-row-gap: 25px;
  grid-column-gap: 25px;
}

.container-grid.cont-2col-clients-01 {
  display: grid;
  width: 100%;

  grid-template-areas: 'cont-01' 'cont-02';
  grid-template-columns: auto;
  grid-template-rows: repeat(2 , auto);
}

.container-grid.cont-client-photo {
  grid-area: cont-01;
}

.container-grid.cont-2col-clients-02 {
  display: grid;
  width: 100%;

  grid-template-areas: 'cont-01' 'cont-02';
  grid-template-columns: auto;
  grid-template-rows: repeat(2 , auto);
}

.container-grid.cont-h1-home {
  margin-right: auto;
  margin-left: auto;
  padding: 10px;
  max-width: 490px;
  width: 100%;
}

a.responsive-picture.continue-btn {
  margin-right: auto;
  margin-left: auto;
  max-width: 80px;
}

.container-grid.cont-dual-tone {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}

.container-grid.cont-blank-01 {
  width: 100%;
  height: 75%;
}

.container-grid.cont-blue-01 {
  width: 100%;
  height: 25%;
  background-color: #313d54;
}

div.responsive-picture.photo-full-shadow {
  height: 100%;
  box-shadow: rgba(0, 0, 0, .3) 0 0 10px 0;
}

.container-grid.cont-2col-photos-01 {
  display: grid;

  grid-row-gap: 25px;
  grid-template-columns: auto;
  grid-template-rows: repeat(2 , auto);
  grid-column-gap: 25px;
}

.container-grid.cont-photo-frame {
  padding: 20px;
  background-color: #e6e6e6;
}

.container-grid.cont-content-main.pad-zero-bottom {
  padding-bottom: 0;
}

.container-grid.cont-content-main.pad-zero-top {
  padding-top: 0;
}

.container-grid.cont-text-group.cont-text-home-01 {
  max-width: 565px;
}

.container-grid.cont-index-main {
  display: grid;

  grid-template-areas: 'cont-01' 'cont-02' 'cont-03';
  grid-template-columns: auto;
  grid-template-rows: repeat(3 , auto);
  grid-row-gap: 20px;
}

.container-grid.cont-rows.index-01 {
  grid-area: cont-01;
}

.container-grid.cont-rows.index-02 {
  grid-area: cont-02;
}

.container-grid.cont-rows.index-03 {
  grid-area: cont-03;
}

div.responsive-picture.icon-contacts {
  margin-top: 2px;
  margin-right: 8px;
  max-width: 20px;
}

.container-grid.cont-contacts {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  padding-top: 5px;
  padding-bottom: 5px;
  width: 100%;
}

.container-grid.cont-2col-contacts-01 {
  display: grid;

  grid-row-gap: 20px;
  grid-template-columns: auto;
  grid-template-rows: repeat(2 , auto);
}

a.social-image.social-icon {
  max-width: 45px;
  border-radius: 100px;
  background-color: #60a5fa;
}

a.responsive-picture.picture-link-1 {
  margin-right: auto;
  margin-left: auto;
  max-width: 180px;
}

.container-grid.cont-logo-bottom {
  margin-right: auto;
  margin-left: auto;
  max-width: 180px;
  width: 100%;
}

ul.list-container.browser-default {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 25px;
}

.container-grid.cont-index-colums {
  display: grid;

  grid-template-areas: 'cont-01 cont-03' 'cont-01 cont-04' 'cont-02 cont-04' '. cont-04';
  grid-template-columns: 50% auto;
  grid-template-rows: repeat(4 , auto);
}

li.list-item-container.index-item {
  color: #333;
}

.container-grid.cont-soon {
  display: -webkit-box;
  display: -webkit-flex;
  display:    -moz-box;
  display: -ms-flexbox;
  display:         flex;
  -ms-flex-pack: center;
  -ms-flex-align: center;
  width: 100%;
  height: 50vh;
  box-shadow: rgba(0, 0, 0, .3) 0 0 10px 0;

  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
          justify-content: center;
}

.container-grid.cont-services-colums-01 {
  display: grid;

  grid-row-gap: 25px;
  grid-template-columns: auto;
  grid-template-rows: repeat(6 , auto);
  grid-column-gap: 25px;
  grid-template-areas: 'cont-01' 'cont-02' 'cont-03' 'cont-04' 'cont-05' 'cont-06';
  grid-auto-flow: column;
}

.container-grid.cont-other-colums-01 {
  display: grid;

  grid-row-gap: 25px;
  grid-template-columns: auto;
  grid-template-rows: repeat(3 , auto);
  grid-column-gap: 25px;
  grid-template-areas: 'cont-01' 'cont-02' 'cont-03';
  grid-auto-flow: column;
}

.container-grid.cont-text-group.cont-text-home-04 {
  max-width: 830px;
}

.container-grid.cont-text-group {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}

.container-grid.cont-motion.outofview {
  opacity: 0;
  -webkit-transform: translateY(40px);
     -moz-transform: translateY(40px);
       -o-transform: translateY(40px);
          transform: translateY(40px);
}

li.list-item-container.indicator {
  display: none;
  min-height: auto;
  background-color: #3741c3;
}

.container-grid.nav-links.show-menu {
  visibility: visible;
  opacity: 1;
  -webkit-transition-timing-function: ease-in-out;
     -moz-transition-timing-function: ease-in-out;
       -o-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: .5s;
     -moz-transition-duration: .5s;
       -o-transition-duration: .5s;
          transition-duration: .5s;
}

.container-grid.cont-photo-zoom:hover {
  -webkit-transform: scaleX(1.04) scaleY(1.04);
     -moz-transform: scaleX(1.04) scaleY(1.04);
       -o-transform: scaleX(1.04) scaleY(1.04);
          transform: scaleX(1.04) scaleY(1.04);
}

li.list-item-container.index-item:hover {
  color: #60a5fa;
}

@supports (display: grid) {
  .container-grid {
    position: relative;
  }
}

@media screen and (min-width: 30rem) {
  .container-grid.cont-2col-contacts-01 {
    grid-template-columns: 50% auto;
    grid-template-rows: auto;
  }
}

@media screen and (min-width: 37.5625rem) {
  .container-grid.nav-links {
    visibility: hidden;
    opacity: 0;
  }

  .container-grid.cont-2col-icons-01 {
    grid-template-columns: 120px auto;
    grid-template-rows: auto;
  }

  .container-grid.cont-text-group.cont-text-home-03 {
    max-width: 655px;
  }

  .container-grid.cont-2col-clients-01 {
    grid-template-areas: 'cont-01 cont-02';
    grid-template-columns: 50% auto;
    grid-template-rows: auto;
  }

  .container-grid.cont-2col-clients-02 {
    grid-template-areas: 'cont-02 cont-01';
    grid-template-columns: auto 50%;
    grid-template-rows: auto;
  }
}

@media screen and (min-width: 48.75rem) {
  /* Text Elements */

  h1.h1-main-01 {
    font-size: 33px;
  }

  h2.h2-main {
    font-size: 30px;
  }

  h2 span.text-top {
    font-size: 1.5rem;
  }

  h3.h3-title.services-01 {
    max-width: 130px;
  }

  h3.h3-title.services-02 {
    max-width: 125px;
  }

  h3.h3-title.services-03 {
    max-width: 130px;
  }

  h3.h3-title.services-04 {
    max-width: 210px;
  }

  h3.h3-title.services-05 {
    max-width: 200px;
  }

  h3.h3-title.services-06 {
    max-width: 210px;
  }

  .container-grid.cont-content-main {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .container-grid.cont-content {
    padding-right: 35px;
    padding-left: 35px;
  }

  .container-grid.cont-credits {
    margin-top: 50px;
  }

  .container-grid.cont-bottom {
    padding-top: 50px;
  }

  .container-grid.parallax-container {
    min-height: 60vh;
  }

  a.responsive-picture.logo-main-top {
    margin-right: 0;
    max-width: 220px;
  }

  .container-grid.cont-logo-top {
    padding-right: 35px;
    padding-left: 35px;
  }

  .container-grid.cont-h1-main {
    padding-right: 35px;
    padding-left: 35px;
  }

  .container-grid.cont-2col-icons-01 {
    grid-template-columns: auto;
    grid-template-rows: repeat(2 , auto);
  }

  .container-grid.cont-text-group.margin-text-group-01 {
    margin-bottom: 50px;
  }

  .container-grid.cont-btn-main.margin-top-01 {
    margin-top: 50px;
  }

  .container-grid.cont-3col-reviews-01 {
    grid-row-gap: 35px;
    grid-column-gap: 35px;
    grid-template-areas: 'cont-01 cont-02 cont-03';
    grid-template-columns: repeat(3 , auto);
    grid-template-rows: auto;
  }

  .container-grid.cont-3col-clients-01 {
    grid-row-gap: 35px;
    grid-column-gap: 35px;
  }

  .container-grid.cont-h1-home {
    max-width: 540px;
  }

  .container-grid.cont-2col-photos-01 {
    grid-row-gap: 35px;
    grid-column-gap: 35px;
    grid-template-columns: repeat(2 , auto);
    grid-template-rows: auto;
  }

  .container-grid.cont-blank-01 {
    height: 50%;
  }

  .container-grid.cont-blue-01 {
    height: 50%;
  }

  .container-grid.cont-index-colums {
    grid-template-areas: 'cont-01 cont-02 cont-04' 'cont-01 cont-03 cont-04';
    grid-template-columns: repeat(2 , 33.33%) auto;
    grid-template-rows: repeat(2 , auto);
  }

  .container-grid.cont-index-main {
    grid-template-areas: 'cont-01 cont-03' 'cont-02 cont-02';
    grid-template-columns: repeat(2 , auto);
    grid-template-rows: repeat(2 , auto);
  }

  .container-grid.cont-2col-contacts-01 {
    grid-template-rows: repeat(2 , auto);
    grid-template-columns: auto;
  }

  .container-grid.cont-services-colums-01 {
    grid-row-gap: 35px;
    grid-column-gap: 35px;
    grid-template-areas: 'cont-01 cont-02' 'cont-03 cont-04' 'cont-05 cont-06';
    grid-template-columns: repeat(2 , auto);
    grid-template-rows: repeat(3 , auto);
  }

  .container-grid.cont-other-colums-01 {
    grid-row-gap: 35px;
    grid-column-gap: 35px;
    grid-template-areas: 'cont-01 cont-03' 'cont-02 cont-02';
    grid-template-columns: repeat(2 , auto);
    grid-template-rows: repeat(2 , auto);
  }
}

@media screen and (min-width: 62.0625rem) {
  /* Text Elements */

  h3.h3-title.services-01 {
    max-width: none;
  }

  h3.h3-title.services-02 {
    max-width: none;
  }

  h3.h3-title.services-03 {
    max-width: none;
  }

  h3.h3-title.services-04 {
    max-width: none;
  }

  h3.h3-title.services-05 {
    max-width: none;
  }

  h3.h3-title.services-06 {
    max-width: none;
  }

  .container-grid.cont-slideshow {
    height: 100vh;
  }
}

@media screen and (min-width: 63.75rem) {
  /* Text Elements */

  span.text-element.nav-text-main {
    width: auto;
    font-size: 15px;
  }

  /* Layout Elements */

  .link-container.nav-link-main {
    -ms-flex-pack: center;
    padding: 10px;

    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
            justify-content: center;
  }

  .link-container.line-bottom.nav-link-main {
    border-bottom-color: transparent;
  }

  .link-container.line-left.nav-link-main {
    border-left: .0625rem solid #313d54;
  }

  .container-grid.nav-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display:    -moz-box;
    display: -ms-flexbox;
    display:         flex;
    -ms-flex-pack: end;
    -ms-flex-align: center;
    padding-right: 16px;
    padding-left: 16px;

    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
            align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
            justify-content: flex-end;
  }

  .container-grid.mobile-nav-btn {
    display: none;
  }

  .container-grid.nav-links {
    visibility: visible;
    float: right;
    height: 40px;
    opacity: 1;
  }

  .container-grid.nav-list {
    position: static;
    overflow: visible;
    height: auto;
  }

  ul.list-container.collapsible.pad-mobile {
    padding-top: 0;
    padding-right: 0;
    padding-left: 0;
  }

  li.list-item-container.nav-item {
    min-width: 150px;
    width: auto;
  }

  li.list-item-container.nav-item.pad-bottom {
    padding-bottom: 0;
  }

  .container-grid.cont-3col-clients-01 {
    grid-template-areas: 'cont-01 cont-02 cont-03';
    grid-template-columns: repeat(3 , auto);
    grid-template-rows: auto;
  }

  .container-grid.cont-2col-clients-01 {
    grid-template-areas: 'cont-01' 'cont-02';
    grid-template-rows: repeat(2 , auto);
    grid-template-columns: auto;
  }

  .container-grid.cont-2col-clients-02 {
    grid-template-areas: 'cont-01' 'cont-02';
    grid-template-rows: repeat(2 , auto);
    grid-template-columns: auto;
  }

  .container-grid.cont-index-main {
    grid-template-areas: 'cont-03 cont-01 cont-02';
    grid-template-columns: repeat(2 , auto) 45%;
    grid-template-rows: auto;
  }

  .container-grid.cont-index-colums {
    grid-template-areas: 'cont-01 cont-03' 'cont-01 cont-04' 'cont-02 cont-04';
    grid-template-rows: repeat(3 , auto);
    grid-template-columns: 50% auto;
  }

  .container-grid.cont-rows.index-01 {
    padding: 25px 35px;
    border-left: .0625rem solid #c8c8c8;
  }

  .container-grid.cont-rows.index-02 {
    padding-top: 25px;
    padding-bottom: 25px;
    padding-left: 35px;
    border-left: .0625rem solid #c8c8c8;
  }

  .container-grid.cont-rows.index-03 {
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .container-grid.cont-logo-bottom {
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 75.0625rem) {
  /* Text Elements */

  h1.h1-main-01 {
    font-size: 38px;
  }

  h2.h2-main {
    font-size: 32px;
  }

  h2 span.text-top {
    font-size: 1.625rem;
  }

  h3.h3-title.services-05 {
    max-width: 200px;
  }

  h3.h3-title.services-06 {
    max-width: 200px;
  }

  h3.h3-title.services-04 {
    max-width: 210px;
  }

  p.paragraph.par-body {
    font-size: 17px;
  }

  a.responsive-picture.logo-menu-top {
    max-width: 160px;
  }

  .container-grid.cont-content {
    padding-right: 45px;
    padding-left: 45px;
  }

  .container-grid.cont-content-main {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .container-grid.cont-credits {
    margin-top: 60px;
  }

  .container-grid.cont-bottom {
    padding-top: 60px;
  }

  .container-grid.parallax-container {
    min-height: 70vh;
  }

  .container-grid.cont-logo-top {
    padding-right: 40px;
    padding-left: 40px;
  }

  .container-grid.cont-h1-main {
    padding-right: 45px;
    padding-bottom: 110px;
    padding-left: 45px;
  }

  a.responsive-picture.logo-main-top {
    max-width: 240px;
  }

  .container-grid.cont-text-group.cont-text-home-02 {
    max-width: 695px;
  }

  .container-grid.cont-text-group.margin-text-group-01 {
    margin-bottom: 60px;
  }

  .container-grid.cont-btn-main.margin-top-01 {
    margin-top: 60px;
  }

  .container-grid.cont-3col-reviews-01 {
    grid-row-gap: 45px;
    grid-column-gap: 45px;
  }

  .container-grid.cont-3col-clients-01 {
    grid-row-gap: 45px;
    grid-column-gap: 45px;
  }

  .container-grid.cont-text-group.cont-text-home-03 {
    max-width: 695px;
  }

  .container-grid.cont-h1-home {
    max-width: 625px;
  }

  a.responsive-picture.continue-btn {
    max-width: 90px;
  }

  .container-grid.cont-2col-photos-01 {
    grid-row-gap: 45px;
    grid-column-gap: 45px;
  }

  .container-grid.cont-text-group.cont-text-home-01 {
    max-width: 615px;
  }

  .container-grid.cont-services-colums-01 {
    grid-row-gap: 45px;
    grid-column-gap: 45px;
    grid-template-areas: 'cont-01 cont-02 cont-03' 'cont-04 cont-05 cont-06';
    grid-template-columns: repeat(3 , auto);
    grid-template-rows: repeat(2 , auto);
  }

  .container-grid.cont-other-colums-01 {
    grid-row-gap: 45px;
    grid-column-gap: 45px;
    grid-template-areas: 'cont-01 cont-02 cont-03';
    grid-template-columns: repeat(3 , auto);
    grid-template-rows: auto;
  }

  .container-grid.cont-text-group.cont-text-home-04 {
    max-width: 865px;
  }
}

@media screen and (min-width: 85.375rem) {
  /* Text Elements */

  h1.h1-main-01 {
    font-size: 46px;
  }

  .container-grid.cont-content {
    padding-right: 50px;
    padding-left: 50px;
  }

  .container-grid.cont-content-main {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .container-grid.cont-credits {
    margin-top: 70px;
  }

  .container-grid.cont-bottom {
    padding-top: 70px;
  }

  .container-grid.cont-logo-top {
    padding-right: 50px;
    padding-left: 50px;
  }

  .container-grid.cont-h1-main {
    padding-right: 50px;
    padding-bottom: 60px;
    padding-left: 50px;
  }

  a.responsive-picture.logo-main-top {
    max-width: 260px;
  }

  .container-grid.cont-text-group.margin-text-group-01 {
    margin-bottom: 70px;
  }

  .container-grid.cont-btn-main.margin-top-01 {
    margin-top: 70px;
  }

  .container-grid.cont-3col-reviews-01 {
    grid-row-gap: 50px;
    grid-column-gap: 50px;
  }

  .container-grid.cont-3col-clients-01 {
    grid-row-gap: 50px;
    grid-column-gap: 50px;
  }

  .container-grid.cont-h1-home {
    max-width: 740px;
  }

  .container-grid.cont-2col-photos-01 {
    grid-row-gap: 50px;
    grid-column-gap: 50px;
  }

  .container-grid.cont-services-colums-01 {
    grid-row-gap: 50px;
    grid-column-gap: 50px;
  }

  .container-grid.cont-other-colums-01 {
    grid-row-gap: 50px;
    grid-column-gap: 50px;
  }
}


/*Custom Fonts Definitions*/

@font-face {
	font-family: OpenSans-Regular;
	src: url('../custom_fonts/OpenSans-Regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: OpenSans-Light;
	src: url('../custom_fonts/OpenSans-Light.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Oswald-Regular;
	src: url('../custom_fonts/Oswald-Regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Oswald-SemiBold;
	src: url('../custom_fonts/Oswald-SemiBold.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: Oswald-Light;
	src: url('../custom_fonts/Oswald-Light.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
