@font-face {
  font-family: "moderat";
  src: url("../typefaces/moderat-subset/moderat-regular-subset.woff2")
      format("woff2"),
    url("../typefaces/moderat-subset/moderat-regular-subset.woff")
      format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "moderat";
  src: url("../typefaces/moderat-subset/moderat-bold-subset.woff2")
      format("woff2"),
    url("../typefaces/moderat-subset/moderat-bold-subset.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
* {
  margin: 0;
  padding: 0;
}
html,
body {
  height: 100%;
}
body {
  background-color: black;
  font: 13.34px Helvetica, Arial, sans-serif;
  font-size: small;
  text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
}
.ds-dot {
  display: block;
  width: 5em;
  height: 5em;
  margin: 0 auto;
  border-radius: 100%;
  background-color: #666;
}
.ds-dot--shadow {
  -webkit-box-shadow: 0 0 2px rgba(10, 42, 79, 0.2);
  box-shadow: 0 0 2px rgba(10, 42, 79, 0.2);
}
.ds-header {
  text-align: center;
  background: #5f11e8;
  color: #f8f8f8;
  padding: 4em;
  margin-bottom: 2em;
  margin-top: 2em;
}
@-webkit-keyframes moveBack {
  100% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
@keyframes moveBack {
  100% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
@-webkit-keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes moveUpDown {
  45% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  55% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
@keyframes moveUpDown {
  45% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  55% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
@-webkit-keyframes moveOffset {
  0% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3D(0, -4em, 0);
    transform: translate3D(0, -4em, 0);
  }
}
@keyframes moveOffset {
  0% {
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3D(0, -4em, 0);
    transform: translate3D(0, -4em, 0);
  }
}
html,
body {
  background: #f8f8f8;
  width: 100%;
  height: 100%;
}
html {
  scroll-behavior: smooth;
}
body {
  font-weight: 400;
  font-size: calc(12px + 0.5vw);
  line-height: 1.75;
  font-family: "Fira Mono", monospace;
  -webkit-text-size-adjust: 100%;
  -webkit-font-feature-settings: "kern" 1;
  -o-font-feature-settings: "kern" 1;
  font-feature-settings: "kern" 1;
  -webkit-font-kerning: normal;
  font-kerning: normal;
  color: #0a2a4f;
}
p + *,
ol + *,
ul + *,
section + p {
  margin-top: 1.3em;
}
img,
video:not(.hero__background) {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  width: 100%;
}
.cover-video {
  height: 100%;
}
.cover-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
svg {
  max-width: 100%;
}
.image {
  width: 100%;
  height: auto;
}
.image + *:not(.caption) {
  margin-top: 30px;
}
@media screen and (min-width: 600px) {
  .image + *:not(.caption) {
    margin-top: 60px;
  }
}
.image + .caption {
  margin-top: 15px;
  margin-bottom: 22.5px;
}
.image-loader {
  position: relative;
  padding-bottom: 56.3%;
  width: 100%;
  overflow: hidden;
}
.image-loader img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
.video {
  position: relative;
  padding-bottom: 55.95%;
  height: 0;
}
.video.video--1-1 {
  padding-bottom: 100%;
}
.video.video--4-5 {
  padding-bottom: 125%;
}
.video-not-to-large {
  max-width: 50vh;
  margin: auto;
}
.video iframe,
.video .video__element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.inlinevideo {
  width: 100%;
  height: auto;
  display: block;
}
.video + .video {
  margin-top: 30px;
}
.transition-overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  pointer-events: none;
}
figure > img {
  display: block;
}
figcaption {
  font-size: 15px;
}
pre {
  margin-top: 15px;
  margin-bottom: 15px;
}
ul,
ol {
  margin-left: 30px;
  max-width: 56em;
  max-width: calc(56em + 60px);
  margin-left: auto;
  margin-right: auto;
  padding-left: 60px;
  padding-right: 60px;
  font-weight: bold;
}
@media screen and (min-width: 600px) {
  ul,
  ol {
    padding-left: 90px;
    padding-right: 90px;
  }
}
li > ul,
li > ol {
  margin-bottom: 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.navigation__link,
.navigation__overlay,
.h3,
.h4,
.h5,
.ingress p:not(.button__wrap),
.h6 {
  font-family: "Moderat", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  letter-spacing: 0.05em;
  word-spacing: 0.1em;
}
@media screen and (min-width: 600px) {
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .h1,
  .h2,
  .navigation__link,
  .navigation__overlay,
  .h3,
  .h4,
  .h5,
  .ingress p:not(.button__wrap),
  .h6 {
    padding-left: 30px;
    padding-right: 30px;
  }
}
h1 + *,
h2:not(.visuallyhidden) + *,
h3 + *,
h4 + *,
h5 + *,
h6 + * {
  margin-top: 15px;
}
@media screen and (min-width: 50em) {
  h1 + *,
  h2:not(.visuallyhidden) + *,
  h3 + *,
  h4 + *,
  h5 + *,
  h6 + * {
    margin-top: 30px;
  }
}
h1,
.h1 {
  font-size: calc(3em + 2vw);
  max-width: calc(12em + 60px);
}
h2,
.h2,
.navigation__link,
.navigation__overlay {
  font-size: 2.5em;
  max-width: calc(22.4em + 60px);
}
h3,
.h3 {
  font-size: 1.5em;
  max-width: calc(37.35em + 60px);
}
h4,
.h4 {
  font-size: 1.5em;
  max-width: calc(37.35em + 60px);
}
h5,
.h5,
.ingress p:not(.button__wrap),
h6,
.h6 {
  max-width: calc(56em + 60px);
}
.pre-header {
  font-size: 1em;
  letter-spacing: 0.125em;
}
.sub-header {
  font-size: 1.25em;
}
a {
  color: #5f11e8;
  text-decoration: none;
}
a:visited {
  color: #5f11e8;
}
a:hover {
  color: #5f11e8;
}
p > a:not(.button):not(.link):not(.metabutton):not(.custom-button),
h2 > a {
  position: relative;
  text-shadow: 1px 1px 0 #fff, 2px 1px 0 #fff, -1px 1px 0 #fff, -2px 1px 0 #fff,
    1px -1px 0 #fff, 2px -1px 0 #fff, -1px -1px 0 #fff, -2px -1px 0 #fff;
  z-index: 1;
}
p > a:not(.button):not(.link):not(.metabutton):not(.custom-button):after,
h2 > a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  border-bottom: 2px solid #5f11e8;
  z-index: -1;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
}
p > a:not(.button):not(.link):not(.metabutton):not(.custom-button):focus,
h2 > a:focus {
  outline: none;
}
p > a:not(.button):not(.link):not(.metabutton):not(.custom-button):hover:after,
p > a:not(.button):not(.link):not(.metabutton):not(.custom-button):focus:after,
h2 > a:hover:after,
h2 > a:focus:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
.c-business-bg a,
h2 > a {
  text-shadow: none !important;
}
.c-people-bg a {
  color: #0a2a4f;
}
.c-people-bg a:after {
  border-color: #fff;
}
blockquote {
  color: #666;
  border-left: 4px solid #f8f8f8;
  padding-left: 15px;
  font-size: 18px;
  letter-spacing: -1px;
  font-style: italic;
}
pre,
code {
  font-size: 15px;
  border: 1px solid #f8f8f8;
  border-radius: 3px;
  background-color: rgba(102, 102, 102, 0.2);
  text-align: left;
  max-width: 60em;
  margin-left: auto;
  margin-right: auto;
  word-break: break-all;
}
code {
  padding: 1px 5px;
}
pre {
  padding: 8px 12px;
  overflow-x: auto;
}
pre > code {
  border: 0;
  padding-right: 0;
  padding-left: 0;
}
p {
  max-width: 56em;
  max-width: calc(56em + 60px);
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 600px) {
  p {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.meta-description,
.meta {
  letter-spacing: 0.125em;
}
.meta-description {
  text-transform: uppercase;
  font-size: 0.75em;
  font-weight: 700;
}
.site-content hr {
  border: none;
  padding: 30px;
}
body.easter {
  -webkit-perspective: 2000px;
  perspective: 2000px;
}
@-webkit-keyframes makeitawsome {
  0% {
    -webkit-transform: rotate(0deg) scaleY(1);
    transform: rotate(0deg) scaleY(1);
  }
  50% {
    -webkit-transform: rotate(180deg) scaleY(0.3);
    transform: rotate(180deg) scaleY(0.3);
  }
  100% {
    -webkit-transform: rotate(360deg) scaleY(1);
    transform: rotate(360deg) scaleY(1);
  }
}
@keyframes makeitawsome {
  0% {
    -webkit-transform: rotate(0deg) scaleY(1);
    transform: rotate(0deg) scaleY(1);
  }
  50% {
    -webkit-transform: rotate(180deg) scaleY(0.3);
    transform: rotate(180deg) scaleY(0.3);
  }
  100% {
    -webkit-transform: rotate(360deg) scaleY(1);
    transform: rotate(360deg) scaleY(1);
  }
}
.easter * {
  -webkit-animation: makeitawsome 40s linear infinite;
  animation: makeitawsome 40s linear infinite;
}
.easter * > * {
  -webkit-animation: makeitawsome 40s linear infinite;
  animation: makeitawsome 40s linear infinite;
  animation-direction: reverse;
}
.grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: minmax(5vh, auto);
  grid-auto-rows: minmax(5vh, auto);
}
.grid--space {
  margin-top: 60px;
  margin-bottom: 60px;
}
@media screen and (min-width: 50em) {
  .grid--padding {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (min-width: 50em) {
  .grid .center-vertical {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
  }
}
.grid__column1-2 {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 1;
}
@media screen and (min-width: 50em) {
  .grid__column1-2 {
    grid-column: 1 / span 6;
  }
}
.grid__column2-2 {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 2;
}
@media screen and (min-width: 50em) {
  .grid__column2-2 {
    grid-column: 7 / span 6;
    grid-row: 1;
  }
}
.grid__column1-4 {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 1;
}
@media screen and (min-width: 50em) {
  .grid__column1-4 {
    grid-column: 1 / span 4;
  }
}
.grid__column2-8 {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 2;
}
@media screen and (min-width: 50em) {
  .grid__column2-8 {
    grid-column: 5 / span 8;
    grid-row: 1;
  }
}
.grid__column-large {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 1;
}
@media screen and (min-width: 50em) {
  .grid__column-large {
    grid-column: 1 / span 8;
  }
}
.grid__column-small {
  margin-bottom: 30px;
  grid-column: 1 / span 12;
  grid-row: 2;
}
@media screen and (min-width: 50em) {
  .grid__column-small {
    grid-column: 9 / span 4;
    grid-row: 1;
  }
}
.grid__offsetcolumn1-2 {
  grid-column: 2 / span 12;
  grid-row: 1 / span 7;
}
@media screen and (min-width: 50em) {
  .grid__offsetcolumn1-2 {
    grid-column: 1 / span 8;
    grid-row: 2 / span 13;
    min-height: 65vh;
  }
}
.grid__offsetcolumn1-2--small {
  grid-column: 1 / span 12;
  grid-row: 4 / span 8;
}
@media screen and (min-width: 50em) {
  .grid__offsetcolumn1-2--small {
    grid-column: 1 / span 8;
    grid-row: 2 / span 8;
    min-height: 40vh;
  }
}
.grid__offsetcolumn2-2 {
  grid-column: 1 / span 12;
  grid-row: 8 / span 1;
}
@media screen and (min-width: 50em) {
  .grid__offsetcolumn2-2 {
    grid-column: 8 / span 5;
    grid-row: 1 / span 8;
    min-height: 40vh;
  }
}
.grid__offsetcolumn2-2--owd-bob {
  grid-row: 11 / span 7;
}
@media screen and (min-width: 50em) {
  .grid__offsetcolumn2-2--owd-bob {
    grid-row: 3 / span 8;
    min-height: 40vh;
  }
}
.grid__offsetcolumn--center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.grid__fullwidth {
  grid-column: 1 / span 12;
  grid-row: 1 / span 10;
  min-height: 50vh;
}
.grid__boxunder {
  grid-column: 1 / span 12;
  margin-left: 10px;
  margin-right: 10px;
  grid-row: 7 / span 4;
}
@media screen and (min-width: 50em) {
  .grid__boxunder {
    grid-column: 2 / span 10;
    grid-row: 7 / span 8;
    min-height: 40vh;
  }
}
.grid__boxunder--small {
  grid-row: 11;
  min-height: auto;
  margin-top: -60px;
}
.grid p {
  margin-left: 0;
}
.grid .video {
  width: 100%;
}
.imageline {
  background-color: #0a2a4f;
  overflow: auto;
  width: 100%;
  max-width: 1300px;
  padding: 15px;
}
@media screen and (min-width: 600px) {
  .imageline {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 30px;
  }
}
.imageline__image {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 calc(50% - 15px);
  -ms-flex: 1 0 calc(50% - 15px);
  flex: 1 0 calc(50% - 15px);
  margin: 7.5px;
}
@media screen and (min-width: 600px) {
  .imageline__image {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}
.logowall.logowall {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: auto;
}
.logowall.logowall .kappahl-logo {
  margin-top: 8px;
}
.logowall.logowall .logowall__medium {
  max-width: 85%;
}
.logowall.logowall .logowall__small {
  max-width: 65%;
}
.logowall.logowall img {
  display: block;
  margin: 0 auto;
  width: 100%;
}
.logowall.logowall .column {
  margin-bottom: 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 6vw 0.3vw;
}
@media screen and (min-width: 50em) {
  .logowall.logowall .column {
    padding: 0 3.5vw 0.3vw;
  }
}
@media screen and (min-width: 1280px) {
  .logowall.logowall .column {
    padding: 0 5vw 0.3vw;
  }
}
@media screen and (min-width: 50em) {
  .logowall.logowall {
    margin-left: 3.5%;
    margin-right: 3.5%;
    padding-top: 0;
  }
}
@media screen and (min-width: 1280px) {
  .logowall.logowall {
    margin-left: 5%;
    margin-right: 5%;
  }
}
.footer {
  background-color: #fff;
  color: #0a2a4f;
}
@media screen and (min-width: 50em) {
  .footer {
    font-size: 80%;
  }
}
.footer img {
  width: 6em;
  height: 5.6em;
}
.page--about .anim-wrapper iframe {
  width: 100vw;
  height: 100%;
  min-height: 15em;
  overflow: hidden;
}
@media screen and (min-width: 50em) {
  .page--about .anim-wrapper iframe {
    width: 100%;
  }
}
.work1-image {
  grid-column: 1 / span 12;
  grid-row: 1 / span 8;
}
@media screen and (min-width: 50em) {
  .work1-image {
    grid-column: 1 / span 8;
    grid-row: 3 / span 15;
    min-height: 75vh;
  }
}
.work1-text {
  grid-column: 1 / span 12;
  grid-row: 9 / span 4;
  z-index: 1;
}
@media screen and (min-width: 50em) {
  .work1-text {
    grid-column: 8 / span 5;
    grid-row: 1 / span 10;
    min-height: 50vh;
  }
}
.reelgrid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: column-reverse;
  -ms-flex-flow: column-reverse;
  flex-flow: column-reverse;
}
@media screen and (min-width: 50em) {
  .reelgrid {
    display: block;
    position: relative;
    margin-top: 120px;
  }
  .reelgrid__text {
    width: 50%;
    z-index: 1;
    min-height: none;
  }
  .reelgrid__video {
    padding-bottom: 56.05%;
    min-height: none;
  }
}
.work2-image {
  grid-column: 1 / span 12;
  grid-row: 2 / span 8;
}
@media screen and (min-width: 50em) {
  .work2-image {
    grid-column: 1 / span 7;
    grid-row: 5 / span 12;
    min-height: 60vh;
  }
}
.work2-text {
  grid-column: 1 / span 12;
  grid-row: 9 / span 2;
  z-index: 1;
}
@media screen and (min-width: 50em) {
  .work2-text {
    grid-column: 8 / span 4;
    grid-row: 1 / span 20;
    min-height: 100vh;
  }
}
.work3-image {
  grid-column: 1 / span 12;
  grid-row: 2 / span 15;
}
@media screen and (min-width: 50em) {
  .work3-image {
    grid-row: 1 / span 18;
    min-height: 90vh;
  }
}
.work3-text {
  grid-column: 1 / span 12;
  grid-row: 16 / span 2;
  z-index: 1;
}
@media screen and (min-width: 50em) {
  .work3-text {
    grid-column: 2 / span 5;
    grid-row: 14 / span 7;
    min-height: 35vh;
  }
}
.grid--curiosities .bgimage {
  position: relative;
}
.grid--curiosities .bgimage:nth-of-type(1) {
  grid-column: 1 / span 12;
  grid-row: 1 / span 8;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .bgimage:nth-of-type(1) {
    grid-row: 1 / span 17;
    min-height: 85vh;
  }
}
.grid--curiosities .boxtext:nth-of-type(1) {
  z-index: 1;
  grid-column: 1 / span 12;
  grid-row: 9 / span 10;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .boxtext:nth-of-type(1) {
    grid-column: 2 / span 5;
    grid-row: 14 / span 7;
    min-height: 35vh;
  }
}
.grid--curiosities .bgimage:nth-of-type(2) {
  grid-column: 1 / span 12;
  grid-row: 21 / span 8;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .bgimage:nth-of-type(2) {
    grid-column: 1 / span 8;
    grid-row: 22 / span 17;
    min-height: 85vh;
  }
}
.grid--curiosities .boxtext:nth-of-type(2) {
  z-index: 1;
  grid-column: 1 / span 12;
  grid-row: 29 / span 10;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .boxtext:nth-of-type(2) {
    grid-column: 8 / span 5;
    grid-row: 20 / span 10;
    min-height: 50vh;
  }
}
.grid--curiosities .bgimage:nth-of-type(3) {
  grid-column: 1 / span 12;
  grid-row: 41 / span 8;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .bgimage:nth-of-type(3) {
    grid-column: 5 / span 8;
    grid-row: 40 / span 17;
    min-height: 85vh;
  }
}
.grid--curiosities .boxtext:nth-of-type(3) {
  z-index: 1;
  grid-column: 1 / span 12;
  grid-row: 49 / span 10;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .boxtext:nth-of-type(3) {
    grid-column: 1 / span 5;
    grid-row: 49 / span 10;
    min-height: 50vh;
  }
}
.grid--curiosities .bgimage:nth-of-type(4) {
  grid-column: 1 / span 12;
  grid-row: 61 / span 8;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .bgimage:nth-of-type(4) {
    grid-column: 1 / span 8;
    grid-row: 62 / span 17;
    min-height: 85vh;
  }
}
.grid--curiosities .boxtext:nth-of-type(4) {
  z-index: 1;
  grid-column: 1 / span 12;
  grid-row: 69 / span 10;
}
@media screen and (min-width: 50em) {
  .grid--curiosities .boxtext:nth-of-type(4) {
    grid-column: 8 / span 5;
    grid-row: 60 / span 10;
    min-height: 50vh;
  }
}
.site-header__logo {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 40;
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.2s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.site-header__logo:focus {
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  outline: none;
}
.site-header__logoanim {
  width: 7em;
  height: 7em;
  width: calc(7em + 3vw);
  height: calc(7em + 3vw);
}
.site-header__logoanim.fallback {
  background: url("../fully-studios-logo_white.svg") no-repeat;
  background-size: contain;
  margin: 30px;
  width: 5em;
}
.site-header__svg {
  fill: #fff;
  opacity: 1;
  -webkit-transition: fill 0.7s;
  -o-transition: fill 0.7s;
  transition: fill 0.7s;
  width: 4em;
  height: 4em;
  background-size: 97% 97%;
}
.site-header__svg:hover {
  fill: #ffc1b4;
}
@media screen and (min-width: 50em) {
  .site-header__svg {
    width: 4em;
    height: 4em;
  }
}
.site-header .button--nav {
  margin: 30px;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
}
.site-header .button--nav.menu-open {
  z-index: 40;
}
.menu-open + .site-header__logo {
  position: fixed;
}
.case2__image {
  width: 100vw;
  height: 50vw;
  -webkit-perspective: 1000px;
  perspective: 1000px;
}
@media screen and (min-width: 50em) {
  .case2__image {
    width: 30vw;
    height: 15vw;
  }
}
#mbkz_bg,
#mbkz_menu,
#mbkz_side,
#mbkz_content {
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
.text-content {
  padding: 15px 15px 15px;
  max-width: 59em;
  margin: 0 auto;
  text-align: left;
}
@media screen and (min-width: 50em) {
  .text-content {
    padding: 30px 30px 30px;
  }
}
.text-content--right {
  margin-right: 0;
}
.highlight {
  background: #fff;
}
.highlighter-rouge .highlight {
  background: rgba(95, 17, 232, 0.2);
}
.highlight .c {
  color: #998;
  font-style: italic;
}
.highlight .err {
  color: #a61717;
  background-color: #e3d2d2;
}
.highlight .k {
  font-weight: bold;
}
.highlight .o {
  font-weight: bold;
}
.highlight .cm {
  color: #998;
  font-style: italic;
}
.highlight .cp {
  color: #999;
  font-weight: bold;
}
.highlight .c1 {
  color: #998;
  font-style: italic;
}
.highlight .cs {
  color: #999;
  font-weight: bold;
  font-style: italic;
}
.highlight .gd {
  color: #000;
  background-color: #fdd;
}
.highlight .gd .x {
  color: #000;
  background-color: #faa;
}
.highlight .ge {
  font-style: italic;
}
.highlight .gr {
  color: #a00;
}
.highlight .gh {
  color: #999;
}
.highlight .gi {
  color: #000;
  background-color: #dfd;
}
.highlight .gi .x {
  color: #000;
  background-color: #afa;
}
.highlight .go {
  color: #888;
}
.highlight .gp {
  color: #555;
}
.highlight .gs {
  font-weight: bold;
}
.highlight .gu {
  color: #aaa;
}
.highlight .gt {
  color: #a00;
}
.highlight .kc {
  font-weight: bold;
}
.highlight .kd {
  font-weight: bold;
}
.highlight .kp {
  font-weight: bold;
}
.highlight .kr {
  font-weight: bold;
}
.highlight .kt {
  color: #458;
  font-weight: bold;
}
.highlight .m {
  color: #099;
}
.highlight .s {
  color: #d14;
}
.highlight .na {
  color: #008080;
}
.highlight .nb {
  color: #0086b3;
}
.highlight .nc {
  color: #458;
  font-weight: bold;
}
.highlight .no {
  color: #008080;
}
.highlight .ni {
  color: #800080;
}
.highlight .ne {
  color: #900;
  font-weight: bold;
}
.highlight .nf {
  color: #900;
  font-weight: bold;
}
.highlight .nn {
  color: #555;
}
.highlight .nt {
  color: #000080;
}
.highlight .nv {
  color: #008080;
}
.highlight .ow {
  font-weight: bold;
}
.highlight .w {
  color: #bbb;
}
.highlight .mf {
  color: #099;
}
.highlight .mh {
  color: #099;
}
.highlight .mi {
  color: #099;
}
.highlight .mo {
  color: #099;
}
.highlight .sb {
  color: #d14;
}
.highlight .sc {
  color: #d14;
}
.highlight .sd {
  color: #d14;
}
.highlight .s2 {
  color: #d14;
}
.highlight .se {
  color: #d14;
}
.highlight .sh {
  color: #d14;
}
.highlight .si {
  color: #d14;
}
.highlight .sx {
  color: #d14;
}
.highlight .sr {
  color: #009926;
}
.highlight .s1 {
  color: #d14;
}
.highlight .ss {
  color: #990073;
}
.highlight .bp {
  color: #999;
}
.highlight .vc {
  color: #008080;
}
.highlight .vg {
  color: #008080;
}
.highlight .vi {
  color: #008080;
}
.highlight .il {
  color: #099;
}
:root {
  --boxShadowX: 15px;
  --boxShadowY: 15px;
}
.box {
  padding: 60px 0;
  background: #fff;
  position: relative;
  margin-left: 15px;
  margin-right: auto;
  margin-bottom: 15px;
  background-size: cover;
  background-position: center;
  max-width: 59em;
  width: calc(100% - 30px);
}
@media screen and (min-width: 600px) {
  .box {
    --boxShadowX: 30px;
    --boxShadowY: 30px;
    margin-left: 30px;
    margin-bottom: 30px;
    width: calc(100% - 60px);
  }
}
.box:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: #5f11e8;
  -webkit-transform: translate(15px, 15px);
  -ms-transform: translate(15px, 15px);
  transform: translate(15px, 15px);
  -webkit-animation: flying 7s infinite cubic-bezier(0.15, 0, 0.2, 0.99);
  animation: flying 7s infinite cubic-bezier(0.15, 0, 0.2, 0.99);
}
@media (prefers-reduced-motion) {
  .box:before {
    -webkit-animation: none;
    animation: none;
  }
}
@media screen and (min-width: 600px) {
  .box:before {
    -webkit-transform: translate(30px, 30px);
    -ms-transform: translate(30px, 30px);
    transform: translate(30px, 30px);
  }
}
.box--right {
  margin-left: auto;
  margin-right: 15px;
  --boxShadowX: -15px;
  --boxShadowY: 15px;
}
.box--right:before {
  -webkit-transform: translate(-15px, 15px);
  -ms-transform: translate(-15px, 15px);
  transform: translate(-15px, 15px);
}
@media screen and (min-width: 600px) {
  .box--right {
    margin-left: auto;
    margin-right: 30px;
    --boxShadowX: -30px;
    --boxShadowY: 30px;
  }
  .box--right:before {
    -webkit-transform: translate(-30px, 30px);
    -ms-transform: translate(-30px, 30px);
    transform: translate(-30px, 30px);
  }
}
.box--up {
  --boxShadowX: 15px;
  --boxShadowY: -15px;
}
.box--up.box--right {
  margin-right: 30px;
}
@media screen and (min-width: 600px) {
  .box--up.box--right {
    margin-right: 60px;
  }
}
.box--up:before {
  -webkit-transform: translate(15px, -15px);
  -ms-transform: translate(15px, -15px);
  transform: translate(15px, -15px);
}
@media screen and (min-width: 600px) {
  .box--up {
    --boxShadowX: 30px;
    --boxShadowY: -30px;
  }
  .box--up:before {
    -webkit-transform: translate(30px, -30px);
    -ms-transform: translate(30px, -30px);
    transform: translate(30px, -30px);
  }
}
.box--center {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 50em) {
  .box--center h4,
  .box--center .h4,
  .box--center h4 + * {
    padding-left: 120px;
    padding-right: 120px;
  }
}
.box--noshadow:before {
  display: none;
}
.box--people:before {
  background: #ffc1b4;
}
.box--business:before {
  background: #7bd75e;
}
.box--curiosities:before {
  background: #ffde7f;
}
.box--metal:before {
  background: #666;
}
.box--bgsignal,
.box--bgmetal,
.box--invert {
  color: #fff;
}
.box--bgsignal:before,
.box--bgmetal:before,
.box--invert:before {
  background: #fff;
}
.box--bgpeople:before,
.box--bgcuriosities:before,
.box--bgbusiness:before {
  background: #fff;
}
.box--bgsignal {
  background: #5f11e8;
}
.box--bgpeople {
  background: #ffc1b4;
}
.box--bgcuriosities {
  background: #ffde7f;
}
.box--bgbusiness {
  background: #7bd75e;
}
.box--bgmetal {
  background: #666;
}
.box ul {
  font-weight: normal;
}
@-webkit-keyframes flying {
  0%,
  90%,
  100% {
    -webkit-transform: translate(var(--boxShadowX), var(--boxShadowY));
    transform: translate(var(--boxShadowX), var(--boxShadowY));
  }
  60% {
    -webkit-transform: translate(
      var(--boxShadowX),
      calc(var(--boxShadowY) * 0.75)
    );
    transform: translate(var(--boxShadowX), calc(var(--boxShadowY) * 0.75));
  }
}
@keyframes flying {
  0%,
  90%,
  100% {
    -webkit-transform: translate(var(--boxShadowX), var(--boxShadowY));
    transform: translate(var(--boxShadowX), var(--boxShadowY));
  }
  60% {
    -webkit-transform: translate(
      var(--boxShadowX),
      calc(var(--boxShadowY) * 0.75)
    );
    transform: translate(var(--boxShadowX), calc(var(--boxShadowY) * 0.75));
  }
}
.box + * {
  margin-top: 60px;
}
.box + .box--up {
  margin-top: 90px;
}
.boxtext {
  background-color: #fff;
  color: #0a2a4f;
  padding: 30px 7.5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  z-index: 1;
}
@media screen and (min-width: 600px) {
  .boxtext {
    padding: 60px 30px;
  }
}
.boxtext--frame {
  background-color: #7bd75e;
  color: #fff;
  margin: calc(1.5em + 30px) auto;
  position: relative;
  max-width: 59em;
  padding: 30px;
}
@media screen and (min-width: 600px) {
  .boxtext--frame {
    padding: 60px;
  }
}
.boxtext--frame:after,
.boxtext--frame:before {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  pointer-events: none;
}
.boxtext--frame:before {
  top: -1.5em;
  bottom: -1.5em;
  border: 4px solid #7bd75e;
}
.boxtext--frame:after {
  top: 0;
  bottom: 0;
  border-left: 4px solid #fff;
  border-right: 4px solid #fff;
}
.boxtext--frame--curiosities {
  background-color: #ffde7f;
  color: #0a2a4f;
}
.boxtext--frame--curiosities:before {
  border-color: #ffde7f;
}
.boxtext--frame--darkoncuriosity {
  background-color: #0a2a4f;
  color: #ffde7f;
}
.boxtext--frame--darkoncuriosity:before {
  border-color: #0a2a4f;
}
.boxtext--frame--darkoncuriosity:after {
  border-left-color: #ffde7f;
  border-right-color: #ffde7f;
}
.boxtext--frame--dark {
  background-color: #0a2a4f;
  color: #fff;
}
.boxtext--frame--dark:before {
  border-color: #0a2a4f;
}
.boxtext--frame--people {
  background-color: #ffc1b4;
  color: #0a2a4f;
}
.boxtext--frame--people:before {
  border-color: #ffc1b4;
}
.boxtext--simpleframe {
  background-color: transparent;
  color: #5f11e8;
  border-top: 4px solid #5f11e8;
  border-left: 4px solid #5f11e8;
  border-right: 4px solid #5f11e8;
  margin-left: 15px;
  margin-right: 15px;
  margin-top: -60px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 50em) {
  .boxtext--simpleframe {
    margin-left: 30px;
    margin-right: 30px;
  }
}
.boxtext--texttop {
  padding-top: 7.5px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (min-width: 600px) {
  .boxtext--texttop {
    padding-top: 30px;
  }
}
.boxtext__texttop {
  margin-bottom: 30px;
}
.boxgrid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 15px 15px;
  margin-top: 30px;
  margin-bottom: 30px;
  position: relative;
  max-width: 68.7em;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 400px) {
  .boxgrid {
    padding: 0 7.5px 7.5px;
  }
}
@media (min-width: 1100px) {
  .boxgrid {
    padding: 0 30px 15px;
    margin-top: 90px;
    margin-bottom: 90px;
  }
}
.boxgrid a:not(.link) {
  color: #0a2a4f;
}
.boxgrid__header,
.boxgrid__info {
  width: 100%;
  max-width: 100%;
  text-align: center;
  color: #5f11e8;
}
.boxgrid__header {
  padding: 30px 15% 15px;
}
.boxgrid .boxgrid__info {
  padding: 0 15% 0;
  margin: 0;
}
.boxgrid a.boxgrid__box {
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.boxgrid a.boxgrid__box:focus {
  outline: none;
  -webkit-transform: translateY(-15px);
  -ms-transform: translateY(-15px);
  transform: translateY(-15px);
}
.boxgrid__box {
  width: 30em;
  max-width: 100%;
  position: relative;
  margin-top: 45px;
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  margin-left: auto;
  margin-right: auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  background-color: #fff;
}
@media (min-width: 400px) {
  .boxgrid__box {
    margin-top: 90px;
    width: auto;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 15px);
    -ms-flex: 1 0 calc(50% - 15px);
    flex: 1 0 calc(50% - 15px);
    max-width: calc(50% - 15px);
    margin-right: 7.5px;
    margin-left: 7.5px;
  }
}
@media (min-width: 800px) {
  .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 90px);
    -ms-flex: 1 0 calc(50% - 90px);
    flex: 1 0 calc(50% - 90px);
    max-width: calc(50% - 90px);
    margin-right: 45px;
    margin-left: 45px;
  }
}
.boxgrid__box:nth-of-type(even) {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  text-align: right;
}
.boxgrid__box:nth-of-type(even) .boxgrid__caption {
  text-align: left;
}
.boxgrid__box:nth-of-type(even) .boxgrid__image {
  -webkit-transform: translate(-15px, -15px);
  -ms-transform: translate(-15px, -15px);
  transform: translate(-15px, -15px);
}
@media (min-width: 800px) {
  .boxgrid__box:nth-of-type(even) .boxgrid__image {
    -webkit-transform: translate(-30px, -30px);
    -ms-transform: translate(-30px, -30px);
    transform: translate(-30px, -30px);
  }
}
.boxgrid__box:nth-of-type(even) .boxgrid_box {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.boxgrid__box img,
.boxgrid__box video {
  width: 100%;
  height: auto;
  display: block;
}
.boxgrid__caption {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  min-width: 100%;
  color: #0a2a4f;
  display: block;
  padding: 0 15px 30px;
  overflow: auto;
}
@media (min-width: 800px) {
  .boxgrid__caption {
    padding: 0 30px 30px;
  }
}
.boxgrid__caption h3,
.boxgrid__caption p {
  padding-left: 0;
}
.boxgrid .boxgrid__image {
  width: 100%;
  -webkit-transform: translate(15px, -15px);
  -ms-transform: translate(15px, -15px);
  transform: translate(15px, -15px);
}
@media (min-width: 800px) {
  .boxgrid .boxgrid__image {
    -webkit-transform: translate(30px, -30px);
    -ms-transform: translate(30px, -30px);
    transform: translate(30px, -30px);
  }
}
.boxgrid .boxgrid__image--preview {
  position: relative;
}
.boxgrid .boxgrid__image--preview:hover .boxgrid__playicon {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.boxgrid .boxgrid__playicon {
  position: absolute;
  top: 35%;
  left: 40%;
  width: 20%;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transform: scale(0.9) rotate(-10deg);
  -ms-transform: scale(0.9) rotate(-10deg);
  transform: scale(0.9) rotate(-10deg);
  -webkit-transition: opacity 0.3s,
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s,
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  -o-transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1),
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
}
.boxgrid:before {
  content: "";
  pointer-events: none;
  border: 4px solid #5f11e8;
  position: absolute;
  top: 0;
  left: 4em;
  right: 4em;
  height: 100%;
}
.c-people-bg .boxgrid:before {
  border-color: #0a2a4f;
}
.c-signal-bg .boxgrid:before {
  border-color: #fff;
}
@media (min-width: 800px) {
  .boxgrid:before {
    top: -30px;
    left: 8em;
    right: 8em;
  }
}
.boxgrid--curiosity .boxgrid__header {
  color: #ffde7f;
}
.boxgrid--curiosity .boxgrid__box {
  margin-top: 60px;
}
.boxgrid--curiosity:before {
  border-color: #ffde7f;
  top: 0;
}
.boxgrid--contact:before {
  top: 0;
}
.boxgrid--contact .boxgrid__box {
  margin-top: 60px;
}
@media (min-width: 500px) {
  .boxgrid--contact .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 30px);
    -ms-flex: 1 0 calc(50% - 30px);
    flex: 1 0 calc(50% - 30px);
    max-width: calc(50% - 30px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
@media (min-width: 800px) {
  .boxgrid--contact .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(33% - 30px);
    -ms-flex: 1 0 calc(33% - 30px);
    flex: 1 0 calc(33% - 30px);
    max-width: calc(33% - 30px);
    margin-right: 15px;
    margin-left: 15px;
  }
}
@media (min-width: 1100px) {
  .boxgrid--contact .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(25% - 30px);
    -ms-flex: 1 0 calc(25% - 30px);
    flex: 1 0 calc(25% - 30px);
    max-width: calc(25% - 30px);
    margin-right: 15px;
    margin-left: 15px;
  }
}
.boxgrid--contact .boxgrid__box .boxgrid__caption {
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: auto;
  width: 100%;
  padding-top: 15px;
  padding-left: 15px;
  padding-right: 15px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}
.boxgrid--contact .boxgrid__box .boxgrid__caption .email {
  color: #5f11e8;
}
.boxgrid--contact .boxgrid__box .boxgrid__caption h3,
.boxgrid--contact .boxgrid__box .boxgrid__caption p {
  padding: 0;
  margin-left: 0;
}
.boxgrid--contact .boxgrid__box .boxgrid__caption .button {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}
.boxgrid--contact .boxgrid__box .boxgrid__image {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.boxgrid--compact:before {
  top: 0;
}
.boxgrid--compact .boxgrid__box {
  margin-top: 60px;
}
@media (min-width: 400px) {
  .boxgrid--compact .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 15px);
    -ms-flex: 1 0 calc(50% - 15px);
    flex: 1 0 calc(50% - 15px);
    max-width: calc(50% - 15px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
@media (min-width: 800px) {
  .boxgrid--compact .boxgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(33% - 30px);
    -ms-flex: 1 0 calc(33% - 30px);
    flex: 1 0 calc(33% - 30px);
    max-width: calc(33% - 30px);
    margin-right: 15px;
    margin-left: 15px;
  }
}
.boxgrid--compact .boxgrid__box .boxgrid__caption {
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: auto;
  width: 100%;
  padding-top: 15px;
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}
.boxgrid--compact .boxgrid__box .boxgrid__caption h3,
.boxgrid--compact .boxgrid__box .boxgrid__caption p {
  padding: 0;
}
.boxgrid--compact .boxgrid__box .boxgrid__caption .button {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}
.boxgrid--compact .boxgrid__box .boxgrid__image {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
@media (min-width: 829px) {
  .boxgrid--offset {
    max-width: 76rem;
    margin-bottom: calc(30px + 6em);
  }
  .boxgrid--offset .boxgrid__box {
    -webkit-transform: translateY(-2.5em);
    -ms-transform: translateY(-2.5em);
    transform: translateY(-2.5em);
  }
  .boxgrid--offset .boxgrid__box:nth-of-type(even) {
    -webkit-transform: translateY(3.5em);
    -ms-transform: translateY(3.5em);
    transform: translateY(3.5em);
  }
}
.boxgrid--light:before {
  border: 4px solid #f8f8f8;
}
.boxgrid--light .boxgrid__header {
  color: #f8f8f8;
}
.page-contact .boxgrid:before,
.page-curiosities .boxgrid:before {
  border-color: #0a2a4f;
}
.page-contact .boxgrid__header,
.page-curiosities .boxgrid__header {
  color: #0a2a4f;
}
.workgrid {
  margin-top: 30px;
  margin-bottom: 30px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 1800px;
  padding: 0 15px 0;
}
@media (min-width: 1100px) {
  .workgrid {
    padding: 0 30px 0;
    margin-top: 90px;
    margin-bottom: 90px;
  }
}
.workgrid h2 {
  text-align: center;
}
.workgrid a:not(.link) {
  color: #0a2a4f;
}
.workgrid a.workgrid__box {
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
}
@media (hover: hover) {
  .workgrid a.workgrid__box:hover {
    -webkit-transform: translateY(-9px);
    -ms-transform: translateY(-9px);
    transform: translateY(-9px);
  }
}
.workgrid a.workgrid__box:focus {
  -webkit-transform: translateY(-6px);
  -ms-transform: translateY(-6px);
  transform: translateY(-6px);
}
.workgrid__grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
.workgrid__filter-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  text-align: center;
  margin: 0;
}
@media (min-width: 800px) {
  .workgrid__filter-wrapper {
    padding-left: 30px;
    padding-right: 30px;
  }
  .workgrid__filter-wrapper:before,
  .workgrid__filter-wrapper:after {
    display: block;
    content: "";
    background: #5f11e8;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    height: 2px;
  }
}
.workgrid__filter {
  padding: 0 20px;
  margin: 0 auto;
}
.workgrid__filter a.link {
  font-weight: 600;
  padding: 15px 7.5px;
}
@media (min-width: 500px) {
  .workgrid__filter a.link {
    font-size: 1.4rem;
    padding: 15px;
  }
}
.workgrid__filter a.link:not(.link--active) {
  color: #0a2a4f;
}
@media (hover: hover) {
  .workgrid__filter a.link:hover {
    color: #5f11e8;
  }
}
.workgrid__box,
.workgrid__column {
  display: block;
  width: 100%;
  position: relative;
  margin-top: 45px;
}
@media (min-width: 500px) {
  .workgrid__box,
  .workgrid__column {
    margin-top: 60px;
    width: calc(50% - 30px);
    margin-right: 15px;
    margin-left: 15px;
  }
}
@media (min-width: 1100px) {
  .workgrid__box,
  .workgrid__column {
    width: calc(33.33333% - 60px);
    margin-right: 30px;
    margin-left: 30px;
  }
}
.workgrid__box img,
.workgrid__box video,
.workgrid__column img,
.workgrid__column video {
  width: 100%;
  height: auto;
  display: block;
}
.workgrid__column {
  display: none;
  margin-top: 0;
}
.workgrid__column .workgrid__box {
  width: 100%;
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  max-width: 100%;
  margin-right: 0px;
  margin-left: 0px;
}
.workgrid__column.workgrid__column--1 {
  display: block;
}
@media (min-width: 500px) {
  .workgrid__column.workgrid__column--2 {
    display: block;
  }
}
@media (min-width: 1100px) {
  .workgrid__column.workgrid__column--3 {
    display: block;
  }
}
.workgrid__caption {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  min-width: 100%;
  color: #0a2a4f;
  display: block;
  padding: 18px 0 0;
  overflow: auto;
}
.workgrid__caption h3,
.workgrid__caption p {
  padding-left: 0;
}
.workgrid__caption h3 {
  font-size: 1.2rem;
}
.workgrid__caption h3 + p {
  margin-top: 0.2em;
}
@media (min-width: 800px) {
  .workgrid__caption p {
    font-size: 80%;
  }
}
.workgrid__image {
  position: relative;
  padding-top: 133%;
}
.workgrid__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.workgrid__image--square {
  padding-top: 100%;
}
.workgrid__image--landscape {
  padding-top: 56%;
}
.workgrid__hover-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  -webkit-transition: all 0.1s;
  -o-transition: all 0.1s;
  transition: all 0.1s;
}
@media (hover: hover) {
  .workgrid__image:hover .workgrid__hover-video {
    opacity: 1;
  }
  .workgrid__image:hover .workgrid__playicon {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}
.workgrid .workgrid__playicon {
  position: absolute;
  top: 35%;
  left: 40%;
  width: 20%;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transform: scale(0.9) rotate(-10deg);
  -ms-transform: scale(0.9) rotate(-10deg);
  transform: scale(0.9) rotate(-10deg);
  -webkit-transition: opacity 0.3s,
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s,
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  -o-transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1),
    -webkit-transform 0.3s cubic-bezier(0.48, 0.57, 0.44, 1);
}
@media (min-width: 1100px) {
  .workgrid--video .workgrid__box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 60px);
    -ms-flex: 1 0 calc(50% - 60px);
    flex: 1 0 calc(50% - 60px);
    max-width: calc(50% - 60px);
  }
}
.button {
  font-family: "Moderat", sans-serif;
  font-weight: bold;
  border: none;
  background-color: transparent;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  z-index: 1;
  padding: 0;
  display: inline-block;
  -webkit-tap-highlight-color: transparent;
}
@media screen and (min-width: 50em) {
  .button {
    font-size: 0.8em;
  }
}
.button:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #5f11e8;
  z-index: -1;
  -webkit-transform: translateX(-3px);
  -ms-transform: translateX(-3px);
  transform: translateX(-3px);
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  -o-transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9),
    -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
}
.button:hover:after,
.button:focus:after {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
.button:focus,
.button:active {
  outline: none;
}
.button span {
  letter-spacing: 0.15em;
  color: #5f11e8;
  padding: 0.55em 1.5em 0.45em;
  background-color: #fff;
  border: 2px solid #5f11e8;
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  -o-transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  transition: transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9),
    -webkit-transform 0.6s cubic-bezier(0, 0.9, 0.13, 0.9);
  -webkit-transform: translate3D(0, -3px, 0);
  -ms-transform: translate3D(0, -3px, 0);
  transform: translate3D(0, -3px, 0);
  position: relative;
}
.button:hover span,
.button:focus span {
  -webkit-transform: translate3D(0, 0, 0);
  -ms-transform: translate3D(0, 0, 0);
  transform: translate3D(0, 0, 0);
}
.button:active span {
  -webkit-transform: translate3D(0, 0, 0);
  -ms-transform: translate3D(0, 0, 0);
  transform: translate3D(0, 0, 0);
  border: 2px solid transparent;
  background-color: transparent;
  color: #fff;
}
.button:active span :after {
  background-color: none;
}
.button--invert span {
  border-color: #fff;
  background-color: #5f11e8;
  color: #fff;
}
.button--invert:after {
  background-color: #fff;
}
.button--invert:active span {
  color: #5f11e8;
}
.button--curiosities span {
  border-color: #ffde7f;
  background-color: #0a2a4f;
  color: #ffde7f;
}
.button--curiosities:after {
  background-color: #ffde7f;
}
.button--curiosities:active span {
  color: #0a2a4f;
}
.button--transparent span {
  border-color: #fff;
  background-color: #0a2a4f;
  color: #fff;
}
.button--transparent:after {
  background-color: #fff;
}
.button--transparent:active span {
  color: #0a2a4f;
}
.button--nav span,
.button--icon span {
  line-height: 0;
  position: relative;
  z-index: 2;
}
.button--nav svg,
.button--icon svg {
  margin: 0;
  width: 3em;
  height: 3em;
}
.button--nav__line,
.button--icon__line {
  width: 100%;
  height: 2px;
  background-color: #5f11e8;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.button--nav:active .button--nav__line,
.button--icon:active .button--nav__line {
  background-color: #fff;
}
.button--nav line,
.button--icon line {
  fill: none;
  stroke: #5f11e8;
  stroke-width: 4;
  stroke-miterlimit: 10;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.3s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.button--nav .button--nav__line:nth-child(1),
.button--nav line:nth-child(1),
.button--nav .button--nav__line:nth-child(3),
.button--nav line:nth-child(3),
.button--icon .button--nav__line:nth-child(1),
.button--icon line:nth-child(1),
.button--icon .button--nav__line:nth-child(3),
.button--icon line:nth-child(3) {
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
}
.button--nav .button--nav__line:nth-child(2),
.button--nav line:nth-child(2),
.button--icon .button--nav__line:nth-child(2),
.button--icon line:nth-child(2) {
  -webkit-transform-origin: center left;
  -ms-transform-origin: center left;
  transform-origin: center left;
}
.button--nav.menu-open .button--nav__line:nth-child(1),
.button--nav.menu-open line:nth-child(1),
.button--icon.menu-open .button--nav__line:nth-child(1),
.button--icon.menu-open line:nth-child(1) {
  -webkit-transform: rotate(45deg) translate3D(2.5px, -2.5px, 0);
  -ms-transform: rotate(45deg) translate3D(2.5px, -2.5px, 0);
  transform: rotate(45deg) translate3D(2.5px, -2.5px, 0);
}
.button--nav.menu-open .button--nav__line:nth-child(2),
.button--nav.menu-open line:nth-child(2),
.button--icon.menu-open .button--nav__line:nth-child(2),
.button--icon.menu-open line:nth-child(2) {
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}
.button--nav.menu-open .button--nav__line:nth-child(3),
.button--nav.menu-open line:nth-child(3),
.button--icon.menu-open .button--nav__line:nth-child(3),
.button--icon.menu-open line:nth-child(3) {
  -webkit-transform: rotate(-45deg) translate3D(1px, 1px, 0);
  -ms-transform: rotate(-45deg) translate3D(1px, 1px, 0);
  transform: rotate(-45deg) translate3D(1px, 1px, 0);
}
.button--nav {
  width: 48px;
  height: 48px;
}
.button--nav span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  padding: 12px;
}
.button--nav:focus {
  z-index: 12;
}
.button--icon span {
  padding: 7.5px;
}
.link {
  font-size: 1em;
  font-family: "Moderat", sans-serif;
  color: #5f11e8;
  position: relative;
  padding: 15px;
  display: inline-block;
  border: 0;
  background: none;
}
.link:before {
  content: "";
  position: absolute;
  bottom: 12px;
  left: 20%;
  right: 20%;
  height: 4px;
  background-color: #5f11e8;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  -webkit-transform: translateX(-1em) scaleX(0);
  -ms-transform: translateX(-1em) scaleX(0);
  transform: translateX(-1em) scaleX(0);
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
}
.link:hover,
.link--active {
  color: #5f11e8;
}
.link:hover:before,
.link--active:before {
  -webkit-transform: translateX(0) scaleX(1);
  -ms-transform: translateX(0) scaleX(1);
  transform: translateX(0) scaleX(1);
}
.link:hover .link--icon,
.link--active .link--icon {
  -webkit-transform: translateX(0.5em);
  -ms-transform: translateX(0.5em);
  transform: translateX(0.5em);
}
.link--icon {
  fill: currentColor;
  display: inline-block;
  margin-left: 7.5px;
  width: 1.3em;
  height: 0.5em;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.link--invert {
  color: #fff;
}
.link--invert:before {
  background-color: #fff;
}
.link--invert.link--next {
  color: #fff;
}
.link--invert:hover {
  color: #fff;
}
.link--dark {
  color: #fff;
}
.link--dark:before {
  background-color: #0a2a4f;
}
.link--dark.link--next {
  color: #0a2a4f;
}
.link--dark:hover {
  color: #0a2a4f;
}
.link--inline {
  padding: 0 0 15px;
}
.metabutton {
  font-family: "Moderat", sans-serif;
  letter-spacing: 0.15em;
  border: 2px solid #ccc;
  color: #ccc;
  display: inline-block;
  padding: 15px 22.5px;
  font-size: 0.8em;
  font-weight: 300;
  -webkit-transition: color 0.2s, border 0.2s;
  -o-transition: color 0.2s, border 0.2s;
  transition: color 0.2s, border 0.2s;
}
.metabuttona,
.metabutton:visited {
  color: #ccc;
}
.metabutton:hover {
  border: 2px solid #5f11e8;
}
.metabutton:hover span:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
.metabutton:hover:visited,
.metabutton:hover a {
  color: #5f11e8;
}
.metabutton span {
  position: relative;
  z-index: 1;
}
.metabutton span:after {
  content: "";
  position: absolute;
  bottom: -0.1em;
  left: 0;
  right: 0;
  border-bottom: 2px solid #5f11e8;
  z-index: -1;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.7s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.metabutton a {
  color: inherit;
}
.button + .link {
  margin-top: 15px;
}
* + .button {
  margin-top: 30px;
}
.custom-button {
  display: inline-block;
}
.column {
  width: 100%;
  padding: 10px 20px;
}
@media screen and (min-width: 600px) {
  .column {
    width: auto;
  }
}
@media screen and (min-width: 50em) {
  .column {
    padding: 10px 30px;
  }
}
.column__wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 10px 0;
}
@media screen and (min-width: 50em) {
  .column__wrapper {
    padding: 30px 0;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
}
.column--vertical {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.column--3-5 {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 33.3%;
  -ms-flex: 1 0 33.3%;
  flex: 1 0 33.3%;
  max-width: 33.3%;
}
@media screen and (min-width: 50em) {
  .column--3-5 {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 20%;
    -ms-flex: 1 0 20%;
    flex: 1 0 20%;
    max-width: 20%;
  }
}
.column--alignend {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.hero__subheader {
  display: block;
  font-size: 0.3em;
  font-family: "Fira Mono", monospace;
  font-weight: normal;
  font-style: normal;
}
.hero {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: 100%;
  overflow: hidden;
  min-height: 100vh;
}
.hero__header {
  position: relative;
  z-index: 4;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  padding: 120px 0 30px;
  color: #f8f8f8;
}
.hero__header--shadow {
  text-shadow: -5px 4px 0px #0a2a4f, 0px -2px 0px #0a2a4f, 0px 2px 0px #0a2a4f,
    2px 2px 0px #0a2a4f, -2px -2px 0px #0a2a4f, 2px -2px 0px #0a2a4f,
    -2px 2px 0px #0a2a4f, 1px 1px 0px #0a2a4f, -1px -1px 0px #0a2a4f,
    1px -1px 0px #0a2a4f, -1px 1px 0px #0a2a4f;
}
.hero__header-wrap {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  max-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.hero .header {
  margin-top: 2em;
}
@media screen and (min-width: 50em) {
  .hero .header {
    margin-top: 0;
  }
}
.hero > .button {
  margin-top: 3em;
}
.hero .button {
  text-align: center;
}
.hero h3,
.hero h4 {
  color: inherit;
  margin-top: 60px;
}
.hero h3 a,
.hero h4 a {
  color: inherit;
}
.hero h3 a:after,
.hero h4 a:after {
  content: "";
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNy4xIDE2Ij48c3R5bGU+LnN0MHtmaWxsOiNmZmZmZmY7fTwvc3R5bGU+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNiAxNmMtLjEgMC0uMiAwLS4yLS4xTC4xIDEyLjNjLS4xIDAtLjEtLjItLjEtLjMuMS0uMS4xLS4yLjMtLjJoMi4xVi4zYzAtLjEgMC0uMi4xLS4yIDAtLjEuMS0uMS4yLS4xaDEuOGMuMSAwIC4yIDAgLjIuMS4xLjEuMS4xLjEuMnYxMS42aDIuMWMuMSAwIC4yLjEuMy4ydi4zTDQgMTZoLS40eiIvPjwvc3ZnPg==);
  background-repeat: no-repeat;
  background-position: bottom center;
  width: 7.1px;
  height: 16px;
  display: block;
  padding-top: 30px;
  margin: 0 auto;
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.4s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.hero h3 a:focus,
.hero h4 a:focus {
  outline: none;
}
.hero h3 a:hover:after,
.hero h3 a:focus:after,
.hero h4 a:hover:after,
.hero h4 a:focus:after {
  -webkit-transform: translateY(16px);
  -ms-transform: translateY(16px);
  transform: translateY(16px);
}
.hero__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (min-aspect-ratio: 16/9) {
  video.hero__background {
    width: 100%;
    height: auto;
    -webkit-transform: translateY(-25%);
    -ms-transform: translateY(-25%);
    transform: translateY(-25%);
    top: 25%;
  }
}
@media (max-aspect-ratio: 16/9) {
  video.hero__background {
    width: auto;
    height: 100%;
    -webkit-transform: translateX(-75%);
    -ms-transform: translateX(-75%);
    transform: translateX(-75%);
    margin-top: 0;
    left: 75%;
  }
}
.hero__bgcenter {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.hero--work h1 {
  margin: 0;
}
.hero--about h1 {
  font-size: calc(2em + 2vw);
  max-width: inherit;
}
.hero--contact {
  min-height: 80vh;
  background-color: #ffc1b4;
}
.hero--contact h2 {
  width: 100%;
  max-width: calc(18.6em + 60px);
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
}
.hero--contact a,
.hero--contact h3,
.hero--contact h4 {
  color: #0a2a4f;
}
.hero--contact h3 a:after,
.hero--contact h4 a:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNy4xIDE2Ij48c3R5bGU+LnN0MHtmaWxsOiMwQTJBNEY7fTwvc3R5bGU+PHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNiAxNmMtLjEgMC0uMiAwLS4yLS4xTC4xIDEyLjNjLS4xIDAtLjEtLjItLjEtLjMuMS0uMS4xLS4yLjMtLjJoMi4xVi4zYzAtLjEgMC0uMi4xLS4yIDAtLjEuMS0uMS4yLS4xaDEuOGMuMSAwIC4yIDAgLjIuMS4xLjEuMS4xLjEuMnYxMS42aDIuMWMuMSAwIC4yLjEuMy4ydi4zTDQgMTZoLS40eiIvPjwvc3ZnPg==);
}
.page- .c-curiosities-bg .hero__bgcenter {
  padding-top: 8em;
}
@media screen and (min-width: 50em) {
  .page- .c-curiosities-bg .hero__bgcenter {
    padding-top: 0;
  }
}
.hero--the-internet-by-hand .hero__header-element {
  color: #0a2a4f;
}
.ingress {
  background: #fff;
}
@media screen and (min-width: 50em) {
  .ingress {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 1280px) {
  .ingress p:not(.button__wrap) {
    font-size: 1.5em;
    max-width: calc(37.35em + 60px);
  }
}
.ingress__content {
  padding: 0 0 30px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
}
@media screen and (min-width: 50em) {
  .ingress__content {
    padding: 15px 30px 30px;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 60%;
    -ms-flex: 1 0 60%;
    flex: 1 0 60%;
    max-width: 60%;
  }
}
@media screen and (min-width: 1280px) {
  .ingress__content {
    padding: 30px 60px 60px;
  }
}
.ingress__images {
  height: 0;
  padding-top: 100vw;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 50em) {
  .ingress__images {
    padding-top: 36.5vw;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 40%;
    -ms-flex: 1 0 40%;
    flex: 1 0 40%;
    max-width: 40%;
  }
}
.ingress__videowrapper {
  height: auto;
  padding: 30px;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 50em) {
  .ingress__videowrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 40%;
    -ms-flex: 1 0 40%;
    flex: 1 0 40%;
    max-width: 40%;
  }
}
.ingress__images.invisible .ingress__video,
.ingress__images.invisible .ingress__image,
.ingress__videowrapper.invisible .ingress__video,
.ingress__videowrapper.invisible .ingress__image {
  -webkit-transform: translateY(100px) rotateZ(10deg);
  -ms-transform: translateY(100px) rotate(10deg);
  transform: translateY(100px) rotateZ(10deg);
}
.ingress__images.visible .ingress__video,
.ingress__images.visible .ingress__image,
.ingress__videowrapper.visible .ingress__video,
.ingress__videowrapper.visible .ingress__image {
  -webkit-transform: translateY(0) rotateZ(0);
  -ms-transform: translateY(0) rotate(0);
  transform: translateY(0) rotateZ(0);
}
.ingress__images:hover .ingress__video,
.ingress__videowrapper:hover .ingress__video {
  -webkit-transform: translateY(20px) rotateZ(2deg);
  -ms-transform: translateY(20px) rotate(2deg);
  transform: translateY(20px) rotateZ(2deg);
}
.ingress__images .ingress__button,
.ingress__videowrapper .ingress__button {
  position: absolute;
  bottom: 3%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
.ingress__image {
  position: absolute;
  -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.ingress__image--0 {
  top: 17%;
  left: 5%;
  width: 90%;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.ingress__image--1 {
  top: 5%;
  left: 5%;
  width: 55%;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.ingress__image--2 {
  top: 33%;
  left: 10%;
  width: 55%;
  -webkit-transition: -webkit-transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 0.9s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.ingress__image--3 {
  top: 13%;
  left: 57%;
  width: 32%;
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.ingress__image:hover {
  -webkit-transform: translateY(5px) scale(1.05) rotateZ(2deg) !important;
  -ms-transform: translateY(5px) scale(1.05) rotate(2deg) !important;
  transform: translateY(5px) scale(1.05) rotateZ(2deg) !important;
}
.ingress__video {
  width: 100%;
  height: auto;
  -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  -webkit-transition: -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: transform 1s cubic-bezier(0.14, 0.79, 0.39, 1),
    -webkit-transform 1s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.ingress--owd-bob p {
  max-width: calc(34em + 60px);
}
.imagegrid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 15px;
}
@media screen and (min-width: 600px) {
  .imagegrid {
    margin: 22.5px;
  }
}
.imagegrid .imagegrid__image {
  margin: 7.5px 0;
}
@media screen and (min-width: 600px) {
  .imagegrid .imagegrid__image {
    margin: 7.5px;
    height: auto;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 15px);
    -ms-flex: 1 0 calc(50% - 15px);
    flex: 1 0 calc(50% - 15px);
    max-width: calc(50% - 15px);
  }
}
@media screen and (min-width: 50em) {
  .imagegrid .imagegrid__image {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(33.333% - 15px);
    -ms-flex: 1 0 calc(33.333% - 15px);
    flex: 1 0 calc(33.333% - 15px);
    max-width: calc(33.333% - 15px);
  }
}
.imagegrid .imagegrid__image--twomobile {
  margin: 7.5px;
  height: auto;
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 calc(50% - 15px);
  -ms-flex: 1 0 calc(50% - 15px);
  flex: 1 0 calc(50% - 15px);
  max-width: calc(50% - 15px);
}
@media screen and (min-width: 50em) {
  .imagegrid .imagegrid__image--two {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(50% - 15px);
    -ms-flex: 1 0 calc(50% - 15px);
    flex: 1 0 calc(50% - 15px);
    max-width: calc(50% - 15px);
  }
}
.imagegrid .imagegrid__image--three {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 100%;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
}
@media screen and (min-width: 50em) {
  .imagegrid .imagegrid__image--three {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(33.33% - 15px);
    -ms-flex: 1 0 calc(33.33% - 15px);
    flex: 1 0 calc(33.33% - 15px);
    max-width: calc(33.33% - 15px);
  }
}
@media screen and (min-width: 50em) {
  .imagegrid .imagegrid__image--four {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(25% - 15px);
    -ms-flex: 1 0 calc(25% - 15px);
    flex: 1 0 calc(25% - 15px);
    max-width: calc(25% - 15px);
  }
}
.imagegrid .imagegrid__image--padding {
  padding: 30px 90px;
}
@media screen and (min-width: 50em) {
  .imagegrid .imagegrid__image--padding {
    padding: 0 120px;
  }
}
.imagegrid img {
  width: 100%;
  height: auto;
}
.imagegrid--firstlarge .imagegrid__image:first-child {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .imagegrid--firstlarge .imagegrid__image:first-child {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 calc(100% - 15px);
    -ms-flex: 1 0 calc(100% - 15px);
    flex: 1 0 calc(100% - 15px);
    max-width: calc(100% - 15px);
  }
}
.imagegrid--padding {
  padding-left: 7.5px;
  padding-right: 7.5px;
  max-width: 82rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 50em) {
  .imagegrid--padding {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (min-width: 50em) {
  .imagegrid--compact-center {
    max-width: 54em;
    margin: 0 auto;
  }
}
.imagegrid + h3 {
  margin-top: 60px;
}
.map {
  height: auto;
  min-height: 400px;
  width: 100%;
}
.map__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 60px;
  margin-bottom: 120px;
  margin-left: auto;
  margin-right: auto;
  max-width: 750px;
}
.map__container .map-wrapper {
  position: relative;
}
.map__container .map-wrapper:hover .office-overlay {
  opacity: 0;
}
.map__container .map-wrapper .office-overlay {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
  background-size: cover;
  opacity: 1;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
@media (max-width: 870px) {
  .map__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.map__container--city {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media (min-width: 800px) {
  .map__container--city {
    margin: 30px;
  }
}
.map__container--info {
  margin: 30px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media (min-width: 800px) {
  .map__container--info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
  }
}
.map__container--info p {
  margin-top: 0;
}
.map__container--info h3 {
  margin: 0;
  padding-left: 0;
  margin-left: 30px;
}
.map > div {
  background-color: transparent !important;
}
.map__header {
  margin-bottom: 30px;
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.map .gm-style div {
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  border: none !important;
}
.map
  .gm-style
  div:nth-child(1)
  div:nth-child(4)
  div:nth-child(4)
  div:nth-child(1)
  div:nth-child(1)
  div:nth-child(2),
.map
  .gm-style
  div:nth-child(1)
  div:nth-child(4)
  div:nth-child(4)
  div:nth-child(2)
  div:nth-child(1)
  div:nth-child(2) {
  background: none !important;
}
.map #content {
  font-family: "Fira Mono", monospace;
}
.map #content strong {
  font-weight: 700;
}
.map #content p:first-of-type {
  padding: 20px 10px 0px;
  line-height: 1.3em;
}
.metabox {
  position: relative;
  z-index: 2;
  -webkit-align-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-transform: translate3D(0, 4em, 0);
  -ms-transform: translate3D(0, 4em, 0);
  transform: translate3D(0, 4em, 0);
  width: 100%;
  background: #fff;
  -webkit-animation: moveBack 0.7s forwards cubic-bezier(0.3, 0, 0.1, 1);
  animation: moveBack 0.7s forwards cubic-bezier(0.3, 0, 0.1, 1);
  padding: 15px 0;
}
@media screen and (min-width: 50em) {
  .metabox {
    padding: 15px 30px;
    -webkit-transform: translate3D(0, 4em, 0);
    -ms-transform: translate3D(0, 4em, 0);
    transform: translate3D(0, 4em, 0);
    width: 60%;
  }
}
@media screen and (min-width: 1280px) {
  .metabox {
    padding: 15px 60px;
  }
}
@media (prefers-reduced-motion) {
  .metabox {
    -webkit-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
    -webkit-animation: none;
    animation: none;
  }
}
.metabox .column {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 0%;
  -ms-flex: 1 0 0%;
  flex: 1 0 0%;
}
.metabox--offset {
  -webkit-transform: translate3D(0, -4em, 0);
  -ms-transform: translate3D(0, -4em, 0);
  transform: translate3D(0, -4em, 0);
  -webkit-animation: moveOffset 0.7s forwards cubic-bezier(0.3, 0, 0.1, 1);
  animation: moveOffset 0.7s forwards cubic-bezier(0.3, 0, 0.1, 1);
}
.metabox--wide {
  width: calc(100% - 20px);
  max-width: 60em;
  margin: 0 30px;
  padding: 30px 0 0;
}
@media screen and (min-width: 50em) {
  .metabox--wide {
    padding: 60px 60px 30px;
  }
}
.newsflash {
  position: relative;
  margin-left: 30px;
  padding: 21px 7.5px;
  right: 30px;
  z-index: 11;
  font-size: 0.9em;
  width: 38em;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
  opacity: 0;
  -webkit-transition: opacity 0.4s,
    -webkit-transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97);
  transition: opacity 0.4s,
    -webkit-transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97);
  -o-transition: transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97), opacity 0.4s;
  transition: transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97), opacity 0.4s;
  transition: transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97), opacity 0.4s,
    -webkit-transform 1s cubic-bezier(0.08, 1.51, 0.27, 0.97);
  max-width: 100%;
  border: 2px solid #fff;
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-shadow: -7.5px 7.5px 0 #5f11e8;
  box-shadow: -7.5px 7.5px 0 #5f11e8;
}
.newsflash * {
  max-width: 100%;
}
.newsflash h3 {
  font-size: 2em;
  width: 100%;
}
.newsflash h3 + p {
  margin-top: 15px;
}
@media screen and (min-width: 50em) {
  .newsflash {
    -webkit-transform-origin: 50% -40%;
    -ms-transform-origin: 50% -40%;
    transform-origin: 50% -40%;
    position: absolute;
    padding: 24px;
    bottom: 30px;
    right: 30px;
    font-size: 0.7em;
  }
  .newsflash h3,
  .newsflash p {
    padding: 0;
  }
  .newsflash h3 {
    font-size: 2em;
  }
}
.newsflash--open {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}
.newsflash .button {
  font-size: 1em;
}
.newsflash .link {
  padding: 0 15px;
}
.newsflash .link:before {
  bottom: -3px;
}
.newsflash--transparent {
  background: rgba(255, 255, 255, 0.5);
  color: #5f11e8;
  -webkit-box-shadow: none;
  box-shadow: none;
  text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.5);
}
#menu .newsflash {
  -webkit-transition: -webkit-transform 0.3s 1s;
  transition: -webkit-transform 0.3s 1s;
  -o-transition: transform 0.3s 1s;
  transition: transform 0.3s 1s;
  transition: transform 0.3s 1s, -webkit-transform 0.3s 1s;
}
.navigation {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  padding: 30px;
}
@media (max-aspect-ratio: 3/4) {
  .navigation {
    min-height: 127.3vw;
  }
}
@media (max-aspect-ratio: 2/3) {
  .navigation {
    min-height: 144vw;
  }
}
@media (max-aspect-ratio: 10/16) {
  .navigation {
    min-height: 154vw;
  }
}
@media (max-aspect-ratio: 9/16) {
  .navigation {
    min-height: 171.8vw;
  }
}
.navigation__video,
.navigation__layerimage {
  background-color: #100f36;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  margin-top: 0;
}
@media (min-aspect-ratio: 16/9) {
  .navigation__video,
  .navigation__layerimage {
    width: 100%;
    height: auto;
  }
}
@media (max-aspect-ratio: 16/9) {
  .navigation__video,
  .navigation__layerimage {
    width: auto;
    height: 100%;
    -webkit-transform: translateX(-75%);
    -ms-transform: translateX(-75%);
    transform: translateX(-75%);
    left: 75%;
  }
}
.navigation__list {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  z-index: 3;
  list-style-type: none;
  margin: 100px 0 30px;
  padding: 0;
}
@media (min-width: 50em) and (min-height: 445px) {
  .navigation__list {
    margin: 0 0 60px;
  }
}
.navigation__item {
  position: relative;
}
.navigation__link,
.navigation__overlay {
  color: #fff;
  padding: 7.5px 30px;
  display: inline-block;
}
@media screen and (min-width: 50em) {
  .navigation__link,
  .navigation__overlay {
    padding: 12px 60px;
  }
}
@media (max-height: 445px) {
  .navigation__link,
  .navigation__overlay {
    padding: 0.2em 30px;
  }
}
@media (max-height: 415px) {
  .navigation__link,
  .navigation__overlay {
    font-size: calc(1em + 2vh);
  }
}
@media (orientation: portrait) {
  .navigation__link,
  .navigation__overlay {
    text-shadow: 0px 2px 10px rgba(10, 42, 79, 0.3);
  }
}
.navigation__link:visited,
.navigation__link:hover,
.navigation__link:focus,
.navigation__overlay:visited,
.navigation__overlay:hover,
.navigation__overlay:focus {
  color: #fff;
  outline: none;
}
.navigation__link:hover ~ .wave-svg,
.navigation__link:focus ~ .wave-svg,
.navigation__overlay:hover ~ .wave-svg,
.navigation__overlay:focus ~ .wave-svg {
  stroke-dashoffset: 37px;
}
.navigation__overlay {
  position: absolute;
  top: 0;
  z-index: 1;
  pointer-events: none;
}
@media (max-width: 49em) {
  .navigation__overlay {
    text-shadow: none;
  }
}
.navigation__wrapper {
  position: relative;
}
.navigation .menu-work ~ .navigation__overlay {
  left: 1.552em;
}
.navigation .menu-about ~ .navigation__overlay {
  left: 1.344em;
}
.navigation .menu-curiosities ~ .navigation__overlay {
  left: 0.725em;
}
.navigation .menu-contact ~ .navigation__overlay {
  left: 1.35em;
}
.navigation .wave-svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -15px;
  stroke: #ffc1b4;
  stroke-width: 7px;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  -webkit-transition: stroke-dashoffset 0.8s cubic-bezier(0.16, 0, 0.1, 0.99);
  -o-transition: stroke-dashoffset 0.8s cubic-bezier(0.16, 0, 0.1, 0.99);
  transition: stroke-dashoffset 0.8s cubic-bezier(0.16, 0, 0.1, 0.99);
  pointer-events: none;
}
@media screen and (min-width: 50em) {
  .navigation .wave-svg {
    left: 30px;
  }
}
.navigation .menu-work ~ .wave-svg {
  stroke: #7d3bf1;
}
.navigation .menu-work:hover ~ .wave-svg,
.navigation .menu-work:focus ~ .wave-svg {
  stroke-dashoffset: 132px;
}
.navigation .menu-about ~ .wave-svg {
  stroke: #7bd75e;
}
.navigation .menu-about:hover ~ .wave-svg,
.navigation .menu-about:focus ~ .wave-svg {
  stroke-dashoffset: 111px;
}
.navigation .menu-curiosities ~ .wave-svg {
  stroke: #ffde7f;
}
.navigation .menu-contact:hover ~ .wave-svg,
.navigation .menu-contact:focus ~ .wave-svg {
  stroke-dashoffset: 38px;
}
@media (min-width: 50em) {
  .navigation .menu-work:hover ~ .wave-svg,
  .navigation .menu-work:focus ~ .wave-svg {
    stroke-dashoffset: 182px;
  }
  .navigation .menu-about:hover ~ .wave-svg,
  .navigation .menu-about:focus ~ .wave-svg {
    stroke-dashoffset: 148px;
  }
  .navigation .menu-contact:hover ~ .wave-svg,
  .navigation .menu-contact:focus ~ .wave-svg {
    stroke-dashoffset: 108px;
  }
}
.navigation.menu-open {
  z-index: 15;
}
#startmenu {
  z-index: 10;
  height: auto;
  background-color: #0d0d3a;
}
@media (max-aspect-ratio: 3/4) {
  #startmenu {
    min-height: 153.96vw;
  }
}
@media (max-aspect-ratio: 2/3) {
  #startmenu {
    min-height: 174vw;
  }
}
@media (max-aspect-ratio: 10/16) {
  #startmenu {
    min-height: 186vw;
  }
}
@media (max-aspect-ratio: 9/16) {
  #startmenu {
    min-height: 207.36vw;
  }
}
#startmenu .navigation__item {
  opacity: 0;
  -webkit-animation: slidedown 0.6s 0s forwards
    cubic-bezier(0.16, 0, 0.28, 0.99);
  animation: slidedown 0.6s 0s forwards cubic-bezier(0.16, 0, 0.28, 0.99);
}
@media (prefers-reduced-motion) {
  #startmenu .navigation__item {
    -webkit-animation: none;
    animation: none;
    opacity: 1;
  }
}
#startmenu .navigation__item:nth-child(1) {
  -webkit-animation-delay: 0.0666666667s;
  animation-delay: 0.0666666667s;
}
#startmenu .navigation__item:nth-child(2) {
  -webkit-animation-delay: 0.1333333333s;
  animation-delay: 0.1333333333s;
}
#startmenu .navigation__item:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}
#startmenu .navigation__item:nth-child(4) {
  -webkit-animation-delay: 0.2666666667s;
  animation-delay: 0.2666666667s;
}
#startmenu .navigation__item:nth-child(5) {
  -webkit-animation-delay: 0.3333333333s;
  animation-delay: 0.3333333333s;
}
#startmenu .navigation__list {
  margin-top: 0;
}
#menu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  pointer-events: none;
}
#menu .navigation__item,
#menu .navigation__video,
#menu .navigation__layerimage {
  opacity: 0;
}
#menu .navigation__item {
  -webkit-transform: translate3D(0, -2em, 0);
  -ms-transform: translate3D(0, -2em, 0);
  transform: translate3D(0, -2em, 0);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  -o-transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}
