/**
 * @license
 * MyFonts Webfont Build ID 2950651, 2015-01-10T11:01:23-0500
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: LinotypeUnivers-430Regular by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/univers-lt/com-430-basic-regular/
 * Copyright: Copyright &#x00A9; 2005 - 2009 Linotype GmbH, www.linotype.com. All rights reserved. This font software may not be reproduced, modified, disclosed or transferred without the express written approval of Linotype GmbH. Univers is a trademark of Linotype Cor
 * Licensed pageviews: 250,000
 * 
 * 
 * License: http://www.myfonts.com/viewlicense?type=web&buildid=2950651
 * 
 * (c) 2015 MyFonts Inc
*/
/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/2d05fb");
@font-face {
  font-family: 'LinotypeUnivers-430Regular';
  src: url("../assets/fonts/univers/2D05FB_0_0.eot");
  src: url("../assets/fonts/univers/2D05FB_0_0.eot?#iefix") format("embedded-opentype"), url("../assets/fonts/univers/2D05FB_0_0.woff2") format("woff2"), url("../assets/fonts/univers/2D05FB_0_0.woff") format("woff"), url("../assets/fonts/univers/2D05FB_0_0.ttf") format("truetype"); }

/* @include box-shadow(1px,1px,1px,0, #fff, true); */
/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT
Copyright (c) 2015 Daniel Eden
*/
body {
  -webkit-backface-visibility: hidden; }

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }
  .animated.infinite {
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite; }
  .animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s; }
  .animated.bounceIn, .animated.bounceOut {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s; }
  .animated.flipOutX, .animated.flipOutY {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s; }

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

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

