/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in IE and iOS.
 */

html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */

article,
aside,
details, /* 1 */
figcaption,
figure,
footer,
header,
main, /* 2 */
menu,
nav,
section,
summary { /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */

template, /* 1 */
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/* Forms
   ========================================================================== */

/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */

optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
@charset "UTF-8";
/*------------------------------------*  #BREAKPOINTS
\*------------------------------------*/
.Nunito-Sans-extra-bold, h1, a {
  font-family: 'Nunito Sans', sans-serif;
  font-weight: 800; }

.Nunito-Sans-bold, body, h2, h3, h4, h6, form .Actions input, .header__top--call p, .button, .project a p {
  font-family: 'Nunito Sans', sans-serif;
  font-weight: 700; }

.Nunito-Sans-semi-bold, .lightbox-category li a {
  font-family: 'Nunito Sans', sans-serif;
  font-weight: 600; }

.Nunito-Sans-regular, p, form input,
form textarea, .category-content ul li, .our-team__block--details span a {
  font-family: 'Nunito Sans', sans-serif;
  font-weight: 400; }

.Nunito-Sans-semi-bold-italic, .content-about .block-our-people h4, .our-team__block--members--position {
  font-family: 'Nunito Sans', sans-serif;
  font-weight: 600;
  font-style: italic; }

/*------------------------------------*  #MIXINS
\*------------------------------------*/
.transition {
  -webkit-transition: all 200ms;
  -moz-transition: all 200ms;
  -ms-transition: all 200ms;
  -o-transition: all 200ms;
  transition: all 200ms; }

/*------------------------------------*  #MEDIA QUERIES
\*------------------------------------*/
/*------------------------------------*  #BORDER RADIUS
\*------------------------------------*/
/*------------------------------------*  #TRANSLATE
\*------------------------------------*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

body {
  font-size: 16px;
  line-height: 30px;
  -moz-osx-font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  overflow: hidden; }
  @media only screen and (max-width: 736px) {
    body.HomePage {
      padding-top: 120px; } }

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto; }

h1 {
  font-size: 56px;
  line-height: 77px;
  color: #9BCF50; }

h2 {
  font-size: 36px;
  line-height: 36px;
  color: #FFFFFF; }

h3 {
  font-size: 24px;
  line-height: 32px;
  color: #9BCF50; }

h4 {
  font-size: 18px;
  line-height: 24px; }

h6 {
  font-size: 12px;
  line-height: 16px;
  color: #FFFFFF; }

p {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.025em; }

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 200ms;
  -moz-transition: all 200ms;
  -ms-transition: all 200ms;
  -o-transition: all 200ms;
  transition: all 200ms;
  color: #FFFFFF;
  font-size: 18px;
  line-height: 24px; }
  a:hover {
    color: #9BCF50; }

ul {
  padding: 0; }
  ul li {
    list-style: none;
    list-style-type: none; }

*:focus {
  outline: none; }

.body-wrapper {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden; }
  @media only screen and (max-width: 736px) {
    .body-wrapper {
      padding-top: 144px; } }

.image {
  display: inline-block;
  width: 100%; }
  .image img {
    -webkit-transition: all 600ms;
    -moz-transition: all 600ms;
    -ms-transition: all 600ms;
    -o-transition: all 600ms;
    transition: all 600ms; }
  .image--to-load {
    display: inline-block;
    position: relative; }
    .image--to-load img {
      opacity: 0;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .image__credit {
    display: none; }
  .image__caption {
    display: none; }
  .image__space {
    width: 100%;
    display: block; }

.loaded .sk-fading-circle {
  display: none; }

.sk-fading-circle {
  margin: -10px 0 0 -10px;
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 50%;
  left: 50%; }

.sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0; }

.sk-fading-circle .sk-circle:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #e1e1e1;
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
  animation: sk-circleFadeDelay 1.2s infinite ease-in-out both; }

.sk-fading-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg); }

.sk-fading-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  transform: rotate(60deg); }

.sk-fading-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.sk-fading-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
  -ms-transform: rotate(120deg);
  transform: rotate(120deg); }

.sk-fading-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
  -ms-transform: rotate(150deg);
  transform: rotate(150deg); }

.sk-fading-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.sk-fading-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
  -ms-transform: rotate(210deg);
  transform: rotate(210deg); }

.sk-fading-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
  -ms-transform: rotate(240deg);
  transform: rotate(240deg); }

.sk-fading-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.sk-fading-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
  -ms-transform: rotate(300deg);
  transform: rotate(300deg); }

.sk-fading-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
  -ms-transform: rotate(330deg);
  transform: rotate(330deg); }

.sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s; }

.sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s; }

.sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s; }

.sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s; }

.sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s; }

.sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s; }

.sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s; }

.sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s; }

.sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s; }

.sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
  animation-delay: -0.2s; }

.sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
  animation-delay: -0.1s; }

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0; }
  40% {
    opacity: 1; } }

@keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0; }
  40% {
    opacity: 1; } }

.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  transition: opacity 0.3s ease; }
  .lity.lity-opened {
    opacity: 1; }
  .lity.lity-closed {
    opacity: 0; }
  .lity * {
    box-sizing: border-box; }

.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
  padding: 0 60px; }
  @media only screen and (max-width: 768px) {
    .lity-wrap {
      padding: 0 24px; } }
  @media only screen and (max-width: 736px) {
    .lity-wrap {
      padding: 0; } }
  .lity-wrap:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -0.25em; }

.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  transition: opacity 0.3s ease; }
  .lity-loading .lity-loader {
    opacity: 1; }

.lity-container {
  z-index: 9992;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important; }

.lity-content {
  z-index: 9993;
  width: 100%;
  transform: scale(1);
  transition: transform 0.3s ease; }
  .lity-loading .lity-content,
  .lity-closed .lity-content {
    transform: scale(0.8); }
  .lity-content:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); }

.lity-close-style, .lity-close, .lity-close:hover, .lity-close:focus, .lity-close:active, .lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  box-shadow: none; }

.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  font-size: 50px;
  font-weight: 100;
  font-family: initial;
  margin-right: 119px;
  margin-top: 50px; }
  .lity-close:hover {
    color: #9BCF50;
    font-size: 50px;
    font-weight: 100;
    font-family: initial; }
  @media only screen and (max-width: 768px) {
    .lity-close {
      margin-right: 50px; } }
  @media only screen and (max-width: 736px) {
    .lity-close {
      margin-top: 140px;
      margin-right: 9px;
      font-size: 50px;
      font-weight: 100;
      font-family: initial; } }
  .lity-close::-moz-focus-inner {
    border: 0;
    padding: 0; }
  .lity-close:active {
    top: 1px; }

/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0; }

/* iFrame */
.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px; }

.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  transform: translateZ(0);
  -webkit-overflow-scrolling: touch; }
  .lity-iframe-container iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

.lity-hide {
  display: none; }

.lity-active header {
  display: none; }

.loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999999;
  background: #9BCF50;
  display: flex;
  align-items: center;
  justify-content: center; }
  .loading-screen .loader {
    width: 200px;
    height: 200px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -100px 0 0 -100px; }

.cssload-thecube {
  width: 73px;
  height: 73px;
  margin: 0 auto;
  position: relative;
  transform: rotateZ(45deg);
  -o-transform: rotateZ(45deg);
  -ms-transform: rotateZ(45deg);
  -webkit-transform: rotateZ(45deg);
  -moz-transform: rotateZ(45deg); }

.cssload-thecube .cssload-cube {
  position: relative;
  transform: rotateZ(45deg);
  -o-transform: rotateZ(45deg);
  -ms-transform: rotateZ(45deg);
  -webkit-transform: rotateZ(45deg);
  -moz-transform: rotateZ(45deg); }

.cssload-thecube .cssload-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  transform: scale(1.1);
  -o-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1); }

.cssload-thecube .cssload-cube:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #c3e396;
  animation: cssload-fold-thecube 6.36s infinite linear both;
  -o-animation: cssload-fold-thecube 6.36s infinite linear both;
  -ms-animation: cssload-fold-thecube 6.36s infinite linear both;
  -webkit-animation: cssload-fold-thecube 6.36s infinite linear both;
  -moz-animation: cssload-fold-thecube 6.36s infinite linear both;
  transform-origin: 100% 100%;
  -o-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%; }

.cssload-thecube .cssload-c2 {
  transform: scale(1.1) rotateZ(90deg);
  -o-transform: scale(1.1) rotateZ(90deg);
  -ms-transform: scale(1.1) rotateZ(90deg);
  -webkit-transform: scale(1.1) rotateZ(90deg);
  -moz-transform: scale(1.1) rotateZ(90deg); }

.cssload-thecube .cssload-c3 {
  transform: scale(1.1) rotateZ(180deg);
  -o-transform: scale(1.1) rotateZ(180deg);
  -ms-transform: scale(1.1) rotateZ(180deg);
  -webkit-transform: scale(1.1) rotateZ(180deg);
  -moz-transform: scale(1.1) rotateZ(180deg); }

.cssload-thecube .cssload-c4 {
  transform: scale(1.1) rotateZ(270deg);
  -o-transform: scale(1.1) rotateZ(270deg);
  -ms-transform: scale(1.1) rotateZ(270deg);
  -webkit-transform: scale(1.1) rotateZ(270deg);
  -moz-transform: scale(1.1) rotateZ(270deg); }

.cssload-thecube .cssload-c2:before {
  animation-delay: 0.8s;
  -o-animation-delay: 0.8s;
  -ms-animation-delay: 0.8s;
  -webkit-animation-delay: 0.8s;
  -moz-animation-delay: 0.8s; }

.cssload-thecube .cssload-c3:before {
  animation-delay: 1.59s;
  -o-animation-delay: 1.59s;
  -ms-animation-delay: 1.59s;
  -webkit-animation-delay: 1.59s;
  -moz-animation-delay: 1.59s; }

.cssload-thecube .cssload-c4:before {
  animation-delay: 2.39s;
  -o-animation-delay: 2.39s;
  -ms-animation-delay: 2.39s;
  -webkit-animation-delay: 2.39s;
  -moz-animation-delay: 2.39s; }

@keyframes cssload-fold-thecube {
  0%, 10% {
    transform: perspective(136px) rotateX(-180deg);
    opacity: 0; }
  25%,
  75% {
    transform: perspective(136px) rotateX(0deg);
    opacity: 1; }
  90%,
  100% {
    transform: perspective(136px) rotateY(180deg);
    opacity: 0; } }

@-o-keyframes cssload-fold-thecube {
  0%, 10% {
    -o-transform: perspective(136px) rotateX(-180deg);
    opacity: 0; }
  25%,
  75% {
    -o-transform: perspective(136px) rotateX(0deg);
    opacity: 1; }
  90%,
  100% {
    -o-transform: perspective(136px) rotateY(180deg);
    opacity: 0; } }

