/*! main.scss for RangeMe - last updated 2015.08.26 */
/**
 * 1. All units are in rems as this unit of measurement is supported in all
 *    required browsers. Media queries however use em units as rem units can
 *    be buggy in some browsers. 
 * 2. Parts of the code contained within may change before concluding 
 *    frontend development.
 *
 * ========================================================================== 
 *
 * Dependent on normalize.css - see git.io/normalize
 *
 */
#wpadminbar,
#ajax-links,
#body-classes {
  display: none !important; }

html,
#html-wrapper {
  margin-top: 0px !important;
  overflow-y: auto;
  overflow-x: hidden; }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: 'Untitled Sans',sans-serif; }

/* Functions */
/* ========================================================================== */
/* strip units from calculations */
/* Site Variables */
/* ========================================================================== */
/* Break Points */
/* Animation Values */
/* ========================================================================== */
/* Mixins */
/* ========================================================================== */
/* media queries */
/* CSS box-sizing */
/* border-radius */
/* text overflow */
/* transition */
/* transform */
/* background-size */
/* no select */
/* fill-parent */
/* horizontal-center */
/* Additional Resets */
/* ========================================================================== */
#js,
html,
body {
  margin: 0 !important;
  padding: 0 !important;
  -webkit-overflow-scrolling: touch; }

article,
div,
fieldset,
figure,
form,
footer,
header,
nav,
section {
  display: block;
  position: relative;
  padding: 0;
  margin: 0;
  border: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

a {
  outline: none !important;
  text-decoration: none;
  color: inherit; }

h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
ol,
ul,
blockquote {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-style: normal; }

figure {
  line-height: 0;
  background-color: transparent; }

img,
video,
iframe {
  max-width: 100%;
  max-height: none;
  height: auto;
  width: auto; }

mark {
  background-color: transparent; }

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  background-position: center;
  background-repeat: no-repeat;
  -ms-transform-origin: center;
  -webkit-transform-origin: center;
  transform-origin: center;
  outline: none !important; }

ul,
li {
  list-style: none; }

input,
button,
textarea {
  outline: none !important; }

p:empty {
  display: none !important; }

/* Indicators - used by JS to determine media queries and screen size */
/* ========================================================================== */
#js-screen-size {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#js-desktop-indicator {
  height: 1px;
  width: 1px;
  position: absolute;
  top: 0;
  left: 0;
  display: none; }
  @media screen and (min-width: 60rem) {
    #js-desktop-indicator {
      display: block; } }
#js-tablet-indicator {
  height: 1px;
  width: 1px;
  position: absolute;
  top: 0;
  left: 0;
  display: none; }
  @media screen and (min-width: 47.5em) {
    #js-tablet-indicator {
      display: block; } }
/* ========================================================================== */
/* UTILITY COMPONENTS */
/* ========================================================================== */
.u-clear {
  height: 1px !important;
  padding: 0 !important;
  content: "-" !important;
  text-indent: -9999px !important;
  position: relative !important;
  width: 100% !important;
  display: block !important;
  clear: both !important;
  margin: 0 0 -1px !important;
  overflow: hidden !important; }

.u-figure {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden; }
  .u-figure img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover; }
    .state-site-loaded .u-figure img {
      opacity: 0;
      -webkit-transition: opacity 400ms linear 100ms;
      -moz-transition: opacity 400ms linear 100ms;
      -ms-transition: opacity 400ms linear 100ms;
      transition: opacity 400ms linear 100ms;
      /* resolves blurry elements on webkit */ }
    .u-figure img.loaded {
      opacity: 1; }
      .state-site-loaded .u-figure img.loaded {
        opacity: 1; }
  .u-figure video {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover; }
  .u-figure--contain video,
  .u-figure--contain img {
    object-fit: contain; }
  .u-figure--center img {
    object-position: 50% 50%; }
  .u-figure--top img {
    object-position: 50% 0%; }
  .u-figure--bottom img {
    object-position: 50% 100%; }
  .u-figure--left img {
    object-position: 0% 50%; }
  .u-figure--right img {
    object-position: 100% 50%; }
  .u-figure--top-left img {
    object-position: 0% 0%; }
  .u-figure--top-right img {
    object-position: 100% 0%; }
  .u-figure--bottom-left img {
    object-position: 0% 100%; }
  .u-figure--bottom-right img {
    object-position: 100% 100%; }
  .u-figure--center video {
    object-position: 50% 50%; }
  .u-figure--top video {
    object-position: 50% 0%; }
  .u-figure--bottom video {
    object-position: 50% 100%; }
  .u-figure--left video {
    object-position: 0% 50%; }
  .u-figure--right video {
    object-position: 100% 50%; }
  .u-figure--top-left video {
    object-position: 0% 0%; }
  .u-figure--top-right video {
    object-position: 100% 0%; }
  .u-figure--bottom-left video {
    object-position: 0% 100%; }
  .u-figure--bottom-right video {
    object-position: 100% 100%; }

.u-bottom-space {
  padding-bottom: 1.6875rem; }

.u-top-space {
  margin-top: 1.6875rem !important; }

.js-img-parallax {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute; }

.touch .js-scroll-panel {
  display: none !important; }

/* ========================================================================== */
/* LOADING ELEMENTS */
/* ========================================================================== */
.c-site-cover {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: #000000;
  position: fixed;
  z-index: 10000;
  visibility: hidden; }
  .state-site-loaded .c-site-cover {
    visibility: hidden; }

.c-page-cover {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: #000000;
  position: fixed;
  z-index: 6000;
  visibility: hidden;
  opacity: 0; }
  .c-page-cover.state-active {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 400ms, visibility 0ms;
    -moz-transition: opacity 400ms, visibility 0ms;
    -ms-transition: opacity 400ms, visibility 0ms;
    transition: opacity 400ms, visibility 0ms;
    /* resolves blurry elements on webkit */ }

.scope-load-characters .char {
  display: inline-block;
  position: relative;
  overflow: hidden; }

.scope-load-characters .char-inner {
  display: inline-block;
  position: relative; }