#menu .navigation__bg {
  width: 100%;
  height: 100%;
  background-color: #5f11e8;
  -webkit-transform: translateX(-3px);
  -ms-transform: translateX(-3px);
  transform: translateX(-3px);
  -webkit-transform-origin: calc(0% + 30px) calc(0% + 30px);
  -ms-transform-origin: calc(0% + 30px) calc(0% + 30px);
  transform-origin: calc(0% + 30px) calc(0% + 30px);
  -webkit-transition: opacity 0.33s 0.27s,
    -webkit-transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99);
  transition: opacity 0.33s 0.27s,
    -webkit-transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99);
  -o-transition: transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99),
    opacity 0.33s 0.27s;
  transition: transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99),
    opacity 0.33s 0.27s;
  transition: transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99),
    opacity 0.33s 0.27s,
    -webkit-transform 0.45s cubic-bezier(0.16, 0, 0.28, 0.99);
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transform: scale(0.05, 0.01) translate3d(30px, 30px, 0);
  transform: scale(0.05, 0.01) translate3d(30px, 30px, 0);
  opacity: 0;
}
@media (orientation: landscape) {
  #menu .navigation__bg {
    -webkit-transform: scale(0.01, 0.05) translate3d(30px, 30px, 0);
    transform: scale(0.01, 0.05) translate3d(30px, 30px, 0);
  }
}
#menu.menu-open {
  pointer-events: auto;
  z-index: 20;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
