/* Eric Meyer's CSS Reset
   http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
   This is a Sass partial
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

a {
  text-decoration: none;
  color: #000000; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none;
  margin: 0; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*--------------------------------------------------------------
Mixins
--------------------------------------------------------------*/
/*--------------------------------------------------------------
Functions
--------------------------------------------------------------*/
@font-face {
  font-family: 'Freight';
  src: url("fonts/Freight-Book.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: auto; }

@font-face {
  font-family: 'Freight';
  src: url("fonts/Freight-BookItalic.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: auto; }

@font-face {
  font-family: 'Moderat';
  src: url("fonts/Moderat-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: auto; }

@font-face {
  font-family: 'Moderat';
  src: url("fonts/Moderat-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: auto; }

@font-face {
  font-family: 'Moderat';
  src: url("fonts/Moderat-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: auto; }

/**
 * Set up a decent box model on the root element
 */
html {
  box-sizing: border-box; }

html,
body {
  width: 100%;
  position: relative;
  font-family: Arial, Helvetica, sans-serif; }

/**
 * Makes all elements from the DOM inherit from the parent box-sizing
 * Since `*` has a specificity of 0, it does not override the `html` value
 * making all elements inheriting from the root box-sizing value
 * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
*,
::before,
::after {
  box-sizing: inherit; }

body {
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overscroll-behavior-y: none; }

.container, .small-container, .blogSingle__container, .blogSingle__contentContainer, .clients__types, .contact, .gallery__container, .heroImage__container, .passwordForm__container, .projectDetails, .projectTitleText, .sideBySide__container, .smaller-container, .agencyDescription__container, .agencyHero__container, .agencyVideo, .gg, .buttonToComponent, .clients, .footer__upperContainer, .footer__lowerContainer, .footer__mobileSocialsContainer, .header__container, .jobs__container, .panorama, .video .videoPlayer, .video__vimeoWrapper {
  margin: auto;
  max-width: 1400px;
  width: 90%; }

.small-container, .blogSingle__container, .blogSingle__contentContainer, .clients__types, .contact, .gallery__container, .heroImage__container, .passwordForm__container, .projectDetails, .projectTitleText, .sideBySide__container {
  max-width: calc(100vw / 24 * 18); }
  @media (max-width: 767px) {
    .small-container, .blogSingle__container, .blogSingle__contentContainer, .clients__types, .contact, .gallery__container, .heroImage__container, .passwordForm__container, .projectDetails, .projectTitleText, .sideBySide__container {
      max-width: calc(100vw / 24 * 22); } }

.smaller-container, .agencyDescription__container, .agencyHero__container, .agencyVideo, .gg {
  max-width: calc(100vw / 24 * 16); }
  @media (max-width: 767px) {
    .smaller-container, .agencyDescription__container, .agencyHero__container, .agencyVideo, .gg {
      max-width: calc(100vw / 24 * 22); } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .smaller-container, .agencyDescription__container, .agencyHero__container, .agencyVideo, .gg {
      max-width: calc(100vw / 19 * 15); } }

.scroll-locked {
  overflow: hidden; }

@media (max-width: 767px) {
  .barba-container section:nth-child(2) {
    margin-top: 90px; } }

.grecaptcha-badge {
  display: none !important; }

.title-1, .projectDetails__title {
  font-family: "Freight";
  font-size: 3.75rem;
  margin-bottom: 0.3125rem; }

.title-2, .nextProject h2, .passwordForm__title {
  font-family: "Freight", serif;
  font-size: 2.375rem;
  line-height: 3.1875rem; }
  @media (max-width: 767px) {
    .title-2, .nextProject h2, .passwordForm__title {
      font-size: 1.4375rem;
      line-height: 1.6875rem; } }

.title-3, .gallery .galleryElement__title, .navigation__menu a > div {
  font-family: "Freight", serif;
  font-size: 1.875rem;
  letter-spacing: 0.06062rem;
  line-height: 3.125rem; }

.services-headlines, .services__headlines {
  font-family: "Moderat", serif;
  font-size: 9.05vw;
  font-weight: 100;
  letter-spacing: -0.5vw;
  line-height: 117%; }

i {
  font-family: "Freight", serif;
  font-style: italic; }

.moderat-light, .gg__text, .modal__text {
  font-family: "Moderat", serif;
  font-weight: 300; }

.moderat-regular, .agencySlider__controls span, .header .header__burgerMenu > span, .header__rightContainer > a, .introText__projectsTypes, .navigation__lang, .slider span, .slider__nav .only-mobile span {
  font-family: "Moderat", serif; }

/*! Flickity v2.0.5
http://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative; }

.flickity-enabled:focus {
  outline: 0; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%; }

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%; }

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: #fff;
  background: rgba(255, 255, 255, 0.75);
  cursor: pointer;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.flickity-prev-next-button:hover {
  background: #fff; }

.flickity-prev-next-button:focus {
  outline: 0;
  box-shadow: 0 0 0 5px #09f; }

.flickity-prev-next-button:active {
  opacity: 0.6; }

.flickity-prev-next-button.previous {
  left: 10px; }

.flickity-prev-next-button.next {
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px; }

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px; }

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto; }

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%; }

.flickity-prev-next-button .arrow {
  fill: #333; }

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }

.flickity-rtl .flickity-page-dots {
  direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer; }

.flickity-page-dots .dot.is-selected {
  opacity: 1; }

.customCta {
  background: transparent;
  border: none;
  cursor: pointer;
  display: inline-block;
  font-family: "Moderat", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  outline: none;
  padding: 20px 20px 20px 65px;
  position: relative;
  text-decoration: none; }
  .customCta::after, .customCta::before {
    background-color: #000000;
    content: '';
    display: block;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    width: 45px; }
  .customCta::after {
    transform: scaleX(0);
    transform-origin: 0% 0%;
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1); }
  .customCta::before {
    transform: scaleX(1);
    transform-origin: 100% 100%;
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.3s; }
  @media (max-width: 767px) {
    .customCta {
      border-bottom: 1px solid black;
      padding: 0 0 6px; }
      .customCta::before {
        display: none; }
      .customCta::after {
        display: none; } }
  .customCta__inner {
    color: transparent;
    display: block;
    overflow: hidden;
    position: relative; }
    .customCta__inner::after, .customCta__inner::before {
      content: attr(data-text);
      color: #000000;
      display: block;
      position: absolute;
      text-indent: initial;
      top: 0; }
    .customCta__inner::after {
      transform: translateY(-100%);
      transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1); }
    .customCta__inner::before {
      transform: translateY(0%);
      transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.3s; }
  .customCta--light {
    color: #ffffff; }
    .customCta--light::before, .customCta--light::after {
      background-color: #ffffff; }
    .customCta--light .customCta__inner::before, .customCta--light .customCta__inner::after {
      color: #ffffff; }
  .customCta:hover::after {
    transform: scaleX(1);
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.3s; }
  .customCta:hover::before {
    transform: scaleX(0);
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1); }
  .customCta:hover .customCta__inner::after {
    transform: translateY(0%);
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.3s; }
  .customCta:hover .customCta__inner::before {
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1); }

.frame {
  position: relative; }
  .frame img {
    top: 0;
    left: 0;
    display: block;
    position: absolute;
    width: 100%; }

.movingArrow {
  display: block;
  position: relative;
  height: 65px;
  width: 25px; }
  .movingArrow--reverse {
    transform: rotate(180deg); }

.parallaxBlock {
  overflow: hidden;
  position: relative;
  margin: auto; }
  .parallaxBlock__content {
    height: 110%;
    object-fit: cover;
    position: relative;
    top: -5%;
    width: 100%; }

.videoPlayer {
  position: relative; }
  .videoPlayer__cover {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 2; }
  .videoPlayer__coverInner {
    width: 100%;
    height: 100%; }
  .videoPlayer__coverButton {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: transparent;
    border: none;
    border-radius: 50%;
    box-shadow: none;
    cursor: pointer;
    font-family: "Moderat", sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    height: 150px;
    letter-spacing: 0.09125rem;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    width: 150px; }
    .videoPlayer__coverButton::before {
      background-color: #ffffff;
      border-radius: 50%;
      content: '';
      display: block;
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      transform: scale(1);
      transition: transform 0.1s ease-in-out;
      width: 100%; }
    @media (max-width: 767px) {
      .videoPlayer__coverButton {
        font-size: 0.75rem;
        height: 100px;
        width: 100px; } }
    .videoPlayer__coverButton:hover::before {
      transform: scale(1.15); }
    .videoPlayer__coverButton:hover .videoPlayer__coverButtonInner::after {
      transform: translateY(0%);
      transition: transform 0.1s ease-in-out 0.1s; }
    .videoPlayer__coverButton:hover .videoPlayer__coverButtonInner::before {
      transform: translateY(100%);
      transition: transform 0.1s ease-in-out; }
  .videoPlayer__coverButtonInner {
    color: transparent;
    display: block;
    overflow: hidden;
    position: relative; }
    .videoPlayer__coverButtonInner::after, .videoPlayer__coverButtonInner::before {
      content: attr(data-text);
      display: block;
      position: absolute;
      text-align: center;
      top: 0;
      width: 100%; }
    .videoPlayer__coverButtonInner::after {
      color: #f2c145;
      transform: translateY(-100%);
      transition: transform 0.1s ease-in-out; }
    .videoPlayer__coverButtonInner::before {
      color: #000000;
      transform: translateY(0%);
      transition: transform 0.1s ease-in-out 0.1s; }
  .videoPlayer__videoContainer {
    font-size: 0;
    position: relative;
    width: 100%; }
  .videoPlayer__video {
    width: 100% !important;
    height: auto !important; }
    .videoPlayer__video::-webkit-media-controls {
      display: none !important; }
    .videoPlayer__video:-moz-full-screen + .videoPlayer__controls {
      z-index: 2147483647; }
    .videoPlayer__video:-webkit-full-screen + .videoPlayer__controls {
      z-index: 2147483647; }
    .videoPlayer__video:fullscreen + .videoPlayer__controls {
      z-index: 2147483647; }
  .videoPlayer__controls {
    align-items: center;
    bottom: 5%;
    display: flex;
    color: #ffffff;
    font-family: "Moderat";
    font-size: 0.875rem;
    left: 10%;
    opacity: 1;
    position: absolute;
    right: 0;
    transform: translateY(0);
    transition: all 0.2s ease-in-out;
    width: 80%; }
    .videoPlayer__controls.hidden {
      opacity: 0;
      transform: translateY(20%); }
    @media (max-width: 767px) {
      .videoPlayer__controls {
        bottom: 10px;
        left: 2.5%;
        width: 95%; } }
  .videoPlayer__progressBar {
    cursor: pointer;
    flex: 1 1 100%;
    height: 24px;
    margin-left: 50px;
    margin-right: 25px;
    position: relative; }
    @media (max-width: 767px) {
      .videoPlayer__progressBar {
        margin-left: 10px;
        margin-right: 10px; } }
    .videoPlayer__progressBar::before {
      background-color: #ffffff;
      content: '';
      display: block;
      height: 2px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%; }
  .videoPlayer__progressBarCurrent {
    height: 100%;
    width: 100%;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform 0.1s linear; }
    .videoPlayer__progressBarCurrent::before {
      background-color: #f2c145;
      content: '';
      display: block;
      height: 2px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%; }
  .videoPlayer__volumeIcon, .videoPlayer__volumeMuteIcon, .videoPlayer__fullscreenEnterIcon, .videoPlayer__fullscreenExitIcon {
    fill: #ffffff;
    height: 24px;
    width: 24px; }
  .videoPlayer__currentTime {
    margin-right: 30px;
    max-width: 35px;
    min-width: 35px; }
    @media (max-width: 767px) {
      .videoPlayer__currentTime {
        margin-right: 10px; } }
  .videoPlayer__volume {
    cursor: pointer;
    margin-right: 10px; }
  .videoPlayer__volumeMuteIcon {
    display: none; }
  .videoPlayer__fullscreen {
    cursor: pointer; }
  .videoPlayer__fullscreenExitIcon {
    display: none; }
  .videoPlayer__playPauseButton {
    cursor: pointer;
    width: 75px; }
  .videoPlayer--isFullscreen .videoPlayer__fullscreenEnterIcon {
    display: none; }
  .videoPlayer--isFullscreen .videoPlayer__fullscreenExitIcon {
    display: inline; }
  .videoPlayer--isMuted .videoPlayer__volumeIcon {
    display: none; }
  .videoPlayer--isMuted .videoPlayer__volumeMuteIcon {
    display: inline; }
  .videoPlayer--hasStarted .videoPlayer__cover {
    display: none; }
  .videoPlayer--noControls .videoPlayer__controls {
    display: none !important; }

.singBlog_ref .videoPlayer__controls {
  align-items: center;
  bottom: 10%; }

.e404 {
  height: 100vh; }
  .e404__container {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center; }
  .e404__title {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    font-family: "Moderat";
    font-size: 25rem;
    letter-spacing: 1.25rem;
    height: 28.125rem;
    color: #efefef;
    width: 100vw; }
    @media (max-width: 767px) {
      .e404__title {
        font-size: 9.375rem;
        height: 12.5rem; } }
  .e404__video {
    height: 80%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%); }
    @media (max-width: 767px) {
      .e404__video {
        height: auto;
        width: 100%; } }
  .e404 .frame {
    width: 400px;
    margin: auto;
    padding-bottom: 22%; }
    @media (max-width: 767px) {
      .e404 .frame {
        width: 90vw; } }

.agencyDescription {
  margin: 150px 0; }
  @media (max-width: 1024px) {
    .agencyDescription {
      margin: 50px 0; } }
  .agencyDescription__body {
    align-items: flex-end;
    display: flex; }
    @media (max-width: 1024px) {
      .agencyDescription__body {
        display: block; } }
  @media (max-width: 1024px) {
    .agencyDescription__container {
      max-width: 85%; } }
  .agencyDescription__content {
    margin-bottom: 80px;
    font-family: "Moderat";
    font-size: 0.9375rem;
    font-weight: 300;
    color: #a4a4a4;
    letter-spacing: 0;
    line-height: 1.875rem;
    width: 80%; }
    @media (max-width: 1024px) {
      .agencyDescription__content {
        width: 100%; } }
  .agencyDescription__illustration {
    flex-basis: 25%;
    width: 25%; }
    @media (max-width: 1024px) {
      .agencyDescription__illustration {
        display: none;
        flex-basis: calc(100% / 15 * 1);
        width: calc(100% / 15 * 1); } }
    .agencyDescription__illustration img {
      max-height: 400px; }
      @media (max-width: 1024px) {
        .agencyDescription__illustration img {
          display: none; } }
  .agencyDescription__perks {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media (min-width: 768px) and (max-width: 1024px) {
      .agencyDescription__perks {
        width: calc(100% / 14 * 12);
        margin-left: calc(100% / 14 * 1); } }
  .agencyDescription__perksItem {
    flex-basis: calc(100% / 11 * 5);
    max-width: calc(100% / 11 * 5);
    padding: 20px 0;
    position: relative; }
    @media (max-width: 1024px) {
      .agencyDescription__perksItem {
        flex-basis: 100%;
        max-width: 100%; } }
    .agencyDescription__perksItem:hover .agencyDescription__perksIcon {
      display: block; }
  .agencyDescription__perksTitle {
    font-family: "Moderat";
    font-size: 1.125rem;
    color: #000000;
    letter-spacing: -0.01875rem;
    padding-bottom: 15px; }
  .agencyDescription__perksDescription {
    font-family: "Moderat";
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.875rem;
    color: #979797; }
  .agencyDescription__perksIcon {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    display: none;
    position: absolute;
    height: 80%;
    padding-left: 80%;
    top: 10%; }
  .agencyDescription__rightColumn {
    flex-basis: 60%;
    margin-left: 10%; }
    @media (max-width: 1024px) {
      .agencyDescription__rightColumn {
        flex-basis: calc(100% / 15 * 14);
        margin-left: 0; } }
  .agencyDescription__skills {
    display: flex;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .agencyDescription__skills {
        flex-wrap: wrap; } }
  .agencyDescription__skillsCategory {
    font-family: "Moderat";
    font-size: 1.125rem;
    color: #000000;
    letter-spacing: -0.01875rem;
    padding-bottom: 20px; }
  .agencyDescription__skillsTitle {
    font-family: "Moderat";
    font-size: 0.9375rem;
    line-height: 20px;
    margin-bottom: 0.625rem; }
  .agencyDescription__skillsItem:not(:last-child) {
    margin-bottom: 0.625rem; }
  .agencyDescription__skillsWrap:not(:last-child) {
    margin-bottom: 1.5625rem; }
  .agencyDescription__skillsItem {
    font-family: "Moderat";
    font-size: 0.9375rem;
    font-weight: 300;
    color: #979797;
    line-height: 20px; }
  .agencyDescription__skillsList {
    flex: calc(100% / 11 * 3); }
    @media (max-width: 768px) {
      .agencyDescription__skillsList {
        flex-basis: 50%;
        margin-top: 25px; } }
  .agencyDescription__title {
    margin-bottom: 80px; }
    @media (max-width: 1024px) {
      .agencyDescription__title {
        margin-bottom: 30px; } }
    .agencyDescription__title i {
      color: #a4a4a4;
      word-spacing: 2px; }
    .agencyDescription__title h2 {
      font-family: "Freight", serif;
      font-size: 1.6875rem;
      line-height: 2.9375rem; }
      @media (max-width: 767px) {
        .agencyDescription__title h2 {
          font-size: 1.4375rem;
          line-height: 2.0625rem; } }

.agencyHero {
  padding: 250px 0 200px; }
  @media (min-width: 768px) and (max-width: 1024px) {
    .agencyHero {
      padding: 250px 0 90px; } }
  @media (max-width: 767px) {
    .agencyHero {
      padding: 75px 0; } }
  .agencyHero__container {
    display: flex;
    justify-content: space-between; }
  .agencyHero__title {
    font-family: "Freight", serif;
    font-size: 1.4375rem;
    line-height: 1.6875rem;
    z-index: 2; }
    @media (min-width: 768px) {
      .agencyHero__title {
        font-size: 1.9375rem;
        line-height: 2.5rem; } }
    @media (min-width: 1450px) {
      .agencyHero__title {
        font-size: 2.375rem;
        line-height: 3.1875rem; } }
    .agencyHero__title i {
      color: #a4a4a4; }
  .agencyHero img {
    width: 90px; }
    @media (max-width: 1024px) {
      .agencyHero img {
        display: none; } }

.agencyImage {
  margin: 225px 0; }
  @media (max-width: 1024px) {
    .agencyImage {
      margin: 5vw 0; } }
  @media (max-width: 767px) {
    .agencyImage {
      margin: 10vw 0; } }

.agencySlider {
  align-items: center;
  display: flex;
  overflow: hidden;
  padding-left: calc(100vw / 24 * 3);
  width: 100%; }
  @media (max-width: 1024px) {
    .agencySlider {
      flex-direction: column;
      justify-content: center;
      margin: auto;
      padding-left: 0;
      width: 90%; } }
  .agencySlider__controls {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    left: 4.5vw;
    position: relative;
    vertical-align: middle; }
    @media (min-width: 768px) and (max-width: 950px) {
      .agencySlider__controls {
        left: 1.25vw; } }
    @media (max-width: 1024px) {
      .agencySlider__controls {
        display: flex;
        left: 0;
        margin: 1.875rem 0; } }
    .agencySlider__controls > div {
      display: flex; }
      @media (min-width: 1025px) {
        .agencySlider__controls > div {
          transform: rotate(-90deg); } }
    .agencySlider__controls span {
      color: #dbdbdb;
      cursor: pointer;
      font-size: 0.875rem;
      letter-spacing: -0.5px;
      transition: color 0.25s ease-in; }
      @media (max-width: 1024px) {
        .agencySlider__controls span {
          font-size: 1.125rem; } }
      .agencySlider__controls span:hover {
        color: #a4a4a4; }
      .agencySlider__controls span:first-child {
        margin-right: 2.5rem; }
  .agencySlider__cta {
    margin-top: 1.625rem;
    margin-left: 8%; }
    @media (max-width: 1024px) {
      .agencySlider__cta {
        margin: 1.625rem auto;
        text-align: center; } }
  .agencySlider__left {
    min-width: 40vw; }
    @media (max-width: 1024px) {
      .agencySlider__left {
        width: 100%; } }
  .agencySlider__mask {
    background-color: #ffffff;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10; }
  .agencySlider__slider {
    overflow: hidden;
    position: relative; }
    @media (min-width: 1025px) {
      .agencySlider__slider.agencySlider__sliderLeft > div.next-active {
        transition-delay: 0.25s; } }
    .agencySlider__slider .agencySlider__slide {
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      transform: scale(1.1);
      transform-origin: left center;
      width: 0%; }
      .agencySlider__slider .agencySlider__slide.active {
        transform: scale(1);
        width: 100%;
        z-index: 2; }
      .agencySlider__slider .agencySlider__slide.next-active {
        transform: scale(1);
        transition: all 1s cubic-bezier(0.77, 0, 0.175, 1);
        width: 100%;
        z-index: 3; }
  .agencySlider__sliderLeft {
    display: inline-block;
    height: 0;
    left: 7%;
    padding-bottom: 70%;
    vertical-align: middle;
    width: 58%; }
    @media (max-width: 1024px) {
      .agencySlider__sliderLeft {
        left: 0;
        max-height: 0;
        padding-bottom: 120%;
        width: 100%; } }
    @media (min-width: 768px) and (max-width: 1024px) {
      .agencySlider__sliderLeft {
        left: 15%;
        padding-bottom: 90%;
        width: 75%; } }
  .agencySlider__sliderRight {
    height: 100vh;
    width: 100vh; }
  .agencySlider__right {
    display: none;
    margin-left: auto;
    min-width: 50vw; }
    @media (min-width: 1025px) {
      .agencySlider__right {
        display: block; } }

@media (max-width: 1024px) {
  .agencyVideo {
    max-width: 85%; } }

.agencyVideo .videoPlayer {
  width: 65%;
  margin-left: auto; }
  @media (max-width: 1024px) {
    .agencyVideo .videoPlayer {
      width: calc(100% / 15 * 14);
      margin: auto; } }

.buttonToComponent {
  text-align: right;
  padding-right: 3%; }

.blogSingle {
  padding: 6.875rem 0 4.625rem;
  position: relative;
  width: 100%; }
  .blogSingle .small-container, .blogSingle .blogSingle__container, .blogSingle .blogSingle__contentContainer, .blogSingle .clients__types, .blogSingle .contact, .blogSingle .gallery__container, .blogSingle .heroImage__container, .blogSingle .passwordForm__container, .blogSingle .projectDetails, .blogSingle .projectTitleText, .blogSingle .sideBySide__container {
    position: relative; }
  .blogSingle .post-categories li a {
    font-size: 16px;
    color: #656565;
    margin-bottom: 28px;
    display: inline-block; }
  .blogSingle .wp-caption {
    max-width: 100%; }
  @media (max-width: 1024px) {
    .blogSingle {
      padding: 9.375rem 0 0rem; } }
  @media (max-width: 767px) {
    .blogSingle {
      margin-top: 0 !important;
      padding: 7.5rem 0 0rem; } }
  .blogSingle__container {
    height: calc(90vh - 184px);
    overflow: hidden;
    position: relative;
    margin-bottom: 50px; }
    @media (max-width: 1024px) {
      .blogSingle__container {
        width: 90%;
        height: auto;
        overflow: initial; } }
  .blogSingle__intro {
    display: flex;
    justify-content: center;
    height: 100%;
    width: 40vw;
    float: left;
    flex-direction: column;
    padding-right: 5vw; }
    @media (max-width: 1024px) {
      .blogSingle__intro {
        width: 100%;
        display: block;
        float: initial;
        height: auto; } }
    .blogSingle__intro h1 {
      font-size: 2.75rem;
      margin-bottom: 55px; }
      @media (max-width: 1024px) {
        .blogSingle__intro h1 {
          font-size: 3rem;
          margin-bottom: 30px; } }
      @media (max-width: 767px) {
        .blogSingle__intro h1 {
          font-size: 2rem; } }
  .blogSingle__author {
    font-size: 14px;
    display: flex;
    align-items: center; }
    .blogSingle__author .blogSingle__authorDetails p {
      font-family: "Moderat", serif;
      font-weight: 300;
      color: #a4a4a4;
      margin-bottom: 5px;
      text-transform: capitalize; }
      .blogSingle__author .blogSingle__authorDetails p strong {
        font-size: 16px;
        font-weight: initial;
        color: #000000; }
  .blogSingle__imageContainer {
    position: absolute;
    right: 0;
    height: 100%;
    width: 35vw;
    overflow: hidden; }
    @media (max-width: 1024px) {
      .blogSingle__imageContainer {
        width: 100%;
        position: relative;
        margin-top: 30px;
        margin-bottom: 50px; } }
  .blogSingle__image {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    transform: translate(-50%, -50%) scale(1);
    height: 100%; }
    @media (max-width: 1024px) {
      .blogSingle__image {
        position: relative;
        transform: initial;
        top: initial;
        left: initial;
        width: 100%;
        height: auto; } }
  .blogSingle__authorPic {
    width: 60px;
    height: 60px;
    border-radius: 60px;
    overflow: hidden;
    margin-right: 20px; }
  .blogSingle__contentContainer {
    position: relative;
    max-width: 710px;
    /*span{
      font-size: 21px;
      color: $color-gray-dark;
      line-height: 1.4em;
      margin-bottom: 55px;
      font-family: $font-moderat, serif;
      font-weight: 300;
    }*/ }
    .blogSingle__contentContainer h2 {
      font-size: 2.75rem;
      margin-bottom: 55px;
      font-family: "Freight";
      font-weight: 300; }
    .blogSingle__contentContainer h3 {
      font-size: 2rem;
      margin-bottom: 35px;
      font-family: "Freight";
      font-weight: 300; }
    .blogSingle__contentContainer h4 {
      font-size: 1.5rem;
      margin-bottom: 25px;
      font-family: "Freight";
      font-weight: 300; }
    .blogSingle__contentContainer a {
      text-decoration: underline;
      color: #656565;
      font-family: "Moderat", serif;
      font-weight: 300; }
    .blogSingle__contentContainer img {
      max-width: 100%;
      height: auto; }
    .blogSingle__contentContainer img.aligncenter {
      display: block;
      margin-left: auto;
      margin-right: auto; }
    .blogSingle__contentContainer img.alignleft {
      float: left;
      margin: 5px 20px 20px 0; }
    .blogSingle__contentContainer img.alignright {
      float: right;
      margin: 5px 0 20px 20px; }
    .blogSingle__contentContainer p {
      font-size: 21px;
      color: #656565;
      line-height: 1.4em;
      margin-bottom: 30px;
      font-family: "Moderat", serif;
      font-weight: 300; }
    .blogSingle__contentContainer b,
    .blogSingle__contentContainer strong {
      color: #f2c145;
      font-family: "Moderat", serif; }
    .blogSingle__contentContainer iframe,
    .blogSingle__contentContainer .twitter-tweet {
      margin: 0 auto !important; }
    .blogSingle__contentContainer ol,
    .blogSingle__contentContainer ul {
      padding-left: 50px;
      margin-bottom: 30px; }
      .blogSingle__contentContainer ol li,
      .blogSingle__contentContainer ul li {
        color: #656565;
        list-style: auto;
        line-height: 1.4em;
        position: relative;
        font-size: 21px;
        font-family: "Moderat", serif;
        font-weight: 300; }
    .blogSingle__contentContainer ul li {
      list-style: none; }
      .blogSingle__contentContainer ul li::before {
        position: absolute;
        left: -20px;
        top: 0;
        content: "-";
        font-size: 21px; }
    @media (max-width: 767px) {
      .blogSingle__contentContainer h2 {
        font-size: 1.75rem;
        margin-bottom: 30px; }
      .blogSingle__contentContainer h3 {
        font-size: 1.5rem;
        margin-bottom: 25px; }
      .blogSingle__contentContainer h4 {
        font-size: 1.3rem;
        margin-bottom: 20px; }
      .blogSingle__contentContainer p,
      .blogSingle__contentContainer span {
        margin-bottom: 25px;
        font-size: 18px; }
      .blogSingle__contentContainer ul {
        margin-bottom: 25px; }
        .blogSingle__contentContainer ul li {
          font-size: 18px; } }
  .blogSingle .blogSingle__social {
    position: absolute;
    left: 0; }
    @media (max-width: 1024px) {
      .blogSingle .blogSingle__social {
        position: relative;
        left: initial; } }
    .blogSingle .blogSingle__social li {
      width: 40px;
      margin-bottom: 20px; }
      @media (max-width: 1024px) {
        .blogSingle .blogSingle__social li {
          display: inline-flex;
          margin-right: 20px; } }
      .blogSingle .blogSingle__social li::before {
        content: '';
        display: none; }
      .blogSingle .blogSingle__social li svg {
        width: 40px; }
      .blogSingle .blogSingle__social li:hover svg path {
        fill: #f2c145; }
    @media (max-width: 1024px) {
      .blogSingle .blogSingle__social {
        text-align: center; } }

.bloc_full img {
  max-width: 100%;
  height: auto; }

@media (min-width: 768px) and (max-width: 1024px) {
  .clients {
    margin-top: 3.75rem; } }

@media (max-width: 767px) {
  .clients {
    padding: 10vw 0;
    padding-bottom: 0; } }

.clients__container {
  display: flex;
  flex-wrap: wrap; }
  .clients__container li {
    display: flex;
    justify-content: center;
    margin-bottom: 5rem;
    opacity: 0;
    text-align: center;
    transition: all 0.8s ease-in-out;
    width: 20%; }
    @media (max-width: 1024px) {
      .clients__container li {
        margin-bottom: 3.125rem;
        width: 33.3333%; } }
    .clients__container li.isVisible {
      opacity: 1; }
    .clients__container li.hidden {
      display: none; }
    .clients__container li:hover img {
      opacity: 1; }
    .clients__container li img {
      height: auto;
      opacity: 0.3;
      transition: opacity 0.2s ease-in-out;
      width: 50%; }

.clients__options {
  color: #9a9a9a;
  display: flex;
  font-family: "Moderat";
  font-size: 1rem;
  font-weight: 300; }
  @media (max-width: 767px) {
    .clients__options {
      display: none; } }
  .clients__options li {
    cursor: pointer;
    margin-left: 30px;
    position: relative; }
    .clients__options li:hover .frame {
      display: block; }
  .clients__options .frame {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: none;
    height: 33px;
    width: 80px; }

.clients__selectContain {
  width: 100%;
  position: relative;
  display: none; }
  @media (max-width: 767px) {
    .clients__selectContain {
      display: block; } }
  .clients__selectContain:after {
    position: absolute;
    width: 0;
    height: 0;
    top: 50%;
    right: 5%;
    content: '';
    pointer-events: none;
    border: solid black;
    border-width: 0 1px 1px 0;
    padding: 3px;
    transform: translate(-50%, -50%) rotate(45deg); }

.clients__select {
  background-color: #eee;
  padding: 20px;
  text-align-last: center;
  border-radius: 0;
  border: none;
  width: 100%;
  -webkit-appearance: none; }

.clients__types {
  display: flex;
  justify-content: flex-end;
  padding: 250px 0 150px; }
  @media (min-width: 768px) and (max-width: 1024px) {
    .clients__types {
      padding: 100px 0 50px; } }
  @media (max-width: 767px) {
    .clients__types {
      padding: 50px 0; } }
  .clients__types span {
    color: #2e2e2e;
    font-family: "Moderat";
    font-size: 1rem;
    font-weight: 100; }
    @media (max-width: 767px) {
      .clients__types span {
        display: none; } }

.contact {
  margin-top: 120px;
  min-height: calc(100vh - 73px - 120px);
  padding-bottom: 50px;
  padding-top: 50px;
  position: relative; }
  @media (max-width: 767px) {
    .contact {
      min-height: initial;
      margin-top: 90px;
      padding-top: 10vw;
      padding-bottom: 10vw; } }
  .contact--sent .contact__sentSuccess {
    display: inline; }
  .contact__sentSuccess {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: none;
    font-family: "Freight", serif;
    font-size: 2.5rem; }
  .contact .double_input {
    display: flex;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .contact .double_input {
        display: block;
        margin-bottom: 10vw; } }
  .contact .s_input {
    width: 300px;
    margin-right: 50px; }
    .contact .s_input label {
      color: #696868;
      display: block;
      font-family: "Moderat", sans-serif;
      font-size: 0.875rem;
      font-weight: 300;
      position: relative;
      transform: translate3d(0, 27px, 0);
      transition: transform 0.4s ease;
      z-index: 2; }
      .contact .s_input label.active {
        transform: translate3d(0, 0, 0); }
      @media (max-width: 767px) {
        .contact .s_input label {
          font-size: 0.8125rem;
          margin-right: 0; } }
    .contact .s_input input {
      border: none;
      font-family: "Moderat", sans-serif;
      font-size: 1.125rem;
      font-weight: 400;
      padding: 10px 0;
      width: 100%;
      outline: none;
      border-bottom: 1px solid #efefef; }
    .contact .s_input .input-underline {
      border-bottom: 1px solid #d9d9d9;
      border-left: none;
      border-right: none;
      border-top: none;
      margin: 0;
      display: block;
      transform: scaleX(0);
      transform-origin: left center;
      transition: transform 0.4s ease;
      width: 80%; }
      .contact .s_input .input-underline.active {
        transform: scaleX(1); }
  .contact .s_file {
    margin-top: 50px;
    display: inline-flex; }
    @media (max-width: 767px) {
      .contact .s_file {
        display: block;
        margin-top: 10vw; } }
    .contact .s_file label {
      cursor: pointer;
      padding: 1.25rem 1.875rem;
      background-color: #f2c145;
      border: 1px solid #f2c145;
      color: #fff;
      display: block;
      font-family: "Moderat", sans-serif;
      font-size: 0.875rem;
      font-weight: 300;
      position: relative;
      transition: all 0.4s ease;
      z-index: 2; }
      .contact .s_file label:hover {
        background-color: #fff;
        color: #f2c145; }
      @media (max-width: 767px) {
        .contact .s_file label {
          font-size: 0.8125rem; } }
    .contact .s_file input[type="file"] {
      width: 0.1px;
      height: 0.1px;
      opacity: 0;
      overflow: hidden;
      position: absolute;
      z-index: -1; }
  .contact textarea {
    border: none;
    font-family: "Freight", serif;
    font-size: 2.5rem;
    line-height: 2.6875rem;
    font-weight: 400;
    resize: none;
    margin-bottom: 50px;
    max-height: 300px;
    outline: none; }
    @media (max-width: 767px) {
      .contact textarea {
        font-size: 1.09375rem;
        letter-spacing: 0.03125rem;
        line-height: 1.34375rem;
        max-height: initial;
        width: 100%; } }
  .contact .split_cta {
    display: none; }
  @media (max-width: 767px) {
    .contact .fake-submit-wrapper {
      width: 100vw !important;
      height: 100px;
      position: fixed;
      bottom: 0;
      left: 0;
      transition: background .2s ease-in-out;
      background: #efefef; }
      .contact .fake-submit-wrapper.submitable {
        background: #f2c145; } }
  .contact .fake-submit {
    color: #c1c1c1;
    font-family: "Moderat", sans-serif;
    font-size: 0.75rem;
    height: 12px;
    letter-spacing: 0.05625rem;
    overflow: hidden;
    position: relative;
    text-transform: uppercase;
    margin-top: 42px; }
    .contact .fake-submit.submitable {
      cursor: pointer; }
    .contact .fake-submit > div {
      left: 0;
      position: absolute;
      top: 0; }
      @media (max-width: 767px) {
        .contact .fake-submit > div {
          left: 50vw;
          transform: translateX(-50%); } }
      .contact .fake-submit > div.fake-submit__type .splitTextChar {
        transform: translateY(100%); }
      .contact .fake-submit > div.fake-submit__send {
        color: #f2c145;
        transition-delay: 2s; }
        .contact .fake-submit > div.fake-submit__send .splitTextChar {
          transform: translateY(-100%); }
        @media (max-width: 767px) {
          .contact .fake-submit > div.fake-submit__send {
            color: #ffffff; } }
  .contact .ajax-loader,
  .contact .wpcf7-mail-sent-ok {
    display: none !important; }
  .contact div.wpcf7-validation-errors,
  .contact div.wpcf7-acceptance-missing {
    border: 0;
    color: #f00;
    font-size: 0.9375rem;
    margin: 1.25rem 0 0;
    padding: 0; }
  .contact .wpcf7-not-valid-tip {
    display: block;
    font-size: 0.8125rem;
    position: absolute;
    top: 40px;
    width: 300px; }
  .contact .fake-submit-hover-line {
    background-color: #f2c145;
    height: 1px;
    margin-top: 0.375rem;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.4s ease; }
  .contact .fake-submit-wrapper.submitable {
    cursor: pointer; }
    .contact .fake-submit-wrapper.submitable:hover .fake-submit-hover-line {
      transform-origin: left center;
      transform: scaleX(1); }

.contactCta {
  padding: 30vh 0 20vh;
  position: relative;
  text-align: center; }
  @media (max-width: 767px) {
    .contactCta {
      padding: 20vh 0 20vh; } }
  .contactCta a {
    display: block;
    position: relative;
    text-decoration: none; }
    @media (min-width: 768px) {
      .contactCta a {
        top: 40px; } }
  .contactCta__subtitle {
    text-transform: uppercase;
    font-family: "Moderat", sans-serif;
    font-size: 1.125rem;
    color: #aeaeae;
    margin-top: 32px;
    opacity: 0;
    transform: translateY(80%);
    transition: all 0.5s ease-in-out; }
    @media (max-width: 767px) {
      .contactCta__subtitle {
        font-size: 0.5625rem;
        margin-top: 16px; } }
  .contactCta__title {
    color: #2e2e2e;
    cursor: pointer;
    display: inline-block;
    font-family: "Freight", serif;
    font-kerning: none;
    font-size: 4.375rem;
    line-height: 4.375rem;
    position: relative; }
    @media (max-width: 767px) {
      .contactCta__title {
        font-size: 2.1875rem;
        line-height: 2.1875rem; } }
    .contactCta__title::before {
      top: 0;
      left: 0;
      width: 0;
      color: #f2c145;
      overflow: hidden;
      position: absolute;
      white-space: nowrap;
      content: attr(data-text);
      transition: all 0.9s; }
    .contactCta__title.contactCta__title--animationEnd:hover::before {
      width: 100%; }
    .contactCta__title.contactCta__title--animationEnd:hover + .contactCta__subtitle {
      opacity: 1;
      transform: translateY(0); }
  .contactCta__video {
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    display: none;
    height: 150px;
    top: 130px;
    width: 150px; }
    @media screen and (max-width: 1250px) {
      .contactCta__video {
        top: 80px; } }
    @media (max-width: 767px) {
      .contactCta__video {
        height: 120px;
        top: 46px;
        width: 120px; } }

.footer__upperContainer {
  display: flex;
  flex-direction: row-reverse;
  padding-bottom: 60px; }
  @media (max-width: 767px) {
    .footer__upperContainer {
      display: none; } }

.footer__arrow {
  cursor: pointer;
  margin-right: 28px; }

.navigation .footer__arrow {
  display: none; }

.footer__lowerContainer {
  border-top: 1px solid #efefef;
  display: flex;
  justify-content: space-between;
  padding: 24px 0 34px; }
  @media (max-width: 767px) {
    .footer__lowerContainer {
      justify-content: center; } }

.footer__menu-item {
  color: #a4a4a4;
  font-family: "Moderat";
  font-size: 14px;
  font-weight: 300; }
  .footer__menu-item a {
    text-decoration: none;
    color: inherit;
    transition: color 0.15s ease-in-out; }
    .footer__menu-item a:hover {
      color: #f2c145; }

.footer__mobileSocial {
  text-align: center;
  width: 44px; }
  .footer__mobileSocial svg {
    height: 24px;
    width: 24px; }

@media (min-width: 768px) {
  .footer__mobileSocials {
    display: none; } }

.footer__mobileSocialsContainer {
  display: flex;
  justify-content: center;
  padding: 4vw 0; }

.footer__socials {
  display: flex;
  justify-content: space-around;
  width: 300px; }
  @media (max-width: 767px) {
    .footer__socials {
      display: none; } }

.gallery__container {
  display: flex;
  flex-direction: column;
  padding: 120px 0 0;
  width: 70%; }
  @media (min-width: 768px) and (max-width: 1024px) {
    .gallery__container {
      margin: 0 auto;
      width: calc(100vw / 19 * 15); } }
  @media (max-width: 767px) {
    .gallery__container {
      padding: 0;
      width: 90%; } }
  .gallery__container > div {
    width: calc(100% / 18 * 7.5); }
    @media (max-width: 767px) {
      .gallery__container > div {
        width: 100%; } }
    @media (min-width: 768px) and (max-width: 1024px) {
      .gallery__container > div {
        width: calc(100% / 15 * 7); } }
    .gallery__container > div:nth-child(odd) {
      align-self: flex-start; }
    .gallery__container > div:nth-child(even) {
      align-self: flex-end; }
      .gallery__container > div:nth-child(even) .galleryElement__cta {
        padding: 20px 65px 20px 20px; }
        .gallery__container > div:nth-child(even) .galleryElement__cta::before, .gallery__container > div:nth-child(even) .galleryElement__cta::after {
          left: initial;
          right: 0; }
        @media (max-width: 767px) {
          .gallery__container > div:nth-child(even) .galleryElement__cta {
            padding: 0 0 6px; } }
    .gallery__container > div:not(:first-child) {
      margin-top: -20%; }
      @media (min-width: 768px) and (max-width: 1024px) {
        .gallery__container > div:not(:first-child) {
          margin-top: -30%; } }
      @media (max-width: 767px) {
        .gallery__container > div:not(:first-child) {
          margin-top: 5%; } }

@media (max-width: 767px) {
  .gallery__decoration:last-child {
    display: none; } }

.gallery__decorationContainer {
  height: 0;
  padding-bottom: 125%;
  position: relative;
  width: 50%; }
  @media (max-width: 1024px) {
    .gallery__decorationContainer {
      width: 100%; } }
  @media (max-width: 767px) {
    .gallery__decorationContainer {
      padding-bottom: 75%; } }
  .gallery__decorationContainer img {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%; }
    @media (max-width: 767px) {
      .gallery__decorationContainer img {
        max-height: 100%;
        object-fit: contain;
        width: 60%; } }

.gallery .galleryElement {
  position: relative; }
  @media (max-width: 767px) {
    .gallery .galleryElement .parallaxBlock__content {
      height: 120%; } }
  .gallery .galleryElement__count {
    font-size: 12px;
    color: #8a8a8a;
    opacity: 0; }
    @media (max-width: 767px) {
      .gallery .galleryElement__count {
        display: none; } }
  .gallery .galleryElement__cta {
    opacity: 0; }
    @media (max-width: 767px) {
      .gallery .galleryElement__cta {
        display: none; } }
  .gallery .galleryElement__frame {
    display: none;
    left: -5%;
    top: -5%;
    position: absolute;
    width: 110%; }
    .gallery .galleryElement__frame img {
      top: 0;
      left: 0;
      display: block;
      position: absolute; }
  .gallery .galleryElement__imageContainer {
    width: 0%;
    height: 0;
    overflow: hidden;
    padding-bottom: 125%;
    position: relative;
    transition: width 0.7s ease-in-out, overflow 0s ease-in-out 0.7s; }
    .gallery .galleryElement__imageContainer:hover + .galleryElement__frame {
      display: block; }
      @media (max-width: 767px) {
        .gallery .galleryElement__imageContainer:hover + .galleryElement__frame {
          display: none; } }
    .gallery .galleryElement__imageContainer a {
      bottom: 0;
      left: 0;
      position: absolute;
      right: 0;
      top: 0;
      z-index: 5; }
    @media (max-width: 767px) {
      .gallery .galleryElement__imageContainer {
        padding-bottom: 60%; }
        .gallery .galleryElement__imageContainer::after {
          background-color: rgba(0, 0, 0, 0.45);
          content: '';
          display: block;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%; } }
  .gallery .galleryElement__image {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    object-position: left center;
    transform: scale(1.1);
    transition: transform 0.7s ease-in-out; }
    .gallery .galleryElement__image img {
      height: 100%; }
  .gallery .galleryElement__projectLink {
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 2; }
  .gallery .galleryElement__textContainer {
    width: 90%;
    margin-top: 12px; }
    @media (max-width: 767px) {
      .gallery .galleryElement__textContainer {
        margin-top: 0;
        position: absolute;
        left: 8% !important;
        padding: inherit;
        top: 50%;
        transform: translateY(-50%);
        pointer-events: none; } }
  .gallery .galleryElement__title {
    color: #2a2a2a;
    opacity: 0;
    font-size: 2.8rem; }
    @media (max-width: 767px) {
      .gallery .galleryElement__title {
        font-size: 2.1rem;
        line-height: 2.2rem;
        color: #ffffff; } }
  .gallery .galleryElement__description {
    color: #8a8a8a;
    font-family: "Moderat", sans-serif;
    font-size: 0.875rem;
    line-height: 1.125rem;
    font-weight: 300;
    opacity: 0; }
    .gallery .galleryElement__description a {
      color: inherit;
      pointer-events: none;
      text-decoration: none; }
    @media (max-width: 767px) {
      .gallery .galleryElement__description {
        width: 80%;
        color: #ffffff;
        margin-top: 2%; } }
  .gallery .galleryElement--isVisible .galleryElement__imageContainer {
    width: 100%; }
  .gallery .galleryElement--isVisible .galleryElement__title {
    opacity: 1; }
  .gallery .galleryElement--isVisible .galleryElement__image {
    transform: scale(1); }

.gallery--home .galleryElement__count,
.gallery--home .galleryElement__cta {
  display: none; }

.gallery--web .gallery__container > div:nth-child(even), .gallery--prod .gallery__container > div:nth-child(even) {
  flex-direction: row-reverse; }
  @media (max-width: 767px) {
    .gallery--web .gallery__container > div:nth-child(even), .gallery--prod .gallery__container > div:nth-child(even) {
      flex-direction: row; } }
  .gallery--web .gallery__container > div:nth-child(even) .galleryElement__image, .gallery--prod .gallery__container > div:nth-child(even) .galleryElement__image {
    object-position: right center; }
  .gallery--web .gallery__container > div:nth-child(even) .galleryElement__textContainer, .gallery--prod .gallery__container > div:nth-child(even) .galleryElement__textContainer {
    text-align: right; }
    @media (max-width: 767px) {
      .gallery--web .gallery__container > div:nth-child(even) .galleryElement__textContainer, .gallery--prod .gallery__container > div:nth-child(even) .galleryElement__textContainer {
        text-align: left; } }

.gallery--web .galleryElement, .gallery--prod .galleryElement {
  align-items: center;
  display: flex;
  justify-content: space-between;
  width: 100%; }
  .gallery--web .galleryElement__innerContainer, .gallery--prod .galleryElement__innerContainer {
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    width: 100%; }
  .gallery--web .galleryElement__imageContainer, .gallery--prod .galleryElement__imageContainer {
    transform: scale(1);
    transition: opacity 0.9s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), width 0.9s cubic-bezier(0.165, 0.84, 0.44, 1); }
    @media (min-width: 768px) {
      .gallery--web .galleryElement__imageContainer:hover .galleryElement__innerContainer, .gallery--prod .galleryElement__imageContainer:hover .galleryElement__innerContainer {
        transform: scale(0.9); }
      .gallery--web .galleryElement__imageContainer:hover .galleryElement__image, .gallery--prod .galleryElement__imageContainer:hover .galleryElement__image {
        transform: scale(1.106); } }
  .gallery--web .galleryElement__image, .gallery--prod .galleryElement__image {
    transform: scale(1);
    transition: width 0.9s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), left 0.9s cubic-bezier(0.165, 0.84, 0.44, 1); }

.gallery--web .gallery__container > div:nth-child(even) .galleryElement__textContainer {
  left: initial;
  right: 60%; }

.gallery--web .gallery__container > div:not(:first-child) {
  margin-top: 0;
  padding-top: 25vh; }
  @media (max-width: 767px) {
    .gallery--web .gallery__container > div:not(:first-child) {
      padding-top: 15vw; } }

.gallery--web .galleryElement__imageWrapper {
  width: 50%; }
  @media (max-width: 767px) {
    .gallery--web .galleryElement__imageWrapper {
      width: 100%; } }

.gallery--web .galleryElement__imageContainer {
  padding-bottom: 120%;
  width: 0%; }
  @media (max-width: 767px) {
    .gallery--web .galleryElement__imageContainer {
      padding-bottom: 60%; } }

.gallery--web .galleryElement__textContainer {
  left: 60%;
  position: absolute;
  width: 40%; }
  @media (max-width: 767px) {
    .gallery--web .galleryElement__textContainer {
      width: 84%; } }

.gallery--web .galleryElement__count {
  margin-bottom: 80px;
  font-size: 12px; }
  .gallery--web .galleryElement__count span:first-child {
    margin-right: 3px; }
  .gallery--web .galleryElement__count span:last-child {
    margin-left: 3px; }

.gallery--web .galleryElement__cta {
  margin-top: 80px;
  font-size: 16px; }

.gallery--web .galleryElement--isVisible .galleryElement__imageContainer {
  width: 100%; }

.gallery--prod .gallery__container > div:nth-child(even) .galleryElement__textContainer {
  left: initial;
  right: 75%; }

.gallery--prod .gallery__container > div:not(:first-child) {
  margin-top: 0;
  padding-top: 25vh; }
  @media (max-width: 767px) {
    .gallery--prod .gallery__container > div:not(:first-child) {
      padding-top: 15vw; } }

.gallery--prod .galleryElement__imageWrapper {
  width: 65%; }
  @media (max-width: 767px) {
    .gallery--prod .galleryElement__imageWrapper {
      width: 100%; } }

.gallery--prod .galleryElement__imageContainer {
  padding-bottom: 65%;
  width: 100%; }
  @media (max-width: 767px) {
    .gallery--prod .galleryElement__imageContainer {
      width: 100%;
      padding-bottom: 60%; } }

.gallery--prod .galleryElement__image {
  width: 100%; }

.gallery--prod .galleryElement__textContainer {
  position: absolute;
  left: 75%;
  width: 25%; }
  @media (max-width: 767px) {
    .gallery--prod .galleryElement__textContainer {
      width: 84%; } }

.gallery--prod .galleryElement__count {
  margin-bottom: 40px; }

.gallery--prod .galleryElement__cta {
  margin-top: 50px; }

.gallery--prod .galleryElement--isVisible .galleryElement__imageContainer {
  width: 100%; }

.gg {
  margin-top: 120px;
  min-height: calc(100vh - 73px - 120px);
  padding-bottom: 50px;
  padding-top: 50px;
  width: 60%; }
  @media (max-width: 767px) {
    .gg {
      min-height: initial;
      margin-top: 90px;
      padding-top: 10vw;
      padding-bottom: 10vw;
      width: auto; } }
  .gg--sent .contact__sentSuccess {
    display: inline; }
  .gg__sentSuccess {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: none;
    font-family: "Freight", serif;
    font-size: 2.5rem; }
  .gg .double_input {
    display: flex;
    margin-bottom: 50px;
    justify-content: space-between; }
    @media (max-width: 767px) {
      .gg .double_input {
        display: block;
        margin-bottom: 10vw; } }
  .gg .s_input {
    width: 300px; }
    .gg .s_input label {
      color: #696868;
      display: block;
      font-family: "Moderat", sans-serif;
      font-size: 0.875rem;
      font-weight: 300;
      position: relative;
      transform: translate3d(0, 27px, 0);
      transition: transform 0.4s ease;
      z-index: 2;
      pointer-events: none; }
      .gg .s_input label.active {
        transform: translate3d(0, 0, 0); }
      @media (max-width: 767px) {
        .gg .s_input label {
          font-size: 0.8125rem; } }
    .gg .s_input input {
      border: none;
      font-family: "Moderat", sans-serif;
      font-size: 1.125rem;
      font-weight: 400;
      padding: 10px 0;
      width: 100%;
      outline: none; }
    .gg .s_input .input-underline {
      border-bottom: 1px solid #d9d9d9;
      border-left: none;
      border-right: none;
      border-top: none;
      margin: 0;
      display: block;
      width: 80%; }
  .gg .ajax-loader,
  .gg .wpcf7-mail-sent-ok {
    display: none !important; }
  .gg div.wpcf7-validation-errors,
  .gg div.wpcf7-acceptance-missing {
    border: 0;
    color: #f00;
    font-size: 0.9375rem;
    margin: 1.25rem 0 0;
    padding: 0; }
  .gg .wpcf7-not-valid-tip {
    display: block;
    font-size: 0.8125rem;
    position: absolute;
    top: 40px;
    width: 300px; }
  .gg__title {
    color: red;
    margin-bottom: 3%;
    height: 40px;
    overflow: hidden; }
    .gg__title div {
      font-family: "Freight", serif;
      font-size: 2.5rem;
      font-style: italic; }
      @media (max-width: 767px) {
        .gg__title div {
          font-size: 1.4375rem;
          line-height: 2.0625rem; } }
  .gg__text {
    width: 100%;
    line-height: 1.875rem;
    margin: 0 auto;
    margin-bottom: 5%;
    font-size: 1.125rem;
    color: #797979;
    padding-right: 200px; }
    @media (max-width: 767px) {
      .gg__text {
        padding-right: 0;
        margin-bottom: 15%; } }
  .gg .submit_cta {
    padding: 0;
    margin: 0;
    border: none;
    color: #c1c1c1;
    font-family: "Moderat", sans-serif;
    font-size: 0.75rem;
    letter-spacing: 0.05625rem;
    overflow: hidden;
    position: relative;
    text-transform: uppercase;
    margin-top: 42px;
    cursor: pointer; }
  .gg .mc4wp-checkbox {
    opacity: 0;
    visibility: hidden; }

.gg--step-2 {
  text-align: center; }
  @media (max-width: 767px) {
    .gg--step-2 {
      width: auto; } }
  .gg--step-2 .gg__title {
    display: inline-block; }

.illu {
  position: absolute; }

.illu--cup {
  left: 6%;
  top: 22%;
  width: 80px; }
  @media (max-width: 767px) {
    .illu--cup {
      left: 46%;
      top: 41%;
      width: 45px; } }

.illu--package {
  right: 21%;
  top: 6%;
  width: 105px; }
  @media (max-width: 767px) {
    .illu--package {
      right: 21%;
      top: 0;
      width: 60px; } }

.illu--hat {
  bottom: 20%;
  right: 45%;
  width: 80px; }
  @media (max-width: 767px) {
    .illu--hat {
      bottom: 4%;
      right: 32%;
      width: 45px; } }

.illu--smile {
  bottom: 0;
  right: 5%;
  width: 60px; }
  @media (max-width: 767px) {
    .illu--smile {
      display: none; } }

.header {
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 999;
  pointer-events: none; }
  .header__backLink {
    overflow: hidden;
    display: inline-block;
    transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0.1s; }
    .header__backLink:hover {
      transform: translateX(0px);
      transition-delay: 0s; }
      .header__backLink:hover span {
        transform: translateY(0%); }
    .header__backLink span {
      display: inline-block;
      position: relative;
      transform: translateY(100%);
      transition: transform 0.2s ease-in-out; }
    .header__backLink svg {
      fill: inherit;
      height: 10px;
      width: 24px; }
    .header__backLinkPhoto {
      transform: translateX(37px); }
    .header__backLinkProd {
      transform: translateX(30px); }
    .header__backLinkWeb {
      transform: translateX(26px); }
  .header .header__burger {
    cursor: pointer;
    height: 15px;
    position: relative;
    width: 32px; }
    .header .header__burger > div {
      background: #000;
      display: block;
      height: 1px;
      position: absolute;
      right: 0;
      top: 50%;
      width: 32px;
      transition: width 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.6s; }
      .header .header__burger > div::before {
        background: #000;
        content: '';
        display: block;
        height: 1px;
        left: -32px;
        position: absolute;
        width: 0;
        transition: width 0.3s cubic-bezier(0.77, 0, 0.175, 1) 0.1s; }
      .header .header__burger > div:first-child {
        top: 0;
        transition-delay: 0.5s; }
        .header .header__burger > div:first-child::before {
          transition-delay: 0s; }
      .header .header__burger > div:last-child {
        top: 14px;
        transition-delay: 0.7s; }
        .header .header__burger > div:last-child::before {
          transition-delay: 0.2s; }
    .header .header__burger:hover > div {
      width: 0;
      transition-delay: 0.1s; }
      .header .header__burger:hover > div::before {
        width: 32px;
        transition-delay: 0.6s; }
      .header .header__burger:hover > div:first-child {
        transition-delay: 0s; }
        .header .header__burger:hover > div:first-child::before {
          transition-delay: 0.5s; }
      .header .header__burger:hover > div:last-child {
        transition-delay: 0.2s; }
        .header .header__burger:hover > div:last-child::before {
          transition-delay: 0.7s; }
  .header .header__burgerMenu {
    align-items: center;
    cursor: pointer;
    display: flex;
    position: relative; }
    .header .header__burgerMenu > span {
      left: -90px;
      margin-right: 1.25rem;
      opacity: 0;
      pointer-events: none;
      position: absolute;
      transform: translateX(30px);
      transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1); }
    .header .header__burgerMenu.opened > span {
      opacity: 1;
      pointer-events: initial;
      transform: translateX(0); }
    .header .header__burgerMenu.opened .header__burger > div {
      width: 0; }
      .header .header__burgerMenu.opened .header__burger > div::before {
        width: 32px; }
      .header .header__burgerMenu.opened .header__burger > div:first-child::before, .header .header__burgerMenu.opened .header__burger > div:last-child::before {
        opacity: 0; }
  .header__container {
    align-items: center;
    display: flex;
    justify-content: space-between;
    max-width: initial;
    padding: 1.875rem 0;
    position: relative;
    width: 96%;
    z-index: 2;
    pointer-events: none; }
    @media (max-width: 1024px) {
      .header__container {
        width: 90%; } }
    @media (max-width: 767px) {
      .header__container {
        padding: 0.9375rem 0;
        width: 90%; } }
  .header__logo {
    height: 60px;
    width: 63px;
    pointer-events: all;
    position: relative; }
    .header__logo svg {
      fill: #f2c145;
      height: 100%;
      width: 100%; }
    .header__logo img {
      display: none;
      height: 60px;
      position: absolute;
      top: 0;
      left: 0; }
    @media (min-width: 768px) {
      .header__logo:hover svg {
        display: none; }
      .header__logo:hover img {
        display: block; } }
  .header__rightContainer {
    align-items: center;
    display: flex;
    pointer-events: all; }
    .header__rightContainer > a {
      display: none;
      font-size: 0.875rem;
      margin-right: 2.5rem;
      text-decoration: none; }
      .header__rightContainer > a.hidden {
        display: none; }

.single-post .header .header__rightContainer > a.header__backLinkBlog {
  opacity: 0;
  visibility: hidden;
  display: block; }

.single-post .header:not(.navigation-opened) .header__rightContainer > a.header__backLinkBlog {
  opacity: 1;
  visibility: visible;
  transition: all 2s ease-out; }

.hero {
  height: 100vh;
  overflow-x: hidden; }
  @media (max-width: 1024px) {
    .hero {
      height: auto;
      margin-top: 90px; } }
  .hero__arrow {
    cursor: pointer;
    min-height: 65px;
    max-height: 65px;
    width: 25px;
    z-index: 2; }
  .hero__arrowContainer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out 1s;
    width: 100%; }
    @media (min-width: 768px) {
      .hero__arrowContainer {
        transition: max-height 0.3s ease-in-out 2.5s; } }
  .hero__button {
    bottom: 10vh;
    opacity: 0;
    position: absolute;
    right: 15vw;
    transition: opacity 0.3s ease-in-out 3s; }
    @media (max-width: 767px) {
      .hero__button {
        display: none; } }
  .hero__closeButton {
    background-color: transparent;
    border: none;
    box-shadow: none;
    color: #ffffff;
    cursor: pointer;
    font-family: "Moderat";
    font-size: 0.875rem;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 20px;
    top: 50px;
    z-index: 2; }
  .hero__contentBlock {
    display: flex;
    flex-direction: column;
    min-height: 50vw;
    justify-content: space-between;
    padding: calc(100vw / 24 * 3);
    position: absolute;
    top: 120px;
    width: 50vw;
    z-index: 2; }
    @media (max-width: 1024px) {
      .hero__contentBlock {
        height: auto;
        padding: 10%;
        position: relative;
        top: 0;
        width: 100%; } }
    .hero__contentBlock::after {
      background-color: #efefef;
      content: '';
      display: block;
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      transform: scaleX(0);
      transform-origin: 0 0;
      transition: transform 1s cubic-bezier(0.82, 0.005, 0.29, 1) 1.1s;
      width: 100%; }
      @media (max-width: 1024px) {
        .hero__contentBlock::after {
          background-color: transparent; } }
  .hero__date {
    color: #656565;
    font-family: "Moderat", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    z-index: 2; }
    @media (max-width: 767px) {
      .hero__date {
        display: none; } }
  .hero__image {
    height: 100%;
    position: absolute;
    transform: scale(1.1);
    transition: transform 2.5s cubic-bezier(0.21, 0, 0.18, 1);
    width: 100%; }
    .hero__image .videoPlayer__coverButton {
      display: none; }
      @media (max-width: 1024px) {
        .hero__image .videoPlayer__coverButton {
          display: block; } }
    .hero__image video {
      left: 50%;
      position: absolute;
      top: 50%;
      transform: translate(-50%, -50%);
      height: 100%;
      object-fit: cover;
      width: 100%; }
  .hero__imageBlock {
    cursor: pointer;
    height: 100vh;
    overflow: hidden;
    position: relative;
    transition: all 1.35s cubic-bezier(0.82, 0.005, 0.29, 1) 0.75s;
    width: 100%;
    z-index: 1; }
    @media (max-width: 767px) {
      .hero__imageBlock {
        height: 100vw; } }
    @media (min-width: 768px) and (max-width: 1024px) {
      .hero__imageBlock {
        height: 50vh; } }
  .hero__title {
    font-family: "Freight", serif;
    font-size: 1.4375rem;
    line-height: 1.6875rem;
    opacity: 0;
    z-index: 2; }
    @media (min-width: 768px) {
      .hero__title {
        font-size: 1.9375rem;
        line-height: 2.5rem; } }
    @media (min-width: 1450px) {
      .hero__title {
        font-size: 2.375rem;
        line-height: 3.1875rem; } }
    .hero__title i {
      color: #a4a4a4; }
    @media (max-width: 1024px) {
      .hero__title {
        padding: 30px 0 20px; } }
  .hero__video {
    background-color: #000000;
    display: none;
    height: 100%;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000; }
    .hero__video .videoPlayer {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%; }
    .hero__video .videoPlayer__controls {
      bottom: 6%; }
  .hero--isVisible .hero__image {
    transform: scale(1); }
  .hero--isVisible .hero__contentBlock::after {
    transform: scaleX(1); }
  .hero--isVisible .hero__arrowContainer {
    max-height: 65px; }
  .hero--isVisible .hero__button {
    opacity: 1; }
  .hero--isVisible .hero__imageBlock {
    transform: translateX(67%);
    width: 60%; }
    @media (max-width: 1024px) {
      .hero--isVisible .hero__imageBlock {
        transform: translateX(0);
        width: 100%; } }
  .hero--isVisible .hero__title {
    opacity: 1; }
  .hero--videoOpened .hero__video {
    display: block; }

.heroImage {
  padding: 6.875rem 0 4.625rem;
  position: relative;
  width: 100%; }
  @media (max-width: 767px) {
    .heroImage {
      margin-top: 7.5rem;
      padding: 0 !important; } }
  .heroImage__container {
    height: calc(90vh - 184px);
    overflow: hidden;
    position: relative; }
    @media (max-width: 767px) {
      .heroImage__container {
        width: 100%;
        height: 100vw; } }
  .heroImage__imageContainer {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 75vw; }
  .heroImage__image {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    transform: translate(-50%, -50%) scale(1);
    height: 100%; }
  .heroImage__videoContainer {
    height: 100%; }
  .heroImage .videoPlayer {
    height: 100%; }
    .heroImage .videoPlayer__video {
      height: 100.01% !important;
      width: auto !important; }
    .heroImage .videoPlayer__videoContainer {
      height: 100%;
      width: auto; }
  .heroImage--video {
    text-align: center; }
    .heroImage--video .heroImage__container {
      display: inline-block;
      width: auto; }
  .heroImage--nextProject {
    position: fixed;
    visibility: hidden;
    margin-bottom: 78px;
    overflow: hidden;
    padding-top: 0;
    padding-bottom: 0;
    transition: padding-top 0.7s ease-in-out 0.2s, padding-bottom 0.9s ease-in-out 0.2s; }
    .heroImage--nextProject .heroImage__container {
      height: 100.1vh;
      max-height: 100.1vh;
      max-width: 100vw;
      width: 100vw;
      transition: all 0.9s ease-in-out 0.2s; }
    .heroImage--nextProject.heroImage--isVisible {
      margin-bottom: 0;
      padding-top: 6.875rem;
      padding-bottom: calc(74px + 10vh); }
      @media (max-width: 767px) {
        .heroImage--nextProject.heroImage--isVisible {
          padding-top: 7.5rem;
          padding-bottom: calc(100vw - 100vh - 120px); } }
      .heroImage--nextProject.heroImage--isVisible .heroImage__container {
        height: calc(90vh - 184px);
        max-width: calc(100vw / 24 * 18);
        width: 90%; }
        @media (max-width: 767px) {
          .heroImage--nextProject.heroImage--isVisible .heroImage__container {
            height: 100vw; } }

.image--small {
  margin: 10vh 0; }
  .image--small .image__image {
    display: block;
    margin: auto;
    width: 65%;
    opacity: 0;
    transition: opacity 0.3s ease-in-out; }
    .image--small .image__image.visible {
      opacity: 1; }
    @media (max-width: 767px) {
      .image--small .image__image {
        width: 90%; } }
  @media (max-width: 767px) {
    .image--small {
      margin: 10vw 0;
      margin-top: 0 !important; } }

.image--fullscreen {
  height: 90vh;
  overflow: hidden;
  width: 100vw;
  padding-top: 100px; }
  @media (max-width: 767px) {
    .image--fullscreen {
      height: 50vh; } }
  .image--fullscreen .image__image {
    width: 100%;
    height: 100vh;
    object-fit: cover;
    position: relative;
    top: -5vh; }
    @media (max-width: 767px) {
      .image--fullscreen .image__image {
        height: 50vh; }
        .image--fullscreen .image__image img {
          object-fit: contain; } }

.double-image {
  margin: 180px 0; }
  @media (max-width: 1024px) {
    .double-image {
      margin: 100px 0; } }
  @media (max-width: 767px) {
    .double-image {
      margin: 10vw 0; } }
  .double-image.isSmall .double-image__container {
    width: 65%;
    justify-content: center;
    margin: auto; }
    @media (max-width: 1024px) {
      .double-image.isSmall .double-image__container {
        width: 90%; } }
    @media (max-width: 767px) {
      .double-image.isSmall .double-image__container {
        width: 90%; } }
  .double-image__container {
    margin: auto;
    display: flex;
    width: 100%;
    margin: auto;
    align-items: center;
    justify-content: space-evenly; }
    @media (max-width: 767px) {
      .double-image__container {
        flex-direction: column; } }
  .double-image__image-container {
    width: 46%; }
    @media (max-width: 767px) {
      .double-image__image-container {
        width: 100%;
        margin: auto; }
        .double-image__image-container:first-child {
          margin-bottom: 5%; } }
  .double-image__video-container {
    width: 46%; }
    @media (max-width: 767px) {
      .double-image__video-container {
        width: 100%;
        margin: auto; }
        .double-image__video-container:first-child {
          margin-bottom: 5%; } }
  .double-image__video {
    width: 100%;
    height: auto; }
  .double-image__image {
    width: 100%;
    height: auto; }

.introText {
  height: 100vh;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (min-width: 768px) and (max-width: 1024px) {
    .introText {
      height: 60vw;
      width: 90%;
      margin: auto; } }
  @media (max-width: 767px) {
    .introText {
      height: 50vh;
      width: 90%;
      margin: auto; } }
  @media (max-width: 767px) {
    .introText--withCanvas {
      height: 100vh; }
      .introText--withCanvas .introText__content {
        font-family: "Freight", serif;
        font-size: 2rem;
        line-height: 2.9375rem; } }
  .introText--withCanvas .introText__canvasContainer {
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%; }
  .introText--withCanvas .introText__content {
    font-family: "Freight", serif;
    font-size: 2.5rem;
    line-height: 2.9375rem; }
  .introText__content {
    max-width: 90%;
    width: 600px;
    position: relative; }
    @media (min-width: 768px) and (max-width: 1024px) {
      .introText__content {
        max-width: calc(100vw / 19 * 15); } }
    .introText__content i {
      color: #a4a4a4;
      word-spacing: 2px; }
    .introText__content h1 {
      font-family: "Freight", serif;
      font-size: 1.6875rem;
      line-height: 2.9375rem; }
      @media (max-width: 767px) {
        .introText__content h1 {
          font-size: 1.4375rem;
          line-height: 2.0625rem; } }
  .introText__easterEgg {
    animation: spin 4s linear infinite;
    cursor: pointer;
    display: inline-block;
    height: 31px;
    opacity: 0;
    user-select: none;
    vertical-align: middle;
    width: 33px; }
  .introText__projectsTypes {
    align-items: center;
    display: flex;
    font-size: 1rem;
    margin-bottom: 1.25rem; }
    .introText__projectsTypes > div {
      align-items: center;
      display: flex; }
      .introText__projectsTypes > div a,
      .introText__projectsTypes > div span {
        opacity: 0;
        transition: opacity 0.2s ease-in-out; }
      .introText__projectsTypes > div a {
        text-decoration: none; }
      .introText__projectsTypes > div span {
        display: block; }
      .introText__projectsTypes > div .type-separator {
        height: 1px;
        margin: 0 2rem;
        overflow: hidden;
        position: relative;
        transform-origin: left;
        transform: scaleX(0);
        transition: transform 0.4s ease;
        width: 112px; }
        .introText__projectsTypes > div .type-separator::before, .introText__projectsTypes > div .type-separator::after {
          background-color: #fff;
          content: '';
          display: block;
          height: 100%;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%; }
        .introText__projectsTypes > div .type-separator::before {
          transform: translateX(-100%);
          transition: transform 0.5s ease; }
        .introText__projectsTypes > div .type-separator::after {
          transition: transform 0.5s ease 0.5s; }
        .introText__projectsTypes > div .type-separator.hovered::before {
          transform: translateX(0%);
          transition: transform 0.5s ease 0.5s; }
        .introText__projectsTypes > div .type-separator.hovered::after {
          transform: translateX(100%);
          transition: transform 0.5s ease; }
    .introText__projectsTypes--isVisible > div a,
    .introText__projectsTypes--isVisible > div span {
      opacity: 1; }
    .introText__projectsTypes--isVisible > div .type-separator {
      transform: scaleX(1); }
    .introText__projectsTypes--onProd > div a {
      color: #616161; }
    .introText__projectsTypes--onProd > div span {
      color: #b1b1b1; }
    .introText__projectsTypes--onPhoto > div a {
      color: #bdbdbd; }
    .introText__projectsTypes--onPhoto > div span {
      color: #000000; }
    .introText__projectsTypes--onPhoto > div .type-separator::before, .introText__projectsTypes--onPhoto > div .type-separator::after {
      background-color: #000; }

@keyframes spin {
  100% {
    transform: rotate(360deg); } }

.jobs {
  color: #ffffff;
  margin-left: 10%;
  padding: 150px 0;
  position: relative; }
  @media (max-width: 1024px) {
    .jobs {
      margin-top: 175px;
      margin-left: 0; } }
  .jobs__container {
    max-width: calc(100vw / 24 * 9);
    position: relative;
    z-index: 2; }
    @media (max-width: 1024px) {
      .jobs__container {
        width: 80vw;
        max-width: none; } }
  .jobs__background {
    background-color: #181818;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: scaleX(0);
    transform-origin: right center;
    width: 100%; }
  .jobs__title {
    font-family: "Freight";
    font-style: italic;
    font-size: 1.9375rem;
    font-weight: 400;
    color: #727272;
    padding-bottom: 60px; }
  .jobs__offers {
    margin-bottom: 100px; }
  .jobs__offer {
    align-items: center;
    border-bottom: 1px solid #454545;
    display: flex;
    justify-content: space-between;
    padding: 25px 0; }
    .jobs__offer span:first-child {
      font-family: "Moderat";
      font-size: 1rem;
      font-weight: 300;
      color: #ffffff; }
      @media (max-width: 767px) {
        .jobs__offer span:first-child {
          width: 60%; } }
    .jobs__offer span:last-child {
      font-family: "Moderat";
      font-size: 0.75rem;
      color: #999999;
      letter-spacing: 0.03125rem;
      text-transform: uppercase; }
      @media (max-width: 767px) {
        .jobs__offer span:last-child {
          white-space: nowrap; } }
      .jobs__offer span:last-child a {
        color: inherit;
        text-decoration: none; }
  .jobs__details {
    font-family: "Moderat";
    font-size: 1rem;
    line-height: 1.1875rem;
    color: #ffffff; }
    .jobs__details a {
      color: inherit;
      text-decoration: none;
      transition: color 0.2s ease; }
      .jobs__details a:hover {
        color: #f2c145; }
    .jobs__details > p:not(:last-child) {
      margin-bottom: 15px; }

.loader {
  background-color: #ffffff;
  bottom: 0;
  height: 100vh;
  position: fixed;
  overflow: hidden;
  top: initial;
  transition: height 1.1s cubic-bezier(0.085, 0.685, 0.265, 0.985) 0.2s;
  width: 100vw;
  z-index: 100000; }
  .loader__video {
    height: 40vh;
    left: 50%;
    position: absolute;
    bottom: 30vh;
    top: initial;
    transform: translateX(-50%); }
    @media (max-width: 767px) {
      .loader__video {
        bottom: initial;
        top: 30vh; } }
  .loader--isHidden {
    height: 0vh;
    bottom: initial;
    top: 0;
    transition: height 0.8s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
    .loader--isHidden .loader__video {
      bottom: initial;
      top: 30vh; }
  .loader__grey {
    height: 100vh;
    width: 100%;
    background-color: #eee;
    transform: translateY(100%);
    position: absolute;
    top: 0; }
  .loader__white, .loader__white--second {
    height: 100vh;
    width: 100%;
    background-color: #fff;
    transform: translateY(100%);
    position: absolute;
    top: 0;
    z-index: 1; }
  .loader__white--second {
    z-index: 2; }
  .loader--noTransition {
    transition: none;
    background-color: transparent; }
    .loader--noTransition .loader__video {
      display: none;
      z-index: 1; }
    .loader--noTransition .loader__video--isVisible {
      display: block; }

.modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  height: 55%;
  width: 75%;
  display: none;
  z-index: 999;
  max-width: 1120px;
  overflow: hidden; }
  .modal__container {
    background-color: #ffffff;
    width: 0%;
    transform: translate3d(-100%, 0px, 0px); }
  .modal__title {
    margin-bottom: 3%;
    margin-top: 10%;
    height: 40px;
    overflow: hidden; }
    .modal__title div {
      font-family: "Freight", serif;
      font-size: 2.5rem;
      font-style: italic; }
      @media (max-width: 767px) {
        .modal__title div {
          font-size: 1.4375rem;
          line-height: 2.0625rem; } }
  .modal__text {
    width: 100%;
    margin: 0 auto;
    font-size: 1.125rem;
    color: #797979; }
  .modal__text--margin {
    margin-bottom: 30px; }
  .modal .customCta {
    margin-top: 50px; }

.modal__container--secondStep {
  display: none; }

.navigation {
  background-color: white;
  display: none;
  height: 100vh;
  padding-top: 120px;
  position: absolute;
  top: 0;
  width: 100%;
  pointer-events: all; }
  @media screen and (max-width: 1024px) {
    .navigation {
      padding-top: 80px; } }
  @media (max-width: 767px) {
    .navigation {
      padding-top: 90px; } }
  .navigation__content {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
    height: calc(100vh - 220px); }
    @media (max-width: 767px) {
      .navigation__content {
        height: calc(100% - 73px);
        align-items: flex-start; } }
  .navigation__image {
    background-position: center center;
    background-size: auto 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    transform: translateX(100%);
    transform-origin: left; }
    @media (min-width: 768px) and (max-width: 1024px) {
      .navigation__image {
        height: 75%;
        top: 12.5%; } }
    .navigation__image.js-first-image {
      transform: translateX(0%); }
  .navigation__imagesContainer {
    height: 70vh;
    margin-right: 5rem;
    overflow: hidden;
    position: relative;
    width: 45vh; }
    @media (min-width: 768px) and (max-width: 1024px) {
      .navigation__imagesContainer {
        height: 80vh;
        margin-right: 3rem;
        width: 300px; } }
    @media (max-width: 767px) {
      .navigation__imagesContainer {
        display: none; } }
  .navigation__lang {
    color: #dbdbdb;
    z-index: 50;
    display: block;
    font-size: 0.875rem;
    left: -50px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg); }
    @media (min-width: 1025px) {
      .navigation__lang {
        left: -75px; } }
    @media (min-width: 768px) and (max-width: 900px) {
      .navigation__lang {
        left: -75px; } }
    @media (max-width: 767px) {
      .navigation__lang {
        left: -106px; } }
    .navigation__lang .wpml-ls-current-language a {
      color: #f2c145; }
    .navigation__lang ul {
      -ms-flex-align: center;
      align-items: center;
      display: -ms-flexbox;
      display: flex;
      position: relative; }
      .navigation__lang ul li:first-child a:before {
        position: absolute;
        top: 50%;
        left: 20%;
        z-index: -10;
        background-color: #dbdbdb;
        content: '';
        display: inline-block;
        height: 1px;
        margin: 0 1.5rem;
        vertical-align: middle;
        width: 112px; }
      .navigation__lang ul li:first-child a:after {
        background-color: #f2c145;
        content: '';
        display: inline-block;
        height: 1px;
        margin: 0 1.5rem;
        vertical-align: middle;
        width: 112px;
        transform-origin: left;
        transform: scaleX(0);
        transition: transform .2s ease-out; }
    .navigation__lang li:nth-child(2) span {
      transition-delay: .2;
      transition: color .2s ease-out; }
    .navigation__lang a {
      color: inherit;
      text-decoration: none; }
    .navigation__lang ul:hover li:first-child a:after {
      transform: scaleX(1); }
    .navigation__lang ul:hover li:nth-child(2) span {
      color: #f2c145; }
  .navigation__mask {
    background-color: white;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2; }
  .navigation__menu li:not(:last-child) {
    margin-bottom: 20%; }
    @media screen and (max-width: 1024px) {
      .navigation__menu li:not(:last-child) {
        margin-bottom: 2.1875rem; } }
    @media (max-width: 767px) {
      .navigation__menu li:not(:last-child) {
        margin-bottom: 1.25rem; } }
  .navigation__menu a {
    color: inherit;
    text-decoration: none; }
    .navigation__menu a:hover > div {
      color: #f2c145;
      transform: translateX(20px); }
    .navigation__menu a > div {
      line-height: 2.375rem;
      overflow: hidden;
      transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1); }
  .navigation .footer {
    bottom: 0;
    position: absolute;
    width: 100%;
    z-index: 1; }
  .navigation.pagination {
    position: relative;
    height: auto;
    width: auto;
    display: inline-block;
    top: auto;
    padding: 0;
    margin: 50px auto; }
    .navigation.pagination a {
      color: #b1abb5;
      font-size: 17px; }
    .navigation.pagination span.current {
      color: #f2c145;
      font-size: 17px; }

.nextProject {
  padding: 20vh 0; }
  .nextProject h2 {
    text-align: center;
    position: relative;
    color: #000000; }
  .nextProject__textContainer {
    display: inline-block; }
  .nextProject__textContainer--white {
    color: #fff; }
  .nextProject__border {
    width: 0%;
    height: 50px;
    position: relative;
    left: 0;
    bottom: 0.375rem;
    transform-origin: left;
    overflow: hidden;
    pointer-events: none; }
    @media (max-width: 768px) {
      .nextProject__border {
        height: 40px; } }
    @media (min-width: 1025px) {
      .nextProject__border {
        bottom: 1.375rem; } }
  .nextProject__line {
    width: 100%;
    height: 5px;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none; }
  .nextProject__line img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none; }

.panorama {
  width: 88%;
  height: 809px;
  margin-left: 6vw;
  max-width: initial;
  position: relative;
  overflow: hidden;
  margin: 0 0 0 auto; }
  @media (max-width: 767px) {
    .panorama {
      height: 60vh;
      width: 100%; } }
  .panorama__mask {
    background-color: #fff;
    height: 100%;
    z-index: 15;
    left: 0;
    position: absolute;
    top: 0;
    transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-delay: 0.5s;
    width: 100%; }
    .panorama__mask.visible {
      transform: translateX(-100%); }
  .panorama__image {
    position: absolute;
    font-size: 0;
    transform: translateX(0); }
    @media (max-width: 767px) {
      .panorama__image {
        height: 100%; } }
    @media screen and (min-width: 1600px) {
      .panorama__image {
        transform: translateX(0); } }
  .panorama__aside {
    top: 60px;
    left: 60px;
    position: absolute;
    z-index: 10; }
    @media (max-width: 767px) {
      .panorama__aside {
        display: none; } }
  .panorama__trigger {
    background-color: #ffffff;
    height: 50px;
    width: 50px;
    line-height: 50px;
    color: #717171;
    font-size: 0.875rem;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    cursor: pointer; }
    @media (max-width: 767px) {
      .panorama__trigger {
        display: none; } }
  .panorama__count {
    color: #ffffff;
    display: inline-block;
    vertical-align: middle;
    margin-left: 15px; }
  .panorama__image--cloned {
    transform: translateX(-100%);
    position: absolute;
    top: 0; }
  .panorama__gg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .panorama__win, .panorama__overlay {
    background-color: rgba(0, 0, 0, 0.7);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    display: flex;
    transition: opacity 0.7s ease-out;
    align-items: center;
    justify-content: center; }
  .panorama__winImg {
    max-height: 430px; }
  .panorama__win--isVisible, .panorama__overlay--isVisible {
    opacity: 1;
    visibility: visible; }
  .panorama__pointer {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 120px;
    height: 320px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0.7);
    z-index: 10; }
    @media (max-width: 767px) {
      .panorama__pointer {
        display: none; } }
    .panorama__pointer img {
      height: 70px; }
  .panorama__pointer--right {
    right: 0;
    left: auto; }
  .panorama__indication {
    position: absolute;
    width: 192px;
    top: 434px;
    transform: translateX(680px);
    z-index: 5; }
    @media (max-width: 767px) {
      .panorama__indication {
        display: none; } }
  .panorama__indication--cloned {
    transform: translateX(-2556px); }

.passwordForm {
  background-color: inherit;
  position: fixed;
  height: 100%;
  width: 100%; }
  @media (max-width: 767px) {
    .passwordForm {
      text-align: center; } }
  .passwordForm__container {
    position: relative;
    top: 50%;
    transform: translateY(-50%); }
  .passwordForm__title {
    margin-bottom: 30px; }
  .passwordForm__formContainer {
    display: inline-flex; }
    @media (max-width: 767px) {
      .passwordForm__formContainer {
        display: block; } }
  .passwordForm__button {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid black;
    border-color: inherit;
    color: inherit;
    cursor: pointer;
    font-family: "Moderat";
    font-size: 0.875rem;
    letter-spacing: 1px;
    text-transform: uppercase; }
    @media (max-width: 767px) {
      .passwordForm__button {
        border-bottom: none;
        margin-top: 20px;
        padding: 10px; } }
  .passwordForm__contact {
    font-family: "Moderat";
    font-size: 0.875rem;
    line-height: 1.25rem;
    margin-top: 110px; }
    .passwordForm__contact a {
      color: inherit; }
  .passwordForm__input {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid black;
    border-color: inherit;
    color: inherit;
    font-family: "Moderat";
    font-size: 2.5rem;
    letter-spacing: 0.625rem;
    line-height: 4.375rem;
    outline: none;
    width: 600px; }
    @media (max-width: 767px) {
      .passwordForm__input {
        display: block;
        text-align: center;
        width: 100%; } }
    .passwordForm__input::placeholder {
      color: inherit; }

.projectCta {
  padding: 20vh 0 25vh;
  text-align: center; }
  .projectCta__link {
    color: #ffffff;
    text-decoration: none; }

.projectDetails {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 6.25rem; }
  @media (min-width: 1280px) {
    .projectDetails {
      padding: 0 3.75rem; } }
  .projectDetails > div {
    margin-right: 5%; }
    @media (max-width: 767px) {
      .projectDetails > div {
        margin-right: initial; } }
  @media (max-width: 767px) {
    .projectDetails {
      flex-direction: column;
      margin: 10vw auto; } }
  .projectDetails__content {
    color: #979797;
    line-height: 1.875rem;
    width: 50%; }
    @media (max-width: 767px) {
      .projectDetails__content {
        line-height: 1.875rem;
        margin-top: 1.875rem;
        width: 100%; } }
  .projectDetails__credits {
    display: flex;
    font-size: 0.875rem;
    margin-top: 1.125rem; }
    .projectDetails__credits > span {
      color: #ffffff;
      margin-right: 3.0625rem; }
  .projectDetails__creditsContainer {
    display: flex;
    flex-wrap: wrap; }
    .projectDetails__creditsContainer > div {
      margin-bottom: 1.5625rem;
      margin-right: 2.5rem; }
  .projectDetails__creditsPeople {
    color: #a1a1a1;
    display: block;
    font-size: 0.75rem;
    margin-bottom: 0.375rem; }
  .projectDetails__creditsTitle {
    color: #ffffff;
    display: block;
    margin-bottom: 0.625rem; }
  .projectDetails__dateContainer {
    font-size: 0.875rem; }
    .projectDetails__dateContainer span:first-child {
      display: inline-block;
      margin-right: 3.75rem; }
    .projectDetails__dateContainer span:nth-child(2) {
      color: #a1a1a1; }
  @media (max-width: 767px) {
    .projectDetails__title {
      font-size: 3rem; } }
  .projectDetails__skills {
    color: #979797;
    display: block;
    font-size: 1.125rem;
    line-height: 1.5rem;
    margin-bottom: 2.5rem; }
    @media (max-width: 767px) {
      .projectDetails__skills {
        line-height: 1.5rem;
        margin-bottom: 1.875rem; } }
    .projectDetails__skills a {
      color: inherit;
      pointer-events: none;
      text-decoration: none; }

.projectTitleText {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 6.25rem; }
  @media (min-width: 1280px) {
    .projectTitleText {
      padding: 0 3.75rem; } }
  @media (max-width: 767px) {
    .projectTitleText {
      flex-direction: column;
      margin: 10vw auto; } }
  .projectTitleText__title {
    max-width: 25rem;
    line-height: 1.75rem;
    font-size: 1.75rem;
    font-weight: 300; }
    @media (max-width: 767px) {
      .projectTitleText__title {
        margin-bottom: 1.875rem; } }
    @media (min-width: 1025px) {
      .projectTitleText__title {
        width: 50%; } }
  .projectTitleText__text {
    color: #979797;
    line-height: 1.75rem;
    font-size: 1.125rem; }
    @media (min-width: 1025px) {
      .projectTitleText__text {
        width: 50%; } }

.recipe {
  position: relative;
  background-color: #ffffff;
  width: 0%;
  max-height: 0px;
  max-width: 560px;
  margin-top: 60px;
  margin-left: 60px;
  transition: all 0.6s ease-out;
  overflow: hidden;
  z-index: 1000; }
  .recipe__container {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease-out;
    transition-delay: 0.4s; }
  .recipe__nav {
    position: absolute;
    left: 20px;
    top: 20px;
    cursor: pointer; }
  .recipe__nav svg {
    fill: #717171;
    display: inline-block;
    vertical-align: middle; }
  .recipe__navLabel {
    color: #717171;
    font-size: 0.75rem;
    margin-left: 5px;
    display: inline-block;
    vertical-align: middle; }
  .recipe__artworks {
    margin-bottom: 20px; }
  .recipe__artwork {
    display: inline-block;
    margin-right: 5px;
    position: relative; }
  .recipe__artworkImg {
    height: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none; }
  .recipe__artworkImg--found {
    display: block; }
  .recipe__title {
    font-size: 1.875rem;
    font-family: "Freight", serif; }
  .recipe__subtitle {
    font-size: 0.9375rem;
    color: #A0A0A0;
    margin-top: 5px;
    margin-left: 10px; }
  .recipe__title, .recipe__subtitle {
    display: inline-block;
    vertical-align: top; }
  .recipe__separator {
    background-color: #EEEEEE;
    width: 100%;
    height: 1px;
    margin: 20px 0; }
  .recipe__content {
    font-size: 1rem;
    line-height: 2.25rem;
    color: #7A7A7A; }
  .recipe__element--found {
    color: #f2c145; }

.recipe--isVisible {
  padding: 70px;
  width: 35%;
  max-height: 600px;
  min-width: 520px; }
  .recipe--isVisible .recipe__container {
    opacity: 1;
    visibility: visible; }

.services {
  position: relative;
  padding: 250px 0 0;
  position: relative;
  z-index: 2; }
  @media (max-width: 767px) {
    .services {
      display: none; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .services {
      padding: 100px 0 0; } }
  .services__container {
    margin-bottom: 150px;
    margin-left: calc(100vw / 24 * 5);
    width: calc(100vw / 24 * 9); }
    @media (min-width: 768px) and (max-width: 1024px) {
      .services__container {
        margin-bottom: 50px;
        margin-left: calc(100vw / 19 * 2);
        width: calc(100vw / 19 * 12); } }
  .services__headline {
    cursor: pointer;
    position: relative;
    transition: color 0.3s ease-in-out; }
    .services__headline .services__headlineFrame {
      display: none; }
    .services__headline:hover {
      color: #000000; }
      .services__headline:hover .services__headlineFrame {
        display: block; }
  .services__headlineFrame {
    height: 120%;
    left: -5%;
    object-fit: contain;
    position: absolute;
    pointer-events: none;
    top: -5%;
    width: 110%; }
    .services__headlineFrame img {
      top: 50%;
      transform: translateY(-50%); }
  .services__headlines {
    left: 5%;
    color: #efefef;
    position: relative;
    white-space: nowrap; }
    .services__headlines a {
      color: #efefef;
      text-decoration: none; }
    @media (min-width: 768px) and (max-width: 1024px) {
      .services__headlines {
        font-size: 16vw;
        line-height: 20vw; } }
  .services__headlines-container {
    width: 100%;
    overflow: hidden; }
  .services__intro {
    font-family: "Freight", serif;
    font-size: 1.6875rem;
    line-height: 2.9375rem; }
    .services__intro i {
      color: #a4a4a4; }
  .services__infobox {
    box-sizing: border-box;
    display: none;
    padding: 48px 54px;
    position: absolute;
    transform: translate(50px, -50%);
    width: 313px; }
    .services__infobox--visible {
      display: block; }
  .services__infoboxBackground {
    background-color: #ededed;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform-origin: left center;
    width: 100%; }
  .services__infoboxService {
    position: relative;
    z-index: 2; }
  .services__listWrap {
    margin-bottom: 20px; }
  .services__item {
    color: #696969;
    font-family: "Freight";
    font-size: 1.125rem;
    line-height: 1.4375rem;
    padding-bottom: 10px; }
  .services__title {
    font-family: "Freight";
    font-size: 1.25rem;
    margin-bottom: 0.9375rem; }
    @media (max-width: 767px) {
      .services__title {
        text-align: center; } }

.servicesMobile {
  background-color: #efefef;
  position: relative;
  padding: 2.5rem 0; }
  @media (min-width: 768px) {
    .servicesMobile {
      display: none; } }
  .servicesMobile__content {
    width: 90%;
    margin: 0 auto; }
  .servicesMobile__services {
    display: flex;
    justify-content: center;
    margin: 3.75rem 0; }
    .servicesMobile__services ul {
      display: flex; }
    .servicesMobile__services li {
      color: #dbdbdb;
      cursor: pointer;
      font-family: "Freight";
      font-size: 2.125rem;
      text-align: center; }
      .servicesMobile__services li:not(:last-child) {
        margin-right: 2.25rem; }
      .servicesMobile__services li.active {
        color: black; }
  .servicesMobile__skillsPicture {
    display: none;
    height: 60%;
    margin: auto;
    top: 20%;
    position: relative;
    width: auto; }
    .servicesMobile__skillsPicture.active {
      display: block; }
  .servicesMobile__subServices.active {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem; }
  .servicesMobile__subServices.hidden {
    display: none; }
  .servicesMobile__subServices ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 0.3125rem; }
  .servicesMobile__subServices li {
    color: #7e7e7e;
    font-family: "Moderat";
    font-size: 0.9375rem;
    font-weight: 300;
    margin-bottom: 0.5rem;
    text-align: center; }
  .servicesMobile__videoContainer {
    border-radius: 50%;
    height: 35vh;
    margin: auto;
    overflow: hidden;
    position: relative;
    width: 35vh; }
  .servicesMobile__videoContainerInner {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    border-radius: 50%;
    height: 0;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.16, 0.97, 0.75, 1.15);
    width: 0; }
  .servicesMobile--isVisible .servicesMobile__videoContainerInner {
    height: 100%;
    width: 100%; }

.sideBySide {
  overflow: hidden;
  padding: 300px 0; }
  @media (max-width: 767px) {
    .sideBySide {
      padding: 30vw 0 30vw; } }
  .sideBySide__container {
    align-items: flex-start;
    align-content: flex-start;
    display: flex;
    justify-content: space-around; }
    @media (max-width: 767px) {
      .sideBySide__container {
        display: block; } }
    .sideBySide__container > * {
      height: auto;
      max-width: 30vw;
      position: relative;
      width: 30vw; }
      @media (max-width: 767px) {
        .sideBySide__container > * {
          display: block;
          margin: auto;
          width: 80%;
          max-width: 80%; }
          .sideBySide__container > *:not(:first-child) {
            margin-top: 10vw; } }
  .sideBySide--noPadding {
    padding: 50px 0; }
    @media (max-width: 767px) {
      .sideBySide--noPadding {
        padding: 5vw 0 5vw; } }
  .sideBySide--portrait .sideBySide__container > * {
    max-width: 25vw;
    width: 25vw; }
    @media (max-width: 767px) {
      .sideBySide--portrait .sideBySide__container > * {
        height: 80vh;
        max-width: initial;
        min-width: initial;
        width: initial; }
        .sideBySide--portrait .sideBySide__container > *:not(:first-child) {
          margin-top: 15vw; } }

.slider {
  background-color: #eef0f3;
  margin: 5rem 0;
  padding: 3.75rem 0;
  text-align: center;
  width: 100%; }
  .slider__arrow {
    height: 9px;
    margin-left: 0.625rem;
    width: 48px; }
  .slider__image {
    display: block;
    opacity: 0.3;
    transition: opacity 0.3s ease-in;
    width: 100%; }
  .slider__nav {
    margin-top: 2.5rem; }
    .slider__nav span {
      font-size: 0.75rem;
      letter-spacing: 2px; }
    .slider__nav ul {
      align-items: center;
      display: flex;
      justify-content: center;
      margin-bottom: 0.9375rem; }
      @media (max-width: 767px) {
        .slider__nav ul {
          display: none; } }
    @media (max-width: 767px) {
      .slider__nav .only-desktop {
        display: none; } }
    .slider__nav .only-mobile {
      display: none; }
      .slider__nav .only-mobile span {
        color: #a4a4a4;
        font-size: 1rem; }
      @media (max-width: 767px) {
        .slider__nav .only-mobile {
          display: block; } }
  .slider__navDots {
    background-color: #adb8c9;
    border-radius: 50%;
    cursor: pointer;
    height: 6px;
    width: 6px; }
    .slider__navDots:not(:last-child) {
      margin-right: 0.875rem; }
    .slider__navDots.active {
      background-color: transparent;
      border: 1px solid black;
      border-color: inherit;
      height: 28px;
      position: relative;
      width: 28px; }
      .slider__navDots.active::before {
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        background-color: currentColor;
        border-radius: 50%;
        content: '';
        display: block;
        height: 8px;
        position: absolute;
        width: 8px; }
  .slider__slide {
    max-height: 70vh;
    margin-right: 4.375rem;
    width: 60vw;
    overflow: hidden; }
    @media (min-width: 1300px) {
      .slider__slide {
        width: 50vw; } }
    @media (min-width: 768px) and (max-width: 1024px) {
      .slider__slide {
        margin-right: 2.1875rem; } }
    @media (max-width: 767px) {
      .slider__slide {
        margin-right: 0.9375rem;
        width: 80vw; } }
    .slider__slide.is-selected .slider__image {
      opacity: 1; }
  .slider__sliderCount {
    display: block;
    margin-bottom: 0.625rem; }
  .slider__text {
    display: block;
    margin-bottom: 3.125rem; }

.text {
  font-family: "Moderat";
  margin: 150px auto;
  max-width: 90%;
  text-align: center;
  width: 900px; }
  @media (max-width: 767px) {
    .text {
      margin: 10vw auto; } }
  .text__content {
    color: #a1a1a1;
    font-weight: 300;
    line-height: 1.875rem; }
    @media (max-width: 767px) {
      .text__content {
        line-height: 1.875rem;
        text-align: left; } }
  .text__title {
    font-size: 1.3125rem;
    margin-bottom: 2.125rem; }
    @media (max-width: 767px) {
      .text__title {
        text-align: left; } }

.video {
  margin: 100px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.8%;
  margin: 0 2.8%; }
  @media (max-width: 767px) {
    .video {
      margin: 10vw 0;
      display: block; } }
  .video .videoPlayer {
    max-width: 1120px; }
  @media (max-width: 767px) {
    .video.isDuo .videoPlayer {
      margin-bottom: 5%; } }
  .video.isMaxHeight {
    text-align: center; }
    .video.isMaxHeight .videoPlayer {
      display: inline-block;
      text-align: center;
      width: auto;
      margin: 0; }
      @media (max-width: 767px) {
        .video.isMaxHeight .videoPlayer {
          width: 90%;
          margin-bottom: 2.8%; } }
      .video.isMaxHeight .videoPlayer__cover {
        height: 100%;
        width: 100%;
        object-fit: cover; }
      .video.isMaxHeight .videoPlayer__video {
        height: 90vh !important;
        width: auto !important; }
        @media (max-width: 767px) {
          .video.isMaxHeight .videoPlayer__video {
            height: auto !important;
            width: 100% !important; } }
      .video.isMaxHeight .videoPlayer__videoContainer {
        display: inline-block;
        height: 100%;
        width: auto; }
  .video__vimeoWrapper {
    height: 0;
    margin: -10vw auto;
    max-width: 1120px;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px; }
    .video__vimeoWrapper iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

.spotify {
  position: fixed;
  bottom: 1.875rem;
  left: 1.875rem; }
  @media (max-width: 767px) {
    .spotify {
      position: static;
      width: 80vw;
      margin: 0 auto;
      text-align: center; } }
  .spotify svg {
    padding: 5px;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color .2s ease-out; }
    .spotify svg #spotify-1 {
      opacity: .8; }
    .spotify svg:hover #Spotify {
      fill: #62d26d; }
    .spotify svg:hover #spotifyTexte {
      fill: #62d26d; }
  .spotify #Spotify {
    transition: fill .2s ease-out; }
  .spotify #spotifyTexte {
    transition: fill .2s ease-out;
    transform-origin: center;
    animation-name: rotate;
    animation-duration: 15s;
    animation-timing-function: linear;
    animation-iteration-count: infinite; }

@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.error404 footer {
  display: none; }

.page-template-page-about-production {
  background-color: #0f0f0f; }
  .page-template-page-about-production .header__burger div {
    background-color: #ffffff; }
    .page-template-page-about-production .header__burger div::before, .page-template-page-about-production .header__burger div::after {
      background-color: #ffffff; }
  .page-template-page-about-production .navigation-opened .header__burger div {
    background-color: #000000; }
    .page-template-page-about-production .navigation-opened .header__burger div::before, .page-template-page-about-production .navigation-opened .header__burger div::after {
      background-color: #000000; }
  .page-template-page-about-production .introText__content {
    color: #ffffff; }
  .page-template-page-about-production .slider {
    background-color: transparent; }
    .page-template-page-about-production .slider span {
      color: #ffffff; }
    .page-template-page-about-production .slider .slider__navDots.active {
      border-color: #ffffff; }
      .page-template-page-about-production .slider .slider__navDots.active::before {
        background-color: #ffffff; }
  .page-template-page-about-production .footer__upperContainer {
    display: none; }
  .page-template-page-about-production .footer__lowerContainer {
    border-top-color: #333333; }

.blog, .category {
  padding: 6.875rem 0 4.625rem;
  position: relative;
  width: 100%; }
  .blog h1, .category h1 {
    margin-bottom: 50px; }
  @media (max-width: 1024px) {
    .blog, .category {
      padding: 9.375rem 0 0rem; } }
  @media (max-width: 767px) {
    .blog, .category {
      margin-top: 0 !important;
      padding: 7.5rem 0 0rem; } }
  .blog__nav, .blog__nav ul, .category__nav, .category__nav ul {
    display: inline-flex; }
    .blog__nav li, .blog__nav ul li, .category__nav li, .category__nav ul li {
      margin-left: 30px; }
  .blog__nav, .category__nav {
    width: 100%;
    justify-content: center;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .blog__nav, .category__nav {
        display: none;
        visibility: hidden; } }
    .blog__nav li, .category__nav li {
      position: relative;
      cursor: pointer; }
      .blog__nav li ul li a, .category__nav li ul li a {
        color: #a4a4a4; }
      .blog__nav li ul li.current-cat a, .category__nav li ul li.current-cat a {
        color: #f2c145; }
      .blog__nav li ul li:hover .frame, .category__nav li ul li:hover .frame {
        display: block; }
  .blog__listPosts, .category__listPosts {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .blog__listPosts article, .category__listPosts article {
      opacity: 0;
      transition: all 0.8s ease-in-out;
      width: 47%;
      position: relative;
      overflow: hidden;
      margin-bottom: 65px; }
      .blog__listPosts article.isVisible, .category__listPosts article.isVisible {
        opacity: 1; }
      @media (max-width: 1024px) {
        .blog__listPosts article, .category__listPosts article {
          width: 100%;
          opacity: 1; } }
    .blog__listPosts .post__categorie, .category__listPosts .post__categorie {
      width: 100%;
      display: flex;
      justify-content: space-between;
      color: #8a8a8a;
      text-transform: capitalize;
      font-family: "Moderat";
      font-size: 0.875rem;
      line-height: 1.125rem;
      font-weight: 300;
      margin: 15px 0; }
      .blog__listPosts .post__categorie a, .category__listPosts .post__categorie a {
        color: #8a8a8a;
        font-family: "Moderat";
        font-size: 0.875rem;
        line-height: 1.125rem; }
    .blog__listPosts .post__title, .category__listPosts .post__title {
      font-family: "Freight";
      font-size: 1.7rem;
      letter-spacing: 0.06062rem;
      line-height: 2rem; }
    .blog__listPosts .post__thumb, .category__listPosts .post__thumb {
      width: 100%;
      overflow: hidden; }
      .blog__listPosts .post__thumb img, .category__listPosts .post__thumb img {
        width: 100%;
        height: auto; }
    .blog__listPosts .post__excerpt, .category__listPosts .post__excerpt {
      color: #a4a4a4;
      margin-top: 15px;
      line-height: 1.875rem; }
  .blog .frame, .category .frame {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: none;
    height: 62px;
    width: 125px; }
  .blog .post img, .category .post img {
    transform: scale(1);
    transition: all .7s ease-in-out; }
    .blog .post img:hover, .category .post img:hover {
      transform: scale(1.1);
      transition: all .7s ease-in-out; }

.page-template-page-contact .footer__upperContainer {
  display: none; }

.page-template-page-home.with-light-header .header__burger div {
  background-color: #ffffff; }
  .page-template-page-home.with-light-header .header__burger div::before, .page-template-page-home.with-light-header .header__burger div::after {
    background-color: #ffffff; }

.page-template-page-home.with-light-header .navigation-opened .header__burger div {
  background-color: #000000; }
  .page-template-page-home.with-light-header .navigation-opened .header__burger div::before, .page-template-page-home.with-light-header .navigation-opened .header__burger div::after {
    background-color: #000000; }

.single-web_project .footer,
.single-prod_project .footer,
.single-photo_project .footer {
  display: none; }

.single-web_project .heroImage:nth-last-child(2),
.single-prod_project .heroImage:nth-last-child(2),
.single-photo_project .heroImage:nth-last-child(2) {
  margin-top: 0; }

.single-photo_project .passwordForm {
  border-color: #000000;
  color: #000000; }

.single-photo_project .header__backLink {
  color: black;
  fill: black; }

.single-photo_project .header__backLinkPhoto {
  display: block; }

.single-prod_project .header__burger div {
  background-color: #ffffff; }
  .single-prod_project .header__burger div::before, .single-prod_project .header__burger div::after {
    background-color: #ffffff; }

.single-prod_project .navigation-opened .header__burger div {
  background-color: #000000; }
  .single-prod_project .navigation-opened .header__burger div::before, .single-prod_project .navigation-opened .header__burger div::after {
    background-color: #000000; }

.single-prod_project .passwordForm {
  border-color: #ffffff;
  color: #ffffff; }

.single-prod_project .projectDetails__dateContainer span:first-child {
  color: #ffffff; }

.single-prod_project .header__backLink {
  color: white;
  fill: white; }

.single-prod_project .header__backLinkProd {
  display: block; }

.single-prod_project .nextProject h2 {
  color: #ffffff; }

.single-web_project .passwordForm {
  border-color: #000000;
  color: #000000; }

.single-web_project .header__backLink {
  color: black;
  fill: black; }

.single-web_project .header__backLinkWeb {
  display: block;
  padding-bottom: 1px; }

.page-template-page-prod-overview {
  background-color: #0f0f0f;
  padding-bottom: 20vh; }
  .page-template-page-prod-overview .header__burger div {
    background-color: #ffffff; }
    .page-template-page-prod-overview .header__burger div::before, .page-template-page-prod-overview .header__burger div::after {
      background-color: #ffffff; }
  .page-template-page-prod-overview .navigation-opened .header__burger div {
    background-color: #000000; }
    .page-template-page-prod-overview .navigation-opened .header__burger div::before, .page-template-page-prod-overview .navigation-opened .header__burger div::after {
      background-color: #000000; }
  .page-template-page-prod-overview .introText__content,
  .page-template-page-prod-overview .galleryElement__title {
    color: #ffffff; }
  .page-template-page-prod-overview .footer {
    display: none; }

.page-template-page-photo-overview {
  background-color: #f1f1f1;
  padding-bottom: 20vh; }
  .page-template-page-photo-overview .customCta--light {
    color: #000; }
    .page-template-page-photo-overview .customCta--light::before, .page-template-page-photo-overview .customCta--light::after {
      background-color: #000; }
    .page-template-page-photo-overview .customCta--light .customCta__inner::before, .page-template-page-photo-overview .customCta--light .customCta__inner::after {
      color: #000; }
  .page-template-page-photo-overview .introText__content,
  .page-template-page-photo-overview .galleryElement__title {
    color: #000; }
  .page-template-page-photo-overview .introText__content i {
    color: #c0c0c0; }
  .page-template-page-photo-overview .galleryElement__count,
  .page-template-page-photo-overview .galleryElement__description {
    color: #bebebe; }
  .page-template-page-photo-overview .footer {
    display: none; }

.page-template-page-photo-overview .introText,
.page-template-page-web-overview .introText,
.page-template-page-prod-overview .introText {
  height: 70vh; }
  @media (max-width: 767px) {
    .page-template-page-photo-overview .introText,
    .page-template-page-web-overview .introText,
    .page-template-page-prod-overview .introText {
      height: 50vh; } }

.page-template-page-photo-overview .introText__content,
.page-template-page-web-overview .introText__content,
.page-template-page-prod-overview .introText__content {
  font-size: 2.1875rem;
  line-height: 3rem;
  transform: translateX(-50%); }
  @media (max-width: 767px) {
    .page-template-page-photo-overview .introText__content,
    .page-template-page-web-overview .introText__content,
    .page-template-page-prod-overview .introText__content {
      font-size: 1.25rem;
      line-height: 1.6875rem;
      transform: translate(-50%, -50%); } }

.post-template-default .heroImage__imageContainer {
  width: 35vw;
  overflow: hidden;
  left: initial;
  right: 0; }