body {
  font-family: "LinotypeUnivers-430Regular", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
  font-size: 43px;
  line-height: 1.2;
  color: #0f1521; }
  @media only screen and (max-width: 1024px) {
    body {
      font-size: 37px; } }
  @media only screen and (max-width: 550px) {
    body {
      font-size: 26px; } }
h1, h2 {
  font-size: 110px;
  line-height: 1.2; }
  @media only screen and (max-width: 1024px) {
    h1, h2 {
      font-size: 61px; } }
  @media only screen and (max-width: 550px) {
    h1, h2 {
      font-size: 33px; } }
p {
  font-family: "LinotypeUnivers-430Regular", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
  font-size: 43px;
  line-height: 1.2;
  margin-bottom: 51.6px;
  color: #0f1521; }
  @media only screen and (max-width: 1024px) {
    p {
      font-size: 37px;
      margin-bottom: 44.4px; } }
  @media only screen and (max-width: 550px) {
    p {
      font-size: 26px;
      margin-bottom: 31.2px; } }
  p.no-margin {
    margin-bottom: 0px; }
  p strong {
    font-family: "LinotypeUnivers-430Regular", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif; }

a {
  color: #0f1521;
  text-decoration: none; }
  a:hover {
    opacity: 0.7; }

* {
  box-sizing: border-box; }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  body #wrap {
    max-width: 100%; }

.clear {
  clear: both; }

.base-layout::after {
  clear: both;
  content: "";
  display: block; }

.base-layout.collapse {
  margin-left: -24px;
  margin-right: -24px;
  width: calc(100% + 48px); }
  @media (max-width: 1024px) {
    .base-layout.collapse {
      margin-left: -18px;
      margin-right: -18px;
      width: calc(100% + 36px); } }
.base-layout__sidebar {
  width: calc(25% - 30px);
  float: left;
  margin-left: 24px; }
  @media (max-width: 1024px) {
    .base-layout__sidebar {
      width: calc(100% - 36px);
      float: left;
      margin-left: 18px; } }
  @media only screen and (max-width: 1024px) {
    .base-layout__sidebar.push {
      display: none; } }
.base-layout__main {
  width: calc(66.6666666667% - 40px);
  float: left;
  margin-left: 24px; }
  @media (max-width: 1024px) {
    .base-layout__main {
      width: calc(100% - 36px);
      float: left;
      margin-left: 18px; } }
.base-layout__nav-item {
  width: calc(16.6666666667% - 28px);
  float: left;
  margin-left: 24px; }

.row2col-layout::after {
  clear: both;
  content: "";
  display: block; }

.row2col-layout__item {
  width: calc(100% - 48px);
  float: left;
  margin-left: 24px; }
  @media (max-width: 1024px) {
    .row2col-layout__item {
      width: calc(50% - 27px);
      float: left;
      margin-left: 18px; } }
  @media (max-width: 550px) {
    .row2col-layout__item {
      width: calc(100% - 36px);
      float: left;
      margin-left: 18px; } }
.two-col-layout {
  margin-left: -24px;
  margin-right: -24px;
  width: calc(100% + 48px); }
  .two-col-layout::after {
    clear: both;
    content: "";
    display: block; }
  @media (max-width: 1024px) {
    .two-col-layout {
      margin-left: -18px;
      margin-right: -18px;
      width: calc(100% + 36px); } }
.two-col-layout__column {
  width: calc(50% - 36px);
  float: left;
  margin-left: 24px; }
  @media (max-width: 1024px) {
    .two-col-layout__column {
      width: calc(100% - 36px);
      float: left;
      margin-left: 18px; } }
header {
  position: fixed;
  z-index: 100;
  left: 0;
  right: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-top: 18px;
  padding-left: 24px;
  padding-right: 24px; }
  @media only screen and (max-width: 1024px) {
    header {
      padding-top: 13px;
      padding-left: 18px;
      padding-right: 18px; } }
  header .logo {
    font-size: 18px;
    line-height: 1.5; }
    header .logo.secondary-logo .becker {
      margin-right: 28px; }
      @media only screen and (max-width: 550px) {
        header .logo.secondary-logo .becker {
          margin-right: 0px; } }
    header .logo.secondary-logo a {
      opacity: 0.5; }
      header .logo.secondary-logo a:hover {
        opacity: 1.0; }
    header .logo a {
      color: #ffffff; }
      header .logo a:hover {
        opacity: 0.5; }

.section-wrapper section {
  min-height: calc(var(--vh) * 100); }
  .section-wrapper section .content-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: calc(var(--vh) * 100);
    padding-top: 170px;
    padding-bottom: 15px;
    padding-left: 24px;
    padding-right: 24px; }
    @media only screen and (max-width: 1024px) {
      .section-wrapper section .content-wrapper {
        padding-bottom: 12px;
        padding-left: 18px;
        padding-right: 18px; } }
    @media only screen and (max-width: 550px) {
      .section-wrapper section .content-wrapper {
        padding-top: 130px; } }
    .section-wrapper section .content-wrapper h1, .section-wrapper section .content-wrapper h2 {
      max-width: 1920px; }
    .section-wrapper section .content-wrapper .footer {
      padding-top: 50px; }
      .section-wrapper section .content-wrapper .footer p {
        margin: 0; }
        .section-wrapper section .content-wrapper .footer p a {
          font-size: 18px;
          line-height: 1.5;
          color: #ffffff; }
          .section-wrapper section .content-wrapper .footer p a:hover {
            opacity: 0.5; }

.section-wrapper .introduction-section {
  background-color: #00dcb2;
  display: flex;
  flex-direction: column;
  min-height: calc(calc(var(--vh) * 100) - 135px); }
  @media only screen and (max-width: 1024px) {
    .section-wrapper .introduction-section {
      min-height: calc(calc(var(--vh) * 100) - 120px); } }
  @media only screen and (max-width: 550px) {
    .section-wrapper .introduction-section {
      min-height: calc(calc(var(--vh) * 100) - 80px); } }
  .section-wrapper .introduction-section .content-wrapper {
    position: relative;
    min-height: calc(calc(var(--vh) * 100) - 135px); }
    @media only screen and (max-width: 1024px) {
      .section-wrapper .introduction-section .content-wrapper {
        min-height: calc(calc(var(--vh) * 100) - 120px); } }
    @media only screen and (max-width: 550px) {
      .section-wrapper .introduction-section .content-wrapper {
        min-height: calc(calc(var(--vh) * 100) - 80px); } }
    .section-wrapper .introduction-section .content-wrapper h1 {
      color: #0f1521;
      padding-bottom: 60px; }
      @media only screen and (max-width: 550px) {
        .section-wrapper .introduction-section .content-wrapper h1 {
          padding-bottom: 20px; } }
    .section-wrapper .introduction-section .content-wrapper .scroll-down {
      display: block;
      position: absolute;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: 28px;
      left: 50%;
      width: 86px;
      height: 120px;
      cursor: pointer; }
      @media only screen and (max-width: 1024px) {
        .section-wrapper .introduction-section .content-wrapper .scroll-down {
          bottom: 24px;
          width: 75px;
          height: 104px; } }
      @media only screen and (max-width: 550px) {
        .section-wrapper .introduction-section .content-wrapper .scroll-down {
          bottom: 20px;
          width: 46px;
          height: 64px; } }
.section-wrapper .project-section {
  background-color: #a0a0a0;
  position: relative;
  overflow: hidden; }
  .section-wrapper .project-section .content-wrapper {
    position: relative;
    z-index: 10; }
    .section-wrapper .project-section .content-wrapper h2 {
      color: #ffffff;
      opacity: 0.7;
      transition: opacity 1s ease-in-out 0s; }
  .section-wrapper .project-section .video-overlay {
    position: absolute;
    z-index: 5;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: #0f1521;
    opacity: 0.8;
    transition: opacity 1s ease-in-out 0s; }
  .section-wrapper .project-section.active .content-wrapper h2 {
    opacity: 0.0;
    transition: opacity 2s ease-in-out 6s; }
  .section-wrapper .project-section.active .video-overlay {
    opacity: 0.0;
    transition: opacity 5s ease-in-out 0s; }
  .section-wrapper .project-section video {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 2560px;
    height: 1440px; }

.info-overlay {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  background-color: #0f1521;
  z-index: 100; }
  .info-overlay .info-content-wrapper {
    padding-top: 18px;
    padding-left: 24px;
    padding-right: 60px;
    padding-bottom: 24px; }
    @media only screen and (max-width: 1024px) {
      .info-overlay .info-content-wrapper {
        padding-top: 13px;
        padding-left: 18px;
        padding-right: 45px;
        padding-bottom: 18px; } }
    @media only screen and (max-width: 550px) {
      .info-overlay .info-content-wrapper {
        padding-top: 18px; } }
    .info-overlay .info-content-wrapper .info-content {
      display: flex; }
      @media only screen and (max-width: 1560px) {
        .info-overlay .info-content-wrapper .info-content {
          flex-direction: column; } }
      @media only screen and (max-width: 414px) {
        .info-overlay .info-content-wrapper .info-content p {
          font-size: 22px;
          margin-bottom: 26.4px; } }
      .info-overlay .info-content-wrapper .info-content .contact {
        width: 630px;
        flex: 0 0 auto;
        padding-right: 24px;
        margin-bottom: 110px; }
        @media only screen and (max-width: 1560px) {
          .info-overlay .info-content-wrapper .info-content .contact {
            width: auto; } }
        @media only screen and (max-width: 550px) {
          .info-overlay .info-content-wrapper .info-content .contact {
            margin-bottom: 70px; } }
        .info-overlay .info-content-wrapper .info-content .contact p {
          color: #00dcb2; }
          .info-overlay .info-content-wrapper .info-content .contact p a {
            color: #00dcb2; }
      .info-overlay .info-content-wrapper .info-content .info-text {
        flex: 1 1 auto; }
        .info-overlay .info-content-wrapper .info-content .info-text p {
          color: #ffffff; }
          .info-overlay .info-content-wrapper .info-content .info-text p:last-of-type {
            margin-bottom: 2px; }
  .info-overlay .overlay-close {
    position: fixed;
    right: 25px;
    top: 25px;
    z-index: 100;
    cursor: pointer; }
    @media only screen and (max-width: 1024px) {
      .info-overlay .overlay-close {
        right: 18px;
        top: 18px; } }
    @media only screen and (max-width: 550px) {
      .info-overlay .overlay-close {
        right: 17px;
        top: 17px; } }
    .info-overlay .overlay-close img {
      display: block;
      width: 31px;
      height: 31px; }
      @media only screen and (max-width: 1024px) {
        .info-overlay .overlay-close img {
          width: 28px;
          height: 28px; } }
      @media only screen and (max-width: 550px) {
        .info-overlay .overlay-close img {
          width: 20px;
          height: 20px; } }
.info-open .info-overlay {
  display: block; }