#menu.menu-open .navigation__bg {
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
  -webkit-transition: opacity 0.1s 0s,
    -webkit-transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99);
  transition: opacity 0.1s 0s,
    -webkit-transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99);
  -o-transition: transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99),
    opacity 0.1s 0s;
  transition: transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99), opacity 0.1s 0s;
  transition: transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99), opacity 0.1s 0s,
    -webkit-transform 0.3s cubic-bezier(0.16, 0, 0.28, 0.99);
}
@media (prefers-reduced-motion) {
  #menu.menu-open .navigation__bg {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
  }
}
#menu.menu-open .navigation__item,
#menu.menu-open .navigation__video,
#menu.menu-open .navigation__layerimage {
  opacity: 0;
}
#menu.menu-open .navigation__item {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: opacity 0.15s, -webkit-transform 0.3s;
  transition: opacity 0.15s, -webkit-transform 0.3s;
  -o-transition: transform 0.3s, opacity 0.15s;
  transition: transform 0.3s, opacity 0.15s;
  transition: transform 0.3s, opacity 0.15s, -webkit-transform 0.3s;
}
#menu.menu-open .navigation__item:nth-child(1) {
  -webkit-transition-delay: 0.05s;
  -o-transition-delay: 0.05s;
  transition-delay: 0.05s;
}
#menu.menu-open .navigation__item:nth-child(2) {
  -webkit-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  transition-delay: 0.1s;
}
#menu.menu-open .navigation__item:nth-child(3) {
  -webkit-transition-delay: 0.15s;
  -o-transition-delay: 0.15s;
  transition-delay: 0.15s;
}
#menu.menu-open .navigation__item:nth-child(4) {
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s;
}
#menu.menu-open .navigation__item:nth-child(5) {
  -webkit-transition-delay: 0.25s;
  -o-transition-delay: 0.25s;
  transition-delay: 0.25s;
}
#menu.menu-open .navigation__video,
#menu.menu-open .navigation__layerimage {
  opacity: 1;
  -webkit-transition: opacity 0.45s 0.3s;
  -o-transition: opacity 0.45s 0.3s;
  transition: opacity 0.45s 0.3s;
}
@-webkit-keyframes openmenu {
  0% {
    -webkit-transform: scale(0.03, 0.04) translate3d(30px, 30px, 0);
    transform: scale(0.03, 0.04) translate3d(30px, 30px, 0);
    width: 100%;
    height: 100%;
  }
  100% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
    transform: scale(1) translate3d(0, 0, 0);
    width: 100%;
    height: 100%;
  }
}
@keyframes openmenu {
  0% {
    -webkit-transform: scale(0.03, 0.04) translate3d(30px, 30px, 0);
    transform: scale(0.03, 0.04) translate3d(30px, 30px, 0);
    width: 100%;
    height: 100%;
  }
  100% {
    -webkit-transform: scale(1) translate3d(0, 0, 0);
    transform: scale(1) translate3d(0, 0, 0);
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes closemenu {
  0% {
    -webkit-transform: scale(100) translate3D(-30px, -30px, 0);
    transform: scale(100) translate3D(-30px, -30px, 0);
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes closemenu {
  0% {
    -webkit-transform: scale(100) translate3D(-30px, -30px, 0);
    transform: scale(100) translate3D(-30px, -30px, 0);
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes hide {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes hide {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes slidedown {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, -20px, 0);
    transform: translate3D(0, -20px, 0);
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
@keyframes slidedown {
  0% {
    opacity: 0;
    -webkit-transform: translate3D(0, -20px, 0);
    transform: translate3D(0, -20px, 0);
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0);
  }
}
.IIV::-webkit-media-controls-play-button,
.IIV::-webkit-media-controls-start-playback-button {
  opacity: 0;
  pointer-events: none;
  width: 5px;
}
.slider-wide {
  padding-top: 5vh;
  padding-bottom: 10vh;
}
.slider {
  position: relative;
}
.slider__frame {
  width: 100%;
  position: relative;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  white-space: nowrap;
}
.slider__slides {
  display: inline-block;
  margin: 0;
  max-width: 100%;
  padding: 0;
}
.slider__slide {
  position: relative;
  display: inline-block;
  width: 950px;
  max-width: 90vw;
  margin-left: 5px;
  margin-right: 5px;
  -webkit-transform: translateX(calc(5% + 2.5px));
  -ms-transform: translateX(calc(5% + 2.5px));
  transform: translateX(calc(5% + 2.5px));
}
@media screen and (min-width: 600px) {
  .slider__slide {
    -webkit-transform: translateX(33.333%);
    -ms-transform: translateX(33.333%);
    transform: translateX(33.333%);
    max-width: 60vw;
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media screen and (min-width: 1280px) {
  .slider__slide {
    max-width: 60vw;
    margin-left: 10px;
    margin-right: 10px;
  }
}
.slider__slide img {
  width: auto;
}
.slider .prev,
.slider .next {
  position: absolute;
  top: 50%;
  margin-top: -25px;
  display: none;
  cursor: pointer;
}
@media screen and (min-width: 600px) {
  .slider .prev,
  .slider .next {
    display: block;
  }
}
.slider .prev svg,
.slider .next svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 4;
  stroke-miterlimit: 10;
}
.slider .next {
  right: 15px;
}
.slider .prev {
  left: 15px;
}
.slider .dots {
  margin: 0;
  padding: 0;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 10vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: none;
}
.slider .dots > li {
  background-color: #fff;
  border: 1px solid #fff;
  display: inline-block;
  height: 3px;
  width: 20px;
  margin: 0 5px;
  cursor: pointer;
  opacity: 0.5;
}
@media screen and (min-width: 600px) {
  .slider .dots > li {
    width: 31px;
  }
}
.slider .dots > li.active {
  opacity: 1;
}
.sidescroll {
  overflow: hidden;
}
@media (min-width: 768px) {
  .sidescroll {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
  }
}
.sidescroll__side {
  padding: space(3) 0 0;
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .sidescroll__side {
    background: #fff;
    padding: space(4) space(1) space(6) space(1) space(0.5);
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media (min-width: 992px) {
  .sidescroll__side {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
}
.sidescroll__side ol {
  list-style: none;
  padding: 0;
}
.sidescroll__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: space(1) space(1) space(2);
  -webkit-transition: border 0.2s, color 0.2s;
  -o-transition: border 0.2s, color 0.2s;
  transition: border 0.2s, color 0.2s;
  margin: 60px 0;
}
@media (min-width: 768px) {
  .sidescroll__item {
    margin: 0;
    height: 65vh;
  }
  .sidescroll__item:first-child {
    margin-top: 18vh;
  }
  .sidescroll__item:last-child {
    margin-bottom: 18vh;
  }
}
@media (min-width: 768px) {
  .sidescroll__item .scroll-content {
    margin: 0 auto;
    width: 80%;
  }
}
@media (max-width: 767px) {
  .sidescroll__item .scroll-content {
    padding: 30px 0;
    background-color: #fff;
    width: 80%;
    z-index: 1;
  }
  .sidescroll__item .scroll-content.right {
    margin-left: 20%;
  }
}
.sidescroll__item .image-container {
  height: 50vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: -10vh;
}
@media (min-width: 768px) {
  .sidescroll__item .image-container {
    display: none;
  }
}
.sidescroll__item .button {
  margin-left: 30px;
}
@media (min-width: 768px) {
  .sidescroll__item .button {
    margin-top: 10px;
  }
}
.sidescroll__item h2 {
  margin-left: 0;
  margin-right: 0;
}
.sidescroll__item .work-case-subtitle {
  margin-top: 10px;
}
.sidescroll__item p {
  margin-left: 0;
  margin-right: 0;
  position: relative;
}
.sidescroll__item p:before {
  font-size: 3em;
  display: block;
}
@media (max-width: 767px) {
  .sidescroll__item p:before {
    position: absolute;
    left: 0;
    top: -1.2em;
  }
}
.sidescroll__item.active {
  color: #0a2a4f;
}
@media (min-width: 768px) {
  .sidescroll__item {
    color: #aaa;
    padding: space(0.5) space(1);
  }
}
@media (max-width: 767px) {
  .sidescroll__scroll {
    display: none;
  }
}
@media (min-width: 768px) {
  .sidescroll__scroll {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
    height: 100vh;
  }
}
@media (min-width: 992px) {
  .sidescroll__scroll {
    -webkit-flex-basis: 66.66666667%;
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }
}
.sidescroll__scrollwrap {
  position: relative;
  width: 100%;
  height: 90vh;
  margin-top: 5vh;
  margin-bottom: 5vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #f8f8f8;
}
.sidescroll__screens {
  position: absolute;
  top: 0;
  left: 0;
  width: 390vw;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: -40vw;
}
.sidescroll__screen {
  width: 50vw;
  margin: 0 40vw;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.statbox {
  background-color: #fff;
  border: 1px solid #f5f5f5;
  padding: 15px 7.5px 7.5px;
}
@media screen and (min-width: 50em) {
  .statbox {
    padding: 30px 30px 15px;
  }
}
.stat-circle {
  display: block;
  margin: 0 auto 15px;
  width: 80%;
  height: auto;
}
@media screen and (min-width: 50em) {
  .stat-circle {
    margin-bottom: 30px;
  }
}
.stat-circle__bg,
.stat-circle__line {
  fill: none;
  stroke-width: 5;
  stroke-miterlimit: 10;
}
.stat-circle__bg {
  stroke: #f8f8f8;
}
.stat-circle__line {
  stroke: currentColor;
  stroke-dasharray: 100;
  -webkit-transition: stroke-dashoffset 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  -o-transition: stroke-dashoffset 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
  transition: stroke-dashoffset 0.8s cubic-bezier(0.14, 0.79, 0.39, 1);
}
.stat-circle__number,
.stat-circle__procent {
  font-family: "Moderat", sans-serif;
  font-size: 7px;
  fill: #666;
}
.stat-circle__number {
  font-weight: bold;
}
.stat-circle__procent {
  font-weight: normal;
}
.invisible .stat-circle__line {
  stroke-dashoffset: 100;
  -webkit-transition: stroke-dashoffset 0.6s
    cubic-bezier(0.61, 0.02, 0.82, 0.43);
  -o-transition: stroke-dashoffset 0.6s cubic-bezier(0.61, 0.02, 0.82, 0.43);
  transition: stroke-dashoffset 0.6s cubic-bezier(0.61, 0.02, 0.82, 0.43);
}
:root .stats {
  text-align: center;
}
:root .stats strong {
  color: #7bd75e;
  font-size: 1.6em;
}
:root .stats * + * {
  margin-top: 0;
}
.stepper {
  display: grid;
  grid-template-columns: 1fr 50px 1fr 50px 1fr 50px 1fr;
  padding: 0 30px;
  list-style-type: none;
  max-width: 100%;
}
.stepper .stepper__step {
  padding: 30px;
  background: #5f11e8;
  color: #fff;
  text-align: center;
  font-family: "Moderat", sans-serif;
  font-size: 1.25em;
  line-height: 1.25;
  min-height: 8em;
}
.stepper .stepper__step:hover {
  -webkit-transform: translate(5px, 0px);
  -ms-transform: translate(5px, 0px);
  transform: translate(5px, 0px);
}
.stepper .stepper__step,
.stepper .stepper__arrow {
  -webkit-transition: -webkit-transform 2s cubic-bezier(0.2, 2, 0.3, 0.8);
  transition: -webkit-transform 2s cubic-bezier(0.2, 2, 0.3, 0.8);
  -o-transition: transform 2s cubic-bezier(0.2, 2, 0.3, 0.8);
  transition: transform 2s cubic-bezier(0.2, 2, 0.3, 0.8);
  transition: transform 2s cubic-bezier(0.2, 2, 0.3, 0.8),
    -webkit-transform 2s cubic-bezier(0.2, 2, 0.3, 0.8);
}
.stepper__step:hover + .stepper__arrow {
  -webkit-transform: translate(2px, 0px);
  -ms-transform: translate(2px, 0px);
  transform: translate(2px, 0px);
}
.preview-modal {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: black;
  z-index: 100;
  align-items: center;
  opacity: 0;
  -webkit-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s;
  pointer-events: none;
}
@keyframes fadeIn {
  to {
    opacity: 1;
  }
}
.preview-modal iframe {
  height: 100%;
  border: none;
}
.preview-modal.preview-modal--open {
  pointer-events: unset;
  opacity: 1;
}
.preview-modal.preview-modal--open iframe {
  opacity: 0;
  -webkit-animation: fadeIn 1s 1s forwards;
  animation: fadeIn 1s 1s forwards;
}
.preview-modal.preview-modal--open.preview-modal--fadeout {
  -webkit-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  transition: opacity 0.5s;
  opacity: 0;
}
.preview-modal .preview-close {
  position: absolute;
  top: 10px;
  right: 20px;
  z-index: 1;
}
.loadinghero {
  height: 100vh;
  background-color: #5f11e8;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
  position: relative;
}
.loadinghero--tight {
  height: auto;
  min-height: 50vmin;
  margin-bottom: 60px;
}
.loadinghero__previews-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100vh;
}
.loadinghero__heading {
  color: #fff;
  text-align: center;
  max-width: 10em;
  margin: 0 auto;
  position: relative;
  z-index: 5;
  opacity: 0;
}
@media (max-width: 800px) {
  .loadinghero__heading {
    font-size: calc(2em + 2vw);
  }
}
.loadinghero__preview {
  position: absolute;
  z-index: 4;
  width: 49vw;
  -webkit-box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.3);
  opacity: 0;
  bottom: -51vw;
}
@media (orientation: landscape) {
  .loadinghero__preview {
    width: 25vw;
    bottom: -26vw;
  }
}
@media (min-aspect-ratio: 16/9) {
  .loadinghero__preview {
    width: 22vw;
    bottom: -24vw;
    border: none;
  }
}
.loadinghero__preview--portrait {
  width: 25vw;
  bottom: -47vw;
}
@media (min-width: 700px) {
  .loadinghero__preview--portrait {
    width: 18vw;
    bottom: -34vw;
  }
}
@media (min-width: 1300px) {
  .loadinghero__preview--portrait {
    width: 14vw;
    bottom: -28vw;
  }
}
.loadinghero__preview1 {
  right: 10vw;
}
.loadinghero__preview2 {
  left: -5vh;
}
.loadinghero__preview3 {
  right: -8vh;
}
.loadinghero__preview4 {
  left: 12vw;
  z-index: 3;
}
.loadinghero__preview5 {
  left: 22vw;
}
.loadinghero__preview6 {
  left: 2vw;
  z-index: 3;
}
.loadinghero__preview7 {
  right: 10vw;
}
.loadinghero__preview {
  opacity: 0;
  -webkit-transition: opacity 1s 0.3s linear, -webkit-transform 8.1s 0.3s linear;
  transition: opacity 1s 0.3s linear, -webkit-transform 8.1s 0.3s linear;
  -o-transition: opacity 1s 0.3s linear, transform 8.1s 0.3s linear;
  transition: opacity 1s 0.3s linear, transform 8.1s 0.3s linear;
  transition: opacity 1s 0.3s linear, transform 8.1s 0.3s linear,
    -webkit-transform 8.1s 0.3s linear;
}
@-webkit-keyframes loadingHero {
  to {
    -webkit-transform: translate3d(0px, 0vh, 0px);
    transform: translate3d(0px, 0vh, 0px);
    opacity: 1;
  }
}
@keyframes loadingHero {
  to {
    -webkit-transform: translate3d(0px, 0vh, 0px);
    transform: translate3d(0px, 0vh, 0px);
    opacity: 1;
  }
}
.loadinghero__heading {
  opacity: 0;
  -webkit-transform: translate3d(0px, 5vh, 0px);
  transform: translate3d(0px, 5vh, 0px);
  -webkit-animation: loadingHero 1.2s cubic-bezier(0.215, 0.61, 0.355, 1)
    forwards;
  animation: loadingHero 1.2s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
.loadinghero__preview1 {
  -webkit-transform: scale(1.1) translate3d(0px, -40vh, 0px);
  transform: scale(1.1) translate3d(0px, -40vh, 0px);
}
.loadinghero__preview2 {
  -webkit-transform: scale(1.1) translate3d(0px, -60vh, 0px);
  transform: scale(1.1) translate3d(0px, -60vh, 0px);
}
.loadinghero__preview3 {
  -webkit-transform: scale(1.2) translate3d(0px, -60vh, 0px);
  transform: scale(1.2) translate3d(0px, -60vh, 0px);
}
.loadinghero__preview4 {
  -webkit-transform: scale(1.3) translate3d(0px, -110vh, 0px);
  transform: scale(1.3) translate3d(0px, -110vh, 0px);
}
.loadinghero__preview5 {
  -webkit-transform: scale(1.4) translate3d(0px, -45vh, 0px);
  transform: scale(1.4) translate3d(0px, -45vh, 0px);
}
.loadinghero__preview6 {
  -webkit-transform: scale(0.9) translate3d(0px, -30vh, 0px);
  transform: scale(0.9) translate3d(0px, -30vh, 0px);
}
.loadinghero__preview7 {
  -webkit-transform: scale(1.2) translate3d(0px, -98vh, 0px);
  transform: scale(1.2) translate3d(0px, -98vh, 0px);
}
.content-loaded .loadinghero__preview1 {
  -webkit-transform: scale(1.1) translate3d(0px, -70vh, 0px);
  transform: scale(1.1) translate3d(0px, -70vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview2 {
  -webkit-transform: scale(1.1) translate3d(0px, -100vh, 0px);
  transform: scale(1.1) translate3d(0px, -100vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview3 {
  -webkit-transform: scale(1.2) translate3d(0px, -110vh, 0px);
  transform: scale(1.2) translate3d(0px, -110vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview4 {
  -webkit-transform: scale(1.3) translate3d(0px, -140vh, 0px);
  transform: scale(1.3) translate3d(0px, -140vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview5 {
  -webkit-transform: scale(1.4) translate3d(0px, -100vh, 0px);
  transform: scale(1.4) translate3d(0px, -100vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview6 {
  -webkit-transform: scale(0.9) translate3d(0px, -60vh, 0px);
  transform: scale(0.9) translate3d(0px, -60vh, 0px);
  opacity: 1;
}
.content-loaded .loadinghero__preview7 {
  -webkit-transform: scale(1.2) translate3d(0px, -140vh, 0px);
  transform: scale(1.2) translate3d(0px, -140vh, 0px);
  opacity: 1;
}
.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media (min-width: 699px) {
  .flex-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .flex-container__left {
    -webkit-flex-basis: 33%;
    -ms-flex-preferred-size: 33%;
    flex-basis: 33%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .flex-container__right {
    -webkit-flex-basis: 67%;
    -ms-flex-preferred-size: 67%;
    flex-basis: 67%;
    margin: 0;
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px);
    margin-top: 0;
  }
}
.flex-container__right {
  margin-top: 50px;
}
.flex-imageline {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 700px) {
  .flex-imageline {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
}
.flex-imageline__image {
  margin: 30px;
}
@media (max-width: 700px) {
  .flex-imageline__image {
    margin: 20px;
    width: 70%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
}
.flex-imageline.flex-imageline--tight .flex-imageline__image {
  margin: 10px;
}
.malbaren-toptriangle {
  -webkit-transform: translateY(0.5px);
  -ms-transform: translateY(0.5px);
  transform: translateY(0.5px);
}
.malbaren-bottomtriangle {
  -webkit-transform: translateY(-0.5px);
  -ms-transform: translateY(-0.5px);
  transform: translateY(-0.5px);
  margin-bottom: 30px;
}
.malbaren-skewbox {
  width: 100%;
  padding: 40px 0 60px;
}
.collector-section3__text {
  position: relative;
  z-index: 1;
  margin-top: -60px;
  width: calc(100% - 30px);
  max-width: calc(56em + 60px);
}
@media screen and (min-width: 600px) {
  .collector-section3__text {
    margin-left: auto;
    margin-top: -120px;
    width: calc(100% - 60px);
  }
}
.page-brooklyn .brooklyn-image-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 799px) {
  .page-brooklyn .brooklyn-image-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.page-brooklyn .brooklyn-image-grid img {
  padding: 10px;
  width: 100%;
}
.page-brooklyn .brooklyn-image-grid__left {
  -webkit-flex-basis: 60%;
  -ms-flex-preferred-size: 60%;
  flex-basis: 60%;
}
.page-brooklyn .brooklyn-image-grid__right {
  -webkit-flex-basis: 40%;
  -ms-flex-preferred-size: 40%;
  flex-basis: 40%;
}
@media (max-width: 799px) {
  .page-brooklyn .brooklyn-image-grid__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.page-contact .contact-title {
  margin-top: 0;
}
.page-contact .contact-details {
  font-size: 0.9em;
}
@media screen and (min-width: 600px) {
  .page-contact .contact-details {
    font-size: inherit;
  }
}
.page-contact .contact-boxes {
  background-color: #ffc1b4;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: 20vh;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media (min-width: 660px) {
  .page-contact .contact-boxes {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.page-contact .contact-boxes__box {
  background-color: #fff;
  padding: 30px 0;
  margin: 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin: 0 30px 30px 30px;
}
@media (min-width: 660px) {
  .page-contact .contact-boxes__box {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }
}
.page-contact .contact-boxes__box .subject-msg {
  margin-top: 0;
}
.page-contact .contact-boxes__box a {
  color: #0a2a4f;
}
.page-contact .contact-wrapper a span {
  display: inline-block;
  padding: 0;
}
.page-contact .contact-wrapper .email__correct {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.page-contact .contact-wrapper .email__emailified {
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
  position: absolute;
  top: 0;
  left: 0;
}
.page-contact .contact-wrapper .email__domain {
  display: block;
}
.page-contact .contact-wrapper .email {
  display: block;
  position: relative;
  width: 100%;
}
.page-contact .contact-wrapper .email:hover .email__correct {
  opacity: 0;
}
.page-contact .contact-wrapper .email:hover .email__emailified {
  opacity: 1;
}

@media (orientation: landscape) {
  .about-background-image {
    display: block;
  }
  .about-background-image-mobile {
    display: none;
  }
}
@media (orientation: portrait) {
  .about-background-image {
    display: none;
  }
  .about-background-image-mobile {
    display: block;
  }
  .hero__header-wrap {
    font-size: 1.6vh;
  }
}
.page-weibulls .weibulls-image-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 799px) {
  .page-weibulls .weibulls-image-grid {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0;
  }
}
.page-weibulls .weibulls-image-grid img {
  padding: 10px;
  width: 100%;
}
.page-weibulls .weibulls-image-grid__right {
  -webkit-flex-basis: 60%;
  -ms-flex-preferred-size: 60%;
  flex-basis: 60%;
}
.page-weibulls .weibulls-image-grid__left {
  -webkit-flex-basis: 40%;
  -ms-flex-preferred-size: 40%;
  flex-basis: 40%;
}
@media (max-width: 799px) {
  .page-weibulls .weibulls-image-grid__left {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.page-weibulls .weibulls-image-grid p {
  padding-left: 10px;
  padding-right: 10px;
  margin-top: 5px;
}
.sectionspacing-custom {
  margin-top: 30px;
  margin-bottom: 30px;
}
.aligncenter {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.c-signal {
  color: #5f11e8;
}
.c-signal-bg {
  background-color: #5f11e8;
  color: #fff;
}
.c-people {
  color: #ffc1b4;
}
.c-people-bg {
  background-color: #ffc1b4;
}
.c-business {
  color: #7bd75e;
}
.c-business-bg {
  background-color: #7bd75e;
}
.c-curiosities {
  color: #ffde7f;
}
.c-curiosities-bg {
  background-color: #ffde7f;
}
.c-metal {
  color: #666;
}
.c-metal-bg {
  background-color: #666;
  color: #fff;
}
.c-light {
  color: #f8f8f8;
}
.c-light-bg {
  background-color: #f8f8f8;
}
.c-white {
  color: #fff;
}
.c-white-bg {
  background-color: #fff;
}
.c-dark {
  color: #0a2a4f;
}
.c-dark-bg {
  background-color: #0a2a4f;
  color: #fff;
}
.no-bg {
  background-color: transparent;
}
.sectionspacing {
  margin-top: 90px;
  margin-bottom: 90px;
}
@media screen and (min-width: 50em) {
  .sectionspacing {
    margin-top: 180px;
    margin-bottom: 180px;
  }
}
.sectionspacing-small {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media screen and (min-width: 50em) {
  .sectionspacing-small {
    margin-top: 90px;
    margin-bottom: 90px;
  }
}
.sectionspacing-tiny {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 50em) {
  .sectionspacing-tiny {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}
.sectionpadding {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (min-width: 50em) {
  .sectionpadding {
    padding-top: 180px;
    padding-bottom: 180px;
  }
}
.s {
  margin: 10px 30px;
}
.s-top {
  margin-top: 90px;
}
@media screen and (min-width: 50em) {
  .s-top {
    margin-top: 180px;
  }
}
.s-top-small {
  margin-top: 60px;
}
code .s {
  margin: 0;
}
.center {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}
.flexcenter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flexend {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.bring-to-front {
  position: relative;
  z-index: 1;
}
.background-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
}
.background-image--padding {
  padding: 30px 0;
}
@media screen and (min-width: 50em) {
  .background-image--padding {
    padding: 60px 0;
  }
}
.background-image--largepadding {
  padding: 60px 0;
}
@media screen and (min-width: 50em) {
  .background-image--largepadding {
    padding: 120px 0;
  }
}
.background-image--contain {
  background-size: contain;
}
.invert {
  color: #fff;
}
.hyphenate {
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
.hidden {
  display: none;
}
@media (max-width: 600px) {
  .hidden-sm {
    display: none;
  }
}
@media (min-width: 600px) {
  .visible-only-sm {
    display: none;
  }
}
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.fullwidth {
  width: 100%;
  max-width: 100%;
}
.marginbottom-none {
  margin-bottom: 0;
}
.scroll-to-target {
  scroll-margin: 30px 0 0;
}
.newsflash--firstnewsflash {
  color: #5f11e8;
  -webkit-box-shadow: -4.5px 4.5px 0 #5f11e8;
  box-shadow: -4.5px 4.5px 0 #5f11e8;
  border: 2px solid #5f11e8;
  max-width: 22em;
  -webkit-transform: translate3D(-20%, -50%, 0) scale(0.5);
  -ms-transform: translate3D(-20%, -50%, 0) scale(0.5);
  transform: translate3D(-20%, -50%, 0) scale(0.5);
}
@media screen and (min-width: 50em) {
  .newsflash--firstnewsflash {
    padding-left: 45px;
    padding-right: 45px;
  }
}
.newsflash--firstnewsflash span {
  padding-top: 30px;
  padding-bottom: 30px;
}
.newsflash--firstnewsflash p {
  margin: 15px 0 15px;
}
.newsflash--firstnewsflash.newsflash--open {
  -webkit-transform: translateY(0) scale(1);
  -ms-transform: translateY(0) scale(1);
  transform: translateY(0) scale(1);
}
.newsflash--train {
  padding: 15px 0;
  font-size: 0.8em;
  -webkit-box-shadow: none;
  box-shadow: none;
  width: 28em;
  color: #fff;
  border: 2px solid #fff;
  background-color: transparent;
}
@media screen and (min-width: 50em) {
  .newsflash--train {
    position: absolute;
    padding: 15px 22.5px 22.5px;
    bottom: 30px;
    right: 60px;
    font-size: 0.7em;
  }
  .newsflash--train h3,
  .newsflash--train p {
    padding: 0;
  }
  .newsflash--train p {
    margin: 0;
  }
  .newsflash--train h3 {
    font-size: 2em;
  }
}
.newsflash--train .button {
  font-size: 0.8em;
}
.navigation__layerimage--svenskaskolan-london {
  width: 100%;
  height: 100%;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#d0e8f2),
    color-stop(49%, #8dd0f3)
  );
  background: -o-linear-gradient(top, #d0e8f2 0%, #8dd0f3 49%);
  background: linear-gradient(to bottom, #d0e8f2 0%, #8dd0f3 49%);
}
.navigation__layerimage--svenskaskolan-london .parallax-container {
  height: 100%;
}
.navigation__layerimage--svenskaskolan-london .parallax-layer {
  width: 100%;
  height: 100%;
}
.navigation__layerimage--svenskaskolan-london img {
  position: absolute;
}
.navigation__layerimage--svenskaskolan-london
  img.navigation__layerimage-background {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  right: auto;
}
.navigation__layerimage--svenskaskolan-london
  img.navigation__layerimage-cloud:first-child {
  -webkit-animation: cloud 50s 0s infinite linear;
  animation: cloud 50s 0s infinite linear;
  width: 60%;
  top: 5vh;
  left: -20%;
}
.navigation__layerimage--svenskaskolan-london
  img.navigation__layerimage-cloud:nth-child(2) {
  -webkit-animation: cloud 55s 0s infinite linear;
  animation: cloud 55s 0s infinite linear;
  width: 40%;
  top: 30vh;
  left: 30%;
}
.navigation__layerimage--svenskaskolan-london
  img.navigation__layerimage-background,
.navigation__layerimage--svenskaskolan-london img.navigation__layerimage-right {
  width: 180vh;
  max-width: none;
  bottom: -8vw;
}
.navigation__layerimage--svenskaskolan-london img.navigation__layerimage-right {
  right: -15vh;
  bottom: -5vw;
}
.navigation__layerimage--svenskaskolan-london img.navigation__layerimage-left {
  height: 110%;
  left: -4%;
  top: -5%;
}
@media (max-aspect-ratio: 1/1) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    right: -35vh;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-left {
    left: -20vw;
  }
}
@media (max-aspect-ratio: 10/8) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-background,
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    width: 200vh;
    bottom: -9vh;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-background {
    bottom: -12vh;
  }
}
@media (min-aspect-ratio: 10/6) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-background,
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    width: 110%;
    bottom: -12vw;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    right: -4%;
    bottom: -8vw;
  }
}
@media (min-aspect-ratio: 10/5) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-background {
    bottom: -15vw;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    bottom: -10vw;
  }
}
@media (max-aspect-ratio: 5/7) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-background,
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    width: 180vh;
    bottom: -4vh;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    bottom: -9vh;
  }
}
@media (max-width: 49em) {
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-left {
    display: none;
  }
  .navigation__layerimage--svenskaskolan-london
    img.navigation__layerimage-right {
    right: -40vh;
  }
}
@-webkit-keyframes cloud {
  0% {
    opacity: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  5% {
    opacity: 0.5;
  }
  95% {
    opacity: 0.5;
  }
  100% {
    -webkit-transform: translateX(80vw);
    transform: translateX(80vw);
    opacity: 0;
  }
}
@keyframes cloud {
  0% {
    opacity: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  5% {
    opacity: 0.5;
  }
  95% {
    opacity: 0.5;
  }
  100% {
    -webkit-transform: translateX(80vw);
    transform: translateX(80vw);
    opacity: 0;
  }
}
.navigation__layerimage--summer-2018 {
  width: 100%;
  height: 100%;
  background: #fdc085;
}
.navigation__layerimage--summer-2018 .parallax-container {
  height: 100%;
  position: relative;
}
@media (max-aspect-ratio: 8/10) {
  .navigation__layerimage--summer-2018 .parallax-container {
    height: 50vw;
    top: 50vw;
  }
}
.navigation__layerimage--summer-2018 .parallax-layer {
  width: 100%;
  height: 100%;
}
.navigation__layerimage--summer-2018 .img {
  max-width: none;
  position: absolute;
}
.layer_0000_Isbit1-2 {
  width: 13.3333333333vw;
  top: 32.1vw;
  left: 46.4vw;
}
.layer_0001_Flaskpost-2 {
  width: 7.96875vw;
  top: 26.3vw;
  left: 65.9vw;
}
.layer_0002_Fullyfrontal-2 {
  width: 41.71875vw;
  top: -3.3vw;
  left: 24.8vw;
}
.layer_0003_Lov3-2 {
  width: 7.3958333333vw;
  top: 36.5vw;
  left: 70vw;
}
.layer_0006_Isbit-2 {
  width: 4.6354166667vw;
  top: 22.1vw;
  left: 69vw;
}
.layer_0005_Isbit_stor-2 {
  width: 5.0520833333vw;
  top: 22.8vw;
  left: 66vw;
}
.layer_0004_Isbit-liten-2 {
  width: 2.4479166667vw;
  top: 23.9vw;
  left: 70.6vw;
}
.layer_0007_Kaffelime-2 {
  width: 13.0208333333vw;
  top: 22.4vw;
  left: 83vw;
}
.layer_0008_Fully2-2 {
  width: 17.03125vw;
  top: 10.2vw;
  left: 72.7vw;
}
.layer_0009_Isbit-4 {
  width: 4.9479166667vw;
  top: 25.4vw;
  left: 27.8vw;
}
.layer_0010_Lime2-2 {
  width: 6.1979166667vw;
  top: 34.2vw;
  left: 76.5vw;
}
.layer_0011_Isbit2-2 {
  width: 8.9583333333vw;
  top: 26.1vw;
  left: 14.2vw;
}
.layer_0012_Isbit3-2 {
  width: 11.1979166667vw;
  top: 39.7vw;
  left: 35vw;
}
.layer_0013_Lime-2 {
  width: 7.9166666667vw;
  top: 45.2vw;
  left: 22.9vw;
}
.layer_0014_Lov1-2 {
  width: 3.4895833333vw;
  top: 34vw;
  left: 17.1vw;
}
.layer_0015_Lov2-2 {
  width: 7.1354166667vw;
  top: 53vw;
  left: 58.4vw;
}
.layer_0016_Isbit-3 {
  width: 2.6041666667vw;
  top: 26.8vw;
  left: 9.5vw;
}
.layer_0017_Limeflyt-2 {
  width: 5.9895833333vw;
  top: 24.7vw;
  left: 11.8vw;
}
.layer_0018_Fully3-2 {
  width: 14.4791666667vw;
  top: 15.6vw;
  left: 13.9vw;
}
.layer_0019_vatten {
  width: 110vw;
  left: -5vw;
  top: 23.3vw;
}
.layer_0019_vatten img {
  width: 100%;
}
.summer2018__vattenunder {
  position: absolute;
  bottom: -150vw;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 150vw;
  background-color: #fd959c;
}
.navigation__layerimage--summer-2018 {
  pointer-events: none;
}
.fully-hero__floor:after {
  content: "";
  position: absolute;
  pointer-events: none;
  bottom: -1.95vh;
  left: 0;
  right: 0;
  height: 2vh;
  background-color: #7f052e;
  z-index: 1;
}
.fully-hero__scene canvas,
.fully-hero__scene svg {
  opacity: 0;
}
.fully-hero__scene.loaded canvas,
.fully-hero__scene.loaded svg {
  -webkit-animation: fadeIn 0.6s linear forwards;
  animation: fadeIn 0.6s linear forwards;
}
@media screen and (orientation: portrait) {
  .fully-hero {
    width: 100%;
    height: auto;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .fully-hero__scene {
    position: relative;
    height: 50%;
  }
  .fully-hero__scene--6 {
    background-color: #ca1d5a;
  }
  .fully-hero__scene--6:after {
    content: "";
    position: absolute;
    pointer-events: none;
    bottom: -1.95vh;
    left: 0;
    right: 0;
    height: 2vh;
    background-color: #7f052e;
    z-index: 1;
  }
  .fully-hero__scene--3 {
    background-color: #091a4f;
  }
  .fully-hero__scene--3:after {
    display: none;
  }
  .fully-hero__scene--1,
  .fully-hero__scene--2,
  .fully-hero__scene--4,
  .fully-hero__scene--4_bg,
  .fully-hero__scene--4_2,
  .fully-hero__scene--5 {
    display: none;
  }
}
@media screen and (orientation: landscape) {
  .fully-hero {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #091a4f;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .fully-hero:before {
    content: "";
    position: absolute;
    top: -1px;
    left: 25.8%;
    right: 42%;
    bottom: -1px;
    background: url("../../assets/news/fully-hero/tree_fg1.svg") no-repeat;
    background-size: auto 100%;
    pointer-events: none;
    z-index: 2;
  }
  .fully-hero:after {
    content: "";
    position: absolute;
    top: -1px;
    left: 38.6%;
    width: 20%;
    bottom: -1px;
    background: url("../../assets/news/fully-hero/tree_fg2.svg") no-repeat;
    background-size: auto 100%;
    background-position: right;
    pointer-events: none;
    z-index: 2;
  }
  .fully-hero__scene {
    position: absolute;
  }
  .fully-hero__scene--1 {
    top: 0;
    left: 0;
    width: 26%;
    height: 33.3332%;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(#9c0e73),
      to(#cf2b70)
    );
    background: -o-linear-gradient(top, #9c0e73, #cf2b70);
    background: linear-gradient(180deg, #9c0e73, #cf2b70);
    background-color: #9c0e73;
  }
  .fully-hero__scene--2 {
    top: 0;
    left: calc(24.8% + 8.75vh);
    right: calc(41.3% + 8.75vh);
    height: 33.3332%;
    background-color: #f1be93;
  }
  .fully-hero__scene--3 {
    top: 0;
    left: 58.5332%;
    width: 41.5%;
    height: 60%;
    background-color: #091a4f;
  }
  .fully-hero__scene--4 {
    bottom: 0;
    left: 0;
    width: 33%;
    height: 60%;
    -webkit-transition: opacity 2s;
    -o-transition: opacity 2s;
    transition: opacity 2s;
  }
  .fully-hero__scene--4_bg {
    bottom: 0;
    left: 0;
    width: 58%;
    height: 66%;
    background-color: #f0a992;
    background-image: url("../../assets/news/fully-hero/room_4_bg_v010.svg");
    background-size: cover;
    background-position: bottom left;
    -webkit-transition: opacity 2s;
    -o-transition: opacity 2s;
    transition: opacity 2s;
  }
  .fully-hero__scene--4_2 {
    bottom: 0;
    left: 38%;
    width: 13%;
    height: 23%;
    -webkit-transition: opacity 2s;
    -o-transition: opacity 2s;
    transition: opacity 2s;
  }
  .fully-hero__scene--5 {
    top: 35.2%;
    left: calc(24.8% + 8.75vh);
    right: calc(41.3% + 8.75vh);
    height: 30.5%;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(#f2b090),
      to(#f07991)
    );
    background: -o-linear-gradient(top, #f2b090, #f07991);
    background: linear-gradient(180deg, #f2b090, #f07991);
    background-color: #f2b090;
  }
  .fully-hero__scene--5 svg,
  .fully-hero__scene--5 canvas {
    position: relative;
    z-index: 1;
  }
  .fully-hero__scene--5:after {
    content: "";
    opacity: 0;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(#9c0e73),
      to(#cf2b70)
    );
    background: -o-linear-gradient(top, #9c0e73, #cf2b70);
    background: linear-gradient(180deg, #9c0e73, #cf2b70);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: opacity 3s;
    -o-transition: opacity 3s;
    transition: opacity 3s;
  }
  .fully-hero__scene--5:hover:after {
    opacity: 1;
  }
  .fully-hero__scene--6 {
    width: 41.4332%;
    height: 40%;
    bottom: 0;
    right: 0;
    background-color: #ca1d5a;
  }
  .fully-hero.fallback {
    background-color: #5f11e8;
  }
  .navigation__list:hover + .fully-hero .fully-hero__scene--4_bg {
    opacity: 0;
  }
  .navigation__list:hover + .fully-hero .fully-hero__scene--4_2 {
    opacity: 0.5;
  }
}
.fully-hero .fully-hero__scene.fallback {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.fully-hero .fully-hero__scene--1.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene1.svg);
  background-position: bottom right;
}
.fully-hero .fully-hero__scene--2.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene2.svg);
  background-position: bottom center;
}
.fully-hero .fully-hero__scene--3.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene3.svg);
  background-position: bottom left;
}
.fully-hero .fully-hero__scene--4_2.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene4_2.svg);
}
.fully-hero .fully-hero__scene--5.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene5.svg);
}
.fully-hero .fully-hero__scene--5.fallback:hover:after {
  opacity: 0;
}
.fully-hero .fully-hero__scene--6.fallback {
  background-image: url(../../assets/news/fully-hero/fallback-scene6.svg);
  background-position: bottom left;
}
.navigation__list:hover + .fully-hero .fully-hero__scene--4_bg.fallback,
.navigation__list:hover + .fully-hero .fully-hero__scene--4_2.fallback {
  opacity: 1;
}
@media (max-aspect-ratio: 1/1) {
  .three-houses .scene1 svg g:first-of-type {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: translate(0, 10%) scale(0.9);
    -ms-transform: translate(0, 10%) scale(0.9);
    transform: translate(0, 10%) scale(0.9);
  }
}
@media (max-aspect-ratio: 1/1) {
  .three-houses .scene2 svg g:first-of-type {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: translate(-4%, 4%) scale(0.9);
    -ms-transform: translate(-4%, 4%) scale(0.9);
    transform: translate(-4%, 4%) scale(0.9);
  }
}
@media (max-aspect-ratio: 1/1) {
  .three-houses .scene3 svg g:first-of-type {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: translate(-5%, -5%) scale(0.9);
    -ms-transform: translate(-5%, -5%) scale(0.9);
    transform: translate(-5%, -5%) scale(0.9);
  }
}
.lottie-scenes__scene canvas,
.lottie-scenes__scene svg {
  opacity: 0;
}
.lottie-scenes__scene.loaded canvas,
.lottie-scenes__scene.loaded svg {
  -webkit-animation: fadeIn 0.6s linear forwards;
  animation: fadeIn 0.6s linear forwards;
}
.lottie-scenes {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: transparent;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.lottie-scenes__scene {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.lottie-scenes.fallback {
  background-color: #5f11e8;
}
.lottie-scenes__image--xMinYMin {
  background-size: auto 100%;
  background-position: 0 0;
}
@media (min-aspect-ratio: 8/9) {
  .lottie-scenes__image--xMinYMin {
    background-size: 100% auto;
  }
}
.lottie-scenes__mall {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top left;
  object-position: top left;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0.5;
}
.lottie-scenes .lottie-scenes__scene.fallback {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.fa-bg {
  background-color: #1a0f2f;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#b913d4),
    to(#c347ae)
  );
  background: -o-linear-gradient(top, #b913d4, #c347ae);
  background: linear-gradient(to bottom, #b913d4, #c347ae);
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.fa-bg__gt {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#1a0f2f),
    color-stop(20%, rgba(26, 15, 47, 0.8)),
    to(rgba(26, 15, 47, 0))
  );
  background: -o-linear-gradient(
    top,
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.8) 20%,
    rgba(26, 15, 47, 0) 100%
  );
  background: linear-gradient(
    to bottom,
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.8) 20%,
    rgba(26, 15, 47, 0) 100%
  );
  z-index: 3;
  opacity: 1;
}
.fa-bg__stars {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
}
.fa-bg__cg1 {
  width: 60vw;
  height: 60vw;
  position: absolute;
  top: -10vw;
  left: 0;
  background: -o-radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  background: radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  -webkit-animation: move_cg1 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite
    alternate;
  animation: move_cg1 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite alternate;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
@-webkit-keyframes move_cg1 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 0.8;
  }
  20% {
    -webkit-transform: translate3d(10vw, -4vw, 0) scale(0.9);
    transform: translate3d(10vw, -4vw, 0) scale(0.9);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(0, 4vw, 0) scale(1.1);
    transform: translate3d(0, 4vw, 0) scale(1.1);
    opacity: 0.2;
  }
  100% {
    -webkit-transform: translate3d(50vw, 10vw, 0) scale(2, 1.3);
    transform: translate3d(50vw, 10vw, 0) scale(2, 1.3);
    opacity: 1;
  }
}
@keyframes move_cg1 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 0.8;
  }
  20% {
    -webkit-transform: translate3d(10vw, -4vw, 0) scale(0.9);
    transform: translate3d(10vw, -4vw, 0) scale(0.9);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(0, 4vw, 0) scale(1.1);
    transform: translate3d(0, 4vw, 0) scale(1.1);
    opacity: 0.2;
  }
  100% {
    -webkit-transform: translate3d(50vw, 10vw, 0) scale(2, 1.3);
    transform: translate3d(50vw, 10vw, 0) scale(2, 1.3);
    opacity: 1;
  }
}
.fa-bg__cg2 {
  width: 60vw;
  height: 60vw;
  position: absolute;
  top: -10vw;
  right: -0;
  background: -o-radial-gradient(
    rgba(85, 36, 171, 0.8) 0%,
    rgba(85, 36, 171, 0) 70%
  );
  background: radial-gradient(
    rgba(85, 36, 171, 0.8) 0%,
    rgba(85, 36, 171, 0) 70%
  );
  -webkit-animation: move_cg2 10s cubic-bezier(0.51, 0.01, 0.3, 1.01) infinite
    alternate;
  animation: move_cg2 10s cubic-bezier(0.51, 0.01, 0.3, 1.01) infinite alternate;
}
@-webkit-keyframes move_cg2 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(-20vw, 10vw, 0) scale(3, 1);
    transform: translate3d(-20vw, 10vw, 0) scale(3, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate3d(-10vw, -5vw, 0) scale(1, 1);
    transform: translate3d(-10vw, -5vw, 0) scale(1, 1);
    opacity: 0.7;
  }
}
@keyframes move_cg2 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(-20vw, 10vw, 0) scale(3, 1);
    transform: translate3d(-20vw, 10vw, 0) scale(3, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: translate3d(-10vw, -5vw, 0) scale(1, 1);
    transform: translate3d(-10vw, -5vw, 0) scale(1, 1);
    opacity: 0.7;
  }
}
.fa-bg__cg3 {
  width: 60vw;
  height: 60vw;
  position: absolute;
  top: -20vw;
  right: 0;
  background: -o-radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  background: radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  -webkit-animation: move_cg3 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite
    alternate;
  animation: move_cg3 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite alternate;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
@-webkit-keyframes move_cg3 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 0.8;
  }
  20% {
    -webkit-transform: translate3d(-10vw, 4vw, 0) scale(2, 0.9);
    transform: translate3d(-10vw, 4vw, 0) scale(2, 0.9);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(0, 20vw, 0) scale(1.1);
    transform: translate3d(0, 20vw, 0) scale(1.1);
    opacity: 0.2;
  }
  100% {
    -webkit-transform: translate3d(10vw, -10vw, 0) scale(1, 1.3);
    transform: translate3d(10vw, -10vw, 0) scale(1, 1.3);
    opacity: 1;
  }
}
@keyframes move_cg3 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale(1.5, 1);
    transform: translate3d(0, 0, 0) scale(1.5, 1);
    opacity: 0.8;
  }
  20% {
    -webkit-transform: translate3d(-10vw, 4vw, 0) scale(2, 0.9);
    transform: translate3d(-10vw, 4vw, 0) scale(2, 0.9);
    opacity: 1;
  }
  50% {
    -webkit-transform: translate3d(0, 20vw, 0) scale(1.1);
    transform: translate3d(0, 20vw, 0) scale(1.1);
    opacity: 0.2;
  }
  100% {
    -webkit-transform: translate3d(10vw, -10vw, 0) scale(1, 1.3);
    transform: translate3d(10vw, -10vw, 0) scale(1, 1.3);
    opacity: 1;
  }
}
.fa-bg__cg4 {
  width: 120vw;
  height: 60vw;
  position: absolute;
  bottom: -20vw;
  left: -40vw;
  background: -o-radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  background: radial-gradient(
    #1a0f2f 0%,
    rgba(26, 15, 47, 0.7) 30%,
    rgba(26, 15, 47, 0) 70%
  );
  -webkit-animation: move_cg1 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite
    alternate;
  animation: move_cg1 12s cubic-bezier(0.35, 0.01, 0.71, 1) infinite alternate;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}
.hover-image img:nth-child(1) {
  opacity: 1;
}
.hover-image img:nth-child(2) {
  opacity: 0;
}

.hover-image:hover img:nth-child(1) {
  opacity: 0;
}
.hover-image:hover img:nth-child(2) {
  opacity: 1;
}
