@charset "UTF-8";
html {
  box-sizing: border-box; }

*, *::after, *::before {
  box-sizing: inherit; }

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none; }

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/*
 * Ideal Image Slider v1.5.1
 *
 * By Gilbert Pellegrom
 * http://gilbert.pellegrom.me
 *
 * Copyright (C) 2014 Dev7studios
 * https://raw.githubusercontent.com/gilbitron/Ideal-Image-Slider/master/LICENSE
 */
.ideal-image-slider {
  position: relative;
  overflow: hidden; }

.iis-slide {
  display: block;
  bottom: 0;
  text-decoration: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  text-indent: -9999px; }

/* Slide effect */
.iis-effect-slide .iis-slide {
  opacity: 0;
  transition-property: transform;
  transition-timing-function: ease-out;
  transform: translateX(0%); }

.iis-effect-slide .iis-current-slide {
  opacity: 1;
  z-index: 1; }

.iis-effect-slide .iis-previous-slide {
  transform: translateX(-100%); }

.iis-effect-slide .iis-next-slide {
  transform: translateX(100%); }

.iis-effect-slide.iis-direction-next .iis-previous-slide,
.iis-effect-slide.iis-direction-previous .iis-next-slide {
  opacity: 1; }

/* Touch styles */
.iis-touch-enabled .iis-slide {
  z-index: 1; }

.iis-touch-enabled .iis-current-slide {
  z-index: 2; }

.iis-touch-enabled.iis-is-touching .iis-previous-slide,
.iis-touch-enabled.iis-is-touching .iis-next-slide {
  opacity: 1; }

/* Fade effect */
.iis-effect-fade .iis-slide {
  transition-property: opacity;
  transition-timing-function: ease-in;
  opacity: 0; }

.iis-effect-fade .iis-current-slide {
  opacity: 1;
  z-index: 1; }

/*
 * Ideal Image Slider Default Theme
 * Version: 1.2.0
 */
.ideal-image-slider {
  background-color: #fff;
  background-image: url("data:image/gif;base64,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");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 32px 32px; }

/* Navigation */
.iis-previous-nav,
.iis-next-nav {
  position: absolute;
  top: 50%;
  z-index: 20;
  display: block;
  width: 60px;
  height: 60px;
  text-indent: -9999px;
  background-repeat: no-repeat;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50px;
  background-size: 48px 48px;
  cursor: pointer;
  opacity: 0;
  transform: translateY(-50%);
  transition: 0.3s ease-out; }