@-ms-keyframes cssload-fold-thecube {
  0%, 10% {
    -ms-transform: perspective(136px) rotateX(-180deg);
    opacity: 0; }
  25%,
  75% {
    -ms-transform: perspective(136px) rotateX(0deg);
    opacity: 1; }
  90%,
  100% {
    -ms-transform: perspective(136px) rotateY(180deg);
    opacity: 0; } }

@-webkit-keyframes cssload-fold-thecube {
  0%, 10% {
    -webkit-transform: perspective(136px) rotateX(-180deg);
    opacity: 0; }
  25%,
  75% {
    -webkit-transform: perspective(136px) rotateX(0deg);
    opacity: 1; }
  90%,
  100% {
    -webkit-transform: perspective(136px) rotateY(180deg);
    opacity: 0; } }

@-moz-keyframes cssload-fold-thecube {
  0%, 10% {
    -moz-transform: perspective(136px) rotateX(-180deg);
    opacity: 0; }
  25%,
  75% {
    -moz-transform: perspective(136px) rotateX(0deg);
    opacity: 1; }
  90%,
  100% {
    -moz-transform: perspective(136px) rotateY(180deg);
    opacity: 0; } }

form fieldset {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  min-width: 0; }

form div.field {
  margin-bottom: 10px; }
  form div.field.textarea {
    margin-bottom: 0; }

form label.left {
  display: none; }