.scope-load-characters .char-0-0 {
  opacity: 0;
  transform: translateX(6rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-0 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-1 {
  opacity: 0;
  transform: translateX(7rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 5ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 5ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 5ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 5ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-1 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-2 {
  opacity: 0;
  transform: translateX(8rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 10ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 10ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 10ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 10ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-2 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-3 {
  opacity: 0;
  transform: translateX(9rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 15ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 15ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 15ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 15ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-3 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-4 {
  opacity: 0;
  transform: translateX(10rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 20ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 20ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 20ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 20ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-4 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-5 {
  opacity: 0;
  transform: translateX(11rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 25ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 25ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 25ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 25ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-5 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-6 {
  opacity: 0;
  transform: translateX(12rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 30ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 30ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 30ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 30ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-6 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-7 {
  opacity: 0;
  transform: translateX(13rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 35ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 35ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 35ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 35ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-7 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-8 {
  opacity: 0;
  transform: translateX(14rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 40ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 40ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 40ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 40ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-8 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-9 {
  opacity: 0;
  transform: translateX(15rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 45ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 45ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 45ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 45ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-9 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-10 {
  opacity: 0;
  transform: translateX(16rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-10 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-11 {
  opacity: 0;
  transform: translateX(17rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 55ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 55ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 55ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 55ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-11 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-12 {
  opacity: 0;
  transform: translateX(18rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 60ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 60ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 60ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 60ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-12 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-13 {
  opacity: 0;
  transform: translateX(19rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 65ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 65ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 65ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 65ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-13 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-14 {
  opacity: 0;
  transform: translateX(20rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 70ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 70ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 70ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 70ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-14 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-15 {
  opacity: 0;
  transform: translateX(21rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 75ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 75ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 75ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 75ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-15 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-16 {
  opacity: 0;
  transform: translateX(22rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 80ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 80ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 80ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 80ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-16 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-17 {
  opacity: 0;
  transform: translateX(23rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 85ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 85ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 85ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 85ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-17 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-18 {
  opacity: 0;
  transform: translateX(24rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 90ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 90ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 90ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 90ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-18 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-19 {
  opacity: 0;
  transform: translateX(25rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 95ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 95ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 95ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 95ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-19 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.scope-load-characters .char-0-20 {
  opacity: 0;
  transform: translateX(26rem);
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .scope-load-characters .char-0-20 {
    opacity: 1;
    transform: translateX(0vw) !important; }

.c-load-element {
  opacity: 0;
  transition: opacity 800ms linear 800ms; }
  .state-site-loaded .c-load-element {
    opacity: 1; }

.c-ajax-load-element {
  opacity: 0;
  transition: opacity 800ms linear 800ms, transform 800ms linear cubic-bezier(0.39, 0.575, 0.565, 1) 400ms; }
  .state-ajax-loaded .c-ajax-load-element {
    opacity: 1; }
  .state-gallery-open .c-ajax-load-element {
    transition: opacity 800ms linear 800ms, transform 800ms linear cubic-bezier(0.39, 0.575, 0.565, 1);
    -webkit-transform: translateY(-100vh);
    -ms-transform: translateY(-100vh);
    transform: translateY(-100vh);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }

.c-load-page-element {
  opacity: 0;
  transition: opacity 800ms linear 800ms; }
  .state-page-loaded .c-load-page-element {
    opacity: 1; }

.c-transition-pixi-in {
  opacity: 0;
  -webkit-transition: opacity 3200ms;
  -moz-transition: opacity 3200ms;
  -ms-transition: opacity 3200ms;
  transition: opacity 3200ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .c-transition-pixi-in {
    opacity: 1; }

.c-transition-text-in {
  opacity: 0;
  transform: translateX(3rem) !important;
  -webkit-transition: transform 1200ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
  -moz-transition: transform 1200ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
  -ms-transition: transform 1200ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
  transition: transform 1200ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .c-transition-text-in {
    transform: translateX(0) !important;
    opacity: 1; }

.c-transition-media-in__cover {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: #000000;
  transform: translateX(0rem) translateZ(0) !important;
  -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
  /* resolves blurry elements on webkit */ }
  .state-page-loaded .c-transition-media-in__cover {
    transform: translateX(-100%) translateZ(0) !important; }

.c-transition-media-in img {
  position: relative;
  transform: translateX(6rem) translateZ(0) !important; }
  .state-page-loaded .c-transition-media-in img {
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms !important;
    transform: translateX(0rem) translateZ(0) !important; }

.c-transition-media-in video {
  position: relative;
  transform: translateX(6rem) translateZ(0) !important; }
  .state-page-loaded .c-transition-media-in video {
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms !important;
    transform: translateX(0rem) translateZ(0) !important; }

.c-transition-video-in {
  opacity: 0;
  transition: opacity 1600ms !important; }
  .state-page-loaded .c-transition-video-in.state-video-playing {
    opacity: 1; }

/* ========================================================================== */
/* TEXT COMPONENTS */
/* ========================================================================== */
.c-text, .c-mod--gallery__zoom__back, .c-mod--gallery__links__title, .c-mod--post__body__text, .c-mod--menu-1__menu__section__heading, .c-mod--menu-1__price-note, .c-video__skip-video, .c-video__timer__end, .c-video__timer__current, .c-loader__enter__skip-text, .c-loader__enter__play-text, .c-teaser__header, .c-read-more, .c-footer__link, .c-footer, .c-audio-button__text, .c-header-links__link, .c-close-modal, .c-menu-button__text, .scope-form form .wpcf7-mail-sent-ok, .scope-form form .filename, .scope-form form .wpcf7-form-control-wrap.file:before, .scope-form form .select-option,
.scope-form form .faux-input,
.scope-form form textarea,
.scope-form form input, .scope-form form label, .c-button, .scope-text--careers h1,
.scope-text--careers h2,
.scope-text--careers h3,
.scope-text--careers h4,
.scope-text--careers h5,
.scope-text--careers h6,
.scope-text--careers p,
.scope-text--careers ul, .scope-text p {
  font-family: 'DIN Next LT W01 Regular', sans-serif;
  font-size: 0.875rem;
  line-height: 1.6875rem;
  letter-spacing: 0.003em;
  color: #FFFFFF;
  padding: 0 0 1.6875rem 0;
  margin: 0;
  font-weight: normal; }
  @media screen and (max-width: 47.5em) {
    .c-text, .c-mod--gallery__zoom__back, .c-mod--gallery__links__title, .c-mod--post__body__text, .c-mod--menu-1__menu__section__heading, .c-mod--menu-1__price-note, .c-video__skip-video, .c-video__timer__end, .c-video__timer__current, .c-loader__enter__skip-text, .c-loader__enter__play-text, .c-teaser__header, .c-read-more, .c-footer__link, .c-footer, .c-audio-button__text, .c-header-links__link, .c-close-modal, .c-menu-button__text, .scope-form form .wpcf7-mail-sent-ok, .scope-form form .filename, .scope-form form .wpcf7-form-control-wrap.file:before, .scope-form form .select-option,
    .scope-form form .faux-input,
    .scope-form form textarea,
    .scope-form form input, .scope-form form label, .c-button, .scope-text--careers h1,
    .scope-text--careers h2,
    .scope-text--careers h3,
    .scope-text--careers h4,
    .scope-text--careers h5,
    .scope-text--careers h6,
    .scope-text--careers p,
    .scope-text--careers ul, .scope-text p {
      font-size: 0.75rem;
      line-height: 1.3125rem;
      padding: 0 0 1.3125rem 0; } }
  .c-text:last-child, .c-mod--gallery__zoom__back:last-child, .c-mod--gallery__links__title:last-child, .c-mod--post__body__text:last-child, .c-mod--menu-1__menu__section__heading:last-child, .c-mod--menu-1__price-note:last-child, .c-video__skip-video:last-child, .c-video__timer__end:last-child, .c-video__timer__current:last-child, .c-loader__enter__skip-text:last-child, .c-loader__enter__play-text:last-child, .c-teaser__header:last-child, .c-read-more:last-child, .c-footer__link:last-child, .c-footer:last-child, .c-audio-button__text:last-child, .c-header-links__link:last-child, .c-close-modal:last-child, .c-menu-button__text:last-child, .scope-form form .wpcf7-mail-sent-ok:last-child, .scope-form form .filename:last-child, .scope-form form .wpcf7-form-control-wrap.file:last-child:before, .scope-form form .select-option:last-child,
  .scope-form form .faux-input:last-child,
  .scope-form form textarea:last-child,
  .scope-form form input:last-child, .scope-form form label:last-child, .c-button:last-child, .scope-text--careers h1:last-child,
  .scope-text--careers h2:last-child,
  .scope-text--careers h3:last-child,
  .scope-text--careers h4:last-child,
  .scope-text--careers h5:last-child,
  .scope-text--careers h6:last-child,
  .scope-text--careers p:last-child,
  .scope-text--careers ul:last-child, .scope-text p:last-child {
    padding-bottom: 0; }
  .c-text--no-space {
    padding-bottom: 0; }
  .c-text--double-space {
    padding-bottom: 3.375rem; }
    @media screen and (max-width: 47.5em) {
      .c-text--double-space {
        padding-bottom: 1.3125rem; } }
    .c-text--double-space:last-child {
      padding-bottom: 3.375rem; }
      @media screen and (max-width: 47.5em) {
        .c-text--double-space:last-child {
          padding-bottom: 1.3125rem; } }
  .c-text__line {
    overflow: hidden;
    position: relative;
    display: inline-block;
    text-indent: -9999px;
    background-color: white;
    height: 0.0625rem;
    top: -0.25rem;
    width: 1.5rem;
    margin-right: 0.375rem; }

.c-heading, .c-mod--abt-1__text__heading {
  font-family: 'DIN Next LT W01 Bold', sans-serif;
  font-size: 4rem;
  line-height: 1.0625em;
  color: #FFFFFF;
  letter-spacing: 0.010167em; }
  @media screen and (max-width: 47.5em) {
    .c-heading, .c-mod--abt-1__text__heading {
      font-size: 8.75vw; } }
  @media screen and (max-width: 35em) {
    .c-heading, .c-mod--abt-1__text__heading {
      font-size: 10.5vw; } }
  .c-heading--large {
    font-size: 5.25rem; }
    @media screen and (max-width: 60rem) {
      .c-heading--large {
        font-size: 4rem; } }
    @media screen and (max-width: 47.5em) {
      .c-heading--large {
        font-size: 8.75vw; } }
    @media screen and (max-width: 35em) {
      .c-heading--large {
        font-size: 10.5vw; } }
.c-heading + .c-text, .c-heading + .c-mod--gallery__zoom__back, .c-heading + .c-mod--gallery__links__title, .c-heading + .c-mod--post__body__text, .c-heading + .c-mod--menu-1__menu__section__heading, .c-heading + .c-mod--menu-1__price-note, .c-mod--abt-1__text__heading + .c-text, .c-mod--abt-1__text__heading + .c-mod--gallery__zoom__back, .c-mod--abt-1__text__heading + .c-mod--gallery__links__title, .c-mod--abt-1__text__heading + .c-mod--post__body__text, .c-mod--abt-1__text__heading + .c-mod--menu-1__menu__section__heading, .c-mod--abt-1__text__heading + .c-mod--menu-1__price-note, .c-heading + .c-video__skip-video, .c-mod--abt-1__text__heading + .c-video__skip-video, .c-heading + .c-video__timer__end, .c-mod--abt-1__text__heading + .c-video__timer__end, .c-heading + .c-video__timer__current, .c-mod--abt-1__text__heading + .c-video__timer__current, .c-heading + .c-loader__enter__skip-text, .c-mod--abt-1__text__heading + .c-loader__enter__skip-text, .c-heading + .c-loader__enter__play-text, .c-mod--abt-1__text__heading + .c-loader__enter__play-text, .c-heading + .c-teaser__header, .c-mod--abt-1__text__heading + .c-teaser__header, .c-heading + .c-read-more, .c-mod--abt-1__text__heading + .c-read-more, .c-heading + .c-footer__link, .c-mod--abt-1__text__heading + .c-footer__link, .c-heading + .c-footer, .c-mod--abt-1__text__heading + .c-footer, .c-heading + .c-audio-button__text, .c-mod--abt-1__text__heading + .c-audio-button__text, .c-heading + .c-header-links__link, .c-mod--abt-1__text__heading + .c-header-links__link, .c-heading + .c-close-modal, .c-mod--abt-1__text__heading + .c-close-modal, .c-heading + .c-menu-button__text, .c-mod--abt-1__text__heading + .c-menu-button__text, .scope-form form .c-heading + .wpcf7-mail-sent-ok, .scope-form form .c-mod--abt-1__text__heading + .wpcf7-mail-sent-ok, .scope-form form .c-heading + .filename, .scope-form form .c-mod--abt-1__text__heading + .filename, .scope-form form .c-heading + .wpcf7-form-control-wrap.file:before, .scope-form form .c-mod--abt-1__text__heading + .wpcf7-form-control-wrap.file:before, .scope-form form .c-heading + .select-option, .scope-form form .c-mod--abt-1__text__heading + .select-option,
.scope-form form .c-heading + .faux-input,
.scope-form form .c-mod--abt-1__text__heading + .faux-input,
.scope-form form .c-heading + textarea,
.scope-form form .c-mod--abt-1__text__heading + textarea,
.scope-form form .c-heading + input,
.scope-form form .c-mod--abt-1__text__heading + input, .scope-form form .c-heading + label, .scope-form form .c-mod--abt-1__text__heading + label, .c-heading + .c-button, .c-mod--abt-1__text__heading + .c-button, .scope-text--careers .c-heading + h1, .scope-text--careers .c-mod--abt-1__text__heading + h1,
.scope-text--careers .c-heading + h2,
.scope-text--careers .c-mod--abt-1__text__heading + h2,
.scope-text--careers .c-heading + h3,
.scope-text--careers .c-mod--abt-1__text__heading + h3,
.scope-text--careers .c-heading + h4,
.scope-text--careers .c-mod--abt-1__text__heading + h4,
.scope-text--careers .c-heading + h5,
.scope-text--careers .c-mod--abt-1__text__heading + h5,
.scope-text--careers .c-heading + h6,
.scope-text--careers .c-mod--abt-1__text__heading + h6,
.scope-text--careers .c-heading + p,
.scope-text--careers .c-mod--abt-1__text__heading + p,
.scope-text--careers .c-heading + ul,
.scope-text--careers .c-mod--abt-1__text__heading + ul, .scope-text .c-heading + p, .scope-text .c-mod--abt-1__text__heading + p {
  padding-top: 1.6875rem; }

.c-decorative-text, .c-mod--abt-5__text {
  font-family: 'DIN Next LT W01 Bold', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.015em;
  text-align: center;
  line-height: 0.9em;
  font-size: 9.875vw;
  color: #FFFFFF; }

.c-quote, .scope-limit-heading, .c-post-header__inner {
  font-family: 'DIN Next LT W01 Bold', sans-serif;
  font-size: 3.125rem;
  line-height: 1.4em;
  font-weight: normal;
  padding: 0;
  margin: 0;
  color: #FFFFFF; }
  @media screen and (max-width: 47.5em) {
    .c-quote, .scope-limit-heading, .c-post-header__inner {
      font-size: 6.5625vw; } }
.scope-text--justify p {
  text-align: justify; }

.scope-text--careers {
  padding-top: 2.5rem; }
  .scope-text--careers h1,
  .scope-text--careers h2,
  .scope-text--careers h3,
  .scope-text--careers h4,
  .scope-text--careers h5,
  .scope-text--careers h6 {
    font-family: 'DIN Next LT W01 Bold', sans-serif;
    padding-bottom: 0; }
  .scope-text--careers p + ul {
    margin-top: -1.6875rem; }
  .scope-text--careers li {
    position: relative;
    padding-left: 1.125rem; }
    .scope-text--careers li:before {
      content: '-';
      text-indent: -9999px;
      position: absolute;
      left: 0;
      top: 0.8125rem;
      width: 0.625rem;
      height: 0.0625rem;
      background-color: #a4a4a4; }

.c-button {
  height: 4.5rem;
  width: 100%;
  max-width: 13.75rem;
  text-align: center;
  line-height: 4.5rem;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #FFFFFF;
  white-space: nowrap;
  overflow: hidden; }
  .no-touch .c-button:hover {
    border-color: white; }
  .c-button--fill {
    border-color: #FFFFFF;
    background-color: #FFFFFF;
    color: #000000; }
  .c-button__text {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    color: inherit;
    z-index: 10; }
  .c-button:before {
    content: '-';
    text-indent: -9999px;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    border: 1px solid #666;
    -webkit-transition: border-color 250ms;
    -moz-transition: border-color 250ms;
    -ms-transition: border-color 250ms;
    transition: border-color 250ms;
    /* resolves blurry elements on webkit */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
  .no-touch .c-button:hover:before {
    border-color: white; }
  .no-touch .c-button.inactive:hover:before {
    border-color: #666; }
  .c-button:after {
    width: 0;
    height: 0;
    border: 1px solid #666;
    background-color: #000000;
    content: '-';
    position: absolute;
    bottom: -0.5625rem;
    right: -0.5625rem;
    text-indent: -9999px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: border-color 250ms, width 250ms, height 250ms;
    -moz-transition: border-color 250ms, width 250ms, height 250ms;
    -ms-transition: border-color 250ms, width 250ms, height 250ms;
    transition: border-color 250ms, width 250ms, height 250ms;
    /* resolves blurry elements on webkit */ }
  .no-touch .c-button:hover:after {
    width: 1rem;
    height: 1rem;
    border-color: white; }
  .no-touch .c-button.inactive:hover:after {
    width: 0rem;
    height: 0rem;
    border-color: #666; }

.c-lune-wheel, .c-mod--abt-5__wheel {
  width: 9.25em;
  height: 9.25em;
  position: absolute;
  font-size: 1rem; }
  @media screen and (max-width: 47.5em) {
    .c-lune-wheel, .c-mod--abt-5__wheel {
      font-size: 0.75rem; } }
  .c-lune-wheel__wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }
  .c-lune-wheel__char {
    font-size: 0.625em;
    text-align: center;
    font-family: 'DIN Next LT W01 Regular', sans-serif;
    display: block;
    color: #FFFFFF;
    opacity: 0.68;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    height: 50%;
    transform-origin: bottom center; }
    .c-lune-wheel__char--1 {
      transform: rotate(-10.5882352941deg); }
    .c-lune-wheel__char--2 {
      transform: rotate(10.5882352941deg); }
    .c-lune-wheel__char--3 {
      transform: rotate(31.7647058824deg); }
    .c-lune-wheel__char--4 {
      transform: rotate(52.9411764706deg); }
    .c-lune-wheel__char--5 {
      transform: rotate(74.1176470588deg); }
    .c-lune-wheel__char--6 {
      transform: rotate(95.2941176471deg); }
    .c-lune-wheel__char--7 {
      transform: rotate(116.4705882353deg); }
    .c-lune-wheel__char--8 {
      transform: rotate(137.6470588235deg); }
    .c-lune-wheel__char--9 {
      transform: rotate(158.8235294118deg); }
    .c-lune-wheel__char--10 {
      transform: rotate(180deg); }
    .c-lune-wheel__char--11 {
      transform: rotate(201.1764705882deg); }
    .c-lune-wheel__char--12 {
      transform: rotate(222.3529411765deg); }
    .c-lune-wheel__char--13 {
      transform: rotate(243.5294117647deg); }
    .c-lune-wheel__char--14 {
      transform: rotate(264.7058823529deg); }
    .c-lune-wheel__char--15 {
      transform: rotate(285.8823529412deg); }
    .c-lune-wheel__char--16 {
      transform: rotate(307.0588235294deg); }
    .c-lune-wheel__char--17 {
      transform: rotate(328.2352941176deg); }
  .c-lune-wheel__year {
    width: 2em;
    position: absolute;
    top: calc(50% - 1.875em);
    left: calc(50% - 1em); }
    .c-lune-wheel__year__char {
      width: 100%;
      line-height: 1.25em;
      font-size: 0.75em;
      text-align: center;
      font-family: 'DIN Next LT W01 Regular', sans-serif;
      color: #FFFFFF;
      display: block;
      position: relative; }

.scope-wrap-lines span {
  position: relative;
  display: block; }
  .scope-wrap-lines span span {
    position: relative;
    display: block;
    transform-origin: 0 50%;
    opacity: 0; }
  .scope-wrap-lines span:nth-child(1) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(1) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(2) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(2) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(3) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(3) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(4) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(4) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(5) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(5) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(6) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(6) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(7) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(7) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(8) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(8) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(9) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 650ms, opacity 800ms linear 650ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 650ms, opacity 800ms linear 650ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 650ms, opacity 800ms linear 650ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 650ms, opacity 800ms linear 650ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(9) span {
        transform: none !important;
        transition: none; } }
  .scope-wrap-lines span:nth-child(10) span {
    transform: translateX(3rem);
    -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 700ms, opacity 800ms linear 700ms;
    -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 700ms, opacity 800ms linear 700ms;
    -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 700ms, opacity 800ms linear 700ms;
    transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 700ms, opacity 800ms linear 700ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 60rem) {
      .scope-wrap-lines span:nth-child(10) span {
        transform: none !important;
        transition: none; } }
.scope-wrap-lines.state-transition-in > span span {
  opacity: 1 !important;
  transform: translateX(0) !important; }
  @media screen and (max-width: 60rem) {
    .scope-wrap-lines.state-transition-in > span span {
      transform: none !important;
      transition: opacity 800ms linear 500ms !important; } }
/* ========================================================================== */
/* FORM ELEMENTS */
/* ========================================================================== */
.c-full-col {
  display: block;
  width: 100%; }

.c-half-col {
  width: calc(50% - 1.75rem);
  display: block; }
  @media screen and (max-width: 60rem) {
    .c-half-col {
      width: calc(50% - 1.25rem); } }
  @media screen and (max-width: 47.5em) {
    .c-half-col {
      width: calc(50% - 0.625rem); } }
  @media screen and (max-width: 35em) {
    .c-half-col {
      width: 100%; } }
.scope-form form {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  /* error styling */ }
  @media screen and (max-width: 35em) {
    .scope-form form {
      display: block; } }
  .scope-form form br {
    display: none !important; }
  .scope-form form label {
    display: block;
    padding: 0;
    padding-bottom: 0 !important; }
  .scope-form form .select-option,
  .scope-form form .faux-input,
  .scope-form form textarea,
  .scope-form form input {
    border: none;
    border-bottom: 1px solid #5c5c5c;
    padding: 0;
    line-height: 1;
    width: 100%;
    box-sizing: border-box;
    border-radius: 0;
    -webkit-appearance: none;
    appearance: none;
    box-shadow: none;
    outline: none;
    background-color: transparent;
    font-size: 1.125rem;
    padding: 0.375rem 0 0.625rem !important;
    margin-bottom: 5rem;
    width: 0;
    color: rgba(255, 255, 255, 0);
    -webkit-transition: width 0ms, color 0ms;
    -moz-transition: width 0ms, color 0ms;
    -ms-transition: width 0ms, color 0ms;
    transition: width 0ms, color 0ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 47.5em) {
      .scope-form form .select-option,
      .scope-form form .faux-input,
      .scope-form form textarea,
      .scope-form form input {
        font-size: 0.9375rem;
        padding: 0.3125rem 0 0.5rem !important;
        margin-bottom: 3rem; } }
    .scope-form form .select-option.wpcf7-not-valid,
    .scope-form form .faux-input.wpcf7-not-valid,
    .scope-form form textarea.wpcf7-not-valid,
    .scope-form form input.wpcf7-not-valid {
      border-color: #990000 !important; }
    .scope-form form .select-option:-webkit-autofill,
    .scope-form form .faux-input:-webkit-autofill,
    .scope-form form textarea:-webkit-autofill,
    .scope-form form input:-webkit-autofill {
      background-color: #000000 !important;
      -webkit-box-shadow: 0 0 0 30px #000000 inset;
      -webkit-text-fill-color: #FFFFFF !important; }
  .scope-form form .faux-input {
    min-width: 0;
    display: block;
    position: relative;
    background-image: url("https://lunecroissanterie.com/wp-content/themes/lune/img/down-select.png");
    background-size: 0.5rem auto;
    background-position: calc(100% - 0.375rem) 50%;
    color: #a4a4a4 !important;
    font-size: 1.125rem; }
    .scope-form form .faux-input.selected {
      color: white !important; }
    @media screen and (max-width: 47.5em) {
      .scope-form form .faux-input {
        padding: 0.4375rem 0 0.5rem !important;
        font-size: 0.9375rem; } }
  .scope-form form .wpcf7-form-control-wrap.file {
    position: relative;
    display: block; }
    .scope-form form .wpcf7-form-control-wrap.file:before {
      content: 'Upload';
      font-size: 1.125rem;
      padding: 0.125rem 0 0.125rem !important;
      box-sizing: border-box;
      opacity: 0;
      border: 1px solid #5c5c5c;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      text-align: center;
      margin-top: 0.25rem; }
      @media screen and (max-width: 47.5em) {
        .scope-form form .wpcf7-form-control-wrap.file:before {
          font-size: 0.9375rem; } }
  @media screen and (max-width: 47.5em) {
    .scope-form form .wpcf7-form-control-wrap.position {
      z-index: 100;
      display: block;
      overflow: visible; } }
  .scope-form form .filename {
    padding: 0;
    color: white !important; }
  @media screen and (max-width: 47.5em) {
    .scope-form form select {
      display: block !important;
      opacity: 0.01;
      width: 100%;
      position: absolute;
      top: 0;
      height: 2rem; } }
  .scope-form form .input-file-remove {
    font-size: 1rem; }
  .scope-form form input[type="file"] {
    border-bottom-color: transparent !important;
    text-indent: -9999px;
    opacity: 0.01 !important; }
  .scope-form form .faux-input {
    width: 100%;
    opacity: 0; }
  .scope-form form .file-name-wrapper {
    display: block;
    position: absolute;
    top: 2.375rem; }
  .scope-form form .select-option,
  .scope-form form .faux-input {
    padding: 0.5rem 0 !important; }
  .scope-form form .dropdown {
    display: none;
    position: absolute;
    width: 100%;
    top: 4.125rem;
    z-index: 100; }
    .scope-form form .dropdown li:last-child {
      border-bottom: none !important; }
    .scope-form form .dropdown li .select-option {
      color: #a4a4a4;
      text-align: left !important;
      font-size: 0.875rem !important; }
      .scope-form form .dropdown li .select-option:hover, .scope-form form .dropdown li .select-option.active {
        color: white !important; }
    .scope-form form .dropdown.active {
      display: block; }
    .scope-form form .dropdown .select-option {
      border: none !important; }
  .scope-form form textarea {
    height: 8rem;
    resize: none;
    overflow: hidden; }
  .scope-form form .state-transition-in input {
    width: 100%;
    color: white;
    -webkit-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -moz-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -ms-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    /* resolves blurry elements on webkit */ }
  .scope-form form .state-transition-in .faux-input {
    width: 100%;
    color: white;
    -webkit-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -moz-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -ms-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    /* resolves blurry elements on webkit */ }
  .scope-form form .state-transition-in textarea {
    width: 100%;
    color: white;
    -webkit-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -moz-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    -ms-transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    transition: width 800ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, color 250ms linear 800ms;
    /* resolves blurry elements on webkit */ }
  .scope-form form .state-transition-in .wpcf7-form-control-wrap.file:before {
    opacity: 1;
    -webkit-transition: opacity 250ms linear 800ms;
    -moz-transition: opacity 250ms linear 800ms;
    -ms-transition: opacity 250ms linear 800ms;
    transition: opacity 250ms linear 800ms;
    /* resolves blurry elements on webkit */ }
  .scope-form form .state-transition-in .faux-input {
    width: 100% !important;
    opacity: 1;
    -webkit-transition: opacity 250ms linear 800ms;
    -moz-transition: opacity 250ms linear 800ms;
    -ms-transition: opacity 250ms linear 800ms;
    transition: opacity 250ms linear 800ms;
    /* resolves blurry elements on webkit */ }
  .scope-form form input.wpcf7-submit {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    opacity: 0; }
  .scope-form form .wpcf7-not-valid-tip,
  .scope-form form .wpcf7-validation-errors,
  .scope-form form .ajax-loader {
    display: none !important; }
  .scope-form form .c-button {
    display: inline-block;
    float: right; }
    @media screen and (max-width: 47.5em) {
      .scope-form form .c-button {
        max-width: 100%;
        width: 100%; } }
  .scope-form form .wpcf7-mail-sent-ok {
    padding: 0;
    border: none;
    max-width: calc(100% - 15rem);
    display: block;
    margin-top: -3.0625rem;
    height: auto; }
    @media screen and (max-width: 47.5em) {
      .scope-form form .wpcf7-mail-sent-ok {
        height: auto;
        text-align: center;
        width: 100%;
        max-width: 100%;
        padding-top: 2rem; } }
/* ========================================================================== */
/* GLOBAL ELEMENTS */
/* ========================================================================== */
.c-site-logo {
  width: 2.8125rem;
  position: fixed;
  z-index: 9000;
  height: 0.75rem;
  left: 4rem;
  top: 4rem; }
  @media screen and (max-width: 60rem) {
    .c-site-logo {
      left: 2.5rem;
      top: 2.5rem; } }
  @media screen and (max-width: 47.5em) {
    .c-site-logo {
      left: 1.25rem;
      top: 1.25rem; } }
  .c-site-logo__link {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    text-indent: -9999px; }
    .c-site-logo__link svg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
      .c-site-logo__link svg path {
        fill: #FFFFFF; }

.c-scroll-down {
  width: 2rem;
  height: 2.25rem;
  position: absolute;
  position: fixed;
  top: calc(100vh - 5.75rem);
  left: 4.40625rem;
  z-index: 9000;
  overflow: visible;
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 400ms, visibility 0ms linear 0ms;
  -moz-transition: opacity 400ms, visibility 0ms linear 0ms;
  -ms-transition: opacity 400ms, visibility 0ms linear 0ms;
  transition: opacity 400ms, visibility 0ms linear 0ms;
  /* resolves blurry elements on webkit */ }
  @media screen and (max-width: 60rem) {
    .c-scroll-down {
      top: calc(100vh - 4.25rem);
      left: 2.90625rem; } }
  @media screen and (max-width: 47.5em) {
    .c-scroll-down {
      display: none !important; } }
  .c-scroll-down__svg {
    overflow: visible;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }
    .c-scroll-down__svg * {
      overflow: visible; }
    .c-scroll-down__svg__arrow {
      -webkit-transition: transform 100ms;
      -moz-transition: transform 100ms;
      -ms-transition: transform 100ms;
      transition: transform 100ms;
      /* resolves blurry elements on webkit */
      -webkit-transform: translateY(-0.375rem);
      -ms-transform: translateY(-0.375rem);
      transform: translateY(-0.375rem);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%; }
  .no-touch .c-scroll-down:hover .c-scroll-down__svg__arrow {
    -webkit-transform: translateY(0rem);
    -ms-transform: translateY(0rem);
    transform: translateY(0rem);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
  .state-scrolled .c-scroll-down {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 400ms, visibility 0ms linear 400ms;
    -moz-transition: opacity 400ms, visibility 0ms linear 400ms;
    -ms-transition: opacity 400ms, visibility 0ms linear 400ms;
    transition: opacity 400ms, visibility 0ms linear 400ms;
    /* resolves blurry elements on webkit */ }

.c-menu-button {
  position: fixed;
  z-index: 9000;
  height: 1.5rem;
  width: 5rem;
  display: block;
  left: 2.875rem;
  top: calc(50% - 0.75rem);
  transform-origin: center; }
  @media screen and (max-width: 60rem) {
    .c-menu-button {
      left: 1.375rem; } }
  @media screen and (max-width: 47.5em) {
    .c-menu-button {
      right: 1.25rem;
      left: auto;
      height: 1rem;
      width: 3.5rem;
      top: 1.25rem; } }
  .c-menu-button__inner {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    transform-origin: center;
    transform: rotate(-90deg); }
    @media screen and (max-width: 47.5em) {
      .c-menu-button__inner {
        transform: rotate(0deg); } }
  .c-menu-button__text {
    line-height: 1.4375rem;
    display: block; }
    @media screen and (max-width: 47.5em) {
      .c-menu-button__text {
        line-height: 0.9375rem; } }
  .c-menu-button__square {
    position: absolute;
    top: 0;
    right: 0;
    height: 1.5rem;
    width: 1.5rem;
    transform: rotate(-225deg); }
    @media screen and (max-width: 47.5em) {
      .c-menu-button__square {
        width: 1rem;
        height: 1rem; } }
    .c-menu-button__square__big {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      border: 1px solid #FFFFFF; }
    .c-menu-button__square__small {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      border: 1px solid #FFFFFF;
      width: 50%;
      height: 50%;
      border-color: transparent #fff #fff transparent;
      -webkit-transition: width 250ms, height 250ms;
      -moz-transition: width 250ms, height 250ms;
      -ms-transition: width 250ms, height 250ms;
      transition: width 250ms, height 250ms;
      /* resolves blurry elements on webkit */ }
  .no-touch .c-menu-button:hover .c-menu-button__square__small {
    width: 75%;
    height: 75%; }
  .state-menu-open .c-menu-button__square__small {
    width: 75%;
    height: 75%; }

.c-close-modal {
  padding: 0 3rem 0 0;
  line-height: 0.75rem;
  height: 0.75rem;
  top: 4rem;
  right: 4rem;
  display: inline-block;
  position: fixed;
  z-index: 9000;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 400ms linear 400ms, visibility 0ms linear 800ms;
  -moz-transition: opacity 400ms linear 400ms, visibility 0ms linear 800ms;
  -ms-transition: opacity 400ms linear 400ms, visibility 0ms linear 800ms;
  transition: opacity 400ms linear 400ms, visibility 0ms linear 800ms;
  /* resolves blurry elements on webkit */ }
  .state-video-modal .c-close-modal {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 400ms linear 400ms, visibility 0ms linear 400ms;
    -moz-transition: opacity 400ms linear 400ms, visibility 0ms linear 400ms;
    -ms-transition: opacity 400ms linear 400ms, visibility 0ms linear 400ms;
    transition: opacity 400ms linear 400ms, visibility 0ms linear 400ms;
    /* resolves blurry elements on webkit */ }
  @media screen and (max-width: 60rem) {
    .c-close-modal {
      top: 2.5rem;
      right: 2.5rem; } }
  @media screen and (max-width: 47.5em) {
    .c-close-modal {
      top: calc(50% - 28.125vw + 1rem);
      right: 1.1875rem;
      text-indent: -9999px; } }
  .c-close-modal__icon {
    position: absolute;
    right: 0;
    width: 1.75rem;
    height: 1.75rem;
    top: -0.5rem;
    background-color: #FFFFFF;
    border-radius: 50%;
    z-index: 0; }
    @media screen and (max-width: 47.5em) {
      .c-close-modal__icon {
        background-color: transparent;
        border: 1px solid #fff; } }
    .c-close-modal__icon:before {
      content: '-';
      text-indent: -9999px;
      background-color: #000000;
      width: 0.5rem;
      height: 0.125rem;
      top: calc(50% - 0.0625rem);
      left: calc(50% - 0.25rem);
      z-index: 100;
      position: absolute;
      -webkit-transition: transform 400ms;
      -moz-transition: transform 400ms;
      -ms-transition: transform 400ms;
      transition: transform 400ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-close-modal__icon:before {
        -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        transform: rotate(-135deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      .touch .c-close-modal__icon:before {
        -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        transform: rotate(-135deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      @media screen and (max-width: 47.5em) {
        .c-close-modal__icon:before {
          background-color: white; } }
    .c-close-modal__icon:after {
      content: '-';
      text-indent: -9999px;
      background-color: #000000;
      width: 0.5rem;
      height: 0.125rem;
      top: calc(50% - 0.0625rem);
      left: calc(50% - 0.25rem);
      z-index: 100;
      position: absolute;
      -webkit-transition: transform 400ms;
      -moz-transition: transform 400ms;
      -ms-transition: transform 400ms;
      transition: transform 400ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-close-modal__icon:after {
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      .touch .c-close-modal__icon:after {
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      @media screen and (max-width: 47.5em) {
        .c-close-modal__icon:after {
          background-color: white; } }
.c-header-links {
  height: 0.75rem;
  top: 4rem;
  right: 4rem;
  display: inline-block;
  position: fixed;
  z-index: 9000;
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 200ms linear 200ms, visibility 0ms linear 400ms;
  -moz-transition: opacity 200ms linear 200ms, visibility 0ms linear 400ms;
  -ms-transition: opacity 200ms linear 200ms, visibility 0ms linear 400ms;
  transition: opacity 200ms linear 200ms, visibility 0ms linear 400ms;
  /* resolves blurry elements on webkit */
  visibility: visible;
  -webkit-transition: opacity 125ms linear 800ms;
  -moz-transition: opacity 125ms linear 800ms;
  -ms-transition: opacity 125ms linear 800ms;
  transition: opacity 125ms linear 800ms;
  /* resolves blurry elements on webkit */ }
  .state-video-modal .c-header-links {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 400ms linear 0ms, visibility 0ms linear 400ms;
    -moz-transition: opacity 400ms linear 0ms, visibility 0ms linear 400ms;
    -ms-transition: opacity 400ms linear 0ms, visibility 0ms linear 400ms;
    transition: opacity 400ms linear 0ms, visibility 0ms linear 400ms;
    /* resolves blurry elements on webkit */ }
  @media screen and (max-width: 60rem) {
    .c-header-links {
      top: 2.5rem;
      right: 2.5rem; } }
  @media screen and (max-width: 47.5em) {
    .c-header-links {
      display: none !important; } }
  .c-header-links__link {
    position: relative;
    display: inline-block;
    overflow: visible;
    padding: 0;
    line-height: 0.75rem !important;
    margin-left: 2.75rem; }
    .c-header-links__link:before {
      content: '-';
      text-indent: -9999px;
      width: 0%;
      position: absolute;
      left: 0;
      bottom: -0.1875rem;
      height: 1px;
      background-color: #FFFFFF;
      content: '-';
      text-indent: -9999px;
      display: block;
      z-index: 10;
      -webkit-transition: width 125ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      -moz-transition: width 125ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      -ms-transition: width 125ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      transition: width 125ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      /* resolves blurry elements on webkit */ }
    .no-touch .c-header-links__link:hover:before {
      width: 100%; }
    .c-header-links__link.state-link-active:before {
      width: 100%; }
    .c-header-links__link.state-link-active:before {
      width: 100%; }
    .c-header-links__link--icon {
      border-left: 1rem solid transparent; }
      .c-header-links__link--icon:after {
        content: '-';
        text-indent: -9999px;
        position: absolute;
        height: 0.4375rem;
        width: 0.4375rem;
        border-radius: 50%;
        left: -1rem;
        top: 0.1875rem;
        border: 1px solid #FFFFFF;
        background-color: rgba(255, 255, 255, 0);
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: background-color 250ms;
        -moz-transition: background-color 250ms;
        -ms-transition: background-color 250ms;
        transition: background-color 250ms;
        /* resolves blurry elements on webkit */ }
      .no-touch .c-header-links__link--icon:hover:after {
        background-color: white; }
  .state-intro-open .c-header-links {
    opacity: 0 !important;
    visibility: hidden;
    -webkit-transition: opacity 250ms, visibility 0ms linear 250ms;
    -moz-transition: opacity 250ms, visibility 0ms linear 250ms;
    -ms-transition: opacity 250ms, visibility 0ms linear 250ms;
    transition: opacity 250ms, visibility 0ms linear 250ms;
    /* resolves blurry elements on webkit */ }

@keyframes ani-sound-wave {
  0% {
    left: 0; }
  100% {
    left: -1rem; } }

.c-audio-button {
  width: 1.5rem;
  height: 1rem;
  position: fixed;
  right: 4rem;
  bottom: 3.9375rem;
  z-index: 9000;
  overflow: visible;
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 500ms, visibility 0ms linear 0ms;
  -moz-transition: opacity 500ms, visibility 0ms linear 0ms;
  -ms-transition: opacity 500ms, visibility 0ms linear 0ms;
  transition: opacity 500ms, visibility 0ms linear 0ms;
  /* resolves blurry elements on webkit */ }
  .touch .c-audio-button {
    display: none; }
  .state-scrolled .c-audio-button {
    opacity: 0 !important;
    visibility: hidden;
    -webkit-transition: opacity 500ms, visibility 0ms linear 500ms;
    -moz-transition: opacity 500ms, visibility 0ms linear 500ms;
    -ms-transition: opacity 500ms, visibility 0ms linear 500ms;
    transition: opacity 500ms, visibility 0ms linear 500ms;
    /* resolves blurry elements on webkit */ }
  .c-audio-button__inner {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: visible; }
  .c-audio-button__text {
    padding: 0;
    display: inline-block;
    position: absolute;
    top: -0.5625rem;
    right: 3.5rem;
    opacity: 0;
    -webkit-transition: opacity 250ms, right 0ms linear 500ms;
    -moz-transition: opacity 250ms, right 0ms linear 500ms;
    -ms-transition: opacity 250ms, right 0ms linear 500ms;
    transition: opacity 250ms, right 0ms linear 500ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (min-width: 47.5em) {
      .no-touch a:hover .c-audio-button__text {
        opacity: 1;
        right: 2rem;
        -webkit-transition: opacity 500ms linear 0ms, right 500ms linear 0ms;
        -moz-transition: opacity 500ms linear 0ms, right 500ms linear 0ms;
        -ms-transition: opacity 500ms linear 0ms, right 500ms linear 0ms;
        transition: opacity 500ms linear 0ms, right 500ms linear 0ms;
        /* resolves blurry elements on webkit */ } }
  @media screen and (max-width: 60rem) {
    .c-audio-button {
      right: 2.5rem;
      bottom: 2.4375rem; } }
  @media screen and (max-width: 47.5em) {
    .c-audio-button {
      right: 1.25rem;
      bottom: 1.1875rem; } }
  .c-audio-button__canvas-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden; }
    .c-audio-button__canvas-wrap--bg {
      left: -1.5rem;
      opacity: 0;
      transition: none; }
      .no-touch a:hover .c-audio-button__canvas-wrap--bg {
        opacity: 1;
        -webkit-transition: left 500ms, visibility 0ms linear 500ms;
        -moz-transition: left 500ms, visibility 0ms linear 500ms;
        -ms-transition: left 500ms, visibility 0ms linear 500ms;
        transition: left 500ms, visibility 0ms linear 500ms;
        /* resolves blurry elements on webkit */
        left: 0;
        visibility: hidden; }
  .c-audio-button__canvas {
    width: 3rem;
    height: 1rem;
    position: absolute;
    top: 0;
    left: 0;
    animation: ani-sound-wave 1200ms linear infinite; }
    .c-audio-button__canvas--bg {
      margin-left: -0.5rem; }
      .no-touch a:hover .c-audio-button__canvas--bg {
        -webkit-transition: margin-left 500ms;
        -moz-transition: margin-left 500ms;
        -ms-transition: margin-left 500ms;
        transition: margin-left 500ms;
        /* resolves blurry elements on webkit */
        margin-left: -2rem; }

.c-footer {
  padding: 0;
  margin: 10em 4rem 0;
  height: 1.125rem;
  display: flex;
  justify-content: space-between;
  border-bottom: 4rem solid transparent;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box; }
  @media screen and (max-width: 60rem) {
    .c-footer {
      margin: 10em 2.5rem 0;
      border-bottom: 2.5rem solid transparent; } }
  @media screen and (max-width: 47.5em) {
    .c-footer {
      margin: 10em 1.25rem 0;
      border-bottom: 1.25rem solid transparent; } }
  .c-footer__link {
    padding: 0;
    line-height: 1.125rem;
    display: inline-block;
    position: relative; }
    @media screen and (max-width: 80rem) {
      .c-footer__link--desktop {
        display: none; } }
    .c-footer__link:before {
      content: '-';
      text-indent: -9999px;
      width: 0%;
      position: absolute;
      left: 0;
      bottom: -0.1875rem;
      height: 1px;
      background-color: #FFFFFF;
      content: '-';
      text-indent: -9999px;
      display: block;
      z-index: 10;
      -webkit-transition: width 250ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      -moz-transition: width 250ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      -ms-transition: width 250ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      transition: width 250ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms;
      /* resolves blurry elements on webkit */ }
    .no-touch .c-footer__link:hover:before {
      width: 100%; }
  .c-footer__icons {
    height: 1.125rem;
    padding-right: 0;
    display: inline-block; }
    @media screen and (max-width: 47.5em) {
      .c-footer__icons {
        padding-right: 0; } }
  .c-footer__icon {
    display: inline-block;
    margin-right: 1.25rem;
    height: 1.125rem;
    width: 1.125rem;
    float: left;
    opacity: 0.5;
    position: relative;
    -webkit-transition: opacity 250ms;
    -moz-transition: opacity 250ms;
    -ms-transition: opacity 250ms;
    transition: opacity 250ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 47.5em) {
      .c-footer__icon {
        margin-right: 0;
        margin-left: 1.25rem; } }
    .c-footer__icon__svg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
      .c-footer__icon__svg__path {
        fill: #fff; }
    .no-touch .c-footer__icon:hover {
      opacity: 1; }

/* ========================================================================== */
/* BASIC ELEMENTS */
/* ========================================================================== */
.c-page {
  display: none; }
  .c-page.state-page-active {
    opacity: 1;
    display: block; }

.c-dark-bg {
  background-color: #000000; }

.c-mod {
  overflow: visible;
  font-size: 1rem; }
  @media screen and (max-width: 47.5em) {
    .c-mod {
      font-size: 0.625rem; } }
  .c-mod--screen-height {
    height: 100vh; }

.c-black-box, .c-mod--abt-4__black-box, .c-mod--abt-2__black-box {
  padding: 8.4375rem 3.5rem 8.4375rem 4.875rem;
  background-color: #000000;
  width: 26.25rem;
  display: inline-block; }
  @media screen and (max-width: 47.5em) {
    .c-black-box, .c-mod--abt-4__black-box, .c-mod--abt-2__black-box {
      padding: 2.625rem 1.5rem 2.625rem 2rem;
      background-color: #000000;
      width: 17.5rem; } }
.c-letter, .c-mod--abt-5__letter-e, .c-mod--abt-4__letter-n, .c-mod--abt-3__letter-u, .c-mod--abt-2__letter-l, .c-mod--hm-4__letter-e, .c-mod--hm-3__info__letter-n, .c-mod--hm-2__letter-u, .c-mod--hm-2__letter-l {
  position: absolute;
  font-size: 1rem; }
  @media screen and (max-width: 47.5em) {
    .c-letter, .c-mod--abt-5__letter-e, .c-mod--abt-4__letter-n, .c-mod--abt-3__letter-u, .c-mod--abt-2__letter-l, .c-mod--hm-4__letter-e, .c-mod--hm-3__info__letter-n, .c-mod--hm-2__letter-u, .c-mod--hm-2__letter-l {
      font-size: 0.625rem; } }
  .c-letter--l, .c-mod--abt-2__letter-l, .c-mod--hm-2__letter-l {
    width: 9em;
    height: 12.625em; }
  .c-letter--u, .c-mod--abt-3__letter-u, .c-mod--hm-2__letter-u {
    width: 9.875em;
    height: 12.75em; }
  .c-letter--n, .c-mod--abt-4__letter-n, .c-mod--hm-3__info__letter-n {
    width: 10.4375em;
    height: 12.625em; }
  .c-letter--e, .c-mod--abt-5__letter-e, .c-mod--hm-4__letter-e {
    width: 9em;
    height: 12.625em; }
  .c-letter__svg, .c-mod--abt-5__letter-e svg, .c-mod--abt-4__letter-n svg, .c-mod--abt-3__letter-u svg, .c-mod--abt-2__letter-l svg, .c-mod--hm-4__letter-e svg, .c-mod--hm-3__info__letter-n svg, .c-mod--hm-2__letter-u svg, .c-mod--hm-2__letter-l svg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }
    .c-letter__svg__shape, .c-mod--abt-5__letter-e svg *, .c-mod--abt-4__letter-n svg *, .c-mod--abt-3__letter-u svg *, .c-mod--abt-2__letter-l svg *, .c-mod--hm-4__letter-e svg *, .c-mod--hm-3__info__letter-n svg *, .c-mod--hm-2__letter-u svg *, .c-mod--hm-2__letter-l svg * {
      opacity: 0.43;
      fill: none;
      stroke: #FFFFFF;
      stroke-miterlimit: 10;
      stroke-dasharray: 1200;
      stroke-dashoffset: 1200;
      -webkit-transition: stroke-dashoffset 2400ms;
      -moz-transition: stroke-dashoffset 2400ms;
      -ms-transition: stroke-dashoffset 2400ms;
      transition: stroke-dashoffset 2400ms;
      /* resolves blurry elements on webkit */ }

.c-map {
  position: absolute;
  width: 12em;
  height: 12em;
  border: 2px solid #2d2d2d;
  border-radius: 50%;
  overflow: hidden;
  font-size: 1rem; }
  @media screen and (max-width: 47.5em) {
    .c-map {
      font-size: 0.625rem; } }
  .c-map__paths {
    position: absolute;
    width: 12.25em;
    height: 12.25em;
    left: -0.125em;
    top: -0.125em; }
    .c-map__paths svg {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
      .c-map__paths svg polygon,
      .c-map__paths svg path {
        fill: #2d2d2d; }
  .c-map__labels {
    position: absolute;
    width: 12.25em;
    height: 12.25em;
    left: -0.125em;
    top: -0.125em; }
    .c-map__labels svg {
      opacity: 0.6; }
      .c-map__labels svg polygon,
      .c-map__labels svg circle,
      .c-map__labels svg path {
        fill: #FFFFFF; }

.c-image-wrapper {
  padding: 0;
  margin: 0; }

.scope-dot-controls {
  height: 1.5rem;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 47.5em) {
    .scope-dot-controls {
      justify-content: flex-start; } }
  .scope-dot-controls a {
    width: 1.5rem;
    height: 1.5rem;
    display: block;
    position: relative; }
    .scope-dot-controls a:after {
      width: 0.125rem;
      height: 0.125rem;
      border: 0.0625rem solid white;
      position: absolute;
      top: calc(50% - 0.0625rem);
      left: calc(50% - 0.0625rem);
      border-radius: 50%;
      box-sizing: border-box;
      content: '-';
      text-indent: -9999px;
      -webkit-transition: width 250ms, height 250ms, top 250ms, left 250ms;
      -moz-transition: width 250ms, height 250ms, top 250ms, left 250ms;
      -ms-transition: width 250ms, height 250ms, top 250ms, left 250ms;
      transition: width 250ms, height 250ms, top 250ms, left 250ms;
      /* resolves blurry elements on webkit */ }
    .scope-dot-controls a.state-active:after {
      width: 0.75rem;
      height: 0.75rem;
      top: calc(50% - 0.375rem);
      left: calc(50% - 0.375rem); }
    .no-touch .scope-dot-controls a:hover:after {
      width: 0.75rem;
      height: 0.75rem;
      top: calc(50% - 0.375rem);
      left: calc(50% - 0.375rem); }

.c-fixed-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  height: 100vh;
  position: fixed; }
  .c-fixed-bg__overlay {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: black; }

.c-post-header {
  display: flex;
  align-items: center; }
  .c-post-header__inner {
    padding: 0;
    margin: 0;
    max-width: 9em; }

.scope-limit-heading {
  overflow: hidden;
  max-height: 4.2em;
  overflow: hidden;
  position: relative;
  display: block; }
  .scope-limit-heading span {
    display: inline-block;
    position: relative;
    overflow: visible; }
    .scope-limit-heading span .ellipsis {
      position: absolute;
      top: 0;
      left: 0; }
    .scope-limit-heading span.ellipsis-wrap {
      position: absolute;
      left: 100%;
      top: 0; }

.c-read-more {
  position: relative;
  padding-right: 2rem;
  padding-top: 1.6875rem;
  padding-bottom: 0;
  display: inline-block; }
  .c-read-more:before {
    content: '-';
    text-indent: -9999px;
    position: absolute;
    height: 1px;
    width: 0;
    left: 0;
    bottom: 0;
    background-color: #FFFFFF;
    -webkit-transition: width 250ms cubic-bezier(0.55, 0.055, 0.675, 0.19) 0ms;
    -moz-transition: width 250ms cubic-bezier(0.55, 0.055, 0.675, 0.19) 0ms;
    -ms-transition: width 250ms cubic-bezier(0.55, 0.055, 0.675, 0.19) 0ms;
    transition: width 250ms cubic-bezier(0.55, 0.055, 0.675, 0.19) 0ms;
    /* resolves blurry elements on webkit */ }
  .c-read-more:after {
    content: ">";
    position: absolute;
    right: 0.75rem;
    bottom: 0;
    -webkit-transition: right 250ms;
    -moz-transition: right 250ms;
    -ms-transition: right 250ms;
    transition: right 250ms;
    /* resolves blurry elements on webkit */ }
  .no-touch .c-read-more:hover:before {
    width: 100%; }
  .no-touch .c-read-more:hover:after {
    right: 0; }

.c-pagination {
  display: flex;
  justify-content: center;
  padding-bottom: 9.75rem; }
  @media screen and (max-width: 47.5em) {
    .c-pagination {
      padding-top: 3.75rem;
      padding-bottom: 3rem; } }
  .c-pagination--archive {
    padding-top: 17.5rem;
    padding-bottom: 9.75rem; }
    @media screen and (max-width: 47.5em) {
      .c-pagination--archive {
        padding-top: 10rem;
        padding-bottom: 3rem; } }
.c-teaser {
  padding: 16.5rem 9.3125rem 0;
  max-width: 78.625rem;
  margin: 0 auto; }
  @media screen and (max-width: 60rem) {
    .c-teaser {
      padding: 8.25rem 7.8125rem 0; } }
  @media screen and (max-width: 47.5em) {
    .c-teaser {
      padding: 4.125rem 1.25rem 0; } }
  @media screen and (max-width: 60rem) {
    .c-teaser--landscape {
      padding-left: 12.8125rem; } }
  @media screen and (max-width: 47.5em) {
    .c-teaser--landscape {
      padding-left: 5rem; } }
  @media screen and (max-width: 60rem) {
    .c-teaser--portrait {
      padding-right: 12.8125rem; } }
  @media screen and (max-width: 47.5em) {
    .c-teaser--portrait {
      padding-right: 5rem; } }
  .c-teaser__inner {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (max-width: 60rem) {
      .c-teaser__inner {
        flex-wrap: wrap; } }
  .c-teaser__img {
    display: block;
    position: relative;
    width: 50%;
    opacity: 0;
    transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
    transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
    .c-teaser__img--landscape {
      padding-top: 37.5%;
      order: 1; }
    .c-teaser__img--portrait {
      width: 33.333%;
      padding-top: 50%;
      margin-right: 8.333%;
      order: 2; }
    .state-transition-in .c-teaser__img {
      opacity: 1;
      transform: translateY(0%) skewX(0deg) translate3d(0, 0, 0) !important; }
  @media screen and (max-width: 60rem) {
    .c-teaser__img {
      width: 100%;
      order: 1;
      padding-top: 66.6667%;
      margin-right: 0; } }
  .c-teaser__header {
    display: flex;
    width: 50%;
    align-items: center;
    padding: 0;
    opacity: 0;
    transform: translateY(10vh) !important;
    transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
    .state-transition-in .c-teaser__header {
      opacity: 1;
      transform: translateY(0%) !important; }
    .c-teaser__header--landscape {
      padding-left: 4.5rem;
      order: 2; }
    .c-teaser__header--portrait {
      padding-right: 4.5rem;
      order: 1; }
  @media screen and (max-width: 60rem) {
    .c-teaser__header {
      width: 100%;
      padding-top: 1.6875rem;
      padding-left: 0;
      padding-right: 0; } }
  @media screen and (max-width: 47.5em) {
    .c-teaser__header {
      padding-top: 1.3125rem; } }
.c-gallery-control {
  display: block;
  width: 3rem;
  height: 3rem;
  position: relative; }
  .c-gallery-control__border {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 50%;
    border: 1px solid white;
    opacity: 0.3;
    -webkit-transition: opacity 250ms, transform 250ms;
    -moz-transition: opacity 250ms, transform 250ms;
    -ms-transition: opacity 250ms, transform 250ms;
    transition: opacity 250ms, transform 250ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 47.5em) {
      .c-gallery-control__border {
        display: none; } }
  .no-touch .c-gallery-control:hover .c-gallery-control__border {
    opacity: 1; }
  .c-gallery-control__svg {
    position: absolute;
    width: 0.3125rem;
    height: 0.5rem;
    top: calc(50% - 0.25rem);
    left: calc(50% - 0.125rem); }
    .c-gallery-control__svg__shape {
      fill: white; }

.c-play-symbol {
  width: 5rem;
  height: 5rem;
  position: absolute;
  left: calc(50% - 2.5rem);
  top: calc(50% - 2.5rem);
  content: '-';
  text-indent: -9999px;
  z-index: 10;
  opacity: 0;
  transform: translateY(-2.5rem);
  -webkit-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
  -moz-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
  -ms-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
  transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
  /* resolves blurry elements on webkit */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .touch .c-play-symbol {
    transform: none;
    opacity: 1; }
  .c-play-symbol:after {
    width: 3rem;
    height: 3rem;
    position: absolute;
    left: calc(50% - 1.5rem);
    top: calc(50% - 1.5rem);
    content: '-';
    text-indent: -9999px;
    border-radius: 50%;
    background-color: white;
    background-image: url("https://lunecroissanterie.com/wp-content/themes/lune/img/play.svg");
    background-size: 0.5rem auto;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 10;
    transform: translateY(5rem);
    -webkit-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
    -moz-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
    -ms-transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
    transition: opacity 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms, transform 250ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms;
    /* resolves blurry elements on webkit */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .touch .c-play-symbol:after {
      transform: none;
      opacity: 1; }
  .no-touch .c-play-symbol:hover {
    opacity: 1;
    transform: translateY(0rem);
    -webkit-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -moz-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -ms-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    /* resolves blurry elements on webkit */ }
  .no-touch .c-play-symbol:hover:after {
    transform: translateY(0rem);
    -webkit-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -moz-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -ms-transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: opacity 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    /* resolves blurry elements on webkit */ }
  .c-play-symbol__svg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }
    .c-play-symbol__svg circle {
      transition: stroke-dashoffset 250ms;
      stroke-dashoffset: 240; }
      .no-touch a:hover .c-play-symbol__svg circle {
        stroke-dashoffset: 0;
        transition: stroke-dashoffset 1750ms cubic-bezier(0.55, 0.085, 0.68, 0.53) 250ms; }
    .touch .c-play-symbol__svg {
      display: none !important; }

/* ========================================================================== */
/* Site Loader */
/* ========================================================================== */
.c-loader {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  position: fixed;
  z-index: 9999;
  background-color: #000000; }
  .c-loader video {
    opacity: 0;
    -webkit-transition: opacity 400ms;
    -moz-transition: opacity 400ms;
    -ms-transition: opacity 400ms;
    transition: opacity 400ms;
    /* resolves blurry elements on webkit */ }
    .c-loader video.state-playing {
      opacity: 1; }
  .c-loader__video {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }
  .c-loader__enter {
    position: absolute;
    width: 4.5rem;
    height: 100%;
    top: 0;
    left: calc(50% - 2.25rem);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center; }
    .state-show-buttons .c-loader__enter {
      opacity: 1; }
    .c-loader__enter__button {
      width: 4.5rem;
      display: block;
      height: auto;
      transition: opacity 400ms; }
      .state-show-buttons .state-skip-hover .c-loader__enter__button {
        opacity: 0.3; }
    .c-loader__enter__icon {
      display: block;
      height: 3.5rem;
      width: 3.5rem;
      position: relative;
      margin: 0 auto 0.375rem; }
    .c-loader__enter__svg {
      -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
      .c-loader__enter__svg circle {
        opacity: 1;
        transition: stroke-dashoffset 4000ms linear 0ms;
        stroke-dashoffset: 170; }
        .state-first-stage .c-loader__enter__svg circle {
          stroke-dashoffset: 90; }
        .state-second-stage .c-loader__enter__svg circle {
          stroke-dashoffset: 70; }
        .state-third-stage .c-loader__enter__svg circle {
          stroke-dashoffset: 40; }
        .state-final-stage .c-loader__enter__svg circle {
          stroke-dashoffset: 0;
          transition: stroke-dashoffset 600ms linear 0ms;
          opacity: 1; }
        .state-show-buttons .c-loader__enter__svg circle {
          transition: stroke-dashoffset 400ms linear 0ms;
          stroke-dashoffset: 170; }
        .state-show-buttons .state-play-hover .c-loader__enter__svg circle {
          transition: stroke-dashoffset 400ms linear 0ms;
          stroke-dashoffset: 0; }
        .state-loader-done .c-loader__enter__svg circle {
          stroke-dashoffset: 170 !important;
          transition: stroke-dashoffset 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms !important; }
    .c-loader__enter__rocket {
      position: absolute;
      height: 2.625rem;
      width: 2.625rem;
      top: 0.5rem;
      left: 0.1875rem;
      opacity: 0;
      -webkit-transition: opacity 200ms linear 200ms;
      -moz-transition: opacity 200ms linear 200ms;
      -ms-transition: opacity 200ms linear 200ms;
      transition: opacity 200ms linear 200ms;
      /* resolves blurry elements on webkit */ }
      .state-show-rocket .c-loader__enter__rocket {
        opacity: 1; }
      .state-show-rocket .state-play-hover .c-loader__enter__rocket {
        opacity: 0;
        -webkit-transition: opacity 200ms linear 0ms;
        -moz-transition: opacity 200ms linear 0ms;
        -ms-transition: opacity 200ms linear 0ms;
        transition: opacity 200ms linear 0ms;
        /* resolves blurry elements on webkit */ }
      .state-loader-done .c-loader__enter__rocket {
        opacity: 0;
        transition: opacity 200ms linear 0ms !important; }
    .c-loader__enter__play-svg {
      opacity: 0;
      width: 0.625rem;
      height: 0.75rem;
      position: absolute;
      top: calc(50% - 0.375rem);
      left: calc(50% - 0.25rem);
      transition: opacity 400ms linear 800ms;
      opacity: 0;
      -webkit-transition: opacity 200ms linear 0ms;
      -moz-transition: opacity 200ms linear 0ms;
      -ms-transition: opacity 200ms linear 0ms;
      transition: opacity 200ms linear 0ms;
      /* resolves blurry elements on webkit */ }
      .state-show-rocket .state-play-hover .c-loader__enter__play-svg {
        opacity: 1;
        -webkit-transition: opacity 200ms linear 200ms;
        -moz-transition: opacity 200ms linear 200ms;
        -ms-transition: opacity 200ms linear 200ms;
        transition: opacity 200ms linear 200ms;
        /* resolves blurry elements on webkit */ }
      .state-loader-done .c-loader__enter__play-svg {
        opacity: 0 !important;
        transition: opacity 200ms linear 0ms !important; }
    .c-loader__enter__play-text {
      display: block;
      opacity: 0;
      width: 4.5rem;
      text-align: center;
      color: white; }
      .state-show-buttons .c-loader__enter__play-text {
        opacity: 1;
        transition: opacity 400ms; }
      .state-loader-done .c-loader__enter__play-text {
        opacity: 0 !important;
        transition: opacity 400ms linear 0 !important; }
    .c-loader__enter__rule {
      display: block;
      height: 1px;
      width: 2rem;
      background-color: white;
      opacity: 0;
      margin: 0.6875rem auto 0.75rem; }
      .state-show-buttons .c-loader__enter__rule {
        opacity: 1;
        transition: opacity 400ms; }
      .state-show-buttons .state-play-hover .c-loader__enter__rule {
        opacity: 0.3; }
      .state-show-buttons .state-skip-hover .c-loader__enter__rule {
        opacity: 0.3; }
      .state-loader-done .c-loader__enter__rule {
        opacity: 0 !important;
        transition: opacity 400ms !important; }
    .c-loader__enter__skip-text {
      display: block;
      opacity: 0;
      width: 4.5rem;
      text-align: center;
      color: white; }
      .state-show-buttons .c-loader__enter__skip-text {
        opacity: 1;
        transition: opacity 400ms; }
      .state-show-buttons .state-play-hover .c-loader__enter__skip-text {
        opacity: 0.3; }
      .state-loader-done .c-loader__enter__skip-text {
        opacity: 0 !important;
        transition: opacity 400ms !important; }
  .c-loader.state-loader-done {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0ms linear 600ms, visibility 0ms linear 600ms;
    -moz-transition: opacity 0ms linear 600ms, visibility 0ms linear 600ms;
    -ms-transition: opacity 0ms linear 600ms, visibility 0ms linear 600ms;
    transition: opacity 0ms linear 600ms, visibility 0ms linear 600ms;
    /* resolves blurry elements on webkit */ }

/* ========================================================================== */
/* AUDIO PLAYER */
/* ========================================================================== */
.c-website-audio {
  width: 1px;
  height: 1px;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 800ms;
  -moz-transition: opacity 800ms;
  -ms-transition: opacity 800ms;
  transition: opacity 800ms;
  /* resolves blurry elements on webkit */ }
  .c-website-audio.state-playing {
    opacity: 1; }

/* ========================================================================== */
/* VIDEO PLAYER */
/* ========================================================================== */
.c-video {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
  left: 0;
  right: auto;
  width: 100%;
  height: 100vh;
  visibility: visible;
  background-color: #000000; }
  .c-video--modal {
    position: fixed;
    z-index: 1000;
    transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms !important;
    left: 0;
    right: auto; }
    .c-video--modal.state-video-inactive {
      transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms linear 1600ms !important;
      width: 0;
      visibility: hidden;
      right: 0;
      left: auto; }
  .c-video__inner {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    width: 100vw;
    left: 0;
    right: auto; }
    .state-video-inactive .c-video__inner {
      right: 0;
      left: auto; }
  .c-video__media {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    border-top: 9.125rem solid #000000;
    border-bottom: 9.125rem solid #000000;
    overflow: visible;
    display: flex;
    align-content: center;
    align-items: center; }
    @media screen and (max-width: 60rem) {
      .c-video__media {
        border-top: 6.125rem solid #000000;
        border-bottom: 6.125rem solid #000000; } }
    @media screen and (max-width: 47.5em) {
      .c-video__media {
        border-top: 3.625rem solid #000000;
        border-bottom: 3.625rem solid #000000; } }
    .c-video__media--full-screen {
      border-top: none;
      border-bottom: none; }
    .c-video__media__inner {
      width: 100%;
      height: 100%;
      display: block;
      max-height: 56.25vw;
      position: relative;
      top: auto;
      left: auto; }
      .c-video__media__inner--full-screen {
        max-height: 100%; }
        .c-video__media__inner--full-screen video {
          opacity: 1 !important;
          transition: opacity 800ms !important;
          object-fit: cover; }
          .state-video-inactive .c-video__media__inner--full-screen video {
            opacity: 0 !important; }
        @media screen and (orientation: portrait) {
          .c-video__media__inner--full-screen {
            max-height: 56.25vw !important;
            width: 100% !important;
            left: 0 !important;
            top: auto !important;
            position: relative !important; }
            .c-video__media__inner--full-screen video {
              object-fit: cover; } }
  .c-video__timer {
    width: calc(100% - 21.625rem);
    left: 50%;
    height: 0.75rem;
    max-width: 35rem;
    bottom: 4.0625rem;
    position: absolute;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    @media screen and (max-width: 60rem) {
      .c-video__timer {
        bottom: 2.5625rem;
        width: calc(100% - 15.625rem); } }
    @media screen and (max-width: 47.5em) {
      .c-video__timer {
        bottom: 1.3125rem;
        width: calc(100% - 10rem); } }
    .c-video__timer__current {
      line-height: 0.75rem;
      position: absolute;
      top: 0;
      left: 0;
      padding: 0; }
    .c-video__timer__end {
      line-height: 0.75rem;
      position: absolute;
      top: 0;
      right: 0;
      padding: 0; }
    .c-video__timer__bar {
      position: absolute;
      top: 0.3125rem;
      height: 0.0625rem;
      left: 3.375rem;
      right: 3.375rem;
      background-color: rgba(255, 255, 255, 0.1); }
      .c-video__timer__bar__progress {
        background-color: #8d8d8d;
        width: 0;
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        -webkit-transition: width 100ms;
        -moz-transition: width 100ms;
        -ms-transition: width 100ms;
        transition: width 100ms;
        /* resolves blurry elements on webkit */ }
  .c-video__skip-video {
    position: absolute;
    top: 4rem;
    right: 4rem;
    line-height: 0.75rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    -webkit-transition: opacity 250ms;
    -moz-transition: opacity 250ms;
    -ms-transition: opacity 250ms;
    transition: opacity 250ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 47.5em) {
      .c-video__skip-video {
        font-size: 0.6875rem; } }
    .no-touch .c-video__skip-video:hover {
      opacity: 0.5; }
    @media screen and (max-width: 60rem) {
      .c-video__skip-video {
        top: 2.5rem;
        right: 2.5rem; } }
    @media screen and (max-width: 47.5em) {
      .c-video__skip-video {
        display: none !important;
        top: 1.25rem;
        right: 1.25rem; } }
  .c-video__control {
    position: absolute;
    width: 1.5rem;
    height: 1.5rem;
    bottom: 3.75rem;
    left: 3.4375rem; }
    @media screen and (max-width: 60rem) {
      .c-video__control {
        bottom: 2.25rem;
        left: 1.9375rem; } }
    @media screen and (max-width: 47.5em) {
      .c-video__control {
        bottom: 1rem;
        left: 0.6875rem; } }
    .c-video__control__pause {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      visibility: visible; }
      .state-paused .c-video__control__pause {
        visibility: hidden; }
    .c-video__control__play {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      visibility: hidden; }
      .state-paused .c-video__control__play {
        visibility: visible; }

/* ========================================================================== */
/* MENU */
/* ========================================================================== */
.c-menu {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 8900;
  position: fixed;
  visibility: hidden;
  display: block;
  left: auto;
  right: 0;
  width: 0;
  overflow: hidden;
  -webkit-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms linear 1600ms;
  -moz-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms linear 1600ms;
  -ms-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms linear 1600ms;
  transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, visibility 0ms linear 1600ms;
  /* resolves blurry elements on webkit */ }
  .state-menu-open .c-menu {
    left: 0;
    right: auto;
    width: 100%;
    visibility: visible;
    -webkit-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
    -moz-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
    -ms-transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
    transition: width 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms;
    /* resolves blurry elements on webkit */ }
  .c-menu__inner {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    width: 100vw;
    right: 0;
    left: auto;
    background-color: black; }
    .state-menu-open .c-menu__inner {
      left: 0;
      right: auto; }
  .c-menu__image {
    position: absolute;
    top: 0;
    right: 10.8125rem;
    bottom: 10.8125rem;
    left: calc(50% + 4rem);
    opacity: 0;
    z-index: 10;
    -webkit-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
    -moz-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
    -ms-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
    transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
    /* resolves blurry elements on webkit */ }
    @media screen and (max-width: 80rem) {
      .c-menu__image {
        right: 0; } }
    @media screen and (max-width: 60rem) {
      .c-menu__image {
        left: calc(50% + 2.5rem);
        bottom: 50%; } }
    @media screen and (max-width: 47.5em) {
      .c-menu__image {
        left: 33.333%;
        z-index: 0; } }
    .state-menu-open .c-menu__image {
      opacity: 1;
      -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms linear 0ms;
      -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms linear 0ms;
      -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms linear 0ms;
      transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms, opacity 800ms linear 0ms;
      /* resolves blurry elements on webkit */ }
    .c-menu__image img {
      transition: transform 0ms linear 1600ms !important; }
      .state-menu-open .c-menu__image img {
        transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 0ms !important;
        opacity: 1; }
  .c-menu__nav {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    height: auto;
    min-height: 100%;
    padding: 4rem 10.8125rem;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 60rem) {
      .c-menu__nav {
        padding: 2.5rem 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-menu__nav {
        padding: 2.5rem 1.25rem; } }
  .c-menu__list {
    width: 100%;
    height: auto; }
    .c-menu__list__item {
      display: block;
      height: 4.875rem;
      opacity: 0;
      -webkit-transform: translateX(3rem);
      -ms-transform: translateX(3rem);
      transform: translateX(3rem);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%;
      -webkit-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
      -moz-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
      -ms-transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
      transition: transform 0ms linear 1600ms, opacity 0ms linear 1600ms;
      /* resolves blurry elements on webkit */ }
      @media screen and (max-width: 60rem) {
        .c-menu__list__item {
          height: 3.9375rem; } }
      @media screen and (max-width: 47.5em) {
        .c-menu__list__item {
          height: 3rem; } }
      .state-menu-open .c-menu__list__item {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
        .state-menu-open .c-menu__list__item:nth-child(1) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms linear 50ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms linear 50ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms linear 50ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 50ms, opacity 800ms linear 50ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(2) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms linear 100ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms linear 100ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms linear 100ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 100ms, opacity 800ms linear 100ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(3) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 150ms, opacity 800ms linear 150ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 150ms, opacity 800ms linear 150ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 150ms, opacity 800ms linear 150ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 150ms, opacity 800ms linear 150ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(4) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 200ms, opacity 800ms linear 200ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 200ms, opacity 800ms linear 200ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 200ms, opacity 800ms linear 200ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 200ms, opacity 800ms linear 200ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(5) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 250ms, opacity 800ms linear 250ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(6) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity 800ms linear 300ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(7) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 350ms, opacity 800ms linear 350ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(8) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 400ms, opacity 800ms linear 400ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(9) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 450ms, opacity 800ms linear 450ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(10) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 800ms linear 500ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(11) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 550ms, opacity 800ms linear 550ms;
          /* resolves blurry elements on webkit */ }
        .state-menu-open .c-menu__list__item:nth-child(12) {
          -webkit-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
          -moz-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
          -ms-transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
          transition: transform 1600ms cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity 800ms linear 600ms;
          /* resolves blurry elements on webkit */ }
      .c-menu__list__item--mobile {
        display: none; }
        @media screen and (max-width: 47.5em) {
          .c-menu__list__item--mobile {
            display: block; } }
    .c-menu__list__link {
      display: inline-block;
      font-family: 'DIN Next LT W01 Bold', sans-serif;
      height: 4.875rem;
      line-height: 4.875rem;
      font-size: 2.8125rem;
      opacity: 0.15;
      border-left: 1.875rem solid transparent;
      position: relative;
      color: #FFFFFF;
      overflow: visible;
      -webkit-transition: opacity 400ms;
      -moz-transition: opacity 400ms;
      -ms-transition: opacity 400ms;
      transition: opacity 400ms;
      /* resolves blurry elements on webkit */ }
      .foodmenu .c-menu__list__link {border-left:0;}
      @media screen and (max-width: 60rem) {
        .c-menu__list__link {
          font-size: 2.25rem;
          line-height: 3.9375rem;
          height: 3.9375rem; } }
      @media screen and (max-width: 47.5em) {
        .c-menu__list__link {
          height: 3rem;
          line-height: 3rem;
          font-size: 2rem;
          opacity: 0.3; } }
      .no-touch .c-menu__list__link:hover {
        opacity: 1; }
      .c-menu__list__link.state-link-active {
        opacity: 1; }
    .c-menu__list__count {
      color: #FFFFFF;
      font-family: 'DIN Next LT W01 Regular', sans-serif;
      position: absolute;
      top: 0;
      left: -1.875rem;
      font-size: 0.75rem;
      line-height: 4.875rem; }
      @media screen and (max-width: 60rem) {
        .c-menu__list__count {
          line-height: 3.9375rem; } }
      @media screen and (max-width: 47.5em) {
        .c-menu__list__count {
          line-height: 3rem; } }
/* ========================================================================== */
/* REUSABLE MODULES */
/* ========================================================================== */
.c-mod--contact {
  padding-top: 8.125em; 
  z-index: 1000}
  .c-mod--contact__map {
    height: 12rem;
    width: 12rem;
    margin-left: calc(50% - 14rem);
    position: relative;
    display: block;
    border: 0.1875rem solid #444;
    border-radius: 50%;
    overflow: hidden; }
    @media screen and (max-width: 47.5em) {
      .c-mod--contact__map {
        height: 7.5rem;
        width: 7.5rem;
        margin-left: calc(50% - 8.75rem); } }
    @media screen and (max-width: 35em) {
      .c-mod--contact__map {
        margin-left: calc(50% - 8.125rem); } }
    .c-mod--contact__map__link {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      display: block;
      background-color: #000000;
      opacity: 0;
      visibility: hidden;
      border-radius: 50%;
      overflow: hidden;
      -webkit-transition: opacity 250ms, visibility 0ms linear 250ms;
      -moz-transition: opacity 250ms, visibility 0ms linear 250ms;
      -ms-transition: opacity 250ms, visibility 0ms linear 250ms;
      transition: opacity 250ms, visibility 0ms linear 250ms;
      /* resolves blurry elements on webkit */ }
      .c-mod--contact__map__link.state-map-active {
        opacity: 1;
        visibility: visible;
        -webkit-transition: opacity 250ms, visibility 0ms linear 0ms;
        -moz-transition: opacity 250ms, visibility 0ms linear 0ms;
        -ms-transition: opacity 250ms, visibility 0ms linear 0ms;
        transition: opacity 250ms, visibility 0ms linear 0ms;
        /* resolves blurry elements on webkit */ }
      .c-mod--contact__map__link__svg {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        border-radius: 50%;
        overflow: hidden; }
  .c-mod--contact__address {
    position: absolute;
    left: calc(50% + 2rem);
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    @media screen and (max-width: 47.5em) {
      .c-mod--contact__address {
        left: calc(50% + 1.25rem); } }
    @media screen and (max-width: 35em) {
      .c-mod--contact__address {
        left: calc(50% + 0.625rem); } }
  .c-mod--contact__link * {
    color: white;
    -webkit-transition: color 250ms;
    -moz-transition: color 250ms;
    -ms-transition: color 250ms;
    transition: color 250ms;
    /* resolves blurry elements on webkit */ }
  .no-touch .c-mod--contact__link:hover * {
    color: #A8A8A8; }

.c-mod--instagram {
  padding-top: 20rem; }
  @media screen and (max-width: 60rem) {
    .c-mod--instagram {
      padding-top: 14rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--instagram {
      padding-top: 8rem; } }
  .c-mod--instagram__link {
    width: 57.1875%;
    margin: 0 auto;
    display: block;
    position: relative; }
    @media screen and (max-width: 47.5em) {
      .c-mod--instagram__link {
        width: calc(100% - 2.5rem);
        max-width: 15.5rem; } }
    .c-mod--instagram__link__outline {
      padding-top: 21.585%; }

.c-instagram-svg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute; }
  .c-instagram-svg__letter {
    fill: none;
    stroke: white;
    stroke-width: 1px;
    opacity: 0.35; }
    @media screen and (max-width: 47.5em) {
      .c-instagram-svg__letter {
        stroke-width: 2px;
        opacity: 0.5; } }
    .c-instagram-svg__letter--i {
      -webkit-transition: opacity 250ms linear 500ms;
      -moz-transition: opacity 250ms linear 500ms;
      -ms-transition: opacity 250ms linear 500ms;
      transition: opacity 250ms linear 500ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--i {
        opacity: 1;
        -webkit-transition: opacity 400ms linear 0ms;
        -moz-transition: opacity 400ms linear 0ms;
        -ms-transition: opacity 400ms linear 0ms;
        transition: opacity 400ms linear 0ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--m {
      -webkit-transition: opacity 250ms linear 450ms;
      -moz-transition: opacity 250ms linear 450ms;
      -ms-transition: opacity 250ms linear 450ms;
      transition: opacity 250ms linear 450ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--m {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 50ms;
        -moz-transition: opacity 250ms linear 50ms;
        -ms-transition: opacity 250ms linear 50ms;
        transition: opacity 250ms linear 50ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--n {
      -webkit-transition: opacity 250ms linear 400ms;
      -moz-transition: opacity 250ms linear 400ms;
      -ms-transition: opacity 250ms linear 400ms;
      transition: opacity 250ms linear 400ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--n {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 50ms;
        -moz-transition: opacity 250ms linear 50ms;
        -ms-transition: opacity 250ms linear 50ms;
        transition: opacity 250ms linear 50ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--a2 {
      -webkit-transition: opacity 250ms linear 350ms;
      -moz-transition: opacity 250ms linear 350ms;
      -ms-transition: opacity 250ms linear 350ms;
      transition: opacity 250ms linear 350ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--a2 {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 100ms;
        -moz-transition: opacity 250ms linear 100ms;
        -ms-transition: opacity 250ms linear 100ms;
        transition: opacity 250ms linear 100ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--s {
      -webkit-transition: opacity 250ms linear 350ms;
      -moz-transition: opacity 250ms linear 350ms;
      -ms-transition: opacity 250ms linear 350ms;
      transition: opacity 250ms linear 350ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--s {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 100ms;
        -moz-transition: opacity 250ms linear 100ms;
        -ms-transition: opacity 250ms linear 100ms;
        transition: opacity 250ms linear 100ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--r {
      -webkit-transition: opacity 250ms linear 300ms;
      -moz-transition: opacity 250ms linear 300ms;
      -ms-transition: opacity 250ms linear 300ms;
      transition: opacity 250ms linear 300ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--r {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 150ms;
        -moz-transition: opacity 250ms linear 150ms;
        -ms-transition: opacity 250ms linear 150ms;
        transition: opacity 250ms linear 150ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--t {
      -webkit-transition: opacity 250ms linear 300ms;
      -moz-transition: opacity 250ms linear 300ms;
      -ms-transition: opacity 250ms linear 300ms;
      transition: opacity 250ms linear 300ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--t {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 150ms;
        -moz-transition: opacity 250ms linear 150ms;
        -ms-transition: opacity 250ms linear 150ms;
        transition: opacity 250ms linear 150ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--g {
      -webkit-transition: opacity 250ms linear 250ms;
      -moz-transition: opacity 250ms linear 250ms;
      -ms-transition: opacity 250ms linear 250ms;
      transition: opacity 250ms linear 250ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--g {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 200ms;
        -moz-transition: opacity 250ms linear 200ms;
        -ms-transition: opacity 250ms linear 200ms;
        transition: opacity 250ms linear 200ms;
        /* resolves blurry elements on webkit */ }
    .c-instagram-svg__letter--a1 {
      -webkit-transition: opacity 250ms linear 250ms;
      -moz-transition: opacity 250ms linear 250ms;
      -ms-transition: opacity 250ms linear 250ms;
      transition: opacity 250ms linear 250ms;
      /* resolves blurry elements on webkit */ }
      .no-touch a:hover .c-instagram-svg__letter--a1 {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 200ms;
        -moz-transition: opacity 250ms linear 200ms;
        -ms-transition: opacity 250ms linear 200ms;
        transition: opacity 250ms linear 200ms;
        /* resolves blurry elements on webkit */ }

/* ========================================================================== */
/* INTRO VIDEO MODULES */
/* ========================================================================== */
.c-mod--intro-1 {
  height: 100vh;
  z-index: 5000 !important;
  background-color: #000000; }

/* ========================================================================== */
/* HOME PAGE MODULES */
/* ========================================================================== */
.c-mod--hm-1 {
  height: 100vh; }
  @media screen and (max-width: 60rem) {
    .c-mod--hm-1 {
      min-height: 100vw; } }
  .c-mod--hm-1__image {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-1__image {
        width: 60%; }
        .c-mod--hm-1__image img {
          object-position: 35% 50% !important; } }
  .c-mod--hm-1__vid-link {
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-1__vid-link {
        width: 40%;
        border-left: 7.8125rem solid transparent;
        border-right: 2.5rem solid transparent; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-1__vid-link {
        border-left-width: 1.25rem;
        border-right-width: 1.25rem; } }
    .c-mod--hm-1__vid-link__button {
      width: 37.5%;
      max-width: calc(100% - 21.625rem); }
      @media screen and (max-width: 60rem) {
        .c-mod--hm-1__vid-link__button {
          width: 100%;
          max-width: 33.333vh; } }
      .no-touch .c-mod--hm-1__vid-link__button:hover:before {
        opacity: 1;
        transform: translateY(0rem); }
      .no-touch .c-mod--hm-1__vid-link__button:hover:after {
        opacity: 1;
        transform: translateY(0rem); }

.c-mod--hm-2 {
  padding-top: 11.75em;
  padding-bottom: 13.75em;
  z-index: 100; }
  @media screen and (max-width: 47.5em) {
    .c-mod--hm-2 {
      padding-bottom: 20em; } }
  @media screen and (max-width: 35em) {
    .c-mod--hm-2 {
      padding-bottom: 25em; } }
  .c-mod--hm-2__letter-l {
    top: 11.75em;
    left: calc(31.40625% - 4.5rem);
    z-index: 100; }
    .c-mod--hm-2__letter-l.state-transition-in svg * {
      stroke-dashoffset: 500; }
  .c-mod--hm-2__image-1 {
    width: 17.1875%;
    display: inline-block;
    float: right;
    margin-right: -3.90625%; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-2__image-1 {
        width: 33.333%;
        margin-right: -5rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-2__image-1 {
        width: calc(50% - 3.4375rem);
        margin-right: -1.25rem; } }
  .c-mod--hm-2__image-2 {
    width: 37.5%;
    margin: -9.375% auto 0; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-2__image-2 {
        margin: -5rem 0 0;
        width: 66.667%;
        padding-left: 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-2__image-2 {
        width: calc(50% + 3.4375rem);
        padding-left: 0;
        margin: -3vh 0 0; } }
    .c-mod--hm-2__image-2 figure {
      opacity: 0 !important;
      transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
      transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
    .c-mod--hm-2__image-2.state-transition-in figure {
      opacity: 1 !important;
      transform: translateY(0) skewX(0deg) translate3d(0, 0, 0) !important; }
  .c-mod--hm-2__info {
    width: 100%;
    margin-top: -8.75rem;
    display: flex;
    align-items: flex-end;
    flex-direction: row-reverse; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-2__info {
        display: block;
        padding-left: calc(66.667% - 12.5rem);
        padding-right: 0; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-2__info {
        padding-left: calc(50% - 6.875rem);
        margin-top: -18.375vw;
        margin-top: 25vw; } }
    .c-mod--hm-2__info__quote {
      width: 43.25%;
      padding-bottom: 0.375rem; }
      @media screen and (max-width: 60rem) {
        .c-mod--hm-2__info__quote {
          width: 100%;
          padding-bottom: 2.875rem; } }
    .c-mod--hm-2__info__text {
      width: 17.5rem;
      margin-right: calc(39.125% - 17.5rem);
      opacity: 0 !important;
      transition: opacity 800ms linear 500ms !important; }
      @media screen and (max-width: 60rem) {
        .c-mod--hm-2__info__text {
          margin-right: 0; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--hm-2__info__text {
          width: 15rem; } }
      .c-mod--hm-2__info__text.state-transition-in {
        opacity: 1 !important; }
  .c-mod--hm-2__button {
    width: 13.75rem;
    margin-left: 17.625%;
    padding-top: 4rem;
    opacity: 0 !important;
    transition: opacity 800ms linear 500ms !important; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-2__button {
        margin-left: calc(66.667% - 12.5rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-2__button {
        margin-left: auto;
        margin-right: auto; } }
    .c-mod--hm-2__button.state-transition-in {
      opacity: 1 !important; }
  .c-mod--hm-2__letter-u {
    left: calc(80.625% - 4.9375em);
    bottom: -5em; }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-2__letter-u {
        bottom: -1.5em; } }
    @media screen and (max-width: 35em) {
      .c-mod--hm-2__letter-u {
        bottom: 7em; } }
    .c-mod--hm-2__letter-u.state-transition-in svg * {
      stroke-dashoffset: 200; }

.c-mod--hm-3 {
  z-index: 90;
  padding-bottom: 14.75em; }
  @media screen and (max-width: 35em) {
    .c-mod--hm-3 {
      padding-bottom: 25em; } }
  .c-mod--hm-3__image {
    margin-bottom: 6.75em; }
  .c-mod--hm-3__info {
    display: flex;
    align-items: flex-end; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-3__info {
        display: block;
        padding-left: calc(66.667% - 12.5rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-3__info {
        padding-left: calc(100% - 15rem); } }
    .c-mod--hm-3__info__letter-n {
      margin-left: 13.25%;
      margin-right: calc(43.5% - 10.4375em);
      position: relative;
      padding-bottom: 1.125rem;
      -webkit-box-sizing: content-box;
      -moz-box-sizing: content-box;
      box-sizing: content-box; }
      @media screen and (max-width: 60rem) {
        .c-mod--hm-3__info__letter-n {
          margin: 0;
          margin-right: 0;
          position: absolute;
          top: 0;
          left: 6.5625rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--hm-3__info__letter-n {
          top: -1.5rem;
          left: 5.3125rem;
          right: auto; } }
      @media screen and (max-width: 35em) {
        .c-mod--hm-3__info__letter-n {
          bottom: -17.5rem;
          left: 1.25rem;
          right: auto;
          top: auto; } }
      .c-mod--hm-3__info__letter-n.state-transition-in svg * {
        stroke-dashoffset: 0; }
    .c-mod--hm-3__info__quote {
      width: 43.25%; }
      @media screen and (max-width: 60rem) {
        .c-mod--hm-3__info__quote {
          width: auto; } }
  .c-mod--hm-3__button {
    width: 13.75rem;
    margin-left: 56.75%;
    padding-top: 4rem;
    opacity: 0 !important;
    transition: opacity 800ms linear 250ms !important; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-3__button {
        margin-left: calc(66.667% - 12.5rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-3__button {
        margin-left: calc(100% - 15rem);
        margin-right: 1.25rem;
        padding-top: 5vw; } }
    .c-mod--hm-3__button.state-transition-in {
      opacity: 1 !important; }

.c-mod--hm-4 {
  padding-bottom: 14.625em; }
  @media screen and (max-width: 47.5em) {
    .c-mod--hm-4 {
      padding-bottom: 20em; } }
  @media screen and (max-width: 35em) {
    .c-mod--hm-4 {
      padding-bottom: 25em; } }
  .c-mod--hm-4__gallery {
    width: 73.4375%;
    margin: 0 auto; }
    @media screen and (max-width: 60rem) {
      .c-mod--hm-4__gallery {
        width: calc(100% - 15.625rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--hm-4__gallery {
        width: calc(100% - 2.5rem); } }
    .c-mod--hm-4__gallery__inner {
      padding-top: 70%; }
      @media screen and (max-width: 47.5em) {
        .c-mod--hm-4__gallery__inner {
          padding-top: 106.4375%; } }
      @media screen and (max-width: 35em) {
        .c-mod--hm-4__gallery__inner {
          padding-top: 136.667%; } }
      .c-mod--hm-4__gallery__inner .scope-slider {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        position: absolute; }
        .c-mod--hm-4__gallery__inner .scope-slider .slick-list,
        .c-mod--hm-4__gallery__inner .scope-slider .slick-track {
          position: absolute !important;
          width: 100% !important;
          height: 100% !important;
          top: 0 !important;
          left: 0 !important; }
        .c-mod--hm-4__gallery__inner .scope-slider .slide {
          height: 62.5% !important;
          width: calc(33% - 0.75rem) !important;
          position: absolute !important;
          top: 0 !important;
          visibility: visible !important;
          display: block !important;
          opacity: 0 !important;
          overflow: hidden;
          z-index: 0 !important;
          transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
          transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
          .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+1) {
            left: 0 !important; }
            .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+1) .u-figure {
              transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
              .touch .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+1) .u-figure {
                transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
          .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+2) {
            top: auto !important;
            bottom: 0 !important;
            left: calc(33.333% + 0.375rem) !important;
            transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 600ms, opacity 800ms linear 600ms !important; }
            .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+2) .u-figure {
              transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
              .touch .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+2) .u-figure {
                transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
          .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+3) {
            right: 0 !important;
            left: auto !important;
            transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 700ms, opacity 800ms linear 700ms !important; }
            .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+3) .u-figure {
              transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
              .touch .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(3n+3) .u-figure {
                transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
          @media screen and (max-width: 47.5em) {
            .c-mod--hm-4__gallery__inner .scope-slider .slide {
              width: calc(50% - 0.625rem) !important;
              left: 0 !important; }
              .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+1) {
                left: 0 !important;
                top: 0 !important;
                right: auto !important;
                bottom: 0 !important;
                transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
                .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+1) .u-figure {
                  transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
                  .touch .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+1) .u-figure {
                    transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
              .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+2) {
                left: auto !important;
                right: 0 !important;
                top: auto !important;
                bottom: 0 !important;
                transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 600ms, opacity 800ms linear 600ms !important; }
                .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+2) .u-figure {
                  transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
                  .touch .c-mod--hm-4__gallery__inner .scope-slider .slide:nth-child(2n+2) .u-figure {
                    transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; } }
          @media screen and (max-width: 35em) {
            .c-mod--hm-4__gallery__inner .scope-slider .slide {
              width: 100% !important;
              height: 100% !important;
              left: 0 !important;
              top: 0 !important;
              right: auto !important;
              bottom: 0 !important;
              transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
              .c-mod--hm-4__gallery__inner .scope-slider .slide .u-figure {
                transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
                .touch .c-mod--hm-4__gallery__inner .scope-slider .slide .u-figure {
                  transition: transform 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 200ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; } }
          .c-mod--hm-4__gallery__inner .scope-slider .slide .u-figure {
            width: 130% !important;
            left: 0% !important;
            transform: translateX(100%) !important;
            opacity: 1 !important; }
            .c-mod--hm-4__gallery__inner .scope-slider .slide .u-figure img {
              opacity: 1 !important; }
          .c-mod--hm-4__gallery__inner .scope-slider .slide.slick-visible .u-figure {
            transform: translateX(0) !important;
            left: -30% !important; }
          .c-mod--hm-4__gallery__inner .scope-slider .slide.slick-active .u-figure {
            transform: translateX(0) !important;
            left: 0 !important; }
      .c-mod--hm-4__gallery__inner.state-transition-in .scope-slider .slide {
        opacity: 1 !important;
        transform: translateY(0%) skewX(0deg) translate3d(0, 0, 0) !important; }
        .c-mod--hm-4__gallery__inner.state-transition-in .scope-slider .slide.slick-active {
          opacity: 1 !important; }
    .c-mod--hm-4__gallery__dot-controls {
      width: calc(33% - 0.75rem) !important;
      left: 0;
      top: calc(62.5% + 3.75rem);
      position: absolute; }
      @media screen and (max-width: 47.5em) {
        .c-mod--hm-4__gallery__dot-controls {
          left: -0.625rem; } }
      @media screen and (max-width: 35em) {
        .c-mod--hm-4__gallery__dot-controls {
          width: auto !important;
          left: 50%;
          top: calc(100% + 1.5rem);
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%);
          -webkit-transform-origin: 50% 50%;
          -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%; } }
  .c-mod--hm-4__letter-e {
    left: calc(76.75% - 4.5em);
    bottom: 2em; }
    .c-mod--hm-4__letter-e.state-transition-in svg * {
      stroke-dashoffset: 100; }

/* ========================================================================== */
/* ABOUT PAGE */
/* ========================================================================== */
.c-mod--abt-1 {
  height: 100vh; }
  .c-mod--abt-1__video {
    position: absolute;
    top: 5.625rem;
    left: 10.8125rem;
    bottom: 5.625rem;
    right: 10.8125rem; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-1__video {
        top: 5rem;
        right: 7.8125rem;
        bottom: 5rem;
        left: 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-1__video {
        top: 2.5rem;
        right: 5rem;
        bottom: 2.5rem;
        left: 5rem; } }
  .c-mod--abt-1__text {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 25%;
    right: 25%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    overflow: visible; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-1__text {
        left: 7.8125rem;
        right: 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-1__text {
        left: 1.25rem;
        right: 1.25rem; } }
    .c-mod--abt-1__text__heading {
      overflow: visible; }

.c-mod--abt-2 {
  padding-bottom: 13.375em; }
  .c-mod--abt-2__black-box {
    padding-right: 4.5rem;
    margin-left: calc(40.625% - 13.125rem); }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-2__black-box {
        margin-left: calc(43.5% - 13.125rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-2__black-box {
        margin: 0 auto;
        display: block;
        padding-right: 2rem; } }
    @media screen and (max-width: 35em) {
      .c-mod--abt-2__black-box {
        padding-top: 13.25em; } }
  .c-mod--abt-2__letter-l {
    left: calc(80.15625% - 4.5em);
    top: 5.75em; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-2__letter-l {
        left: calc(85.5% - 4.5em); } }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-2__letter-l {
        left: calc(87.5% - 4.5em); } }
    @media screen and (max-width: 35em) {
      .c-mod--abt-2__letter-l {
        left: auto;
        right: 1.25rem;
        top: 0; } }
    .c-mod--abt-2__letter-l.state-transition-in svg * {
      stroke-dashoffset: 500; }

.c-mod--abt-3 {
  padding-bottom: 14.25em;
  z-index: 2; }
  @media screen and (max-width: 47.5em) {
    .c-mod--abt-3 {
      z-index: 100; } }
  @media screen and (max-width: 35em) {
    .c-mod--abt-3 {
      padding-bottom: 19.25em; } }
  .c-mod--abt-3__disclaimer {
    position: absolute;
    left: calc(10.8125rem - 10rem);
    top: 3rem;
    padding-left: 8rem;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-3__disclaimer {
        left: calc(7.8125rem - 10rem); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-3__disclaimer {
        left: -7.5rem; } }
    .c-mod--abt-3__disclaimer * {
      text-align: right;
      width: 100%;
      display: block;
      font-size: 0.75rem;
      height: 1em; }
    .c-mod--abt-3__disclaimer:before {
      height: 1px;
      position: absolute;
      top: 0.8125rem;
      width: 7.5rem;
      left: 0;
      content: '-';
      text-indent: -9999px;
      background-color: #e7e7e7; }
  .c-mod--abt-3__fg-image {
    width: 26.5625%;
    padding-top: 12.0625em;
    margin-left: 36.75%; }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-3__fg-image {
        width: 50%;
        padding-top: 30%;
        margin-left: 25%; } }
  .c-mod--abt-3__bg-image {
    width: 44.375%;
    position: absolute;
    top: 0;
    left: 0; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-3__bg-image {
        width: 42.5%; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-3__bg-image {
        width: 40%; } }
  .c-mod--abt-3__quote {
    position: absolute;
    top: 3rem;
    left: 56%; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-3__quote {
        left: 47.5%; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-3__quote {
        left: 45%;
        top: 0; } }
  .c-mod--abt-3__letter-u {
    left: calc(20% - 4.9375em);
    bottom: -2.125em; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-3__letter-u {
        left: calc(26% - 4.9375em); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-3__letter-u {
        left: 1.25rem; } }
    @media screen and (max-width: 35em) {
      .c-mod--abt-3__letter-u {
        bottom: -0.75em; } }
    .c-mod--abt-3__letter-u.state-transition-in svg * {
      stroke-dashoffset: 200; }

.c-mod--abt-4 {
  padding-bottom: 15em; }
  @media screen and (max-width: 35em) {
    .c-mod--abt-4 {
      padding-bottom: 20em; } }
  .c-mod--abt-4__black-box {
    margin-left: calc(53.125% - 13.125em);
    z-index: 10; }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-4__black-box {
        margin: 0 auto;
        display: block; } }
  .c-mod--abt-4__letter-n {
    left: calc(80.3125% - 5.25em);
    bottom: 5.25em;
    z-index: 100; }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-4__letter-n {
        left: auto;
        right: 1.25rem; } }
    @media screen and (max-width: 35em) {
      .c-mod--abt-4__letter-n {
        bottom: 3.75em; } }
    .c-mod--abt-4__letter-n.state-transition-in svg * {
      stroke-dashoffset: 0; }

.c-mod--abt-5 {
  padding-bottom: 11.625em; }
  @media screen and (max-width: 35em) {
    .c-mod--abt-5 {
      padding-bottom: 16.625em; } }
  .c-mod--abt-5__image-1 {
    width: 48.4375%;
    margin: 0 auto 12.75em; }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-5__image-1 {
        width: 60%; } }
    .c-mod--abt-5__image-1 figure {
      opacity: 0;
      transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
      transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
      .touch .c-mod--abt-5__image-1 figure {
        transform: translateY(10vh) skewX(0) translate3d(0, 0, 0) !important; }
    .c-mod--abt-5__image-1.state-transition-in figure {
      opacity: 1;
      transform: translateY(0%) skewX(0deg) translate3d(0, 0, 0) !important; }
  .c-mod--abt-5__image-2 {
    width: 23.4375%;
    margin-left: 63.28125%; }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-5__image-2 {
        width: 50%;
        margin-left: 50%; } }
    .c-mod--abt-5__image-2 figure {
      opacity: 0;
      transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
      transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
      .touch .c-mod--abt-5__image-2 figure {
        transform: translateY(10vh) skewX(0) translate3d(0, 0, 0) !important; }
    .c-mod--abt-5__image-2.state-transition-in figure {
      opacity: 1;
      transform: translateY(0%) skewX(0deg) translate3d(0, 0, 0) !important; }
  .c-mod--abt-5__image-3 {
    width: 31.25%;
    margin-left: 13.28125%; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-5__image-3 {
        margin-left: 15.5%; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--abt-5__image-3 {
        width: 40%;
        margin-left: 0; } }
    .c-mod--abt-5__image-3 figure {
      opacity: 0;
      transform: translateY(10vh) skewX(-5deg) translate3d(0, 0, 0) !important;
      transition: transform 1200ms cubic-bezier(0.07, 0.51, 0.12, 1) 500ms, opacity 800ms linear 500ms !important; }
      .touch .c-mod--abt-5__image-3 figure {
        transform: translateY(10vh) skewX(0) translate3d(0, 0, 0) !important; }
    .c-mod--abt-5__image-3.state-transition-in figure {
      opacity: 1;
      transform: translateY(0%) skewX(0deg) translate3d(0, 0, 0) !important; }
  .c-mod--abt-5__wheel {
    top: auto;
    bottom: -7.5em;
    left: calc(25% - 4.625em); }
  .c-mod--abt-5__text {
    position: absolute; }
    .c-mod--abt-5__text--right {
      right: -41vw;
      top: calc(50% - 0.45em); }
      @media screen and (max-width: 47.5em) {
        .c-mod--abt-5__text--right {
          right: -35vw; } }
    .c-mod--abt-5__text--left {
      left: -62.625vw;
      top: auto;
      bottom: calc(-1vw - 15.5rem); }
      @media screen and (max-width: 47.5em) {
        .c-mod--abt-5__text--left {
          left: -56.5vw;
          top: auto;
          bottom: -19.5vw; } }
  .c-mod--abt-5__letter-e {
    left: calc(25% - 4.5em);
    bottom: 0;
    z-index: 100; }
    @media screen and (max-width: 35em) {
      .c-mod--abt-5__letter-e {
        bottom: 2.5em; } }
    .c-mod--abt-5__letter-e.state-transition-in svg * {
      stroke-dashoffset: 100; }
  .c-mod--abt-5__quote {
    position: absolute;
    bottom: 4.75em;
    left: 57.03125%; }
    @media screen and (max-width: 60rem) {
      .c-mod--abt-5__quote {
        left: 50%; } }
    @media screen and (max-width: 35em) {
      .c-mod--abt-5__quote {
        bottom: 9.75em; } }
/* ========================================================================== */
/* LUNE LAB MODULES */
/* ========================================================================== */
.c-mod--lab-1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
  padding-left: 10.8125rem;
  padding-right: 10.8125rem;
  display: flex;
  align-content: center;
  min-height: 100vh;
  height: auto; }
  @media screen and (max-width: 60rem) {
    .c-mod--lab-1 {
      padding-top: 5rem;
      padding-bottom: 5rem;
      padding-left: 7.8125rem;
      padding-right: 2.5rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--lab-1 {
      padding-left: 1.25rem;
      padding-right: 1.25rem; } }
  .c-mod--lab-1__text {
    max-width: 50rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-content: center;
    align-self: center; }
    @media screen and (max-width: 47.5em) {
      .c-mod--lab-1__text {
        max-width: 36rem; } }
    @media screen and (max-width: 35em) {
      .c-mod--lab-1__text {
        display: block;
        max-width: 20rem; } }
    .c-mod--lab-1__text__left {
      width: calc(50% - 1.25rem);
      max-width: 18.75rem;
      align-self: flex-start; }
      @media screen and (max-width: 47.5em) {
        .c-mod--lab-1__text__left {
          max-width: 20rem;
          width: calc(50% - 0.625rem); } }
      @media screen and (max-width: 35em) {
        .c-mod--lab-1__text__left {
          padding-bottom: 1.3125rem;
          width: 100%; } }
    .c-mod--lab-1__text__right {
      width: calc(50% - 1.25rem);
      max-width: 18.75rem;
      align-self: flex-start;
      padding-top: 3.0625rem; }
      @media screen and (max-width: 47.5em) {
        .c-mod--lab-1__text__right {
          max-width: 20rem;
          width: calc(50% - 0.625rem);
          padding-top: 6.75vw; } }
      @media screen and (max-width: 35em) {
        .c-mod--lab-1__text__right {
          padding-top: 0;
          width: 100%; } }
/* ========================================================================== */
/* MENU MODULES */
/* ========================================================================== */
.c-mod--menu-1__image {
  position: fixed;
  top: 0;
  left: 10.8125rem;
  width: calc(50% - 14.8125rem);
  height: calc(100vh - 7.8125vw);
  overflow: visible; }
  @media screen and (max-width: 80rem) {
    .c-mod--menu-1__image {
      width: 50%;
      left: 0; } }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__image {
      width: 100%;
      height: 100vh;
      top: 0;
      left: 0; }
      .touch .c-mod--menu-1__image {
        min-height: 140vw !important;
        height: 100vh !important; } }
  @media screen and (max-width: 47.5em) {
    .touch .c-mod--menu-1__image {
      min-height: 180vw !important;
      height: 100vh !important; } }
  .c-mod--menu-1__image__inner {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden; }

.c-mod--menu-1__overlay {
  display: none; }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__overlay {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      background-color: rgba(0, 0, 0, 0.5);
      display: block; } }
.c-mod--menu-1__heading {
  position: absolute;
  top: calc(100vh - 15.625vw);
  margin-top: -1.3125em;
  left: 7.8125rem;
  overflow: visible; }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__heading {
      position: relative !important;
      transform: none !important;
      margin-top: 0;
      padding-bottom: 1.125rem;
      padding-top: 5rem;
      top: auto;
      left: auto;
      max-width: 30rem;
      width: calc(100% - 15.625rem);
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--menu-1__heading {
      width: calc(100% - 2.5rem); } }
.c-mod--menu-1__price-note {
  position: absolute;
  top: calc(50vh - 10rem);
  right: 4rem;
  display: inline-block;
  white-space: nowrap;
  padding: 0;
  width: 20rem;
  text-align: center; }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__price-note {
      right: 2.5rem; } }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__price-note {
      transform: translateX(-50%) !important;
      top: auto;
      right: auto;
      left: 50%;
      bottom: 3.25rem;
      text-align: left;
      padding: 0 1.25rem;
      width: 100%;
      max-width: 32.5rem;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; } }
  .c-mod--menu-1__price-note__inner {
    position: relative;
    display: block;
    transform: rotate(90deg) translateX(100%);
    transform-origin: 100% 0; }
    @media screen and (max-width: 60rem) {
      .c-mod--menu-1__price-note__inner {
        transform: none !important; } }
  .c-mod--menu-1__price-note__dash {
    display: inline-block;
    height: 1px;
    width: 1rem;
    background-color: #fff;
    position: relative;
    margin-right: 0.5rem;
    top: -0.1875rem; }

.c-mod--menu-1__menu {
  padding-top: calc(50vh - 4.25rem);
  padding-bottom: 7.8125vw;
  margin-left: 50%;
  width: calc(50% - 14rem);
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 80rem) {
    .c-mod--menu-1__menu {
      width: calc(50% - 11.25rem);
      margin-left: calc(50% + 4rem); } }
  @media screen and (max-width: 60rem) {
    .c-mod--menu-1__menu {
      width: calc(100% - 15.625rem);
      margin-left: auto;
      margin-right: auto;
      padding-top: 0;
      justify-content: center;
      padding-bottom: 8rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--menu-1__menu {
      width: calc(100% - 2.5rem); } }
  .c-mod--menu-1__menu__inner {
    width: 100%;
    display: block;
    max-width: 30rem; }
  .c-mod--menu-1__menu__section__heading {
    text-transform: uppercase;
    padding-top: 2.75rem;
    padding-bottom: 1.375rem !important;
    border-bottom: 1px solid #2a2a2a; }
  .c-mod--menu-1__menu__item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1.375rem 0; }
  .c-mod--menu-1__menu__heading {
    padding-right: 3rem; }
    .c-mod--menu-1__menu__heading__price {
      position: absolute;
      top: 0;
      right: 0; }

/* ========================================================================== */
/* CAREERS MODULES */
/* ========================================================================== */
.c-mod--car-1__text {
  padding: 12.5rem 4rem 0 9.3125rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 71.1875rem; }
  @media screen and (max-width: 60rem) {
    .c-mod--car-1__text {
      padding: 12.5rem 2.5rem 0 7.8125rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--car-1__text {
      padding: 7rem 1.25rem 0 1.25rem; } }
  .c-mod--car-1__text__video {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover; }
  .c-mod--car-1__text__image-wrapper {
    display: block;
    float: none;
    width: 75%;
    left: 25%;
    margin-top: 3.75rem; }
    @media screen and (max-width: 47.5em) {
      .c-mod--car-1__text__image-wrapper {
        margin-top: 2.25rem;
        width: calc(100% - 2.5rem);
        left: 2.5rem; } }
    .c-mod--car-1__text__image-wrapper:after {
      display: block;
      content: '-';
      text-indent: -9999px;
      width: 100%;
      height: 1px;
      clear: both;
      margin-bottom: 3.75rem; }
      @media screen and (max-width: 47.5em) {
        .c-mod--car-1__text__image-wrapper:after {
          margin-bottom: 1.25rem; } }
  .c-mod--car-1__text__image {
    padding-top: 85%; }
    .c-mod--car-1__text__image__inner {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      overflow: hidden; }
  .c-mod--car-1__text__inner {
    padding-left: 5.375rem;
    padding-bottom: 7.5rem;
    max-width: 49.25rem; }
    @media screen and (max-width: 60rem) {
      .c-mod--car-1__text__inner {
        padding-left: 0;
        max-width: 43.875rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--car-1__text__inner {
        padding-bottom: 3.5rem; } }
/* ========================================================================== */
/* CONTACT MODULES */
/* ========================================================================== */
.c-mod--con-1 {
  padding: 0 9.3125rem;
  min-height: 100vh; }
  @media screen and (max-width: 60rem) {
    .c-mod--con-1 {
      padding: 0 0 0 7.8125rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--con-1 {
      padding: 0 1.25rem 0 1.25rem; } }
  .c-mod--con-1__wheel {
    position: absolute;
    right: calc(50% - 50vw + 10.8125rem);
    width: 9.25rem;
    height: 9.25rem;
    top: -4.25rem; }
    @media screen and (max-width: 80rem) {
      .c-mod--con-1__wheel {
        right: calc(50% - 50vw + 4rem); } }
    @media screen and (max-width: 60rem) {
      .c-mod--con-1__wheel {
        right: calc(50% - 50vw + 6.5rem);
        top: -5.25rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--con-1__wheel {
        width: 7rem;
        height: 7rem;
        top: -4.25rem;
        bottom: auto;
        right: calc(50% - 50vw + 1.25rem); } }
    .c-mod--con-1__wheel__inner {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
  .c-mod--con-1__text {
    max-width: 48.75rem;
    padding-top: 18.75vh;
    padding-bottom: 12.5vh;
    margin: 0 auto;
    display: flex;
    align-items: center;
    min-height: 100vh; }
    .c-mod--con-1__text__inner {
      width: 100%;
      display: block;
      padding-left: 4rem;
      padding-top: 11.25em; }
      @media screen and (max-width: 60rem) {
        .c-mod--con-1__text__inner {
          padding-left: 0;
          padding-top: 10.125em; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--con-1__text__inner {
          padding-top: calc(7vw + 4rem); } }
      @media screen and (max-width: 35em) {
        .c-mod--con-1__text__inner {
          padding-left: calc(50% - 7.5rem);
          padding-right: calc(50% - 7.5rem); } }
    .c-mod--con-1__text__header {
      position: absolute;
      top: 0;
      left: 0; }
      @media screen and (max-width: 47.5em) {
        .c-mod--con-1__text__header {
          left: -0.125rem; } }
      @media screen and (max-width: 35em) {
        .c-mod--con-1__text__header {
          left: calc(50% - 7.75rem);
          width: 15rem; } }
    .c-mod--con-1__text__columns {
      display: flex; }
     /* .c-mod--con-1__text__columns--index1 { */
       [class*="c-mod--con-1__text__columns--index"] {
         padding-top: 4.75rem; }
       }
       @media screen and (max-width: 47.5em) {
         /* .c-mod--con-1__text__columns--index1 { */
           [class*="c-mod--con-1__text__columns--index"] {
           padding-top: 1.875rem; } }
       @media screen and (max-width: 35em) {
         /* .c-mod--con-1__text__columns--index1, .foodmenu .c-mod--con-1__text__columns--index0 { */
         [class*="c-mod--con-1__text__columns--index"] {
           padding-top: 3.1875rem; } }
     /* .c-mod--con-1__text__columns--index2 {
       padding-top: 4.75rem; }
       @media screen and (max-width: 47.5em) {
         .c-mod--con-1__text__columns--index2 {
           padding-top: 1.875rem; } }
       @media screen and (max-width: 35em) {
         .c-mod--con-1__text__columns--index2 {
           padding-top: 3.1875rem; } } */
      @media screen and (max-width: 35em) {
        .c-mod--con-1__text__columns {
          display: block; } }
      .c-mod--con-1__text__columns__column {
        width: 50%;
        display: block; }
        @media screen and (max-width: 35em) {
          .c-mod--con-1__text__columns__column {
            width: 100%; } }
        .c-mod--con-1__text__columns__column--left {
          padding-bottom: 1.3125rem; }

.c-mod--con-2 {
  overflow: hidden;
  padding-top: 4rem;
  padding-bottom: 12.25em; }
  @media screen and (max-width: 60rem) {
    .c-mod--con-2 {
      padding-top: 2.5rem;
      padding-bottom: 6.125em; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--con-2 {
      padding-top: 1.25rem;
      padding-bottom: 0; } }
  .c-mod--con-2__panel {
    width: calc(100% - 18.625rem);
    max-width: 48.75rem;
    margin: 0 auto;
    overflow: visible; }
    @media screen and (max-width: 60rem) {
      .c-mod--con-2__panel {
        width: calc(100% - 7.8125rem);
        margin-right: 0;
        margin-left: 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--con-2__panel {
        margin-left: 1.25rem;
        width: calc(100% - 1.25rem); } }
    @media screen and (max-width: 35em) {
      .c-mod--con-2__panel {
        width: calc(100% - 2.5rem);
        margin-right: 1.25rem; } }
    .c-mod--con-2__panel__bg {
      width: 9999px;
      position: absolute;
      height: 100%;
      top: 0;
      left: 0;
      background-color: black; }
    .c-mod--con-2__panel__form {
      padding: 7.25rem 4rem 7.5rem;
      width: calc(100% + 0.5rem); }
      @media screen and (max-width: 60rem) {
        .c-mod--con-2__panel__form {
          padding: 7.25rem 2.5rem 7.5rem;
          width: 100%; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--con-2__panel__form {
          padding: 7.25rem 1.25rem 7.5rem; } }
      @media screen and (max-width: 35em) {
        .c-mod--con-2__panel__form {
          padding-left: calc(50% - 7.5rem);
          padding-right: calc(50% - 7.5rem); } }
  .c-mod--con-2__image {
    width: 10rem;
    margin-left: calc(50% - 18.875rem);
    margin-top: -5rem; }
    @media screen and (max-width: 60rem) {
      .c-mod--con-2__image {
        margin-left: 10.3125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--con-2__image {
        width: 7.5rem;
        margin-top: -3.75rem;
        margin-left: 3.75rem; } }
/* ========================================================================== */
/* SINGLE POST */
/* ========================================================================== */
.c-mod--post__splash {
  height: 100vh;
  display: flex; }
  @media screen and (max-width: 60rem) {
    .c-mod--post__splash {
      min-height: 75vw;
      display: block; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--post__splash {
      min-height: 125vw; } }
  .c-mod--post__splash__image {
    display: block;
    height: 100%;
    width: 50%; }
    @media screen and (max-width: 60rem) {
      .c-mod--post__splash__image {
        width: 100%;
        height: calc(100% - 16rem - 27.5625vw); } }
    @media screen and (max-width: 47.5em) {
      .c-mod--post__splash__image {
        width: 100%;
        height: 50%;
        height: calc(100% - 10.625rem - 27.5625vw); } }
  .c-mod--post__splash__header {
    display: flex;
    height: 100%;
    width: 50%;
    padding: 4rem; }
    @media screen and (max-width: 60rem) {
      .c-mod--post__splash__header {
        height: auto;
        width: 100%;
        padding: 5rem 7.8125rem; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--post__splash__header {
        padding: 2.5rem 1.25rem; } }
.c-mod--post__body {
  padding: 17rem 9.3125rem 8rem;
  max-width: 67.625rem;
  margin: 0 auto; }
  @media screen and (max-width: 60rem) {
    .c-mod--post__body {
      padding: 5rem 7.8125rem 8rem; } }
  @media screen and (max-width: 47.5em) {
    .c-mod--post__body {
      padding: 3.75rem 1.25rem; } }
  @media screen and (max-width: 60rem) {
    .c-mod--post__body__header {
      display: none; } }
  .c-mod--post__body__text {
    padding: 0;
    display: block;
    margin-left: calc(100% - 22.875em);
    margin-top: -3rem; }
    @media screen and (max-width: 65em) {
      .c-mod--post__body__text {
        margin-top: 0; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--post__body__text {
        margin-top: 0; } }
/* ========================================================================== */
/* GALLERY */
/* ========================================================================== */
.c-control {
  width: 3rem;
  height: 3rem;
  position: absolute;
  left: 0;
  top: calc(50% - 1.5rem); }
  .c-control svg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }

.c-mod--gallery {
  min-height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }
  .c-mod--gallery__links {
    overflow: hidden;
    height: 100%;
    width: 100%;
    -webkit-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    -moz-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    -ms-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    /* resolves blurry elements on webkit */
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    .state-gallery-open .c-mod--gallery__links {
      -webkit-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      -moz-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      -ms-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      /* resolves blurry elements on webkit */
      -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      transform: translateY(-100%);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%; }
    .touch .c-mod--gallery__links {
      overflow-y: hidden;
      overflow-x: scroll;
      -webkit-overflow-scrolling: touch; }
    .c-mod--gallery__links__slide {
      display: inline-block;
      float: left;
      height: 100%;
      padding: 0 1.25rem; }
      @media screen and (min-width: 80rem) {
        .c-mod--gallery__links__slide {
          padding: 0 2rem; } }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide {
          padding: 8.25rem 2.5rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide {
          padding: 4.5rem 1.25rem; } }
    .c-mod--gallery__links__inner {
      height: 100%;
      width: 100%;
      position: relative;
      padding: 12.75rem 2.75rem 12.75rem 8.0625rem; }
      @media screen and (min-width: 80rem) {
        .c-mod--gallery__links__inner {
          padding: 12.75rem 8.8125rem; } }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner {
          padding: 0 5.3125rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__inner {
          padding: 0; } }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--1 {
          width: calc(100% - 5rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--1 {
          width: calc(100% - 3.75rem); } }
      .c-mod--gallery__links__inner__slide--1 {
        width: 100%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--2 {
          width: calc(200% - 10rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--2 {
          width: calc(200% - 7.5rem); } }
      .c-mod--gallery__links__inner__slide--2 {
        width: 50%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--3 {
          width: calc(300% - 15rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--3 {
          width: calc(300% - 11.25rem); } }
      .c-mod--gallery__links__inner__slide--3 {
        width: 33.3333333333%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--4 {
          width: calc(400% - 20rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--4 {
          width: calc(400% - 15rem); } }
      .c-mod--gallery__links__inner__slide--4 {
        width: 25%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--5 {
          width: calc(500% - 25rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--5 {
          width: calc(500% - 18.75rem); } }
      .c-mod--gallery__links__inner__slide--5 {
        width: 20%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--6 {
          width: calc(600% - 30rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--6 {
          width: calc(600% - 22.5rem); } }
      .c-mod--gallery__links__inner__slide--6 {
        width: 16.6666666667%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--7 {
          width: calc(700% - 35rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--7 {
          width: calc(700% - 26.25rem); } }
      .c-mod--gallery__links__inner__slide--7 {
        width: 14.2857142857%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--8 {
          width: calc(800% - 40rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--8 {
          width: calc(800% - 30rem); } }
      .c-mod--gallery__links__inner__slide--8 {
        width: 12.5%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__inner--9 {
          width: calc(900% - 45rem); } }
      @media screen and (max-width: 60rem) and (max-width: 47.5em) {
        .c-mod--gallery__links__inner--9 {
          width: calc(900% - 33.75rem); } }
      .c-mod--gallery__links__inner__slide--9 {
        width: 11.1111111111%; }
    .c-mod--gallery__links__slide--1 {
      width: 100%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--1 {
          width: calc(100% - 10.625rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--1 {
          width: 100%; } }
    .c-mod--gallery__links__slide--2 {
      width: 50%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--2 {
          width: calc(50% - 5.3125rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--2 {
          width: 50%; } }
    .c-mod--gallery__links__slide--3 {
      width: 33.3333333333%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--3 {
          width: calc(33.3333333333% - 3.5416666667rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--3 {
          width: 33.3333333333%; } }
    .c-mod--gallery__links__slide--4 {
      width: 25%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--4 {
          width: calc(25% - 2.65625rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--4 {
          width: 25%; } }
    .c-mod--gallery__links__slide--5 {
      width: 20%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--5 {
          width: calc(20% - 2.125rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--5 {
          width: 20%; } }
    .c-mod--gallery__links__slide--6 {
      width: 16.6666666667%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--6 {
          width: calc(16.6666666667% - 1.7708333333rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--6 {
          width: 16.6666666667%; } }
    .c-mod--gallery__links__slide--7 {
      width: 14.2857142857%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--7 {
          width: calc(14.2857142857% - 1.5178571429rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--7 {
          width: 14.2857142857%; } }
    .c-mod--gallery__links__slide--8 {
      width: 12.5%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--8 {
          width: calc(12.5% - 1.328125rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--8 {
          width: 12.5%; } }
    .c-mod--gallery__links__slide--9 {
      width: 11.1111111111%; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__links__slide--9 {
          width: calc(11.1111111111% - 1.1805555556rem); } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide--9 {
          width: 11.1111111111%; } }
    .c-mod--gallery__links__slide-inner {
      position: relative;
      width: 100%;
      height: 100%; }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__links__slide-inner {
          display: flex;
          align-items: center;
          justify-content: center; } }
    @media screen and (max-width: 47.5em) {
      .c-mod--gallery__links__img-wrapper {
        padding-top: 85%;
        height: 0 !important;
        width: 100% !important;
        position: relative !important;
        top: auto !important;
        left: auto !important; } }
    .c-mod--gallery__links__image-1 {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute; }
    @media screen and (min-width: 60rem) {
      .c-mod--gallery__links .u-figure {
        -webkit-transition: transform 800ms;
        -moz-transition: transform 800ms;
        -ms-transition: transform 800ms;
        transition: transform 800ms;
        /* resolves blurry elements on webkit */ }
      .no-touch .state-do-hover-effects .c-mod--gallery__links a:hover .u-figure {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; } }
    .c-mod--gallery__links__cover-wrap {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      overflow: hidden; }
    .c-mod--gallery__links__icon {
      position: absolute;
      right: 0;
      width: 3rem;
      height: 3rem;
      top: calc(50% - 1.5rem);
      left: calc(50% - 1.5rem);
      background-color: #FFFFFF;
      border-radius: 50%;
      opacity: 0;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%;
      -webkit-transition: opacity 250ms, transform 0ms linear 250ms;
      -moz-transition: opacity 250ms, transform 0ms linear 250ms;
      -ms-transition: opacity 250ms, transform 0ms linear 250ms;
      transition: opacity 250ms, transform 0ms linear 250ms;
      /* resolves blurry elements on webkit */ }
      .c-mod--gallery__links__icon:before {
        content: '-';
        text-indent: -9999px;
        background-color: #000000;
        width: 0.5rem;
        height: 0.125rem;
        top: calc(50% - 0.0625rem);
        left: calc(50% - 0.25rem);
        z-index: 100;
        position: absolute;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      .c-mod--gallery__links__icon:after {
        content: '-';
        text-indent: -9999px;
        background-color: #000000;
        width: 0.5rem;
        height: 0.125rem;
        top: calc(50% - 0.0625rem);
        left: calc(50% - 0.25rem);
        z-index: 100;
        position: absolute;
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      a:hover .c-mod--gallery__links__icon {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
        -webkit-transition: opacity 250ms, transform 250ms;
        -moz-transition: opacity 250ms, transform 250ms;
        -ms-transition: opacity 250ms, transform 250ms;
        transition: opacity 250ms, transform 250ms;
        /* resolves blurry elements on webkit */ }
      .touch .c-mod--gallery__links__icon {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
        transition: opacity 800ms linear 800ms, transform 800ms linear cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
        opacity: 0 !important; }
      .touch .state-ajax-loaded .c-mod--gallery__links__icon {
        opacity: 1 !important; }
    .c-mod--gallery__links__title {
      width: 100%;
      top: calc(100% + 2.5rem);
      text-align: center;
      left: 0;
      position: absolute;
      -webkit-transition: opacity 250ms;
      -moz-transition: opacity 250ms;
      -ms-transition: opacity 250ms;
      transition: opacity 250ms;
      /* resolves blurry elements on webkit */
      opacity: 0; }
      a:hover .c-mod--gallery__links__title {
        opacity: 1;
        -webkit-transition: opacity 250ms linear 400ms;
        -moz-transition: opacity 250ms linear 400ms;
        -ms-transition: opacity 250ms linear 400ms;
        transition: opacity 250ms linear 400ms;
        /* resolves blurry elements on webkit */ }
      .touch .c-mod--gallery__links__title {
        transition: opacity 800ms linear 800ms, transform 800ms linear cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
        opacity: 0 !important; }
      .touch .state-ajax-loaded .c-mod--gallery__links__title {
        opacity: 1 !important; }
    .c-mod--gallery__links__rule {
      width: 1px;
      left: 50%;
      position: absolute;
      top: calc(50% + 2rem);
      height: 0;
      background-color: #fff;
      opacity: 0;
      -webkit-transition: opacity 250ms, height 0ms linear 250ms;
      -moz-transition: opacity 250ms, height 0ms linear 250ms;
      -ms-transition: opacity 250ms, height 0ms linear 250ms;
      transition: opacity 250ms, height 0ms linear 250ms;
      /* resolves blurry elements on webkit */ }
      a:hover .c-mod--gallery__links__rule {
        opacity: 1;
        -webkit-transition: opacity 250ms, height 150ms linear 250ms;
        -moz-transition: opacity 250ms, height 150ms linear 250ms;
        -ms-transition: opacity 250ms, height 150ms linear 250ms;
        transition: opacity 250ms, height 150ms linear 250ms;
        /* resolves blurry elements on webkit */
        height: calc(50% - 2.5rem + 2rem); }
      .touch .c-mod--gallery__links__rule {
        transition: opacity 800ms linear 800ms, transform 800ms linear cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
        height: calc(50% - 2.5rem + 2rem);
        opacity: 0 !important; }
      .touch .state-ajax-loaded .c-mod--gallery__links__rule {
        opacity: 1 !important; }
  .c-mod--gallery__zoom {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    -webkit-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    -moz-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    -ms-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 400ms;
    /* resolves blurry elements on webkit */
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    .state-gallery-open .c-mod--gallery__zoom {
      -webkit-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      -moz-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      -ms-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1);
      /* resolves blurry elements on webkit */
      -webkit-transform: translateY(0%);
      -ms-transform: translateY(0%);
      transform: translateY(0%);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%; }
    .c-mod--gallery__zoom__back {
      width: 10rem;
      text-align: center;
      position: absolute;
      top: 0;
      z-index: 1000;
      left: calc(50% - 5rem);
      padding-top: 4rem;
      -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      transform: translateY(-100%);
      -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
      transform-origin: 50% 50%;
      -webkit-transition: transform 400ms cubic-bezier(0.39, 0.575, 0.565, 1) 0ms;
      -moz-transition: transform 400ms cubic-bezier(0.39, 0.575, 0.565, 1) 0ms;
      -ms-transition: transform 400ms cubic-bezier(0.39, 0.575, 0.565, 1) 0ms;
      transition: transform 400ms cubic-bezier(0.39, 0.575, 0.565, 1) 0ms;
      /* resolves blurry elements on webkit */ }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__zoom__back {
          padding-top: 2.5rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__zoom__back {
          padding-top: 1.25rem; } }
      .c-mod--gallery__zoom__back:after {
        width: 1px;
        top: 0;
        height: 3.75rem;
        left: 50%;
        background-color: white;
        content: '-';
        position: absolute;
        text-indent: -9999px;
        -webkit-transition: transform 250ms;
        -moz-transition: transform 250ms;
        -ms-transition: transform 250ms;
        transition: transform 250ms;
        /* resolves blurry elements on webkit */ }
        @media screen and (max-width: 60rem) {
          .c-mod--gallery__zoom__back:after {
            height: 2.25rem; } }
        @media screen and (max-width: 47.5em) {
          .c-mod--gallery__zoom__back:after {
            height: 1rem; } }
      .c-mod--gallery__zoom__back:hover:after {
        -webkit-transform: translateY(-0.5rem);
        -ms-transform: translateY(-0.5rem);
        transform: translateY(-0.5rem);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%; }
      .state-gallery-open .c-mod--gallery__zoom__back {
        -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
        transform: translateY(0%);
        -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
        -webkit-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 800ms;
        -moz-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 800ms;
        -ms-transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 800ms;
        transition: transform 800ms cubic-bezier(0.39, 0.575, 0.565, 1) 800ms;
        /* resolves blurry elements on webkit */ }
    .c-mod--gallery__zoom__gallery {
      z-index: 0;
      opacity: 0;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      padding: 8.75rem 10.8125rem; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__zoom__gallery {
          padding: 5.75rem 7.8125rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__zoom__gallery {
          padding: 3.25rem 1.25rem; } }
      .c-mod--gallery__zoom__gallery.state-active {
        opacity: 1;
        z-index: 1; }
    .c-mod--gallery__zoom__gallery-inner {
      width: 100%;
      height: 100%;
      position: relative; }
      .c-mod--gallery__zoom__gallery-inner .scope-img-gallery {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        position: absolute; }
        .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * {
          position: absolute !important;
          width: 100% !important;
          height: 100% !important;
          top: 0 !important;
          left: 0 !important;
          z-index: 0 !important;
          opacity: 1 !important; }
          .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide {
            opacity: 1 !important; }
            .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide.slick-active {
              opacity: 1 !important; }
            .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide .u-figure {
              -webkit-transform: translateX(100%);
              -ms-transform: translateX(100%);
              transform: translateX(100%);
              -webkit-transform-origin: 50% 50%;
              -ms-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
              transition: transform 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 400ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
              .touch .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide .u-figure {
                transition: transform 300ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms, left 300ms cubic-bezier(0.47, 0, 0.745, 0.715) 0ms; }
            .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide.slick-visible .u-figure {
              transform: translateX(0) !important;
              left: -30% !important; }
            .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide.slick-active .u-figure {
              transform: translateX(0) !important;
              left: 0 !important; }
            .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide img {
              opacity: 0;
              -webkit-transition: opacity 400ms linear 800ms;
              -moz-transition: opacity 400ms linear 800ms;
              -ms-transition: opacity 400ms linear 800ms;
              transition: opacity 400ms linear 800ms;
              /* resolves blurry elements on webkit */ }
              .c-mod--gallery__zoom__gallery-inner .scope-img-gallery * .slide img.loaded {
                opacity: 1 !important; }
    .c-mod--gallery__zoom .js-gallery-prev {
      position: absolute;
      left: 4rem;
      right: auto;
      top: calc(50% - 2rem); }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__zoom .js-gallery-prev {
          left: 2.5rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__zoom .js-gallery-prev {
          display: none; } }
    .c-mod--gallery__zoom .js-gallery-next {
      position: absolute;
      left: auto;
      right: 4rem;
      top: calc(50% - 2rem); }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__zoom .js-gallery-next {
          right: 2.5rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__zoom .js-gallery-next {
          display: none; } }
    .c-mod--gallery__zoom__controls {
      width: 100%;
      bottom: 4rem;
      left: 0;
      position: absolute; }
      @media screen and (max-width: 60rem) {
        .c-mod--gallery__zoom__controls {
          bottom: 2.5rem; } }
      @media screen and (max-width: 47.5em) {
        .c-mod--gallery__zoom__controls {
          bottom: 1.25rem; } }
      .c-mod--gallery__zoom__controls .scope-dot-controls {
        justify-content: center; }

.c-accordion {
  box-sizing: content-box;
  padding-bottom: 5.0625rem !important; }
  @media screen and (max-width: 47.5em) {
    .c-accordion {
      padding-top: 0 !important;
      padding-bottom: 3.9375rem !important; } }
.c-accordion__body p:last-child {
  padding-bottom: 1.6875rem !important; }
  @media screen and (max-width: 47.5em) {
    .c-accordion__body p:last-child {
      padding-bottom: 1.3125rem !important; } }
.c-accordion > p:last-child {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-top: 0 !important;
  padding-bottom: 3.375rem !important; }
  @media screen and (max-width: 47.5em) {
    .c-accordion > p:last-child {
      padding-top: 0 !important;
      padding-bottom: 2.625rem !important; } }
.c-form-mask {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0.75;
  background-color: #000000;
  z-index: 100 !important; }

.wpcf7-response-output {
  z-index: 200 !important; }

/* ========================================================================== */
/* LUNE POP-UP */
/* ========================================================================== */
.c-lune-popup {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  position: fixed;
  z-index: 9999;
  visibility: hidden;
  left: -9999px;
  opacity: 0;
  transition: visibility 0ms linear 800ms, left 0ms linear 800ms, opacity 800ms; }
  .state-popup-open .c-lune-popup {
    left: 0;
    opacity: 1;
    visibility: visible;
    transition: visibility 0ms linear 0ms, left 0ms linear 0ms, opacity 800ms; }
  .c-lune-popup__overlay {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.8); }
  .c-lune-popup__modal {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: white;
    width: calc(100% - 3rem);
    height: calc(100% - 3rem);
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%); }
    
    /* ========================================================================== */
    /* FOOD MENU CHANGES - search .foodmenu for two added lines */
    /* ========================================================================== */
    
    .menu-item-title {font-weight:bold;}
    .dietaries {font-style:italic;font-size: 0.75rem;}

  /* Color the state value on Main Food Menu page */
    .location-state {color: #fff; opacity: 0.4; font-family: 'DIN Next LT W01 Regular';}
    
  /* Fix Bolded menu item text to use correct font */
  .c-mod--menu-1__menu__item .scope-text p strong {
  font-weight: normal;
  font-family: 'DIN Next LT W01 Bold', sans-serif;
  }

	/* ========================================================================== */
    /* Better recaptcha for mobile on careers page */
    /* ========================================================================== */

	@media screen and (max-width: 35em){
	.g-recaptcha div{margin: 0 auto;}
	}
  
  /* Contact page location cater for additional location */
  /* .c-mod--con-1__text__columns--index3,   .c-mod--con-1__text__columns--index4 {
  padding-top: 4.75rem; }
  @media screen and (max-width: 47.5em) {
    .c-mod--con-1__text__columns--index3, .c-mod--con-1__text__columns--index4 {
      padding-top: 1.875rem; } }
  @media screen and (max-width: 35em) {
    .c-mod--con-1__text__columns--index3, .c-mod--con-1__text__columns--index4 {
      padding-top: 3.1875rem; } } */
      
  /* ========================================================================== */
  /* WPFORMS tweak to ditch CF7 but stay on brand */
  /* ========================================================================== */
  .wpforms-hidden {display:none;}
  
 .wpforms-error {
 color: indianred;
 font-size: 0.8rem;
 }
 
 .wpforms-field-container {
 width: 100%;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 }
 
 .wpforms-submit.c-button {
 border-top-color: transparent;
 border-right-color: transparent;
 border-bottom-color: transparent;
 border-left-color: transparent;
 background-color: transparent;
 }
 
 .wpforms-submit-container {
 width: 100%;
 }
 
 .no-touch .wpforms-submit-container .c-button:hover {
 border-color: transparent;
 }
 
 /* control the uploader */
 .wpforms-field-file-upload {
 padding: 0.375rem 0 0.625rem !important;
 margin-bottom: 5rem;
 }
 
 .wpforms-field-limit-text{display:none;}
 
 .wpforms-uploader {
 filter: invert(1) !important;
 font-family: 'DIN Next LT W01 Regular', sans-serif;
 font-size: 0.875rem;
 line-height: 1.6875rem;
 letter-spacing: 0.003em;
 font-weight: normal;
 }
 
 /* Reverse the uploaded image inversion */
 .dz-image {
 filter: invert(1) !important;
 }
 
 /* Style the thank you message */
 .wpforms-confirmation-container p, .wpforms-error-container p, .wpforms-payment-total {
 font-family: 'DIN Next LT W01 Bold', sans-serif;
 font-size: 0.875rem;
 line-height: 1.6875rem;
 letter-spacing: 0.003em;
 color: #FFFFFF;
 font-weight: normal;
 }
 
 /* Style the Date/time message */
 .wpforms-field-content p {
   font-family: 'DIN Next LT W01 Regular', sans-serif;
    font-size: 0.875rem;
    line-height: 1.6875rem;
    letter-spacing: 0.003em;
    color: #FFFFFF;
    font-weight: normal;
 }
 
 @media screen and (max-width: 35em) {
   .scope-form form {
   display: flex;
   }
   .wpfphonefield {
     margin-bottom: 3em !important;
   }
 }
 
 /* Fix Stripe fields width */
.wpforms-field-stripe-credit-card {
     width: 100%;
     padding-top: 5rem;
 
 }
 
 /* Give us month in the datepicker for clarity */
 .flatpickr-monthDropdown-months {
   display: inline-block !important;
 }
 
 .wpforms-label-hide {
 display: none;
 }
  
.depth-1 .wpforms-field-label-inline {
 padding-left: 5px !important;
 }
 
 input[type="checkbox"], input[type="radio"] {
     appearance: radio !important;
     display: inline-block;
     width: 10px !important;
 }
 
 .wpforms-field-radio {
 margin-bottom: 5rem;
 }
 
 .wpforms-field-label-inline {
 display: inline !important;
 padding-left: 15px !important;
 }
 
 .depth-1 {
 height: 30px;
 }
 
 .scope-form form:not(.wpforms-form) .state-transition-in .faux-input {
 color: transparent !important;
 }
 
 .scope-form form select.wpforms-payment-price {
 display: block !important;
 position: relative !important;
 opacity: 1;
 filter: invert(1);
 }
 
 .wpforms-payment-total {
 margin-bottom: 5rem;
 color: #ffffff;
 }
 @media screen and (max-width: 47.5em){
 .scope-form form select.wpforms-payment-price {
 position: relative;
 }
 }
 
 /* make ordering form wider for mobile and adjust phone field margin  */
 @media screen and (max-width: 47.5em) {
 .scope-form form .wpforms-field-phone {
     margin-bottom: 3rem;}
 }
 
 @media screen and (max-width: 35em) {
 .c-mod--con-2__panel__form.ordering{
     padding-left: calc(50% - 9.5rem);
     padding-right: calc(50% - 9.5rem);}
 }
 
 
 /* Fix radio button spacing and fonts on corp ordering page */
 .corp-delivery input[type="radio"] {
     margin-bottom: 5px !important;
 
 }
 
 .corp-delivery {
 margin-bottom: 80px;
 }
 
 .corp-delivery .wpforms-field-label {
   font-family: 'DIN Next LT W01 Regular', sans-serif;
     color: #FFFFFF;
     font-weight: normal;
     margin-bottom: 5px;
 }
 
 .wpforms-form b, .wpforms-form strong {
   font-family: 'DIN Next LT W01 Bold', sans-serif;
   font-weight: normal;
 }
 
 
 .attention {
   font-family: 'DIN Next LT W01 Regular', sans-serif;
   font-weight: normal;
   color: #FFFFFF;
 }
 
 .attention a {
   opacity: 1;
   transition: opacity 1s ease;
 }
 
 .attention a:hover {
   opacity: 0.6;
 }
 
 /* Jobadder widget */
 .scope-text .ja-job-details .title, .scope-text .ja-job-details .back-link, .ja-job-list .title {
 font-family: 'DIN Next LT W01 Bold', sans-serif;
 color: #ffffff !important;
 }
 
 .scope-text .ja-job-details .description, .scope-text .ja-job-details .bullet-points, .scope-text .ja-job-details .classifications, .scope-text .ja-job-list .classifications, .view-details {
 font-family: 'DIN Next LT W01 Regular', sans-serif;
 font-size: 0.875rem;
 line-height: 1.6875rem;
 letter-spacing: 0.003em;
 font-weight: normal;
 color: #ffffff !important;
 }
 
 .powered-by-jobadder {display:none;}
 
 .back-link {
     top: 170px;
     position: relative;
     display: inline-block;
     width: 300px;
 }
 
 .job {
 margin-bottom: 70px;
 }
 
 .classifications {
   display: flex;
   justify-content: flex-start; 
   list-style: none !important;
   padding: 0;
 }
 
 @media screen and (max-width: 47.5em){
   .classifications {
     display: block;
   }
   .back-link {
        top: 130px;
        font-size: 0.8rem;
    }
 }
 
 .classifications li {
   margin-right: 10px;
   list-style: none !important;
 }
 
 .date-posted {opacity:0.8;}
 
 #ja-jobs-widget ul, #ja-jobs-widget li {list-style: disc; list-style-position: inside;}
 #ja-jobs-widget ul {margin-bottom:15px;}

 /* Custom button for Jobadder widget */
.ja-button {
   height: 4.5rem;
   width: 100%;
   max-width: 13.75rem;
   text-align: center;
   line-height: 4.5rem;
   display: block;
   position: relative;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   color: #FFFFFF;
   white-space: nowrap;
   overflow: hidden;
 border-top-color: transparent;
 border-right-color: transparent;
 border-bottom-color: transparent;
 border-left-color: transparent;
 background-color: transparent;
 }
 
   .no-touch .ja-button:hover {
     border-color: white; }
   .ja-button--fill {
     border-color: #FFFFFF;
     background-color: #FFFFFF;
     color: #000000; }
   .ja-button__text {
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     position: absolute;
     display: block;
     color: inherit;
     z-index: 10; }

   .no-touch .ja-button:hover:before {
     border-color: white; }
   .no-touch .ja-button.inactive:hover:before {
     border-color: #666; }
     
   .no-touch .ja-button:hover:after {
     width: 1rem;
     height: 1rem;
     border-color: white; }
   .no-touch .ja-button.inactive:hover:after {
     width: 0rem;
     height: 0rem;
     border-color: #666; } 
     
     .ja-button {
          font-family: 'DIN Next LT W01 Regular', sans-serif;
          font-size: 0.875rem;
          line-height: 1.6875rem;
          letter-spacing: 0.003em;
          color: #FFFFFF;
          margin: 30px 0;
          border: 0.5px solid rgb(102, 102, 102);
          font-weight: normal;
          border-radius: 0px !important;
          -webkit-border-radius: 0px !important;
      }
      
      .ja-button:hover{
          border: 0.5px solid rgb(255, 255, 255);
      }