.iis-previous-nav {
  left: 5%;
  background-position: 35% 50%;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPHBvbHlnb24gZmlsbD0iI2ZmZmZmZiIgaWQ9InN2Z18xIiBwb2ludHM9IjM1MiwxMTUuNCAzMzEuMyw5NiAxNjAsMjU2IDMzMS4zLDQxNiAzNTIsMzk2LjcgMjAxLjUsMjU2ICIvPgogPC9nPgo8L3N2Zz4="); }

.iis-next-nav {
  right: 5%;
  background-position: 65% 50%;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+Cjxzdmcgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiA8Zz4KICA8dGl0bGU+TGF5ZXIgMTwvdGl0bGU+CiAgPHBvbHlnb24gZmlsbD0iI2ZmZmZmZiIgaWQ9InN2Z18xIiBwb2ludHM9IjE2MCwxMTUuNCAxODAuNyw5NiAzNTIsMjU2IDE4MC43LDQxNiAxNjAsMzk2LjcgMzEwLjUsMjU2ICIvPgogPC9nPgo8L3N2Zz4="); }

.ideal-image-slider:hover .iis-previous-nav,
.ideal-image-slider:hover .iis-next-nav {
  opacity: 0.5; }

.ideal-image-slider:hover .iis-previous-nav:hover,
.ideal-image-slider:hover .iis-next-nav:hover {
  opacity: 1.0; }

/* Bullet Navigation */
.iis-bullet-nav {
  position: absolute;
  bottom: 5%;
  right: 5%;
  z-index: 15;
  width: 90%;
  text-align: right;
  opacity: 0.4;
  transition: 0.3s ease-out; }

.iis-has-captions .iis-bullet-nav {
  max-width: 42%; }

.iis-bullet-nav a {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: transparent;
  text-indent: 9999px;
  margin: 0 5px;
  border: 3px solid rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  cursor: pointer;
  transition: 0.3s ease-out; }

.iis-bullet-nav a.iis-bullet-active,
.iis-bullet-nav a:hover {
  background: #fff; }

.ideal-image-slider:hover .iis-bullet-nav {
  opacity: 0.7; }

.ideal-image-slider:hover .iis-bullet-nav:hover {
  opacity: 1.0; }

/* Captions */
.iis-has-captions .iis-slide {
  text-indent: 0; }

.iis-caption {
  position: absolute;
  left: 5%;
  bottom: 5%;
  max-width: 90%;
  z-index: 10;
  background: #000;
  background: rgba(0, 0, 0, 0.5);
  padding: 5px 15px;
  border-radius: 10px;
  font: 14px/1.6em "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #fff;
  box-sizing: border-box; }

.iis-has-bullet-nav .iis-caption {
  max-width: 42%; }

.iis-caption .iis-caption-title {
  font-weight: bold; }

.iis-caption .iis-caption-content {
  font-size: 13px;
  line-height: 1.6em;
  color: #eee; }

.iis-caption .iis-caption-content a,
.iis-caption .iis-caption-content a:visited {
  color: #eee;
  text-decoration: underline;
  border: 0; }

.iis-caption .iis-caption-content a:hover,
.iis-caption .iis-caption-content a:active {
  color: #fff; }

.ejs-video-title,
.ejs-video-desc,
.ejs-video-stats {
  font-size: 0; }

.ejs-video-player,
.ejs-embed {
  width: 100%;
  height: 100%; }

.ejs-thumb {
  width: 200px;
  height: 150px;
  background-size: cover; }

.fa-play-circle-o {
  font-style: normal;
  position: absolute;
  z-index: 10;
  margin-top: -105px;
  margin-left: 90px;
  font-size: 50px;
  color: white; }
  .fa-play-circle-o:before {
    content: '▶'; }

@font-face {
  font-family: 'work_sansbold';
  src: url("font/worksans-bold-webfont.html") format("woff2"), url("font/worksans-bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'work_sanslight';
  src: url("font/worksans-light-webfont.html") format("woff2"), url("font/worksans-light-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'work_sansregular';
  src: url("font/worksans-regular-webfont.html") format("woff2"), url("font/worksans-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'work_sansthin';
  src: url("font/worksans-thin-webfont.html") format("woff2"), url("font/worksans-thin-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'NexaBold';
  src: url("font/nexa_free_bold.eot");
  src: url("font/nexa_free_boldd41d.eot?#iefix") format("embedded-opentype"), url("font/nexa_free_bold.html") format("woff2"), url("font/nexa_free_bold.woff") format("woff"), url("font/nexa_free_bold-2.html") format("truetype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Nexa';
  src: url("font/nexa_free_light.eot");
  src: url("font/nexa_free_lightd41d.eot?#iefix") format("embedded-opentype"), url("font/nexa_free_light.html") format("woff2"), url("font/nexa_free_light.woff") format("woff"), url("font/nexa_free_light-2.html") format("truetype");
  font-weight: normal;
  font-style: normal; }

body {
  font-family: "work_sanslight", sans-serif;
  font-size: 16px;
  color: #343838; }

a,
a:link,
a:visited {
  color: currentColor;
  text-decoration: none; }

h1 {
  font-family: "NexaBold"; }

header {
  background-color: #068C9E;
  background: linear-gradient(81deg, #068C9E, #0AB3CB);
  background-size: 400% 400%;
  animation: headerAnim 30s ease infinite; }

@keyframes headerAnim {
  0% {
    background-position: 0% 77%; }
  50% {
    background-position: 100% 24%; }
  100% {
    background-position: 0% 77%; } }

@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in; }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg); }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    transform: perspective(400px);
    opacity: 1; } }

section {
  width: 50vw;
  min-width: 1000px;
  margin: 0 auto;
  padding: 10px 0; }
  @media screen and (max-width: 900px) {
    section {
      min-width: 0px;
      width: 100vw; } }

section > h1 {
  text-align: center;
  text-transform: uppercase;
  margin: 0; }

.analytics {
  position: fixed;
  bottom: 0;
  width: 0;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.8);
  color: white;
  overflow: hidden;
  transition: 0.4s all;
  text-align: center; }
  .analytics button {
    display: inline-block;
    padding: 3px;
    margin: 3px;
    min-height: 20px; }
  .analytics.open {
    width: 100%; }

/* Bounce To Right */
button {
  background: transparent;
  border: 2px solid white;
  color: white;
  display: inline-block;
  vertical-align: middle;
  transform: translateZ(0);
  box-shadow: 0 0 1px transparent;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  transition: 0.5s all;
  min-width: 150px;
  min-height: 50px;
  text-align: center;
  text-transform: uppercase;
  font-family: "NexaBold";
  cursor: pointer;
  padding: 0 50px; }
  button.dark {
    color: #068C9E;
    border-color: #068C9E; }

button:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #068C9E;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-out; }

button:hover, button:focus, button:active {
  color: white;
  border-width: 5px; }

button:hover:before, button:focus:before, button:active:before {
  transform: scaleX(1);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

ul.menu {
  margin: 0;
  padding: 10px;
  list-style-type: none;
  font-family: "work_sansthin";
  text-align: center; }
  @media screen and (max-width: 600px) {
    ul.menu {
      font-size: 0; } }
  ul.menu li {
    padding: 0 15px;
    display: inline-block;
    text-align: center;
    text-transform: uppercase;
    color: white;
    border-bottom: 0 solid rgba(255, 255, 255, 0);
    transition: 0.4s all; }
    ul.menu li:hover {
      border-bottom: 1px solid white; }

ul.mobileMenu {
  display: none; }
  @media screen and (max-width: 640px) {
    ul.mobileMenu {
      display: block;
      z-index: 100;
      margin: 0;
      padding: 0;
      width: 100vw;
      height: 0vh; }
      ul.mobileMenu:before {
        content: 'MENU';
        font-size: 15px;
        color: white;
        padding: 5px; }
      ul.mobileMenu li {
        display: none; }
      ul.mobileMenu.expanded {
        position: fixed;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, 0.9);
        height: 100vh; }
        ul.mobileMenu.expanded:before {
          content: '×';
          font-weight: 900;
          font-size: 50px; }
        ul.mobileMenu.expanded li {
          display: block;
          text-align: center;
          font-family: "NexaBold";
          font-size: 30px;
          color: white;
          margin: 30px; } }

.gallery {
  position: relative;
  flex: 1;
  max-width: 500px;
  z-index: 1;
  height: 300px; }
  @media screen and (max-width: 600px) {
    .gallery {
      width: 100%;
      max-width: none; } }
  .gallery img {
    max-height: 250px;
    margin: 0 auto;
    display: block; }
  .gallery .ideal-image-slider {
    margin-left: 25px; }
    .gallery .ideal-image-slider a {
      background-size: contain; }
  .gallery .title {
    position: absolute;
    left: 0px;
    writing-mode: vertical-rl;
    text-transform: uppercase;
    display: block;
    color: #55C8E7;
    font-weight: 100; }
    @media screen and (max-width: 600px) {
      .gallery .title {
        margin: 0; } }

header {
  position: relative;
  height: 40vh;
  max-height: 432px;
  margin-bottom: 30px; }
  @media screen and (max-width: 640px) {
    header {
      height: 90vh;
      max-height: auto;
      position: inherit; } }
  @media screen and (max-width: 550px) {
    header {
      height: 90vh;
      max-height: auto; } }
  @media screen and (max-width: 1400px) {
    header {
      min-height: 500px; } }
  header.small {
    height: 15vh;
    min-height: 150px; }
  header .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: calc(100% - 40px); }
  header * {
    position: relative;
    z-index: 1; }
  header img.logo {
    display: block;
    width: 50vw; }
    @media screen and (max-width: 1023px) {
      header img.logo {
        width: 70vw; } }
    @media screen and (max-width: 550px) {
      header img.logo {
        width: 90vw; } }
  header div.particles {
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    z-index: 0; }
  header div.links,
  header div.register {
    display: flex;
    justify-content: space-between;
    width: 35vw;
    margin: 10px auto; }
    @media screen and (max-width: 1024px) {
      header div.links,
      header div.register {
        width: 50vw; } }
    @media screen and (max-width: 640px) {
      header div.links,
      header div.register {
        width: 95vw;
        justify-content: center; } }
    @media screen and (max-width: 400px) {
      header div.links,
      header div.register {
        flex-wrap: wrap; } }
    header div.links a,
    header div.register a {
      color: white;
      position: relative;
      transition: 0.5s all;
      transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
      opacity: 0;
      margin: 5px;
      animation-name: flipInX;
      animation-fill-mode: forwards; }
      @media screen and (max-width: 360px) {
        header div.links a,
        header div.register a {
          width: calc(100%/4); } }
      header div.links a:nth-child(0),
      header div.register a:nth-child(0) {
        animation-delay: 0s;
        animation-duration: 0s; }
      header div.links a:nth-child(1),
      header div.register a:nth-child(1) {
        animation-delay: 0.1s;
        animation-duration: 0.5s; }
      header div.links a:nth-child(2),
      header div.register a:nth-child(2) {
        animation-delay: 0.2s;
        animation-duration: 1s; }
      header div.links a:nth-child(3),
      header div.register a:nth-child(3) {
        animation-delay: 0.3s;
        animation-duration: 1.5s; }
      header div.links a:nth-child(4),
      header div.register a:nth-child(4) {
        animation-delay: 0.4s;
        animation-duration: 2s; }
      header div.links a:nth-child(5),
      header div.register a:nth-child(5) {
        animation-delay: 0.5s;
        animation-duration: 2.5s; }
      header div.links a:before,
      header div.register a:before {
        content: attr(data-title);
        display: block;
        text-align: center;
        font-family: "Nexa";
        font-size: 16px; }
      header div.links a:after,
      header div.register a:after {
        content: '';
        display: block;
        background-color: white;
        height: 1px;
        width: 0%;
        margin: 0 auto;
        transition: 0.5s all; }
      header div.links a:hover,
      header div.register a:hover {
        transform: scale(1.1); }
        header div.links a:hover:after,
        header div.register a:hover:after {
          width: 100%; }
    header div.links img,
    header div.register img {
      height: 70px; }
      @media screen and (max-width: 640px) {
        header div.links img,
        header div.register img {
          height: 45px;
          display: block;
          margin: 0 auto; } }
  header div.register {
    margin-top: 50px;
    justify-content: center; }

section.footer {
  position: relative;
  height: 60px;
  overflow: hidden;
  width: 100%;
  background-color: #068C9E; }
  section.footer div {
    position: absolute;
    top: -30px;
    left: 0;
    z-index: 0;
    width: 100%; }
  section.footer img {
    position: relative;
    z-index: 1;
    width: 20vw;
    margin: 0 auto;
    display: block; }
    @media screen and (max-width: 1024px) {
      section.footer img {
        width: 90vw; } }
  @media screen and (max-width: 1024px) {
    section.footer .particles {
      opacity: 0.2; } }

header.small > div {
  display: flex;
  width: 100%;
  padding: 0 15px;
  justify-content: space-between;
  align-items: center; }
  @media screen and (max-width: 600px) {
    header.small > div {
      flex-direction: column; } }
  header.small > div img {
    height: 40px;
    margin: 30px 0; }
    @media screen and (max-width: 640px) {
      header.small > div img {
        margin: 60px 0; } }
    @media screen and (max-width: 600px) {
      header.small > div img {
        height: auto;
        width: 90vw;
        margin: 60px 0 0 0;
        vertical-align: top; } }
  header.small > div h1 {
    color: white;
    font-family: "work_sansthin"; }

@media screen and (max-width: 600px) {
  header.small {
    min-height: 200px; }
    header.small .particles {
      display: none; } }

.switch {
  width: 100%;
  color: white;
  text-align: center;
  background-color: #068C9E; }
  .switch .value {
    height: 50px;
    min-width: 200px;
    line-height: 50px;
    text-align: center;
    text-transform: uppercase;
    font-family: "NexaBold";
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    background-color: #068C9E;
    transition: 0.4s all; }
    @media screen and (max-width: 500px) {
      .switch .value {
        font-size: 14px;
        min-width: calc(100%/3); } }
    .switch .value:hover, .switch .value.selected {
      background-color: #55C8E7; }
    .switch .value.hidden {
      display: none; }

.mentorsContainer {
  width: 100%;
  text-align: center; }
  .mentorsContainer .mentor {
    display: inline-block;
    vertical-align: top;
    background-image: url("../img/assets/defaultMentor.png");
    background-size: cover;
    background-position: center;
    max-height: 200px;
    width: 200px;
    transition: 1s all; }
    @media screen and (max-width: 900px) {
      .mentorsContainer .mentor {
        min-height: 250px;
        max-height: 300px; } }
    .mentorsContainer .mentor.hidden {
      display: none; }
    .mentorsContainer .mentor:hover {
      max-height: 300px;
      cursor: pointer; }
      .mentorsContainer .mentor:hover .title {
        max-height: 150px;
        margin-top: -6px; }
    .mentorsContainer .mentor .img {
      height: 200px;
      width: 200px;
      background-size: cover;
      background-position: center; }
    .mentorsContainer .mentor .title {
      overflow: hidden;
      max-height: 0px;
      width: 100%;
      background-color: #068C9E;
      transition: 1s all; }
      @media screen and (max-width: 900px) {
        .mentorsContainer .mentor .title {
          max-height: 150px;
          height: 60px;
          padding: 5px;
          box-sizing: border-box; }
          .mentorsContainer .mentor .title h1,
          .mentorsContainer .mentor .title h2 {
            font-size: 12px; } }
      .mentorsContainer .mentor .title h1,
      .mentorsContainer .mentor .title h2 {
        text-align: center;
        bottom: 0;
        color: white;
        margin: 0;
        padding: 0;
        font-size: 14px;
        font-family: "work_sansregular"; }
      .mentorsContainer .mentor .title h2 {
        font-family: "work_sansthin"; }

.mediaEntry {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 30px 0;
  width: 100%; }
  .mediaEntry .title,
  .mediaEntry .info {
    padding: 5px;
    height: calc(100% - 250px);
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap; }
  .mediaEntry .info {
    height: auto;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: auto;
    margin-left: auto; }
    @media screen and (max-width: 900px) {
      .mediaEntry .info {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%; } }
  .mediaEntry h1,
  .mediaEntry h2 {
    font-family: "work_sansthin";
    font-size: 18px; }
  .mediaEntry h1 {
    width: 100%;
    font-size: 26px; }
  .mediaEntry h2 {
    font-family: "NexaBold";
    font-size: 16px;
    text-transform: uppercase; }
  .mediaEntry button {
    width: 150px;
    height: 40px;
    font-size: 16px;
    padding: 0;
    min-width: 0;
    min-height: 0;
    color: #068C9E;
    border-color: #068C9E;
    margin-left: 10px; }
    .mediaEntry button:hover {
      color: white; }

.registrationModal {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  transition: 0.4s height;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.6); }
  .registrationModal.open {
    height: 100%; }
  .registrationModal .content {
    position: absolute;
    margin: 0 auto;
    top: 25%;
    left: 13%;
    width: 75%;
    text-align: center;
    background-color: white; }
    @media screen and (max-width: 1024px) {
      .registrationModal .content {
        width: 100%;
        left: 0;
        top: 15%;
        padding-bottom: 15px;
        max-height: 70%;
        overflow-y: auto; } }
    .registrationModal .content .buttons {
      width: 100%;
      text-align: center; }
      .registrationModal .content .buttons button {
        display: inline-block;
        vertical-align: top;
        margin: 5px; }
        @media screen and (max-width: 1024px) {
          .registrationModal .content .buttons button {
            width: 50%; } }
        @media screen and (max-width: 768px) {
          .registrationModal .content .buttons button {
            width: 95%; } }

section.usps h1,
section.usps h2 {
  margin: 0;
  text-align: center; }

section.usps h1 {
  text-transform: uppercase; }

section.usps .container {
  display: flex;
  justify-content: space-around;
  align-items: flex-end;
  width: 50vw;
  min-width: 1000px;
  margin: 23px auto; }
  @media screen and (max-width: 900px) {
    section.usps .container {
      min-width: 0;
      width: 100vw; } }
  @media screen and (max-width: 400px) {
    section.usps .container {
      flex-direction: column; } }

section.usps .usp h1,
section.usps .usp h2 {
  font-size: 16px; }

section.usps .usp h1 {
  text-transform: none; }

section.usps .usp img {
  height: 80px;
  margin: 10px auto;
  display: block; }

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    transform: none; } }

section.schedule {
  margin-bottom: 30px; }
  section.schedule .scheduleDisplay {
    width: calc(100% + 0.5px);
    display: block; }
    @media screen and (max-width: 550px) {
      section.schedule .scheduleDisplay {
        flex-direction: column; } }
    section.schedule .scheduleDisplay a .entry,
    section.schedule .scheduleDisplay .entry {
      height: 150px;
      background-color: #068C9E;
      color: white;
      text-align: center;
      display: inline-block;
      width: 100%; }
      section.schedule .scheduleDisplay a .entry h1,
      section.schedule .scheduleDisplay a .entry h2,
      section.schedule .scheduleDisplay .entry h1,
      section.schedule .scheduleDisplay .entry h2 {
        margin: 0; }
      @media screen and (max-width: 400px) {
        section.schedule .scheduleDisplay a .entry h1,
        section.schedule .scheduleDisplay .entry h1 {
          font-size: 25px; } }
      section.schedule .scheduleDisplay a .entry .main,
      section.schedule .scheduleDisplay .entry .main {
        padding: 30px;
        box-sizing: border-box; }
      section.schedule .scheduleDisplay a .entry .main,
      section.schedule .scheduleDisplay a .entry .extra,
      section.schedule .scheduleDisplay .entry .main,
      section.schedule .scheduleDisplay .entry .extra {
        display: inline-block;
        vertical-align: top;
        text-align: center;
        overflow: hidden;
        transition: 0.4s all;
        width: 50%; }
      section.schedule .scheduleDisplay a .entry .extra button,
      section.schedule .scheduleDisplay .entry .extra button {
        margin-top: 10%; }
      section.schedule .scheduleDisplay a .entry .extra img,
      section.schedule .scheduleDisplay .entry .extra img {
        width: 100%;
        height: 150px;
        overflow: hidden;
        transition: 0.4s all;
        object-fit: cover; }
    section.schedule .scheduleDisplay a:nth-child(even) .entry {
      background-color: #07a2b7; }
    section.schedule .scheduleDisplay > .entry,
    section.schedule .scheduleDisplay .js-hackathonURL {
      display: none; }
    section.schedule .scheduleDisplay.alba-iulia .js-hackathonURL {
      display: block; }
    section.schedule .scheduleDisplay.alba-iulia .js-hackathonURL .main {
      width: 100%; }
    section.schedule .scheduleDisplay.alba-iulia .js-hackathonURL .extra {
      display: none; }
    section.schedule .scheduleDisplay.alba-iulia .js-demodayURL {
      display: none; }

section.whatisit .container {
  display: flex;
  flex-direction: row; }
  section.whatisit .container * {
    margin: 10px; }
  @media screen and (max-width: 640px) {
    section.whatisit .container {
      flex-direction: column;
      text-align: center; } }

section.mentors {
  margin-bottom: 20px; }
  section.mentors > a button {
    display: block;
    margin: 30px auto; }

section.media .entries {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: center; }

section.media > a button {
  display: block;
  margin: 30px auto; }

section.partners {
  text-align: center; }
  section.partners h2 {
    text-align: center; }
  section.partners img {
    display: inline-block;
    vertical-align: middle;
    margin: 10px;
    max-height: 100px;
    max-width: 100px; }
    section.partners img.customSize {
      max-width: none;
      max-height: none; }
  section.partners .switch#partners {
    background-color: transparent;
    color: #333;
    width: auto; }
    section.partners .switch#partners .value {
      width: auto;
      min-width: 0;
      background-color: transparent;
      text-transform: capitalize;
      padding: 0 15px;
      line-height: 20px;
      margin: 0 auto; }
      section.partners .switch#partners .value:after {
        content: '';
        background-color: #333;
        width: 0%;
        height: 1px;
        transition: 0.4s width;
        display: block; }
      section.partners .switch#partners .value:hover:after, section.partners .switch#partners .value.selected:after {
        width: 100%; }

section.tracks .tracksList {
  width: 100%;
  margin-top: 20px; }

section.tracks .track {
  width: 100%;
  display: flex;
  flex-direction: row;
  overflow: hidden; }
  section.tracks .track:nth-child(even) {
    flex-direction: row-reverse; }
  section.tracks .track .logo {
    display: inline-block;
    vertical-align: top;
    width: 30%; }
  section.tracks .track img {
    height: 150px;
    display: block;
    margin: 0 auto; }
  section.tracks .track h1 {
    text-align: center; }
  section.tracks .track p {
    display: inline-block;
    vertical-align: top;
    width: 70%;
    padding-top: 5%; }
  @media screen and (max-width: 640px) {
    section.tracks .track {
      flex-direction: column;
      align-items: center;
      justify-content: center; }
      section.tracks .track .logo {
        width: 100%; }
      section.tracks .track:nth-child(even) {
        flex-direction: column; } }

section.members .membersContainer {
  width: 100%;
  text-align: center; }
  section.members .membersContainer .member {
    display: inline-block;
    vertical-align: top;
    max-width: 250px;
    text-align: center;
    padding: 10px;
    background-image: url("../img/assets/defaultMentor.png");
    background-size: 150px 150px;
    background-repeat: no-repeat;
    background-position: top center;
    background-origin: content-box; }
    section.members .membersContainer .member.hidden {
      display: none;
      margin: 0;
      padding: 0; }
      section.members .membersContainer .member.hidden + br {
        display: none; }
    section.members .membersContainer .member .img {
      background-size: cover;
      background-position: center;
      border-radius: 150px;
      width: 150px;
      height: 150px;
      margin: 0 auto;
      display: block; }
    section.members .membersContainer .member h1 {
      font-family: 'Work Sans', 'Segoe UI', sans-serif;
      font-weight: 300;
      margin: 0;
      font-size: 28px; }
    section.members .membersContainer .member h2 {
      font-size: 16px;
      margin: 0; }
    section.members .membersContainer .member p {
      font-family: 'Work Sans', sans-serif;
      font-size: 14px; }

section.socialBlock .content {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center; }
  @media screen and (max-width: 900px) {
    section.socialBlock .content {
      flex-direction: column;
      flex-wrap: nowrap; } }
  section.socialBlock .content .socialButton {
    background-color: red;
    display: flex;
    flex-direction: row;
    padding: 5px;
    margin: 5px;
    border-radius: 2px; }
    @media screen and (max-width: 900px) {
      section.socialBlock .content .socialButton {
        width: 90vw;
        justify-content: center; } }
    section.socialBlock .content .socialButton span {
      color: white;
      line-height: 30px; }
    section.socialBlock .content .socialButton img {
      height: 30px; }
  section.socialBlock .content .socialButton.facebook {
    background-color: #3b5998; }
    section.socialBlock .content .socialButton.facebook img {
      background-color: #3b5999; }
  section.socialBlock .content .socialButton.flickr {
    background-color: #ff0084; }
    section.socialBlock .content .socialButton.flickr img {
      background-color: #ff0184; }
  section.socialBlock .content .socialButton.twitter {
    background-color: #00aced; }
    section.socialBlock .content .socialButton.twitter img {
      background-color: #00adee; }
  section.socialBlock .content .socialButton.vimeo {
    background-color: #162221; }
    section.socialBlock .content .socialButton.vimeo img {
      background-color: #162322; }
  section.socialBlock .content .socialButton.insta {
    background-color: #e1306c; }
    section.socialBlock .content .socialButton.insta img {
      background-color: #e1316d; }
  section.socialBlock .content .socialButton.linkedin {
    background-color: #007bb5; }
    section.socialBlock .content .socialButton.linkedin img {
      background-color: #007cb6; }

section.mediaKit .split {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap; }
  @media screen and (max-width: 900px) {
    section.mediaKit .split {
      flex-direction: column; } }

section.mediaKit .left,
section.mediaKit .right {
  flex: 1 0 0;
  text-align: center; }

section.mediaKit .left {
  border-right: 1px solid rgba(0, 0, 0, 0.5); }
  @media screen and (max-width: 900px) {
    section.mediaKit .left {
      border-right: 0; } }

section.mediaKit .buttons {
  display: flex;
  flex-direction: row; }
  @media screen and (max-width: 900px) {
    section.mediaKit .buttons {
      flex-wrap: wrap;
      justify-content: center; } }

section.mediaKit button {
  margin: 5px;
  padding: 5px; }

section.contact h1#errorTitle {
  margin: 0;
  padding: 0;
  color: darkred;
  font-size: 20px;
  font-weight: 100; }

section.contact.fullHeight .container {
  width: 50%;
  margin: 0 auto;
  flex-direction: column; }
  @media screen and (max-width: 900px) {
    section.contact.fullHeight .container {
      width: 90%; } }
  section.contact.fullHeight .container .text,
  section.contact.fullHeight .container .form {
    width: 100%; }

section.contact .container,
section.contact .social {
  width: 100%;
  display: flex;
  flex-direction: row; }

@media screen and (max-width: 900px) {
  section.contact .container {
    width: 100%;
    flex-direction: column;
    align-items: center; } }

section.contact .text,
section.contact .form {
  width: 50%; }
  @media screen and (max-width: 650px) {
    section.contact .text,
    section.contact .form {
      width: 90%; } }

section.contact .social {
  height: 60px;
  justify-content: center; }
  section.contact .social a,
  section.contact .social img {
    height: 100%; }
  section.contact .social img {
    transition: 0.4s all;
    border: 0px solid white;
    box-sizing: border-box; }
    section.contact .social img:hover {
      transform: scale(1.3);
      border: 3px solid white;
      box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
      border-radius: 60px; }

section.contact .form form {
  display: flex;
  flex-direction: column;
  padding: 10px;
  position: relative; }
  section.contact .form form input,
  section.contact .form form textarea {
    border: 1px solid #068C9E; }
  section.contact .form form input,
  section.contact .form form textarea,
  section.contact .form form button {
    margin: 5px 0;
    padding: 5px; }
  section.contact .form form iframe {
    display: none; }
  section.contact .form form:before {
    content: 'Thank you! Your message has ben sent!';
    position: absolute;
    width: 100%;
    height: 0;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    background-color: white;
    z-index: 1;
    color: #333;
    font-size: 22px;
    background-image: url(../img/assets/plane.svg);
    background-repeat: no-repeat;
    background-size: 60px auto;
    background-position: center calc(50% - 40px);
    overflow: hidden;
    transition: 0.4s all; }
  section.contact .form form.completed:before {
    height: 100%; }

section.tech {
  padding: 5px; }
  section.tech img {
    height: 200px;
    display: block;
    margin: 0 auto;
    max-width: 300px; }
  section.tech h1 {
    margin-top: 30px;
    border-bottom: 1px solid #EAEAEA;
    border-top: 1px solid #EAEAEA; }
  section.tech > div.hidden {
    display: none; }

.teamsList {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-around; }
  .teamsList.empty:after {
    margin: 30px;
    content: 'No teams to show here';
    font-size: 30px;
    color: #CACACA;
    font-weight: 100; }
  .teamsList.empty.year2017:after {
    content: '2017 teams will be available here soon'; }
  .teamsList .teamBox {
    position: relative;
    width: 300px;
    height: 250px;
    margin: 5px;
    background-size: 100% auto;
    background-position: center;
    background-repeat: no-repeat;
    transition: 0.4s all; }
    .teamsList .teamBox:hover {
      background-size: 125% auto; }
    .teamsList .teamBox.hidden {
      display: none; }
    .teamsList .teamBox .logo {
      height: 60px;
      width: 60px;
      border: 3px solid white;
      left: -30px;
      bottom: 10px;
      position: absolute;
      z-index: 3;
      border-radius: 40px;
      box-sizing: border-box;
      background-color: white;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
      object-fit: scale-down; }
    .teamsList .teamBox h1 {
      position: absolute;
      text-align: center;
      color: white;
      width: 100%;
      bottom: 0;
      z-index: 2;
      background-color: rgba(0, 0, 0, 0.5); }
    .teamsList .teamBox .description {
      overflow: hidden;
      height: 0%;
      transition: 0.4s all;
      background-color: rgba(0, 0, 0, 0.5); }
      .teamsList .teamBox .description p {
        text-align: center;
        color: white;
        font-size: 14px;
        max-height: 150px;
        overflow-y: auto; }
      .teamsList .teamBox .description button {
        margin: 0 auto;
        display: block; }
    .teamsList .teamBox:hover .description {
      position: absolute;
      height: 100%;
      z-index: 1; }

section.teamPage {
  position: relative; }
  section.teamPage .overview {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0; }
    section.teamPage .overview .track {
      max-width: 350px;
      height: 45px;
      position: relative;
      display: inline-block;
      background-color: #0AB3CB;
      color: white;
      text-align: center;
      animation-name: titleAnim;
      animation-duration: 1s; }
      section.teamPage .overview .track h1 {
        text-transform: uppercase;
        font-size: 21px;
        white-space: nowrap;
        padding: 0;
        margin: 10px;
        text-indent: 90px; }
      section.teamPage .overview .track:before {
        position: absolute;
        content: '';
        width: 100px;
        height: 100px;
        left: -10px;
        top: -25px;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat; }
      section.teamPage .overview .track.agriculture:before {
        background-image: url(../img/assets/agricultureCircle.svg); }
      section.teamPage .overview .track.retail:before {
        background-image: url(../img/assets/retailCircle.svg); }
      section.teamPage .overview .track.health:before {
        background-image: url(../img/assets/healthlifestyleCircle.svg); }
      section.teamPage .overview .track.cybersecurity:before {
        background-image: url(../img/assets/cybersecurityCircle.svg); }
      section.teamPage .overview .track.iot:before {
        background-image: url(../img/assets/iotCircle.svg); }
    section.teamPage .overview .members {
      display: inline-flex;
      vertical-align: top;
      text-align: right;
      flex-direction: row;
      justify-content: flex-end;
      width: calc(100% - 320px); }
      section.teamPage .overview .members .member {
        margin: 30px 15px; }
        section.teamPage .overview .members .member h1 {
          font-size: 18px;
          margin: 0;
          padding: 0;
          animation-name: fontAnim;
          animation-duration: 1s;
          text-align: center; }
      section.teamPage .overview .members:before {
        content: 'The team';
        writing-mode: vertical-rl;
        text-transform: uppercase;
        color: #55C8E7; }
    @media screen and (max-width: 780px) {
      section.teamPage .overview {
        margin: 20px; } }
    @media screen and (max-width: 600px) {
      section.teamPage .overview {
        flex-direction: column;
        margin: 40px;
        align-items: center;
        justify-content: center; } }
  section.teamPage .details {
    display: flex;
    flex-direction: row;
    justify-content: space-between; }
    @media screen and (max-width: 780px) {
      section.teamPage .details {
        margin: 20px; } }
    @media screen and (max-width: 600px) {
      section.teamPage .details {
        flex-direction: column;
        align-items: center;
        justify-content: center; } }
    section.teamPage .details ul.social {
      display: flex;
      flex-direction: column;
      justify-content: center;
      list-style-type: none;
      margin: 0;
      padding: 0;
      min-width: 400px; }
      @media screen and (max-width: 600px) {
        section.teamPage .details ul.social {
          min-width: 0; } }
      section.teamPage .details ul.social li {
        height: 30px;
        font-size: 14px;
        text-align: left;
        border-left: 0 solid #068C9E;
        transition: 0.4s all;
        white-space: nowrap; }
        section.teamPage .details ul.social li:hover {
          border-left-width: 30px;
          display: block; }
        section.teamPage .details ul.social li:before {
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px;
          content: '';
          width: 30px;
          height: 30px; }
        section.teamPage .details ul.social li.facebook:before {
          background-image: url(../img/assets/facebook.svg); }
        section.teamPage .details ul.social li.twitter:before {
          background-image: url(../img/assets/twitter.svg); }
        section.teamPage .details ul.social li.mail:before {
          background-image: url(../img/assets/mail.svg); }
        section.teamPage .details ul.social li.website:before {
          background-image: url(../img/assets/website.svg); }
    section.teamPage .details p {
      position: relative;
      min-height: 100px; }
      @media screen and (max-width: 600px) {
        section.teamPage .details p {
          width: calc(100% - 30px); } }
      section.teamPage .details p:before {
        white-space: nowrap;
        position: absolute;
        left: -30px;
        content: 'The product';
        writing-mode: vertical-rl;
        text-transform: uppercase;
        color: #55C8E7; }
  section.teamPage .productPhotos {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin-left: 50px; }
    section.teamPage .productPhotos:before {
      position: absolute;
      margin-top: 0;
      left: -30px;
      content: 'Product photos';
      writing-mode: vertical-rl;
      text-transform: uppercase;
      white-space: nowrap;
      color: #55C8E7; }
    section.teamPage .productPhotos img {
      height: 350px; }
  @media screen and (max-width: 780px) {
    section.teamPage {
      margin-top: 0;
      padding-top: 0; } }
  section.teamPage > .title {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 780px) {
      section.teamPage > .title {
        margin: 20px; } }
    @media screen and (max-width: 600px) {
      section.teamPage > .title {
        flex-direction: column; } }
    section.teamPage > .title h1 {
      font-size: 52px;
      text-align: left;
      text-transform: none;
      margin: 0; }
  section.teamPage .logo {
    height: 80px; }
  section.teamPage .galleries,
  section.teamPage .videos {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
    margin: 10px 0; }
    @media screen and (max-width: 600px) {
      section.teamPage .galleries,
      section.teamPage .videos {
        flex-direction: column;
        justify-content: center; } }
  section.teamPage .videos .hackathon,
  section.teamPage .videos .demoday {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    height: 270px; }
    @media screen and (max-width: 600px) {
      section.teamPage .videos .hackathon,
      section.teamPage .videos .demoday {
        height: 200px;
        width: 100%; } }
    section.teamPage .videos .hackathon a,
    section.teamPage .videos .demoday a {
      display: none; }
    section.teamPage .videos .hackathon iframe,
    section.teamPage .videos .demoday iframe {
      width: 100%;
      height: 100%; }
    section.teamPage .videos .hackathon:before,
    section.teamPage .videos .demoday:before {
      white-space: nowrap;
      left: -35px;
      writing-mode: vertical-rl;
      text-transform: uppercase;
      color: #55C8E7; }
  section.teamPage .videos .hackathon + .demoday {
    margin-left: 10px; }
    @media screen and (max-width: 600px) {
      section.teamPage .videos .hackathon + .demoday {
        margin-left: 0; } }
  section.teamPage .videos .hackathon:before {
    content: 'Hackathon pitch'; }
  section.teamPage .videos .demoday:before {
    content: 'Demoday pitch'; }

h2.cofounderTitle {
  text-align: center;
  width: 50%;
  margin: 20px auto;
  border-bottom: 1px solid #EAEAEA; }