form input,
form textarea {
  width: 100%;
  background: #F6F6F6;
  outline: none;
  padding: 14px 41px;
  font-size: 16px;
  line-height: 30px;
  color: #9B9B9B;
  border: 1px solid #9BCF50; }
  @media only screen and (max-width: 768px) {
    form input,
    form textarea {
      padding: 9px 41px; } }
  @media only screen and (max-width: 736px) {
    form input,
    form textarea {
      padding: 9px 23px; } }

form textarea {
  height: 120px; }
  @media only screen and (max-width: 768px) {
    form textarea {
      height: 80px; } }

form .Actions {
  position: relative;
  left: 0;
  width: 205px; }
  form .Actions input {
    max-width: 205px;
    height: 60px;
    border: 2px solid #9BCF50;
    background: transparent;
    font-size: 18px;
    line-height: 1;
    color: #9BCF50;
    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms;
    cursor: pointer; }
    form .Actions input:hover {
      background: #9BCF50;
      border-color: #9BCF50;
      color: #FFFFFF; }
  form .Actions:before {
    content: ' \2192   ';
    position: absolute;
    left: 137px;
    top: 16px;
    color: #9BCF50;
    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms; }
  form .Actions:hover:before {
    color: #FFFFFF; }

.header {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 99999;
  width: 299px;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7); }
  @media only screen and (max-width: 1440px) {
    .header {
      width: 330px;
      -webkit-transform: translateX(-100%);
      -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
      -o-transform: translateX(-100%);
      transform: translateX(-100%);
      -webkit-transition: all .3s;
      transition: all .3s; } }
  @media only screen and (max-width: 736px) {
    .header {
      width: 100%;
      background: transparent; } }
  .header__top {
    position: absolute;
    left: 0;
    top: 51px;
    width: 330px; }
    @media only screen and (max-width: 736px) {
      .header__top--hide {
        display: none; } }
    @media only screen and (max-width: 1440px) {
      .header__top {
        width: 330px;
        top: 0; } }
    @media only screen and (max-width: 736px) {
      .header__top {
        width: 100%; } }
    .header__top:before {
      content: " ";
      display: block;
      position: absolute;
      right: 0;
      top: -31px;
      border-left: 31px solid #769F3A;
      border-top: 31px solid transparent;
      z-index: 122; }
      @media only screen and (max-width: 1440px) {
        .header__top:before {
          top: 101px;
          right: -39px;
          border-left: 39px solid #769F3A;
          border-top: 39px solid transparent;
          -webkit-transform: translateX(0);
          -moz-transform: translateX(0);
          -ms-transform: translateX(0);
          -o-transform: translateX(0);
          transform: translateX(0);
          -webkit-transition: all .3s;
          transition: all .3s; } }
      @media only screen and (max-width: 736px) {
        .header__top:before {
          display: none; } }
    .header__top--logo {
      background: #000000;
      text-align: center;
      padding: 31px 0 21px; }
      @media only screen and (max-width: 736px) {
        .header__top--logo {
          padding: 5px 10px;
          margin-left: 70px; } }
      .header__top--logo--image img {
        max-width: 100%;
        width: 275px; }
        @media only screen and (max-width: 736px) {
          .header__top--logo--image img {
            height: 50px; } }
      .header__top--logo--text h6 {
        text-transform: uppercase;
        margin: 5px 0; }
        @media only screen and (max-width: 1440px) {
          .header__top--logo--text h6 {
            display: none; } }
      @media only screen and (max-width: 1440px) {
        .header__top--logo-tablet {
          padding: 35px 0 24px; } }
      @media only screen and (max-width: 1024px) {
        .header__top--logo--image-tablet {
          padding: 0 10px; }
          .header__top--logo--image-tablet img {
            max-width: 100%; } }
    .header__top--call {
      background: #FFFFFF;
      color: #9BCF50;
      padding: 16px 0; }
      .header__top--call p {
        margin: 0;
        font-size: 21px;
        line-height: 28px;
        text-align: center; }
        .header__top--call p a {
          color: #9BCF50;
          font-size: 21px;
          line-height: 28px; }
          .header__top--call p a:hover {
            color: #000000; }
      @media only screen and (max-width: 1024px) {
        .header__top--call-tablet {
          padding-left: 10px;
          padding-right: 10px; }
          .header__top--call-tablet p {
            font-size: 14px; }
            .header__top--call-tablet p a {
              font-size: 14px; } }
    .header__top--hamburger {
      display: none; }
      @media only screen and (max-width: 1440px) {
        .header__top--hamburger {
          display: inherit;
          position: absolute;
          top: 139px;
          right: -40px;
          width: 40px;
          -webkit-transform: translateX(0);
          -moz-transform: translateX(0);
          -ms-transform: translateX(0);
          -o-transform: translateX(0);
          transform: translateX(0);
          -webkit-transition: all .3s;
          transition: all .3s; } }
      @media only screen and (max-width: 736px) {
        .header__top--hamburger {
          width: 70px;
          height: 70px;
          background: #86B73F;
          position: absolute;
          top: 0;
          left: 0; } }
      .header__top--hamburger:hover svg #Combined-Shape {
        fill: #000000;
        -webkit-transition: all 200ms;
        -moz-transition: all 200ms;
        -ms-transition: all 200ms;
        -o-transition: all 200ms;
        transition: all 200ms; }
      @media only screen and (max-width: 736px) {
        .header__top--hamburger a {
          position: relative;
          left: 16px;
          top: 10px;
          display: inline-block; } }
  .header__bottom {
    position: absolute;
    left: 0;
    top: 286px;
    flex: 1;
    display: flex;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: auto;
    height: 100vh;
    min-width: 100%;
    width: 330px;
    background: #000000; }
    @media only screen and (max-width: 1440px) {
      .header__bottom {
        top: 242px;
        padding-top: 0; } }
    @media only screen and (max-width: 736px) {
      .header__bottom {
        background: rgba(0, 0, 0, 0.9);
        width: 100%;
        position: absolute;
        top: 0;
        padding-top: 144px; } }
    .header__bottom--nav {
      height: auto;
      overflow-y: scroll;
      position: relative;
      margin-bottom: 312px;
      margin-top: 0;
      min-width: 100%; }
      @media only screen and (max-width: 736px) {
        .header__bottom--nav {
          width: 100%;
          margin-bottom: 0;
          height: calc(100vh - 144px); } }
      .header__bottom--nav li {
        position: relative; }
        .header__bottom--nav li a {
          text-transform: uppercase;
          display: block; }
          @media only screen and (max-width: 736px) {
            .header__bottom--nav li a {
              font-size: 16px;
              line-height: 22px; } }
          .header__bottom--nav li a:after {
            content: ' ';
            position: absolute;
            top: 0;
            right: 0;
            height: 100%;
            width: 10px; }
          .header__bottom--nav li a:hover, .header__bottom--nav li a.active {
            color: #9BCF50; }
            .header__bottom--nav li a:hover:after, .header__bottom--nav li a.active:after {
              background: #9BCF50; }
  @media only screen and (max-width: 1440px) {
    .header--home {
      width: 299px;
      -webkit-transform: translateX(0);
      -moz-transform: translateX(0);
      -ms-transform: translateX(0);
      -o-transform: translateX(0);
      transform: translateX(0);
      -webkit-transition: all 200ms;
      -moz-transition: all 200ms;
      -ms-transition: all 200ms;
      -o-transition: all 200ms;
      transition: all 200ms; }
      .header--home .header__top {
        width: 330px;
        top: 52px; }
        .header--home .header__top:before {
          right: 0;
          top: -31px;
          border-left: 31px solid #769F3A;
          border-top: 31px solid transparent; }
        .header--home .header__top--logo {
          padding: 30px 0 21px; }
          .header--home .header__top--logo--text h6 {
            display: inherit; }
        .header--home .header__top--hamburger {
          display: none; }
      .header--home .header__bottom {
        top: 286px; }
        .header--home .header__bottom--nav li:nth-child(6) a {
          padding: 24px 50px 22px; }
        .header--home .header__bottom--nav--height {
          height: calc(100vh - 144px); } }
  @media only screen and (max-width: 736px) {
    .header--home {
      display: none; }
    .header .header__top--call {
      padding: 13px 0; }
      .header .header__top--call p {
        font-size: 18px;
        line-height: 24px; }
        .header .header__top--call p a {
          font-size: 18px;
          line-height: 24px; } }
  .header.active {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: all .3s;
    transition: all .3s; }
  .header--home-mobile {
    display: none; }
    @media only screen and (max-width: 736px) {
      .header--home-mobile {
        display: inherit;
        width: 100%; } }
  .header--fixed {
    display: none; }
    @media only screen and (max-width: 736px) {
      .header--fixed {
        display: inherit;
        width: 100%;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        z-index: 9999999;
        height: 144px;
        position: fixed; } }

.header__bottom--nav li a:hover .header__bottom--nav li {
  border-right: solid 10px #9BCF50; }

.hide-header-nav {
  position: fixed;
  background: rgba(0, 0, 0, 0.95); }
  .hide-header-nav .header__top,
  .hide-header-nav .header__bottom {
    opacity: 0;
    visibility: hidden; }

.hide-hamburger .header__top--hamburger {
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -o-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: all .3s;
  transition: all .3s; }

@media only screen and (max-width: 1440px) {
  .hide-hamburger .header__top:before {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: all .3s;
    transition: all .3s; } }

.show-hamburger .header__top--hamburger {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: all .3s;
  transition: all .3s; }

.show-hamburger .header__top:before {
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: all .3s;
  transition: all .3s; }

.hide-fix-header .header--fixed {
  display: none !important; }

.slick-slider {
  width: 100%;
  overflow: hidden; }
  @media only screen and (max-width: 736px) {
    .slick-slider {
      position: relative; } }

.slick-list,
.slick-track {
  overflow: hidden; }

.slick-track {
  display: flex; }

.slideshow__slide {
  width: 100%;
  padding: 0 15px;
  float: left; }
  .slideshow__slide-non-padding {
    padding: 0; }
  @media only screen and (max-width: 768px) {
    .slideshow__slide {
      padding: 0; } }
  .slideshow__slide a {
    display: block;
    width: 100%; }
  .slideshow__slide img {
    max-width: 100%;
    width: 100%; }
  .slideshow__slide video {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 9999999; }
  @media only screen and (max-width: 1024px) {
    .slideshow__slide-project {
      margin-bottom: 30px; }
      .slideshow__slide-project:last-child {
        margin-bottom: 0; } }

.slick-dots {
  display: none; }

.slick-dots li.slick-active button:before {
  display: block; }

.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 45px;
  height: 45px;
  padding: 0;
  background: rgba(155, 207, 80, 0.5);
  z-index: 2;
  border: none;
  position: absolute;
  top: 50%;
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 200ms;
  -moz-transition: all 200ms;
  -ms-transition: all 200ms;
  -o-transition: all 200ms;
  transition: all 200ms; }
  .slick-prev:after,
  .slick-next:after {
    content: ' ';
    position: absolute;
    left: 0;
    top: 0;
    width: 45px;
    height: 45px;
    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms; }

.slick-prev {
  left: 0; }
  .slick-prev:after {
    background: rgba(155, 207, 80, 0.5) url(e957fc5f1e260ed890ca7df9afd92c42.png) 14px 18px;
    background-repeat: no-repeat; }
  .slick-prev:hover:after {
    background: #769F3A url(e957fc5f1e260ed890ca7df9afd92c42.png) 14px 18px;
    background-repeat: no-repeat; }
  .slick-prev.slick-disabled {
    opacity: 0.3; }
    .slick-prev.slick-disabled:hover:after {
      background: rgba(155, 207, 80, 0.5) url(e957fc5f1e260ed890ca7df9afd92c42.png) 14px 18px;
      background-repeat: no-repeat; }

.slick-next {
  right: 0; }
  .slick-next:after {
    background: rgba(155, 207, 80, 0.5) url(5ffbdbe5fb30ebae5cb2d0ada30d38bf.png) 16px 18px;
    background-repeat: no-repeat; }
  .slick-next:hover:after {
    background: #769F3A url(5ffbdbe5fb30ebae5cb2d0ada30d38bf.png) 16px 18px;
    background-repeat: no-repeat; }
  .slick-next.slick-disabled {
    opacity: 0.3; }
    .slick-next.slick-disabled:hover:after {
      background: rgba(155, 207, 80, 0.5) url(5ffbdbe5fb30ebae5cb2d0ada30d38bf.png) 16px 18px;
      background-repeat: no-repeat; }

.slick-dots {
  margin: 0;
  padding: 0;
  position: absolute;
  left: 0;
  bottom: 17px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999; }
  .slick-dots li {
    margin: 0 15px 0 0;
    padding: 0; }
    .slick-dots li:last-child {
      margin-right: 0; }
    .slick-dots li button {
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      display: block;
      width: 10px;
      height: 10px;
      margin: 0;
      padding: 0;
      background: #000000;
      border: none;
      text-indent: -9999px;
      overflow: hidden;
      cursor: pointer; }
    .slick-dots li.slick-active button {
      background: #9bcf4f; }

.lightbox-gallery-image .slideshow__slide img,
.lightbox-gallery--videos .slideshow__slide img {
  width: auto;
  min-width: 100%;
  height: auto;
  max-width: inherit; }

.lightbox-gallery--videos .slick-track {
  min-width: 100% !important; }

.background-layer {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.1); }

.home-hero {
  height: auto;
  min-height: 100vh;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  padding-left: 340px; }
  .home-hero__wrapper {
    position: relative;
    display: block;
    width: 100%;
    min-height: 100vh; }
  .home-hero__contents {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 3333;
    width: 100%;
    max-width: 842px;
    background: rgba(0, 0, 0, 0.3);
    padding: 51px 104px 81px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%); }
    .home-hero__contents h1 {
      font-size: 48px;
      line-height: 58px;
      text-transform: uppercase;
      margin: 0; }
    .home-hero__contents h2 {
      position: relative;
      margin: 0; }
      .home-hero__contents h2:after {
        content: ' ';
        position: absolute;
        width: 76px;
        height: 5px;
        left: 0;
        margin-top: 30px;
        background: #9BCF50; }
    .home-hero__contents h3 {
      color: #FFFFFF;
      margin-top: 50px;
      margin-bottom: 47px;
      padding: 0 5px; }
    .home-hero__contents .button {
      width: 100%;
      max-width: 206px;
      margin-left: 3px; }
  @media only screen and (max-width: 1600px) {
    .home-hero__contents h1 {
      font-size: 36px;
      line-height: 46px; }
    .home-hero__contents h2:after {
      margin-top: 20px; }
    .home-hero__contents h3 {
      margin-top: 30px; } }
  @media only screen and (max-width: 1440px) {
    .home-hero__contents {
      max-width: 787px;
      padding: 51px 104px 86px; } }
  @media only screen and (max-width: 1024px) {
    .home-hero__contents {
      padding: 49px 60px 78px; } }
  @media only screen and (max-width: 768px) {
    .home-hero__wrapper {
      position: relative; }
    .home-hero__contents {
      max-width: 430px;
      padding: 49px 50px 78px; } }
  @media only screen and (max-width: 768px) and (max-width: 736px) {
    .home-hero__contents {
      padding-right: 20px; } }
  @media only screen and (max-width: 768px) {
      .home-hero__contents h2 {
        font-size: 24px;
        line-height: 36px;
        margin-top: 5px; }
        .home-hero__contents h2:after {
          margin-top: 56px; }
      .home-hero__contents h3 {
        line-height: 35px;
        margin-top: 84px;
        margin-bottom: 24px; } }
  @media only screen and (max-width: 736px) {
    .home-hero {
      padding-top: 144px;
      padding-left: 12px; }
      .home-hero__contents {
        position: relative;
        padding: 30px 50px;
        top: auto;
        height: auto;
        max-height: 100%;
        overflow-y: scroll;
        max-width: none;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0); }
        .home-hero__contents h1 {
          font-size: 27px;
          line-height: 37px; }
        .home-hero__contents h2 {
          font-size: 20px !important;
          line-height: 36px !important;
          margin-top: -6px !important; }
        .home-hero__contents h2:after {
          margin-top: 20px; }
        .home-hero__contents h3 {
          font-size: 18px;
          line-height: 25px !important;
          padding: 0;
          margin-top: 44px; }
          .home-hero__contents h3 br {
            display: none; }
        .home-hero__contents .button {
          margin-top: 9px; }
      .home-hero__wrapper {
        display: flex;
        align-items: center;
        min-height: calc(100vh - 144px);
        height: calc(100vh - 144px);
        z-index: 100; } }

.button {
  display: inline-block;
  margin: 0;
  padding: 9px 10px 6px;
  font-size: 18px;
  line-height: 24px;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 200ms;
  -moz-transition: all 200ms;
  -ms-transition: all 200ms;
  -o-transition: all 200ms;
  transition: all 200ms; }
  .button--border {
    border: 2px solid #FFFFFF;
    color: #FFFFFF;
    width: 206px;
    line-height: 24px;
    position: relative; }
    .button--border:after {
      content: ' ';
      position: absolute;
      right: -44px;
      top: -2px;
      width: 40px;
      height: 39px;
      border: 2px solid #FFFFFF;
      background: #9BCF50 url(20718d33dcd826fb9ce66a7852b9a5fe.svg) 11px center;
      background-repeat: no-repeat; }
    .button--border:hover {
      color: #FFFFFF; }
      .button--border:hover:after {
        background: #769F3A url(20718d33dcd826fb9ce66a7852b9a5fe.svg) 11px center;
        background-repeat: no-repeat; }
  @media only screen and (max-width: 768px) {
    .button {
      font-size: 18px;
      line-height: 21px;
      padding: 8px 10px 9px;
      border-right: none; }
      .button--border {
        width: 205px; }
        .button--border:after {
          right: -42px;
          width: 38px;
          height: 100%; } }

.fullscreen-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  z-index: 1; }

.fullscreen-bg__video {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%); }
  @media only screen and (max-width: 1024px) {
    .fullscreen-bg__video {
      display: none; } }

.fullscreen-bg__image {
  background-size: cover;
  background-position: center center; }

.background-image {
  display: none; }
  @media only screen and (max-width: 1024px) {
    .background-image {
      display: inherit;
      position: absolute;
      width: 100%;
      z-index: 1;
      left: 0;
      top: 0;
      height: 100%;
      font-size: 0;
      line-height: 0;
      overflow: hidden; } }
  .background-image img {
    position: absolute;
    height: auto;
    left: 50%;
    top: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

.template {
  position: relative;
  z-index: 101;
  top: 0;
  left: 0;
  padding-left: 299px;
  width: 100%;
  height: 100vh;
  overflow-y: auto;
  overflow-x: hidden;
  display: -webkit-flex;
  display: flex; }
  @media only screen and (max-width: 1440px) {
    .template {
      padding-left: 285px; } }
  @media only screen and (max-width: 1440px) {
    .template {
      padding-left: 0; } }
  @media only screen and (max-width: 1024px) {
    .template {
      -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 1440px) {
    .template--gallery-popup {
      padding-left: 0; } }
  .template--zoom {
    position: absolute; }
  .template .template__inner {
    height: 100vh;
    flex: 1;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: -webkit-min-content; }
    @media only screen and (max-width: 1024px) {
      .template .template__inner .lightbox-content-pc {
        display: none; } }
    .template .template__inner .lightbox-content-tablet {
      display: none; }
      @media (max-width: 1024px) and (min-width: 736px) {
        .template .template__inner .lightbox-content-tablet {
          display: block;
          float: none;
          clear: both;
          padding-top: 15px; } }
    @media (max-width: 1024px) and (min-width: 736px) {
      .template .template__inner-project .lightbox-close {
        right: 45px; }
      .template .template__inner-project .template__header--content--title,
      .template .template__inner-project .lightbox-content {
        width: auto; }
      .template .template__inner-project .template__header--content--title {
        position: relative;
        top: 0;
        left: 0;
        margin-top: 4px;
        margin-right: 95px;
        padding-bottom: 33px;
        color: #FFFFFF; }
      .template .template__inner-project .lightbox-content {
        padding: 7px 0 0 0; }
      .template .template__inner-project .template__header {
        padding: 0 70px; }
      .template .template__inner-project .template__header--content .container-lightbox {
        padding: 54px 0 0 0; }
      .template .template__inner-project .template__content {
        padding: 0; }
      .template .template__inner-project .template__content .content-lightbox {
        padding: 43px 0 77px; }
      .template .template__inner-project .lightbox-category,
      .template .template__inner-project .content-popup-gallery-image {
        float: none;
        width: 100%; }
      .template .template__inner-project .lightbox-category {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0; }
        .template .template__inner-project .lightbox-category.lightbox-category-mobile {
          display: none; }
        .template .template__inner-project .lightbox-category li {
          margin: 0 40px 30px; }
      .template .template__inner-project .content-popup-gallery-image {
        padding: 0; } }
  .template.h--vh {
    height: 100vh; }
  .template__header {
    position: relative;
    width: 100%;
    padding-bottom: 50px;
    min-height: 359px; }
    @media only screen and (max-width: 1300px) {
      .template__header {
        padding: 0 60px 144px; } }
    @media only screen and (max-width: 1440px) {
      .template__header {
        padding-bottom: 144px; } }
    @media only screen and (max-width: 1440px) {
      .template__header-our-people {
        min-height: 358px; } }
    .template__header--background {
      position: absolute;
      height: 100%;
      right: 0;
      top: 0;
      width: 100%;
      overflow: hidden; }
      .template__header--background img {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 102;
        min-width: 100%;
        min-height: 100%;
        width: auto;
        height: auto;
        transform: translate(-50%, -50%); }
      .template__header--background:after {
        content: ' ';
        position: absolute;
        width: 100%;
        top: 0;
        height: 100%;
        background: rgba(155, 207, 80, 0.9);
        z-index: 102; }
      .template__header--background.bg-for-pc {
        display: block; }
        @media only screen and (max-width: 736px) {
          .template__header--background.bg-for-pc {
            display: none; } }
    .template__header--content {
      position: relative;
      padding: 0;
      z-index: 103;
      margin-left: -299px; }
      @media only screen and (max-width: 1440px) {
        .template__header--content {
          margin-left: 0; } }
      .template__header--content.bg-for-mobile:after {
        content: ' ';
        position: absolute;
        width: 100%;
        top: 0;
        height: 100%;
        background: rgba(155, 207, 80, 0.9);
        z-index: 102; }
      @media only screen and (max-width: 736px) {
        .template__header--content.bg-for-mobile {
          min-height: calc(100vh - 144px); } }
      @media only screen and (min-width: 737px) {
        .template__header--content.bg-for-mobile {
          background-image: none !important; }
          .template__header--content.bg-for-mobile:after {
            display: none; } }
      .template__header--content .align {
        padding: 0 331px;
        z-index: 103; }
        @media only screen and (max-width: 1700px) {
          .template__header--content .align {
            padding-right: 30px; } }
        @media only screen and (max-width: 1440px) {
          .template__header--content .align {
            padding: 0;
            max-width: 1200px;
            margin: 0 auto;
            width: 100%;
            position: relative; } }
      .template__header--content .container {
        padding: 131px 103px 0;
        overflow: hidden; }
        @media only screen and (max-width: 1440px) {
          .template__header--content .container {
            padding: 54px 10px 0;
            width: 66.66667%;
            margin-left: 33.33333%; } }
        @media only screen and (max-width: 1200px) {
          .template__header--content .container {
            padding-left: 60px; } }
        .template__header--content .container h2 {
          margin: 0;
          margin-bottom: 28px; }
        .template__header--content .container p {
          font-size: 18px;
          color: #FFFFFF; }
          @media only screen and (max-width: 768px) {
            .template__header--content .container p {
              font-size: 16px; } }
        @media only screen and (max-width: 1440px) {
          .template__header--content .container .font-small {
            font-size: 14px; } }
        @media only screen and (max-width: 768px) {
          .template__header--content .container .font-small {
            font-size: 18px; } }
        .template__header--content .container--gallery-popup {
          margin: 0; }
          @media only screen and (max-width: 1440px) {
            .template__header--content .container--gallery-popup {
              padding-left: 0 !important; } }
      .template__header--content .container-civil {
        padding: 65px 0 0 103px; }
        @media only screen and (max-width: 1440px) {
          .template__header--content .container-civil {
            padding: 55px 0 0 10px; } }
      .template__header--content .category-block--pc {
        display: block; }
        @media only screen and (max-width: 768px) {
          .template__header--content .category-block--pc {
            display: none; } }
      .template__header--content .category-block--mobile {
        display: none; }
        @media only screen and (max-width: 768px) {
          .template__header--content .category-block--mobile {
            display: block; } }
        .template__header--content .category-block--mobile:before, .template__header--content .category-block--mobile:after {
          content: " ";
          clear: both;
          overflow: hidden;
          display: block; }
      .template__header--content .container-civil ul.category {
        width: 30%;
        margin-right: 5%;
        padding-bottom: 1rem; }
        .template__header--content .container-civil ul.category.last {
          margin-right: 0; }
        @media only screen and (max-width: 768px) {
          .template__header--content .container-civil ul.category {
            width: 47%;
            margin-right: 0;
            padding-right: 0;
            display: inline-block;
            vertical-align: top;
            padding-top: 19px; }
            .template__header--content .container-civil ul.category.first {
              margin-right: 6%; } }
        @media only screen and (max-width: 736px) {
          .template__header--content .container-civil ul.category {
            width: 100%;
            display: block;
            padding-top: 0;
            padding-bottom: 0; }
            .template__header--content .container-civil ul.category.first {
              margin-right: 0;
              padding-top: 15px; } }
      @media only screen and (max-width: 1440px) {
        .template__header--content .container-contact {
          width: 75%;
          margin-left: 25%;
          padding: 66px 4px; } }
      @media only screen and (max-width: 768px) {
        .template__header--content .container-contact {
          margin: 0 !important;
          padding: 43px 42px !important; } }
      @media only screen and (max-width: 768px) {
        .template__header--content .container-contact h2 {
          position: relative !important;
          left: 0 !important;
          top: 0 !important;
          padding-left: 60px !important; } }
      .template__header--content .container-lightbox {
        padding: 0;
        padding-top: 100px;
        position: relative; }
        @media only screen and (max-width: 1440px) {
          .template__header--content .container-lightbox {
            width: 100%;
            padding-left: 8.33333%;
            margin-left: 0;
            padding-top: 55px; } }
        @media only screen and (max-width: 1024px) {
          .template__header--content .container-lightbox {
            padding-left: 0; } }
        @media only screen and (max-width: 736px) {
          .template__header--content .container-lightbox {
            padding: 30px 42px 11px !important;
            padding-right: 10px !important; } }
      .template__header--content--title {
        color: #9BCF50;
        position: relative;
        width: 33.33333%;
        float: left;
        padding-left: 8.33333%;
        padding-bottom: 37px; }
        @media only screen and (max-width: 1440px) {
          .template__header--content--title {
            width: 16.66667%;
            padding-left: 0; } }
        .template__header--content--title:before {
          content: ' ';
          position: absolute;
          width: 70px;
          bottom: 0;
          margin-left: 2px;
          height: 5px;
          background: #9BCF50; }
        .template__header--content--title-gallery-popup {
          padding-left: 0;
          margin-left: 0;
          width: 16.66667%; }
        @media only screen and (max-width: 768px) {
          .template__header--content--title--G-mobile {
            position: relative !important;
            top: 0 !important;
            width: 100% !important;
            left: 24px !important;
            padding-bottom: 20px !important; } }
      .template__header--content--logo {
        display: none;
        -webkit-transition: all 200ms;
        -moz-transition: all 200ms;
        -ms-transition: all 200ms;
        -o-transition: all 200ms;
        transition: all 200ms; }
        @media only screen and (max-width: 1440px) {
          .template__header--content--logo {
            display: inherit;
            width: 33.33333%;
            position: absolute;
            left: 0;
            top: 0;
            z-index: 9999;
            max-width: 285px;
            -webkit-transform: translateX(0);
            -moz-transform: translateX(0);
            -ms-transform: translateX(0);
            -o-transform: translateX(0);
            transform: translateX(0);
            -webkit-transition: all 200ms;
            -moz-transition: all 200ms;
            -ms-transition: all 200ms;
            -o-transition: all 200ms;
            transition: all 200ms; } }
        .template__header--content--logo.active {
          -webkit-transform: translateX(-100%);
          -moz-transform: translateX(-100%);
          -ms-transform: translateX(-100%);
          -o-transform: translateX(-100%);
          transform: translateX(-100%);
          -webkit-transition: all 200ms;
          -moz-transition: all 200ms;
          -ms-transition: all 200ms;
          -o-transition: all 200ms;
          transition: all 200ms; }
        @media only screen and (max-width: 1440px) {
          .template__header--content--logo-contact {
            width: 25%; } }
    .template__header-civil-mobile {
      display: none; }
      @media only screen and (max-width: 736px) {
        .template__header-civil-mobile {
          display: inherit;
          min-height: 0 !important; } }
  .template__header-contact {
    min-height: 423px;
    padding-bottom: 65px; }
    @media only screen and (max-width: 1440px) {
      .template__header-contact {
        min-height: 0;
        padding-bottom: 58px; } }
    @media only screen and (max-width: 768px) {
      .template__header-contact {
        min-height: 360px;
        padding-bottom: 36px; } }
  .template__header-lightbox {
    background: rgba(0, 0, 0, 0.95);
    padding-bottom: 0;
    min-height: 400px; }
    @media only screen and (max-width: 1440px) {
      .template__header-lightbox {
        min-height: 325px; } }
  .template__header-gallery {
    min-height: auto; }
  .template__content {
    position: relative;
    width: 100vw;
    margin-left: -299px;
    z-index: 110;
    display: flex;
    flex: auto; }
    @media only screen and (max-width: 1440px) {
      .template__content {
        margin-left: 0; } }
    @media only screen and (max-width: 1300px) {
      .template__content {
        padding: 0 60px; } }
    .template__content--gallery-popup {
      flex-direction: column;
      padding: 0 !important; }
      @media only screen and (max-width: 1440px) {
        .template__content--gallery-popup {
          padding: 0 60px !important; } }
      @media only screen and (max-width: 768px) {
        .template__content--gallery-popup {
          padding: 0 !important; } }
    .template__content--background {
      position: absolute;
      top: 0;
      left: 299px;
      width: 100%;
      height: 100%;
      overflow: hidden; }
      .template__content--background img {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 102;
        min-width: 100%;
        min-height: 100%;
        width: auto;
        height: auto;
        transform: translate(-50%, -50%); }
      @media only screen and (max-width: 1440px) {
        .template__content--background {
          left: 0; } }
      .template__content--background--gallery-popup {
        display: none; }
    .template__content--background-lightbox {
      background: rgba(0, 0, 0, 0.95); }
    .template__content .align {
      padding: 0 365px;
      margin-top: -50px;
      width: 100%;
      overflow: hidden; }
      @media only screen and (max-width: 1700px) {
        .template__content .align {
          padding-right: 59px; } }
      @media only screen and (max-width: 1440px) {
        .template__content .align {
          padding: 0;
          margin-top: -96px; } }
      .template__content .align--gallery-popup {
        margin-top: 0 !important;
        background: rgba(0, 0, 0, 0.95);
        flex: 1;
        position: relative;
        padding: 0 60px 60px 331px;
        overflow: inherit; }
        @media only screen and (max-width: 1440px) {
          .template__content .align--gallery-popup {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0; } }
        @media only screen and (max-width: 768px) {
          .template__content .align--gallery-popup {
            padding: 0 24px; } }
        @media only screen and (max-width: 736px) {
          .template__content .align--gallery-popup {
            padding: 0;
            min-height: 500px; } }
    .template__content .align-contact {
      margin-top: -65px; }
      @media only screen and (max-width: 1440px) {
        .template__content .align-contact {
          margin-top: -119px; } }
      @media only screen and (max-width: 768px) {
        .template__content .align-contact {
          margin-top: -49px !important; } }
    @media only screen and (max-width: 1440px) {
      .template__content .align-lightbox {
        margin-top: 0; } }
    @media only screen and (max-width: 768px) {
      .template__content .align-civil {
        margin-top: -91px !important; } }
    .template__content .align-gallery-mobile {
      margin-top: 0; }
    .template__content .container {
      position: relative;
      padding: 0;
      z-index: 111;
      margin: 0;
      height: 100%; }
      @media only screen and (max-width: 1440px) {
        .template__content .container {
          margin: 0 auto;
          height: 100%; } }
    .template__content .content {
      background: #FFFFFF;
      padding: 69px 102px;
      letter-spacing: 0.025em;
      overflow: hidden;
      height: 100%; }
      @media only screen and (max-width: 1440px) {
        .template__content .content {
          padding: 45px 103px; } }
      .template__content .content--galery-popup {
        max-height: 709px; }
        @media only screen and (max-width: 736px) {
          .template__content .content--galery-popup {
            max-height: none; } }
    .template__content .content-our-people {
      padding: 52px 86px; }
      @media only screen and (max-width: 1440px) {
        .template__content .content-our-people {
          padding: 52px 90px; } }
    .template__content .content-project {
      padding: 117px 102px; }
      @media only screen and (max-width: 1024px) {
        .template__content .content-project {
          position: relative;
          height: auto; } }
      .template__content .content-project .project {
        height: 100%; }
      @media only screen and (max-width: 1440px) {
        .template__content .content-project {
          padding: 119px 88px; } }
    .template__content .content-M-and-P {
      overflow: hidden;
      padding: 0; }
      @media only screen and (max-width: 768px) {
        .template__content .content-M-and-P {
          padding: 0 !important; } }
    .template__content .content-civil {
      padding: 0; }
      @media only screen and (max-width: 768px) {
        .template__content .content-civil {
          padding: 0 !important; } }
    .template__content .content-contact {
      padding: 0;
      display: flex;
      align-items: center;
      background: #141414;
      /* Old browsers */
      background: -moz-linear-gradient(left, #141414 0%, #141414 42.66%, #FFFFFF 42.66%, #FFFFFF 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(left, #141414 0%, #141414 42.66%, #FFFFFF 42.66%, #FFFFFF 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to right, #141414 0%, #141414 42.66%, #FFFFFF 42.66%, #FFFFFF 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$contact-background', endColorstr='$white',GradientType=1 );
      /* IE6-9 */ }
      @media only screen and (max-width: 768px) {
        .template__content .content-contact {
          display: block;
          background: #FFFFFF;
          padding: 0 !important; } }
    .template__content .content-lightbox {
      background: none;
      overflow: hidden;
      padding: 80px 0; }
      @media only screen and (max-width: 1440px) {
        .template__content .content-lightbox {
          padding: 43px 0;
          padding-left: 8.33333%; } }
      @media only screen and (max-width: 1024px) {
        .template__content .content-lightbox {
          padding-left: 0; } }
    .template__content .content-gallery {
      padding: 39px 0; }

@media only screen and (max-width: 768px) {
  .template__header {
    padding: 0 0 91px 0; }
    .template__header--content--logo {
      display: none; }
    .template__header--content .container {
      width: 100%;
      margin-left: 0;
      padding: 32px 44px 0 280px;
      position: relative; }
      .template__header--content .container h2 {
        position: absolute;
        left: 100px;
        top: 45px;
        width: auto;
        font-size: 24px;
        line-height: 36px;
        padding: 0; }
      .template__header--content .container-lightbox {
        padding: 54px 44px 0 280px; }
        .template__header--content .container-lightbox h2 {
          padding-bottom: 20px;
          top: 59px; }
      .template__header--content .container.container-civil {
        padding: 32px 44px 0 104px; }
        .template__header--content .container.container-civil h2 {
          position: relative;
          left: auto;
          top: auto; }
    .template__header-lightbox {
      padding: 0; }
  .template__content {
    padding: 0 44px; }
    .template__content.lightbox {
      padding: 0; }
    .template__content .align {
      margin-top: -91px; }
      .template__content .align.lightbox {
        margin: 0; }
    .template__content .container {
      padding: 0; }
    .template__content .content {
      padding: 18px 60px; }
      .template__content .content-our-people {
        padding: 76px 0px;
        text-align: center; }
      .template__content .content-project {
        display: flex;
        align-items: center;
        padding: 100px; }
      .template__content .content-lightbox {
        padding: 0; } }

@media only screen and (max-width: 736px) {
  .template {
    height: calc(100vh - 144px);
    overflow-y: scroll;
    /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch; }
    .template--project {
      overflow-x: hidden; }
    .template .template__inner {
      height: 100%;
      min-height: 0; }
    .template__header.mobile-scroll-fixed {
      position: fixed;
      left: 0;
      top: 144px;
      width: 100%;
      z-index: 120; }
    .template__header--content .container {
      padding: 30px 42px 22px; }
      .template__header--content .container h2 {
        position: relative;
        width: 100%;
        left: 0;
        top: 0;
        margin-bottom: 0 !important; }
      .template__header--content .container p {
        margin-top: 10px; }
      .template__header--content .container-lightbox--mobile {
        display: none; }
      .template__header--content .container-lightbox h2:before {
        top: 47px;
        left: 0; }
      .template__header--content .container.container-civil {
        padding: 32px 42px 0; }
    .template__header--content .container-contact {
      padding: 30px 41px 46px; }
      .template__header--content .container-contact h2 {
        padding-left: 0 !important; }
    .template__header-lightbox {
      min-height: auto; }
    .template__header-civil {
      padding-bottom: 109px; }
    .template__content {
      display: block;
      padding: 0 13px;
      z-index: 125;
      padding-bottom: 0; }
      .template__content--design {
        padding-bottom: 0;
        padding-top: 80px; }
      .template__content--background {
        top: auto;
        position: fixed; }
        .template__content--background.not-fixed {
          position: absolute; }
      .template__content .align {
        padding-bottom: 0;
        margin-top: 0;
        position: relative;
        top: -90px;
        margin-bottom: -75px; }
        .template__content .align-gallery-mobile {
          margin-top: 0;
          height: 100vh;
          margin-bottom: 0;
          top: 0; }
        .template__content .align-contact {
          margin-top: 0 !important;
          margin-bottom: 54px; }
        .template__content .align-lightbox {
          top: 0; }
      .template__content .container {
        height: auto; }
      .template__content .content {
        padding: 13px 28px;
        height: auto; }
        .template__content .content-project {
          height: auto;
          padding: 0;
          display: block; }
        .template__content .content-lightbox {
          padding: 0; }
      .template__content-non-padding {
        padding: 0; }
      .template__content-civil-mobile {
        display: none; } }

.background-mobile {
  display: none; }
  @media only screen and (max-width: 736px) {
    .background-mobile {
      display: inherit;
      position: relative;
      top: 0;
      z-index: 1; } }

@media only screen and (max-width: 736px) {
  .scroll-add-stills .template__content--background {
    padding-top: 480px; }
    .scroll-add-stills .template__content--background-contact {
      padding-top: 565px; }
  .scroll-add-stills .mobile-hide {
    display: none; }
  .scroll-add-stills .template__content--background img {
    position: relative; } }

.template__content-lightbox .lightbox-gallery {
  width: 100%; }

.template__content-lightbox .lightbox-gallery--videos {
  padding-left: 0;
  margin-left: 0;
  position: relative; }
  @media only screen and (max-width: 1024px) {
    .template__content-lightbox .lightbox-gallery--videos .slideshow__slide a {
      width: 100vw; } }

.template__content--height {
  height: 100vh; }
  @media only screen and (max-width: 736px) {
    .template__content--height {
      height: 100%; } }

.big-screen .template__content {
  padding-top: 0 !important; }

@media only screen and (max-width: 736px) {
  .template__content .content-lightbox {
    padding: 0;
    background: rgba(0, 0, 0, 0.9); } }

@media only screen and (max-width: 736px) {
  .OurPeople .template__content {
    padding-bottom: 0; }
    .OurPeople .template__content .align {
      margin-bottom: -75px; } }

.civil-image-slider {
  position: relative;
  height: auto; }
  @media only screen and (max-width: 1024px) {
    .civil-image-slider {
      height: 100%; } }
  .civil-image-slider .slick-list,
  .civil-image-slider .slick-track {
    height: auto; }
    @media only screen and (max-width: 1024px) {
      .civil-image-slider .slick-list,
      .civil-image-slider .slick-track {
        height: 100%; } }
  .civil-image-slider .slick-list {
    padding: 90px 0; }
    @media only screen and (max-width: 1024px) {
      .civil-image-slider .slick-list {
        padding: 0; } }
  .civil-image-slider .slick-dots {
    bottom: 22px; }
    @media only screen and (max-width: 1440px) {
      .civil-image-slider .slick-dots {
        bottom: 120px; } }
    @media only screen and (max-width: 1024px) {
      .civil-image-slider .slick-dots {
        bottom: 17px; } }

@media only screen and (max-width: 736px) {
  .content-about p {
    margin-bottom: 0; } }

.content-about .articles {
  text-align: center; }
  @media only screen and (max-width: 1024px) {
    .content-about .articles {
      margin: 0 -60px; } }
  @media only screen and (max-width: 768px) {
    .content-about .articles {
      margin: 0 -50px; } }
  @media only screen and (max-width: 736px) {
    .content-about .articles {
      margin: 0 -10px; } }

.content-about .block {
  width: 33.33333%;
  display: inline-block;
  vertical-align: top;
  padding: 10px 20px;
  margin: 0 -2px; }
  @media only screen and (max-width: 1440px) {
    .content-about .block {
      padding: 10px 0 20px; } }
  @media only screen and (max-width: 768px) {
    .content-about .block {
      padding: 5px 15px 0;
      margin-bottom: 26px; } }
  @media only screen and (max-width: 667px) {
    .content-about .block {
      width: 50%; } }
  .content-about .block h3 {
    text-align: center;
    margin: 27px 0 3px; }
    @media only screen and (max-width: 768px) {
      .content-about .block h3 {
        margin-bottom: 16px; } }
    @media only screen and (max-width: 736px) {
      .content-about .block h3 {
        margin-bottom: 0; } }
    .content-about .block h3 img {
      max-width: 100%; }
      @media only screen and (max-width: 1440px) {
        .content-about .block h3 img {
          width: auto;
          max-height: 120px; } }
      @media only screen and (max-width: 736px) {
        .content-about .block h3 img {
          max-height: 90px; } }
  .content-about .block h4 {
    text-align: center;
    color: #9BCF50;
    margin: 0; }
    @media only screen and (max-width: 1440px) {
      .content-about .block h4 {
        margin-top: 11px; } }
    @media only screen and (max-width: 768px) {
      .content-about .block h4 {
        line-height: 21px; } }
    @media only screen and (max-width: 736px) {
      .content-about .block h4 {
        line-height: 24px; } }
    @media only screen and (max-width: 736px) {
      .content-about .block h4 {
        margin-top: 0; } }
  @media only screen and (max-width: 1440px) {
    .content-about .block-our-people {
      padding: 10px 10px 20px; } }
  @media only screen and (max-width: 480px) {
    .content-about .block-our-people {
      width: 100%;
      display: block;
      padding: 23px 28px 16px;
      margin-left: 0;
      margin-bottom: 0; } }
  .content-about .block-our-people h2 {
    text-align: center;
    margin-bottom: 0; }
    @media only screen and (max-width: 768px) {
      .content-about .block-our-people h2 {
        margin: 0 18px; } }
    .content-about .block-our-people h2 img {
      max-width: 100%;
      border: solid 3px #9BCF50;
      border-radius: 50%;
      -moz-border-radius: 50%;
      -webkit-border-radius: 50%; }
      @media only screen and (max-width: 1440px) {
        .content-about .block-our-people h2 img {
          width: 200px; } }
      @media only screen and (max-width: 480px) {
        .content-about .block-our-people h2 img {
          width: 159px; } }
  .content-about .block-our-people h3 {
    margin: 8px 0 0; }
    @media only screen and (max-width: 1440px) {
      .content-about .block-our-people h3 {
        margin: 11px 0 0; } }
    @media only screen and (max-width: 480px) {
      .content-about .block-our-people h3 {
        margin: 8px 0 0; } }
  .content-about .block-our-people h4 {
    color: #4A4A4A; }
    @media only screen and (max-width: 1440px) {
      .content-about .block-our-people h4 {
        margin-top: 0; } }
    @media only screen and (max-width: 768px) {
      .content-about .block-our-people h4 {
        margin-top: 0;
        margin-bottom: 18px; } }
  .content-about .block-our-people p {
    color: #4A4A4A;
    padding: 5px 17px; }
    @media only screen and (max-width: 1440px) {
      .content-about .block-our-people p {
        padding: 5px 4px; } }
    @media only screen and (max-width: 768px) {
      .content-about .block-our-people p {
        text-align: center;
        padding: 5px 0px; } }

@media only screen and (max-width: 768px) {
  .content-our-people .articles {
    margin: 0; } }

.project {
  width: 100%;
  float: left;
  background: #F6F6F6; }
  @media only screen and (max-width: 768px) {
    .project:first-child {
      padding: 0; } }
  @media only screen and (max-width: 768px) {
    .project:last-child {
      padding: 0; } }
  .project a {
    display: flex;
    flex-flow: column;
    align-items: stretch;
    flex: 1 1 auto;
    background: transparent;
    position: relative;
    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms; }
    .project a:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      background: rgba(155, 207, 80, 0.8);
      opacity: 0;
      z-index: 0;
      -webkit-transition: opacity 200ms;
      -moz-transition: opacity 200ms;
      -ms-transition: opacity 200ms;
      -o-transition: opacity 200ms;
      transition: opacity 200ms; }
    .project a:hover {
      background: rgba(155, 207, 80, 0.8);
      z-index: 100; }
      .project a:hover:before {
        opacity: 1; }
      .project a:hover p {
        opacity: 1; }
    .project a h2 {
      border-bottom: solid 7px #9BCF50;
      line-height: 0;
      font-size: 0; }
      .project a h2 img {
        max-width: 100%;
        width: 100%; }
    .project a p {
      position: absolute;
      top: 50%;
      width: 100%;
      text-align: center;
      color: #FFFFFF;
      opacity: 0;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%); }
  .project__background {
    background: #F6F6F6;
    padding: 14px 50px 20px; }
    @media only screen and (max-width: 736px) {
      .project__background {
        padding: 6px 35px 20px; } }
    .project__background h3 {
      margin: 0; }
    .project__background h4 {
      margin: 0;
      color: #4A4A4A;
      letter-spacing: -0.01em; }

.contact-popup-page {
  position: fixed;
  width: 100vw;
  height: 100%;
  left: 0;
  top: 0;
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: all .2s;
  transition: all .2s;
  background: #000000; }
  @media only screen and (max-width: 736px) {
    .contact-popup-page {
      position: fixed;
      width: 100vw;
      height: 100vh;
      left: 0;
      top: 0; } }
  .contact-popup-page.active {
    display: block;
    position: fixed;
    width: 100vw;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 990;
    overflow: hidden;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0); }
    @media only screen and (max-width: 736px) {
      .contact-popup-page.active {
        position: fixed;
        width: 100vw;
        height: 100vh;
        left: 0;
        top: 0; } }

.content-popup-gallery {
  position: relative;
  right: 0;
  width: 66.66667%;
  overflow: hidden;
  display: none; }
  @media only screen and (max-width: 1440px) {
    .content-popup-gallery {
      padding: 0 0 0 25px;
      width: 75%; } }
  @media only screen and (max-width: 1024px) {
    .content-popup-gallery {
      width: 100%;
      padding: 0; } }
  @media only screen and (max-width: 768px) {
    .content-popup-gallery {
      margin-right: 0;
      width: 100%;
      padding: 0 0 78px; } }
  @media only screen and (max-width: 736px) {
    .content-popup-gallery {
      padding-bottom: 0; } }
  .content-popup-gallery.active {
    display: inherit; }

.content-popup-gallery-image {
  position: relative;
  right: 0;
  width: 66.66667%;
  overflow: hidden; }
  @media only screen and (max-width: 1440px) {
    .content-popup-gallery-image {
      padding: 0 0 0 25px;
      width: 75%; } }
  @media only screen and (max-width: 768px) {
    .content-popup-gallery-image {
      margin-right: 0;
      width: 100%;
      padding: 0 0 78px; } }
  @media only screen and (max-width: 736px) {
    .content-popup-gallery-image {
      padding-bottom: 0; } }

.close-image .content-popup-gallery-image {
  display: none; }

.open-image .content-popup-gallery-image {
  display: inherit; }

.open-image .content-popup-gallery {
  display: none; }

.wrapper-project {
  width: 100%;
  overflow: hidden; }

.category {
  width: 28%;
  float: left;
  margin: 0; }
  @media only screen and (max-width: 1440px) {
    .category {
      width: 25%; }
      .category:nth-child(3) {
        width: 37.5%;
        padding-left: 9px; }
      .category:last-child {
        width: 37.5%;
        padding-left: 17px; } }
  @media only screen and (max-width: 1200px) {
    .category {
      width: 50%; }
      .category:nth-child(3) {
        width: 50%;
        padding: 0; }
      .category:last-child {
        width: 100%;
        padding: 0;
        margin-bottom: 20px; } }
  @media only screen and (max-width: 992px) {
    .category:last-child {
      width: 100%; } }
  @media only screen and (max-width: 768px) {
    .category {
      width: 50%;
      padding-top: 19px;
      float: left;
      padding-right: 15px; }
      .category:nth-child(3) {
        clear: both;
        padding-top: 0; }
      .category:nth-child(4) {
        position: absolute;
        width: 33.33333%;
        right: 0;
        padding-right: 0;
        padding-left: 15px; }
      .category:last-child {
        margin-bottom: 0;
        position: relative;
        padding-top: 58px; } }
  @media only screen and (max-width: 736px) {
    .category {
      width: 100%;
      padding-top: 15px;
      padding-left: 31px;
      padding-right: 0; }
      .category:nth-child(3) {
        width: 100%;
        padding-left: 31px; }
      .category:nth-child(4) {
        position: relative;
        width: 100%;
        padding-top: 0;
        padding-left: 31px; }
      .category:last-child {
        width: 100%;
        margin-bottom: 0;
        position: relative;
        right: 0;
        top: 0;
        padding-left: 31px; } }
  @media only screen and (max-width: 1440px) {
    .category-title {
      text-transform: capitalize;
      margin-bottom: 17px !important; } }
  .category li {
    margin-bottom: 2px; }
    @media only screen and (max-width: 1440px) {
      .category li {
        margin-top: 0;
        margin-bottom: -6px; } }
    @media only screen and (max-width: 736px) {
      .category li {
        margin-bottom: 2px; } }
    .category li a {
      letter-spacing: -0.02em; }
      @media only screen and (max-width: 1440px) {
        .category li a {
          font-size: 16px;
          line-height: 22px;
          letter-spacing: 0; } }
      .category li a:after {
        content: ' \2192   ';
        position: relative;
        right: -11px;
        color: #FFFFFF;
        -webkit-transition: all 200ms;
        -moz-transition: all 200ms;
        -ms-transition: all 200ms;
        -o-transition: all 200ms;
        transition: all 200ms; }
        @media only screen and (max-width: 768px) {
          .category li a:after {
            right: -6px; } }
      .category li a:hover, .category li a.active {
        color: #000000;
        padding: 1px 0; }
        .category li a:hover:after, .category li a.active:after {
          color: #000000; }
  .category--M-and-P {
    width: 100% !important; }

.category-content {
  width: 40%;
  float: left;
  padding: 40px 50px; }
  @media only screen and (max-width: 1024px) {
    .category-content.full-width-tablet {
      width: 100%;
      float: none; } }
  @media only screen and (max-width: 768px) {
    .category-content {
      width: 100%;
      float: none; } }
  @media only screen and (max-width: 736px) {
    .category-content {
      padding: 18px 29px; }
      .category-content.title-only {
        padding: 0; } }
  .category-content h4 {
    color: #9BCF50;
    margin-bottom: 0;
    letter-spacing: 0; }
  .category-content p {
    color: #4A4A4A;
    margin-bottom: 0; }
    @media only screen and (max-width: 1440px) {
      .category-content p {
        margin-top: 7px; } }
  .category-content ul {
    padding: 0 27px;
    margin: 0; }
    @media only screen and (max-width: 1440px) {
      .category-content ul {
        margin-top: -13px;
        margin-bottom: 13px; } }
    .category-content ul li {
      list-style: inherit;
      list-style-type: inherit;
      color: #4A4A4A;
      padding-top: 8px; }
      @media only screen and (max-width: 1440px) {
        .category-content ul li {
          padding-top: 0;
          margin-top: -5px; }
          .category-content ul li:first-child {
            padding-top: 8px; } }
      .category-content ul li ul {
        padding-left: 17px; }
        .category-content ul li ul li {
          list-style: none;
          list-style-type: none;
          padding: 7px 0 0; }
          @media only screen and (max-width: 1440px) {
            .category-content ul li ul li {
              padding: 0;
              margin-top: -5px; }
              .category-content ul li ul li:first-child {
                padding-top: 7px; } }
          .category-content ul li ul li:before {
            content: ' - ';
            position: relative;
            top: 0;
            left: -16px; }
  @media only screen and (max-width: 736px) {
    .category-content-civil h4 {
      display: none; } }
  .category-content-civil ul {
    padding: 7px 27px; }
    @media only screen and (max-width: 1440px) {
      .category-content-civil ul {
        margin-top: 0; } }

.category-image {
  width: 60%;
  float: right;
  position: absolute;
  height: 100%;
  right: 0;
  top: 0;
  overflow: hidden;
  font-size: 0;
  line-height: 0; }
  @media only screen and (max-width: 1024px) {
    .category-image.full-width-tablet {
      width: 100%;
      float: none;
      position: relative;
      height: auto;
      top: auto; }
      .category-image.full-width-tablet img {
        position: relative;
        top: auto;
        width: 100%;
        height: auto;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0); } }
  @media only screen and (max-width: 768px) {
    .category-image {
      width: 100%;
      float: none;
      position: relative; } }
  .category-image img {
    height: auto; }
    @media only screen and (max-width: 1440px) {
      .category-image img {
        min-width: 100%; } }

.link-popUp-mobile {
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: all .3s;
  transition: all .3s;
  top: 144px;
  z-index: 10000;
  position: fixed;
  height: auto;
  opacity: 0;
  visibility: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; }
  @media only screen and (max-width: 1024px) {
    .link-popUp-mobile {
      -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 736px) {
    .link-popUp-mobile.active {
      -webkit-transform: translateX(0);
      -moz-transform: translateX(0);
      -ms-transform: translateX(0);
      -o-transform: translateX(0);
      transform: translateX(0);
      -webkit-transition: all .3s;
      transition: all .3s;
      top: 144px;
      position: fixed;
      height: 100%;
      overflow: auto;
      z-index: 10000;
      padding-top: 0;
      padding-bottom: 144px;
      opacity: 1;
      visibility: inherit; } }
  .link-popUp-mobile--close {
    position: absolute;
    top: 29px;
    right: 18px;
    z-index: 99999; }
    .link-popUp-mobile--close a {
      display: inline-block; }
      .link-popUp-mobile--close a svg {
        width: 20px; }
      .link-popUp-mobile--close a svg:hover #close {
        fill: #000000;
        -webkit-transition: all 200ms;
        -moz-transition: all 200ms;
        -ms-transition: all 200ms;
        -o-transition: all 200ms;
        transition: all 200ms; }

.contact {
  text-align: center; }
  .contact h2 {
    text-align: left;
    margin-bottom: 7px !important;
    letter-spacing: 0; }
  .contact .contacts-row {
    display: flex;
    justify-content: space-between; }
    @media only screen and (max-width: 768px) {
      .contact .contacts-row {
        flex-wrap: wrap; } }
  .contact a, .contact--links,
  .contact .contact-address {
    padding: 0 8px; }
    @media only screen and (min-width: 769px) {
      .contact a, .contact--links,
      .contact .contact-address {
        max-width: 30%; } }
    @media only screen and (max-width: 768px) {
      .contact a, .contact--links,
      .contact .contact-address {
        width: 50%; } }
  .contact a,
  .contact .contact-address {
    white-space: nowrap; }
    @media only screen and (max-width: 768px) {
      .contact a,
      .contact .contact-address {
        margin-top: 25px;
        padding: 0 10px; } }
    @media only screen and (max-width: 736px) {
      .contact a,
      .contact .contact-address {
        margin-top: 17px; } }
  .contact a:hover {
    color: #000000; }
    .contact a:hover h3 img {
      transform: scale(1.2);
      -ms-transform: scale(1.2);
      -webkit-transform: scale(1.2);
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    .contact a:hover h3 svg #color {
      stroke: #000000;
      -webkit-transition: all 200ms;
      -moz-transition: all 200ms;
      -ms-transition: all 200ms;
      -o-transition: all 200ms;
      transition: all 200ms; }
    .contact a:hover h3 svg #color-fill {
      fill: #000000;
      -webkit-transition: all 200ms;
      -moz-transition: all 200ms;
      -ms-transition: all 200ms;
      -o-transition: all 200ms;
      transition: all 200ms; }
  .contact .contact-links h3 {
    margin-bottom: 11px; }
    @media only screen and (max-width: 1440px) {
      .contact .contact-links h3 {
        margin: 0; } }
    @media only screen and (max-width: 1440px) {
      .contact .contact-links h3 svg,
      .contact .contact-links h3 img {
        width: 45px; } }
    .contact .contact-links h3 img {
      -webkit-filter: grayscale(0%);
      filter: grayscale(0%);
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      -ms-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
  .contact .contact-links h4 {
    white-space: initial;
    margin: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    @media only screen and (max-width: 1440px) {
      .contact .contact-links h4 {
        font-size: 16px;
        line-height: 22px; } }
  .contact .contact-address h4 {
    color: #FFFFFF; }
  @media only screen and (max-width: 1440px) {
    .contact--links-location {
      padding: 0 22px; }
      .contact--links-location h4 br {
        display: none; } }
  @media only screen and (max-width: 768px) {
    .contact--links {
      margin-top: 25px;
      padding: 0 10px; } }
  .contact--links h3 {
    margin-bottom: 11px; }
    @media only screen and (max-width: 1440px) {
      .contact--links h3 {
        margin: 0; } }
    .contact--links h3 img {
      max-width: 100%; }
      @media only screen and (max-width: 1440px) {
        .contact--links h3 img {
          height: 40px; } }
  .contact--links h4 {
    color: #FFFFFF;
    margin: 0; }
    @media only screen and (max-width: 1440px) {
      .contact--links h4 {
        font-size: 16px;
        line-height: 22px; } }

.our-team {
  width: 41.66667%;
  width: 42.66%;
  padding: 60px 10px 26px 8.33333%; }
  @media only screen and (max-width: 1440px) {
    .our-team {
      padding: 20px 10px 190px 38px; } }
  @media only screen and (max-width: 1300px) {
    .our-team {
      padding: 20px 50px; } }
  @media only screen and (max-width: 992px) {
    .our-team {
      padding: 20px 20px; } }
  @media only screen and (max-width: 768px) {
    .our-team {
      width: 100%;
      background: #141414;
      overflow: hidden;
      padding: 20px 16px 26px; } }
  @media only screen and (max-width: 736px) {
    .our-team {
      padding: 20px 100px 26px; } }
  @media only screen and (max-width: 736px) {
    .our-team {
      padding: 19px 49px 0; } }
  .our-team h2 {
    margin: 0; }
    @media only screen and (max-width: 1440px) {
      .our-team h2 {
        padding-left: 65px;
        margin-top: 25px;
        margin-bottom: 17px; } }
    @media only screen and (max-width: 1300px) {
      .our-team h2 {
        padding-left: 0; } }
    @media only screen and (max-width: 992px) {
      .our-team h2 {
        font-size: 24px; } }
    @media only screen and (max-width: 768px) {
      .our-team h2 {
        line-height: 36px;
        text-align: center;
        margin: 11px 0 15px; } }
    @media only screen and (max-width: 736px) {
      .our-team h2 {
        margin: 11px 0 10px; } }
  .our-team__block {
    overflow: hidden;
    padding: 29px 0 11px; }
    @media only screen and (max-width: 1440px) {
      .our-team__block {
        padding: 8px 0; } }
    @media only screen and (max-width: 1300px) {
      .our-team__block {
        padding: 0; } }
    @media only screen and (max-width: 768px) {
      .our-team__block {
        width: 33.33333% !important;
        float: left; } }
    @media only screen and (max-width: 736px) {
      .our-team__block {
        width: 100% !important;
        float: none;
        margin-bottom: 30px; } }
    @media only screen and (max-width: 736px) {
      .our-team__block {
        margin-bottom: 18px; } }
    .our-team__block--members {
      width: 41%;
      float: left; }
      @media only screen and (max-width: 1440px) {
        .our-team__block--members {
          width: 50%;
          display: flex;
          align-items: center;
          margin-top: 0; } }
      @media only screen and (max-width: 1300px) {
        .our-team__block--members {
          width: 100%;
          display: block;
          margin: 20px 0 30px; } }
      @media only screen and (max-width: 768px) {
        .our-team__block--members {
          margin: 20px 0 10px; } }
      @media only screen and (max-width: 1440px) {
        .our-team__block--members .row {
          padding-left: 10px;
          margin-top: -9px; } }
      .our-team__block--members h2 {
        margin: 0 0 3px; }
        @media only screen and (max-width: 1440px) {
          .our-team__block--members h2 {
            padding-left: 0; } }
        @media only screen and (max-width: 768px) {
          .our-team__block--members h2 {
            display: none; } }
        .our-team__block--members h2 img {
          width: 55px;
          border: solid 2px #9BCF50;
          border-radius: 50%;
          -moz-border-radius: 50%;
          -webkit-border-radius: 50%; }
      .our-team__block--members h3 {
        margin: 0; }
      .our-team__block--members h4 {
        color: #9BCF50;
        margin: 0; }
      .our-team__block--members--position {
        color: #FFFFFF !important;
        margin: 0; }
    .our-team__block--details {
      width: 59%;
      float: left;
      border-left: solid 1px #E9E9E9;
      padding-left: 28px;
      margin-top: 23px; }
      @media only screen and (max-width: 1440px) {
        .our-team__block--details {
          width: 50%;
          margin-top: 0; } }
      @media only screen and (max-width: 1300px) {
        .our-team__block--details {
          width: 100%;
          border-left: none;
          padding-left: 0;
          border-bottom: solid 1px #E9E9E9;
          padding-bottom: 20px; } }
      @media only screen and (max-width: 768px) {
        .our-team__block--details {
          border-bottom: none;
          padding: 0 0 0 11px; } }
      .our-team__block--details span {
        display: inherit;
        position: relative;
        padding-left: 20px; }
        .our-team__block--details span .image {
          position: absolute;
          left: 0;
          top: 0;
          margin: 0;
          padding: 0;
          width: 20px;
          height: 30px;
          display: flex;
          align-items: center; }
        .our-team__block--details span a {
          word-break: break-word; }
        @media only screen and (max-width: 1440px) {
          .our-team__block--details span {
            display: inline-flex;
            margin-top: -8px; }
            .our-team__block--details span:first-child {
              margin-top: 0; } }
        @media only screen and (max-width: 1300px) {
          .our-team__block--details span {
            display: inherit;
            margin-top: 0; } }
        .our-team__block--details span a {
          display: inline-block;
          margin: 0 12px;
          font-size: 16px;
          line-height: 30px; }

.contact-form {
  width: 58.33333%;
  padding: 60px 103px 60px 109px;
  width: 57.34%;
  padding: 60px 8.33333%; }
  @media only screen and (max-width: 1440px) {
    .contact-form {
      padding: 0 103px 68px 109px; } }
  @media only screen and (max-width: 992px) {
    .contact-form {
      padding: 20px 20px; } }
  @media only screen and (max-width: 768px) {
    .contact-form {
      width: 100%;
      padding: 29px 100px; } }
  @media only screen and (max-width: 736px) {
    .contact-form {
      padding: 29px 30px; } }
  .contact-form h2 {
    color: #9BCF50;
    margin: 2px 0 24px; }
    @media only screen and (max-width: 768px) {
      .contact-form h2 {
        font-size: 24px; } }
    @media only screen and (max-width: 736px) {
      .contact-form h2 {
        margin: 2px 0 21px;
        letter-spacing: 0; } }

.lightbox-content {
  width: 66.66667%;
  float: left;
  padding: 7px 11px; }
  @media only screen and (max-width: 1440px) {
    .lightbox-content {
      padding: 7px 0 0 25px;
      width: 75%; } }
  @media only screen and (max-width: 768px) {
    .lightbox-content {
      width: auto;
      float: none;
      padding: 7px 11px; } }
  @media only screen and (max-width: 736px) {
    .lightbox-content {
      overflow: hidden;
      margin-top: 68px;
      margin-bottom: 0;
      padding: 0; } }
  .lightbox-content h4 {
    color: #9BCF50;
    margin: 0; }
    .lightbox-content h4 span {
      margin-right: 15px;
      line-height: 0;
      font-size: 0;
      display: inline-block;
      position: relative;
      top: 3px; }
    .lightbox-content h4:first-child {
      margin-bottom: 15px; }
    .lightbox-content h4:nth-child(2) {
      margin-bottom: 20px; }
  .lightbox-content p {
    font-size: 16px !important; }
    @media only screen and (max-width: 736px) {
      .lightbox-content p {
        display: none; } }
  .lightbox-content-gallery-popup {
    padding: 7px 4px; }
    @media only screen and (max-width: 1440px) {
      .lightbox-content-gallery-popup {
        padding: 6px 24px; } }

.lightbox-close {
  position: absolute;
  top: 108px;
  right: 191px;
  display: inline-block;
  z-index: 999999;
  cursor: pointer;
  line-height: 0;
  font-size: 0; }
  @media only screen and (max-width: 1440px) {
    .lightbox-close {
      top: 54px;
      right: 120px; } }
  @media only screen and (max-width: 768px) {
    .lightbox-close {
      top: 54px;
      right: 45px; } }
  @media only screen and (max-width: 736px) {
    .lightbox-close {
      top: 45px;
      right: 13px; } }
  @media only screen and (max-width: 736px) {
    .lightbox-close-mobile {
      position: relative;
      display: block;
      text-align: right;
      margin-right: 13px; } }
  .lightbox-close a {
    display: inline-block; }
    @media only screen and (max-width: 768px) {
      .lightbox-close a svg {
        width: 24px; } }
    .lightbox-close a svg:hover #close {
      fill: #9BCF50;
      -webkit-transition: all 200ms;
      -moz-transition: all 200ms;
      -ms-transition: all 200ms;
      -o-transition: all 200ms;
      transition: all 200ms; }
  .lightbox-close-gallery {
    right: 13px; }
    .lightbox-close-gallery a svg:hover #close {
      fill: #9BCF50;
      -webkit-transition: all 200ms;
      -moz-transition: all 200ms;
      -ms-transition: all 200ms;
      -o-transition: all 200ms;
      transition: all 200ms; }
    .lightbox-close-gallery-mobile {
      display: none; }
      @media only screen and (max-width: 736px) {
        .lightbox-close-gallery-mobile {
          display: inherit;
          position: fixed; } }

.lightbox-category {
  width: 33.33333%;
  float: left;
  padding: 13px 0 0 17.5%;
  position: relative;
  z-index: 999999; }
  @media only screen and (max-width: 1440px) {
    .lightbox-category {
      width: 16.66667%;
      padding: 0;
      margin: 0; } }
  @media only screen and (max-width: 768px) {
    .lightbox-category {
      float: none;
      width: 100%;
      padding-left: 222px; }
      .lightbox-category li {
        display: inline-block;
        margin-right: 80px; }
        .lightbox-category li:last-child {
          margin-right: 0; } }
  @media only screen and (max-width: 736px) {
    .lightbox-category {
      display: none; } }
  .lightbox-category-details-mobile {
    display: none; }
    @media only screen and (max-width: 736px) {
      .lightbox-category-details-mobile {
        display: inherit; }
        .lightbox-category-details-mobile p {
          color: #FFFFFF;
          padding: 0 42px 30px; } }
  .lightbox-category-mobile {
    display: none; }
    @media only screen and (max-width: 736px) {
      .lightbox-category-mobile {
        display: inherit;
        padding: 20px 42px 19px; }
        .lightbox-category-mobile li {
          margin: 0; }
          .lightbox-category-mobile li:first-child {
            margin-bottom: 0 !important; }
            .lightbox-category-mobile li:first-child a {
              margin-left: 0;
              margin-right: 24px; } }
  .lightbox-category li a {
    display: inherit; }
    .lightbox-category li a span {
      margin-right: 9px; }
    .lightbox-category li a:hover, .lightbox-category li a.active {
      color: #9BCF50; }
      .lightbox-category li a:hover span svg #gallery-icon, .lightbox-category li a.active span svg #gallery-icon {
        fill: #9BCF50;
        -webkit-transition: all 200ms;
        -moz-transition: all 200ms;
        -ms-transition: all 200ms;
        -o-transition: all 200ms;
        transition: all 200ms; }
  .lightbox-category li:first-child {
    margin-bottom: 30px; }

.lightbox-gallery {
  width: 100%;
  float: left;
  position: relative;
  padding-left: 10px; }
  .lightbox-gallery--arrows {
    width: 100%;
    right: 0;
    position: absolute;
    top: 50%;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms; }
    .lightbox-gallery--arrows .slick-prev {
      left: 10px;
      margin-top: -4px; }
    .lightbox-gallery--arrows .slick-next {
      right: 0;
      margin-top: -4px; }
    .lightbox-gallery--arrows-image {
      width: 100%; }
    .lightbox-gallery--arrows-videos {
      width: 66.66667%;
      margin-top: -80px; }
  .lightbox-gallery--videos {
    padding-left: 11px;
    position: absolute;
    right: 0;
    width: 66.66667%;
    max-height: 444px; }
    @media only screen and (max-width: 1440px) {
      .lightbox-gallery--videos {
        width: 66.66667%;
        margin-left: 25%;
        left: 0; } }
    @media only screen and (max-width: 1024px) {
      .lightbox-gallery--videos {
        margin-left: 16.66667%; } }
    @media only screen and (max-width: 768px) {
      .lightbox-gallery--videos {
        position: relative;
        right: 0;
        float: none;
        width: 100%;
        padding: 0;
        margin-left: 0; } }
  .lightbox-gallery-image {
    width: 100%;
    padding: 0;
    max-height: 444px; }
    @media only screen and (max-width: 1440px) {
      .lightbox-gallery-image {
        width: 88.88889%; } }
    @media only screen and (max-width: 768px) {
      .lightbox-gallery-image {
        width: 100%; } }

.gallery-popup {
  padding: 0;
  width: 100%;
  float: none; }
  .gallery-popup--arrows {
    width: 100%; }
    .gallery-popup--arrows .slick-prev {
      left: 0; }
  @media only screen and (max-width: 736px) {
    .gallery-popup-zoom {
      position: absolute;
      top: 50%;
      right: 0;
      width: 100%;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%); }
      .gallery-popup-zoom .slick-arrow {
        display: none !important; } }

.contact-popup-gallery {
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: all .2s;
  transition: all .2s;
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0; }
  @media only screen and (max-width: 736px) {
    .contact-popup-gallery {
      position: fixed;
      width: 100vw;
      height: 100vh;
      left: 0;
      top: 0; } }
  .contact-popup-gallery.active {
    display: block;
    position: fixed;
    width: 100vw;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 990;
    overflow: hidden;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0); }
    @media only screen and (max-width: 736px) {
      .contact-popup-gallery.active {
        position: fixed;
        width: 100vw;
        height: 100vh;
        left: 0;
        top: 0; } }

.contact-popup-inner {
  height: 100vh;
  overflow: auto; }
  @media only screen and (max-width: 1024px) {
    .contact-popup-inner {
      -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 736px) {
    .contact-popup-inner {
      overflow-x: hidden;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 1024px) {
    .contact-popup-inner .template .template__inner {
      -webkit-overflow-scrolling: touch; } }
  @media only screen and (min-width: 737px) {
    .contact-popup-inner .template {
      height: auto; } }
  @media only screen and (max-width: 736px) {
    .contact-popup-inner .template {
      top: 120px; }
      .contact-popup-inner .template .template__inner {
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch; } }
  @media only screen and (max-width: 736px) {
    .contact-popup-inner .template--zoom {
      top: 0; }
      .contact-popup-inner .template--zoom .template__content .container {
        height: 100vh; } }
