@charset "UTF-8";
/* Static variable for images and fonts. */
/* Base colors */
/* Opacity Values */
/* Black Opacities
   These are shades of black determined by opacity values */
/* White Opacities
   These are shades of white determined by opacity values */
/* Twitch Purple Opacities
   These are shades of Twitch Purple determined by opacity values */
/* Baseline variables
   Do not use these as hard coded values anywhere
   They are specifically for the baseline and modular scale functions */
/* Timer Variables */
/* Our baseline function expects to be sent a unitless px value
   For ease of use, lets convert these back to rem so they are
   availble in hard coded font-size: cases +baseline will
   detect this and change back to appropriate sizes. */
/* Add all font-sizes to a map list so they are
   available to us in the future */
/* Typography Variables */
/* Z index */
/* HELPER CLASSES
   Common one off class names or
   helpers loaded at the end of the
   stylesheet to help overwrite styles */
.clearfix:after {
  content: '';
  display: table;
  clear: both; }

.clear {
  clear: both; }

.ir {
  display: inline-block;
  background-color: transparent;
  border: 0;
  overflow: hidden;
  font-size: 0;
  text-rendering: optimizeSpeed; }
  .ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%; }

.hidden {
  display: none !important; }

.show {
  display: block !important; }

.show.toggled {
  display: none !important; }

.hide {
  display: none !important; }

.hide--soft {
  display: none; }

.hide.toggled {
  display: block !important; }

@media (max-width: 768px) {
  .hide-mobile {
    display: none !important; } }

.ellipsis {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

.inherit-color {
  color: inherit; }
  .inherit-color:hover {
    color: inherit; }

.float-right {
  float: right; }

.float-left {
  float: left; }

.t-inactive {
  opacity: .5;
  filter: grayscale(100%); }

.mg-0 {
  margin: 0rem; }

.mg-t-0 {
  margin-top: 0rem; }

.mg-b-0 {
  margin-bottom: 0rem; }

.mg-l-0 {
  margin-left: 0rem; }

.mg-r-0 {
  margin-right: 0rem; }

.xs-mg-t-0 {
  margin-top: 0rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-0 {
      margin-top: 0; } }

.pd-0 {
  margin: 0rem; }

.pd-l-0 {
  padding-left: 0rem; }

.pd-r-0 {
  padding-right: 0rem; }

.pd-t-0 {
  padding-top: 0rem; }

.pd-b-0 {
  padding-bottom: 0rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-1 {
  margin: 1rem; }

.mg-t-1 {
  margin-top: 1rem; }

.mg-b-1 {
  margin-bottom: 1rem; }

.mg-l-1 {
  margin-left: 1rem; }

.mg-r-1 {
  margin-right: 1rem; }

.xs-mg-t-1 {
  margin-top: 1rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-1 {
      margin-top: 0; } }

.pd-1 {
  margin: 1rem; }

.pd-l-1 {
  padding-left: 1rem; }

.pd-r-1 {
  padding-right: 1rem; }

.pd-t-1 {
  padding-top: 1rem; }

.pd-b-1 {
  padding-bottom: 1rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-2 {
  margin: 2rem; }

.mg-t-2 {
  margin-top: 2rem; }

.mg-b-2 {
  margin-bottom: 2rem; }

.mg-l-2 {
  margin-left: 2rem; }

.mg-r-2 {
  margin-right: 2rem; }

.xs-mg-t-2 {
  margin-top: 2rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-2 {
      margin-top: 0; } }

.pd-2 {
  margin: 2rem; }

.pd-l-2 {
  padding-left: 2rem; }

.pd-r-2 {
  padding-right: 2rem; }

.pd-t-2 {
  padding-top: 2rem; }

.pd-b-2 {
  padding-bottom: 2rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-3 {
  margin: 3rem; }

.mg-t-3 {
  margin-top: 3rem; }

.mg-b-3 {
  margin-bottom: 3rem; }

.mg-l-3 {
  margin-left: 3rem; }

.mg-r-3 {
  margin-right: 3rem; }

.xs-mg-t-3 {
  margin-top: 3rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-3 {
      margin-top: 0; } }

.pd-3 {
  margin: 3rem; }

.pd-l-3 {
  padding-left: 3rem; }

.pd-r-3 {
  padding-right: 3rem; }

.pd-t-3 {
  padding-top: 3rem; }

.pd-b-3 {
  padding-bottom: 3rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-4 {
  margin: 4rem; }

.mg-t-4 {
  margin-top: 4rem; }

.mg-b-4 {
  margin-bottom: 4rem; }

.mg-l-4 {
  margin-left: 4rem; }

.mg-r-4 {
  margin-right: 4rem; }

.xs-mg-t-4 {
  margin-top: 4rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-4 {
      margin-top: 0; } }

.pd-4 {
  margin: 4rem; }

.pd-l-4 {
  padding-left: 4rem; }

.pd-r-4 {
  padding-right: 4rem; }

.pd-t-4 {
  padding-top: 4rem; }

.pd-b-4 {
  padding-bottom: 4rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-5 {
  margin: 5rem; }

.mg-t-5 {
  margin-top: 5rem; }

.mg-b-5 {
  margin-bottom: 5rem; }

.mg-l-5 {
  margin-left: 5rem; }

.mg-r-5 {
  margin-right: 5rem; }

.xs-mg-t-5 {
  margin-top: 5rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-5 {
      margin-top: 0; } }

.pd-5 {
  margin: 5rem; }

.pd-l-5 {
  padding-left: 5rem; }

.pd-r-5 {
  padding-right: 5rem; }

.pd-t-5 {
  padding-top: 5rem; }

.pd-b-5 {
  padding-bottom: 5rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-6 {
  margin: 6rem; }

.mg-t-6 {
  margin-top: 6rem; }

.mg-b-6 {
  margin-bottom: 6rem; }

.mg-l-6 {
  margin-left: 6rem; }

.mg-r-6 {
  margin-right: 6rem; }

.xs-mg-t-6 {
  margin-top: 6rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-6 {
      margin-top: 0; } }

.pd-6 {
  margin: 6rem; }

.pd-l-6 {
  padding-left: 6rem; }

.pd-r-6 {
  padding-right: 6rem; }

.pd-t-6 {
  padding-top: 6rem; }

.pd-b-6 {
  padding-bottom: 6rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-7 {
  margin: 7rem; }

.mg-t-7 {
  margin-top: 7rem; }

.mg-b-7 {
  margin-bottom: 7rem; }

.mg-l-7 {
  margin-left: 7rem; }

.mg-r-7 {
  margin-right: 7rem; }

.xs-mg-t-7 {
  margin-top: 7rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-7 {
      margin-top: 0; } }

.pd-7 {
  margin: 7rem; }

.pd-l-7 {
  padding-left: 7rem; }

.pd-r-7 {
  padding-right: 7rem; }

.pd-t-7 {
  padding-top: 7rem; }

.pd-b-7 {
  padding-bottom: 7rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-8 {
  margin: 8rem; }

.mg-t-8 {
  margin-top: 8rem; }

.mg-b-8 {
  margin-bottom: 8rem; }

.mg-l-8 {
  margin-left: 8rem; }

.mg-r-8 {
  margin-right: 8rem; }

.xs-mg-t-8 {
  margin-top: 8rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-8 {
      margin-top: 0; } }

.pd-8 {
  margin: 8rem; }

.pd-l-8 {
  padding-left: 8rem; }

.pd-r-8 {
  padding-right: 8rem; }

.pd-t-8 {
  padding-top: 8rem; }

.pd-b-8 {
  padding-bottom: 8rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-9 {
  margin: 9rem; }

.mg-t-9 {
  margin-top: 9rem; }

.mg-b-9 {
  margin-bottom: 9rem; }

.mg-l-9 {
  margin-left: 9rem; }

.mg-r-9 {
  margin-right: 9rem; }

.xs-mg-t-9 {
  margin-top: 9rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-9 {
      margin-top: 0; } }

.pd-9 {
  margin: 9rem; }

.pd-l-9 {
  padding-left: 9rem; }

.pd-r-9 {
  padding-right: 9rem; }

.pd-t-9 {
  padding-top: 9rem; }

.pd-b-9 {
  padding-bottom: 9rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.mg-10 {
  margin: 10rem; }

.mg-t-10 {
  margin-top: 10rem; }

.mg-b-10 {
  margin-bottom: 10rem; }

.mg-l-10 {
  margin-left: 10rem; }

.mg-r-10 {
  margin-right: 10rem; }

.xs-mg-t-10 {
  margin-top: 10rem; }
  @media (min-width: 1024px) {
    .xs-mg-t-10 {
      margin-top: 0; } }

.pd-10 {
  margin: 10rem; }

.pd-l-10 {
  padding-left: 10rem; }

.pd-r-10 {
  padding-right: 10rem; }

.pd-t-10 {
  padding-top: 10rem; }

.pd-b-10 {
  padding-bottom: 10rem; }

.pd-b-05 {
  padding-bottom: 0.5rem; }

.pin-tr {
  position: absolute;
  top: 0;
  right: 0; }

.pin-tl {
  position: absolute;
  top: 0;
  left: 0; }

.pin-l-1 {
  position: absolute;
  top: 1rem;
  left: 1rem; }

.pin-r-1 {
  position: absolute;
  top: 1rem;
  right: 1rem; }

.pin-l-2 {
  position: absolute;
  top: 1rem;
  left: 2rem; }

.pin-r-2 {
  position: absolute;
  top: 1rem;
  right: 2rem; }

.pin-l-3 {
  position: absolute;
  top: 1rem;
  left: 3rem; }

.pin-r-3 {
  position: absolute;
  top: 1rem;
  right: 3rem; }

.pin-l-4 {
  position: absolute;
  top: 1rem;
  left: 4rem; }

.pin-r-4 {
  position: absolute;
  top: 1rem;
  right: 4rem; }

.pin-l-5 {
  position: absolute;
  top: 1rem;
  left: 5rem; }

.pin-r-5 {
  position: absolute;
  top: 1rem;
  right: 5rem; }

.pin-l-6 {
  position: absolute;
  top: 1rem;
  left: 6rem; }

.pin-r-6 {
  position: absolute;
  top: 1rem;
  right: 6rem; }

.pin-l-7 {
  position: absolute;
  top: 1rem;
  left: 7rem; }

.pin-r-7 {
  position: absolute;
  top: 1rem;
  right: 7rem; }

.pin-l-8 {
  position: absolute;
  top: 1rem;
  left: 8rem; }

.pin-r-8 {
  position: absolute;
  top: 1rem;
  right: 8rem; }

.pin-l-9 {
  position: absolute;
  top: 1rem;
  left: 9rem; }

.pin-r-9 {
  position: absolute;
  top: 1rem;
  right: 9rem; }

.pin-l-10 {
  position: absolute;
  top: 1rem;
  left: 10rem; }

.pin-r-10 {
  position: absolute;
  top: 1rem;
  right: 10rem; }

.square-1 {
  width: 1rem;
  height: 1rem; }

.square-2 {
  width: 2rem;
  height: 2rem; }

.square-3 {
  width: 3rem;
  height: 3rem; }

.square-4 {
  width: 4rem;
  height: 4rem; }

.square-5 {
  width: 5rem;
  height: 5rem; }

.square-6 {
  width: 6rem;
  height: 6rem; }

.square-7 {
  width: 7rem;
  height: 7rem; }

.square-8 {
  width: 8rem;
  height: 8rem; }

.square-9 {
  width: 9rem;
  height: 9rem; }

.square-10 {
  width: 10rem;
  height: 10rem; }

.full-width {
  width: 100%;
  display: block; }

@media (min-width: 1024px) {
  .full-height {
    min-height: 100vh; } }

.inline {
  display: inline-block;
  vertical-align: middle; }

.inline--baseline {
  display: inline-block;
  vertical-align: baseline; }

.inline--btn {
  display: inline-block;
  vertical-align: middle;
  height: 3rem;
  line-height: 3rem; }

.type-truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.no-underline:hover {
  text-decoration: none !important; }

.markdown h1 {
  line-height: 4rem;
  font-size: 4rem;
  margin-bottom: 2.31999rem;
  padding-top: 0.68001rem;
  color: #322f37;
  font-weight: 600; }

.markdown h2 {
  line-height: 3rem;
  font-size: 2.8rem;
  margin-bottom: 1.42399rem;
  padding-top: 0.57601rem;
  color: #433f4a;
  font-weight: 300; }

.markdown h3 {
  line-height: 2.5rem;
  font-size: 2.4rem;
  margin-bottom: 1.54199rem;
  padding-top: 0.45801rem;
  color: #575260;
  font-weight: 300; }

.markdown h4 {
  line-height: 2rem;
  font-size: 1.6rem;
  margin-bottom: 1.52799rem;
  padding-top: 0.47201rem;
  color: #706a7c;
  font-weight: 300; }

.markdown h5 {
  color: #433f4a; }

.pos-relative {
  position: relative; }

.cl-green {
  color: #14b866; }

.cl-red {
  color: #fc3636; }

.cl-orange {
  color: #ffb300; }

.cl-yellow {
  color: #ffea00; }

.cl-white {
  color: white; }

.cl-black {
  color: black; }

@keyframes swoop {
  0% {
    transform: translateY(20px);
    opacity: 0; }
  100% {
    transform: translateY(0px);
    opacity: 1; } }

@keyframes bounce {
  0%, 70%, 100% {
    transform: translateY(0); }
  50% {
    transform: translateY(-0.7rem); }
  60% {
    transform: translateY(-0.35rem); }
  80% {
    transform: translateY(-0.125rem); } }

@keyframes bump {
  0% {
    transform: translateY(-3px); }
  33% {
    transform: translateY(-15px); }
  100% {
    transform: translateY(0px); } }

@keyframes bumpLeft {
  0% {
    transform: translateX(-3px); }
  33% {
    transform: translateX(-10px); }
  100% {
    transform: translateX(-5px); } }

@keyframes pulse {
  0% {
    tranform: scale(1); }
  25% {
    transform: scale(1.2); }
  100% {
    transform: scale(1.1); } }

@keyframes fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes magic {
  0%, 100% {
    transform: translateY(25px); }
  50% {
    transform: translateY(-25px); } }

.anim-swoop {
  animation: swoop .3s forwards ease; }

.anim-bounce {
  animation: bounce .4s forwards ease; }

.anim-bump {
  animation: bump .3s forwards ease; }

.anim-bumpLeft {
  animation: bumpLeft .3s forwards ease; }

.anim-pulse {
  animation: pulse .3s forwards ease; }

.anim-fade {
  animation: fade .5s forwards ease;
  opacity: 0; }

.anim-float {
  animation: magic 5s infinite ease;
  transform: translateY(25px); }

.anim--infinite {
  animation-iteration-count: infinite; }

.anim--delay-1 {
  animation-delay: 0.75s; }

.anim--delay-2 {
  animation-delay: 1.5s; }

.anim--delay-3 {
  animation-delay: 2.25s; }

.anim--delay-4 {
  animation-delay: 3s; }

.anim--delay-5 {
  animation-delay: 3.75s; }

.anim--delay-6 {
  animation-delay: 4.5s; }

.anim--delay-7 {
  animation-delay: 5.25s; }

.anim--delay-8 {
  animation-delay: 6s; }

.anim--delay-9 {
  animation-delay: 6.75s; }

.anim--delay-10 {
  animation-delay: 7.5s; }

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

body {
  background: white; }

img {
  border: 0;
  max-width: 100%; }

a {
  color: #6441a4;
  text-decoration: none; }
  a:hover {
    color: #4b367c; }

ul, ol, li {
  list-style-type: none; }

button {
  border: 0;
  background: none;
  color: inherit;
  font-size: 100%; }
  button:hover {
    cursor: pointer; }

iframe {
  border: 0; }

input[type="text"]::-ms-clear {
  display: none; }

html {
  text-size-adjust: 100%;
  font-size: 62.5%; }

body {
  font-family: "Helvetica Neue", Helvetica, sans-serif;
  font-size: 1.2rem;
  line-height: 2rem;
  color: #433f4a; }

.show-baseline {
  position: relative; }
  .show-baseline:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
    background-image: linear-gradient(to bottom, rgba(0, 255, 255, 0.5) 0, rgba(255, 255, 255, 0) 1px);
    background-repeat: repeat-y;
    background-size: 100% 1rem; }

.show-baseline--offset:before {
  background-position: 0 .5rem; }

.show-baseline--bottom:before {
  background-position: 0 bottom; }

h1 {
  margin: 0;
  line-height: 3rem;
  font-size: 4rem;
  margin-bottom: 1.81999rem;
  padding-top: 0.18001rem; }

h2 {
  line-height: 3rem;
  font-size: 2.8rem;
  margin-bottom: 1.42399rem;
  padding-top: 0.57601rem; }

h3 {
  line-height: 3rem;
  font-size: 2.4rem;
  margin-bottom: 0.29199rem;
  padding-top: 0.70801rem; }

h4 {
  line-height: 2rem;
  font-size: 1.6rem;
  margin-bottom: 0.52799rem;
  padding-top: 0.47201rem; }

h5 {
  line-height: 2rem;
  font-size: 1.4rem;
  margin-bottom: 0.46199rem;
  padding-top: 0.53801rem; }

p {
  line-height: 2rem;
  font-size: 1.2rem;
  margin-bottom: -0.60401rem;
  padding-top: 0.60401rem; }

.typeset p, .typeset li, .typeset dd {
  line-height: 2rem;
  font-size: 1.4rem;
  margin-bottom: 0.46199rem;
  padding-top: 0.53801rem; }

.typeset dt {
  font-weight: bold;
  line-height: 2rem;
  font-size: 1.4rem;
  margin-bottom: -0.53801rem;
  padding-top: 0.53801rem; }

.typeset ul li {
  list-style-type: disc; }

.typeset ol li {
  list-style-type: decimal; }

.typeset ol, .typeset ul {
  margin-bottom: 1.5rem;
  padding-left: 2rem; }

#player p {
  padding-top: 0; }

h1, h2, h3, h4, h5 {
  font-weight: 400; }

hr {
  clear: both;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border-width: 0;
  border-top: 1px solid #e5e3e8; }

.small {
  line-height: 2rem;
  font-size: 1.1rem;
  margin-bottom: 0.36299rem;
  padding-top: 0.63701rem; }

.upcase {
  text-transform: uppercase; }

.capcase {
  text-transform: capitalize; }

/* Text Align
   We should get rid of this super generic name
   and make some align-left align-center classes */
.center {
  text-align: center; }

.align-left {
  text-align: left; }

.align-right {
  text-align: right; }

.sup {
  line-height: 2rem;
  font-size: 1rem;
  margin-bottom: 0.32999rem;
  padding-top: 0.67001rem;
  position: relative;
  bottom: 1rem;
  text-transform: none; }

.strong {
  font-weight: 600; }

.sub-text {
  color: #706a7c;
  font-weight: 400; }

.hint {
  font-size: 1.1rem;
  color: #a49fad;
  display: block; }

.inline-warning {
  color: #fc3636;
  font-weight: 600; }

.inline-caution {
  color: #ffb300;
  font-weight: 600; }

.quote {
  padding-left: 2rem;
  padding-top: 0;
  margin-top: 2rem;
  border-left: 1px solid #6441a4; }

.right-arrow:after {
  content: "»";
  margin-left: 1rem;
  font-family: Arial, sans-serif; }

.left-arrow:before {
  content: "«";
  margin-right: 1rem;
  font-family: Arial, sans-serif; }

.font-color-purple {
  color: #6441a4; }

.font-color-white {
  color: white; }

.aspect {
  display: block;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden; }

.aspect--3x4 {
  padding-bottom: 133.333333333%;
  padding-bottom: 139.705882353%; }

.aspect--square {
  padding-bottom: 100%; }

.aspect--4x3 {
  padding-bottom: 75%; }

.aspect--4x3-crop .aspect__fill {
  height: auto;
  max-height: none;
  margin: -9.375% 0; }

.aspect--player-chrome {
  padding-top: 30px; }

.aspect__fill {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  max-height: 100%;
  max-width: 100%; }
  .aspect__fill iframe {
    height: 100%;
    width: 100%; }

.flex {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  list-style: none; }
  .flex > * {
    flex: 0 1 auto;
    max-width: 100%; }

.flex--inline {
  display: inline-flex; }

.flex--nowrap {
  flex-wrap: nowrap; }

.flex--column {
  flex-direction: column; }

.flex--rowReverse {
  flex-direction: row-reverse; }

.flex--columnReverse {
  flex-direction: column-reverse; }

.flex--fullHeight {
  height: 100%; }

.flex--verticalCenter {
  align-items: center; }

.flex--verticalEnd {
  align-items: flex-end; }

.flex--stretch {
  align-items: stretch; }

.flex--horizontalCenter {
  justify-content: center; }

.flex--horizontalEnd {
  justify-content: flex-end; }

.flex--spaceBetween {
  justify-content: space-between; }

.flex__item {
  flex: 0 1 auto; }

.flex__item--grow {
  flex-grow: 1; }

.flex__item--noGrow {
  flex-grow: 0; }

.flex__item--noShrink {
  flex-shrink: 0; }

.flex__item--end {
  align-self: flex-end; }

/* DRAWER
   ------------------------------------
   Simple drawer state handling for showing and hidding of
   items within the left nav (or other drawer like items)
  */
.drawer {
  transition: all .15s ease; }

.drawer.closed .is-drawer-closed--hide {
  display: none !important; }

.is-drawer-closed--show {
  display: none !important; }
  .drawer.closed .is-drawer-closed--show {
    display: block !important; }

/* Desktop Container */
.container {
  max-width: 980px;
  margin: 0 auto;
  padding: 0; }
  .container:after {
    content: '';
    display: table;
    clear: both; }

.container--fluid {
  max-width: 100%; }

.container--wide {
  max-width: 1200px; }

/* Create base tower */
.tower {
  display: flex !important;
  flex-wrap: wrap;
  list-style: none;
  min-width: 100%; }
  .tower > * {
    flex: 0 0 auto;
    padding: 0 1.5rem; }
  .tower .tower {
    margin-left: -1.5rem;
    margin-right: -1.5rem; }
  .tower .tower--gutter-xs {
    margin-left: -0.5rem;
    margin-right: -0.5rem; }
  .tower .tower--gutter-sm {
    margin-left: -1rem;
    margin-right: -1rem; }
  .tower .tower--gutter-none {
    margin-left: 0;
    margin-right: 0; }

.tower--120 > * {
  flex: 1 0 auto;
  max-width: 50%;
  width: 120px; }

.tower--180 > * {
  flex: 1 0 auto;
  max-width: 50%;
  width: 180px; }

.tower--240 > * {
  flex: 1 0 auto;
  max-width: 50%;
  width: 240px; }

/* Tower Modifiers */
.tower--gutter-xs > * {
  padding: 0 0.5rem; }

.tower--gutter-sm > * {
  padding: 0 1rem; }

.tower--gutter-none > * {
  padding: 0; }

.tower--bleed {
  margin-left: -1.5rem;
  margin-right: -1.5rem; }
  .tower--bleed.tower--gutter-xs {
    margin-left: -0.5rem;
    margin-right: -0.5rem; }
  .tower--bleed.tower--gutter-sm {
    margin-left: -1rem;
    margin-right: -1rem; }

.tower--nowrap {
  flex-wrap: nowrap; }

.tower--nogrow > * {
  flex-grow: 0; }

/* Create the .col-columns base sizes */
.col-xs-1 {
  width: 8.3333333333%; }

.tower--xs-1-1 > * {
  width: 100%; }

.col-xs-2 {
  width: 16.6666666667%; }

.tower--xs-1-2 > * {
  width: 50%; }

.col-xs-3 {
  width: 25%; }

.tower--xs-1-3 > * {
  width: 33.3333333333%; }

.col-xs-4 {
  width: 33.3333333333%; }

.tower--xs-1-4 > * {
  width: 25%; }

.col-xs-5 {
  width: 41.6666666667%; }

.tower--xs-1-5 > * {
  width: 20%; }

.col-xs-6 {
  width: 50%; }

.tower--xs-1-6 > * {
  width: 16.6666666667%; }

.col-xs-7 {
  width: 58.3333333333%; }

.tower--xs-1-7 > * {
  width: 14.2857142857%; }

.col-xs-8 {
  width: 66.6666666667%; }

.tower--xs-1-8 > * {
  width: 12.5%; }

.col-xs-9 {
  width: 75%; }

.tower--xs-1-9 > * {
  width: 11.1111111111%; }

.col-xs-10 {
  width: 83.3333333333%; }

.tower--xs-1-10 > * {
  width: 10%; }

.col-xs-11 {
  width: 91.6666666667%; }

.tower--xs-1-11 > * {
  width: 9.0909090909%; }

.col-xs-12 {
  width: 100%; }

.tower--xs-1-12 > * {
  width: 8.3333333333%; }

/* Now the create the breakpoints override sizes at different screen sizes */
@media (min-width: 768px) {
  .col-sm-1 {
    width: 8.3333333333%; }
  .tower--sm-1-1 > * {
    width: 100%; }
  .col-sm-2 {
    width: 16.6666666667%; }
  .tower--sm-1-2 > * {
    width: 50%; }
  .col-sm-3 {
    width: 25%; }
  .tower--sm-1-3 > * {
    width: 33.3333333333%; }
  .col-sm-4 {
    width: 33.3333333333%; }
  .tower--sm-1-4 > * {
    width: 25%; }
  .col-sm-5 {
    width: 41.6666666667%; }
  .tower--sm-1-5 > * {
    width: 20%; }
  .col-sm-6 {
    width: 50%; }
  .tower--sm-1-6 > * {
    width: 16.6666666667%; }
  .col-sm-7 {
    width: 58.3333333333%; }
  .tower--sm-1-7 > * {
    width: 14.2857142857%; }
  .col-sm-8 {
    width: 66.6666666667%; }
  .tower--sm-1-8 > * {
    width: 12.5%; }
  .col-sm-9 {
    width: 75%; }
  .tower--sm-1-9 > * {
    width: 11.1111111111%; }
  .col-sm-10 {
    width: 83.3333333333%; }
  .tower--sm-1-10 > * {
    width: 10%; }
  .col-sm-11 {
    width: 91.6666666667%; }
  .tower--sm-1-11 > * {
    width: 9.0909090909%; }
  .col-sm-12 {
    width: 100%; }
  .tower--sm-1-12 > * {
    width: 8.3333333333%; } }

@media (min-width: 1024px) {
  .col-md-1 {
    width: 8.3333333333%; }
  .tower--md-1-1 > * {
    width: 100%; }
  .col-md-2 {
    width: 16.6666666667%; }
  .tower--md-1-2 > * {
    width: 50%; }
  .col-md-3 {
    width: 25%; }
  .tower--md-1-3 > * {
    width: 33.3333333333%; }
  .col-md-4 {
    width: 33.3333333333%; }
  .tower--md-1-4 > * {
    width: 25%; }
  .col-md-5 {
    width: 41.6666666667%; }
  .tower--md-1-5 > * {
    width: 20%; }
  .col-md-6 {
    width: 50%; }
  .tower--md-1-6 > * {
    width: 16.6666666667%; }
  .col-md-7 {
    width: 58.3333333333%; }
  .tower--md-1-7 > * {
    width: 14.2857142857%; }
  .col-md-8 {
    width: 66.6666666667%; }
  .tower--md-1-8 > * {
    width: 12.5%; }
  .col-md-9 {
    width: 75%; }
  .tower--md-1-9 > * {
    width: 11.1111111111%; }
  .col-md-10 {
    width: 83.3333333333%; }
  .tower--md-1-10 > * {
    width: 10%; }
  .col-md-11 {
    width: 91.6666666667%; }
  .tower--md-1-11 > * {
    width: 9.0909090909%; }
  .col-md-12 {
    width: 100%; }
  .tower--md-1-12 > * {
    width: 8.3333333333%; } }

@media (min-width: 1200px) {
  .col-lg-1 {
    width: 8.3333333333%; }
  .tower--lg-1-1 > * {
    width: 100%; }
  .col-lg-2 {
    width: 16.6666666667%; }
  .tower--lg-1-2 > * {
    width: 50%; }
  .col-lg-3 {
    width: 25%; }
  .tower--lg-1-3 > * {
    width: 33.3333333333%; }
  .col-lg-4 {
    width: 33.3333333333%; }
  .tower--lg-1-4 > * {
    width: 25%; }
  .col-lg-5 {
    width: 41.6666666667%; }
  .tower--lg-1-5 > * {
    width: 20%; }
  .col-lg-6 {
    width: 50%; }
  .tower--lg-1-6 > * {
    width: 16.6666666667%; }
  .col-lg-7 {
    width: 58.3333333333%; }
  .tower--lg-1-7 > * {
    width: 14.2857142857%; }
  .col-lg-8 {
    width: 66.6666666667%; }
  .tower--lg-1-8 > * {
    width: 12.5%; }
  .col-lg-9 {
    width: 75%; }
  .tower--lg-1-9 > * {
    width: 11.1111111111%; }
  .col-lg-10 {
    width: 83.3333333333%; }
  .tower--lg-1-10 > * {
    width: 10%; }
  .col-lg-11 {
    width: 91.6666666667%; }
  .tower--lg-1-11 > * {
    width: 9.0909090909%; }
  .col-lg-12 {
    width: 100%; }
  .tower--lg-1-12 > * {
    width: 8.3333333333%; } }

@media (min-width: 1440px) {
  .col-xl-1 {
    width: 8.3333333333%; }
  .tower--xl-1-1 > * {
    width: 100%; }
  .col-xl-2 {
    width: 16.6666666667%; }
  .tower--xl-1-2 > * {
    width: 50%; }
  .col-xl-3 {
    width: 25%; }
  .tower--xl-1-3 > * {
    width: 33.3333333333%; }
  .col-xl-4 {
    width: 33.3333333333%; }
  .tower--xl-1-4 > * {
    width: 25%; }
  .col-xl-5 {
    width: 41.6666666667%; }
  .tower--xl-1-5 > * {
    width: 20%; }
  .col-xl-6 {
    width: 50%; }
  .tower--xl-1-6 > * {
    width: 16.6666666667%; }
  .col-xl-7 {
    width: 58.3333333333%; }
  .tower--xl-1-7 > * {
    width: 14.2857142857%; }
  .col-xl-8 {
    width: 66.6666666667%; }
  .tower--xl-1-8 > * {
    width: 12.5%; }
  .col-xl-9 {
    width: 75%; }
  .tower--xl-1-9 > * {
    width: 11.1111111111%; }
  .col-xl-10 {
    width: 83.3333333333%; }
  .tower--xl-1-10 > * {
    width: 10%; }
  .col-xl-11 {
    width: 91.6666666667%; }
  .tower--xl-1-11 > * {
    width: 9.0909090909%; }
  .col-xl-12 {
    width: 100%; }
  .tower--xl-1-12 > * {
    width: 8.3333333333%; } }

@media (min-width: 1600px) {
  .col-xxl-1 {
    width: 8.3333333333%; }
  .tower--xxl-1-1 > * {
    width: 100%; }
  .col-xxl-2 {
    width: 16.6666666667%; }
  .tower--xxl-1-2 > * {
    width: 50%; }
  .col-xxl-3 {
    width: 25%; }
  .tower--xxl-1-3 > * {
    width: 33.3333333333%; }
  .col-xxl-4 {
    width: 33.3333333333%; }
  .tower--xxl-1-4 > * {
    width: 25%; }
  .col-xxl-5 {
    width: 41.6666666667%; }
  .tower--xxl-1-5 > * {
    width: 20%; }
  .col-xxl-6 {
    width: 50%; }
  .tower--xxl-1-6 > * {
    width: 16.6666666667%; }
  .col-xxl-7 {
    width: 58.3333333333%; }
  .tower--xxl-1-7 > * {
    width: 14.2857142857%; }
  .col-xxl-8 {
    width: 66.6666666667%; }
  .tower--xxl-1-8 > * {
    width: 12.5%; }
  .col-xxl-9 {
    width: 75%; }
  .tower--xxl-1-9 > * {
    width: 11.1111111111%; }
  .col-xxl-10 {
    width: 83.3333333333%; }
  .tower--xxl-1-10 > * {
    width: 10%; }
  .col-xxl-11 {
    width: 91.6666666667%; }
  .tower--xxl-1-11 > * {
    width: 9.0909090909%; }
  .col-xxl-12 {
    width: 100%; }
  .tower--xxl-1-12 > * {
    width: 8.3333333333%; } }

.col-pad-0 {
  padding: 0 0rem; }

.col-pad-1 {
  padding: 0 1rem; }

.col-pad-2 {
  padding: 0 2rem; }

.col-pad-3 {
  padding: 0 3rem; }

.col--fluid {
  height: 100vh;
  position: relative; }

.col--fixed-l {
  position: fixed;
  left: 0px;
  top: 0px;
  height: 100vh;
  z-index: 999999; }

.col--fixed-r {
  position: fixed;
  right: 0px;
  top: 0px;
  height: 100vh;
  z-index: 999999; }

.col-md-ember--left {
  max-width: 240px; }

.col-md-ember--right {
  max-width: 342px; }

.col-md-ember--center {
  flex: 1 0px; }

.brick {
  background-color: #efeef1;
  padding: 1rem;
  width: 100%;
  border-radius: 2px;
  border: 1px solid #efeef1; }

.brick--stack-up {
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px; }

.brick--stack-down {
  margin-top: -1px;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px; }

.brick__img-container {
  position: relative;
  background-color: #6441a4;
  overflow: hidden;
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.05);
  line-height: 0;
  margin: -1px; }
  .brick__img-container:after {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: 1px solid rgba(0, 0, 0, 0.1); }

.brick--hover {
  transition: opacity .3s ease; }
  .brick--hover:hover {
    opacity: 0.8; }

.brick__caption {
  padding-top: 1rem; }

.brick--theme-purple {
  background-color: #6441a4;
  border-color: #6441a4;
  color: #f9f8fc; }
  .brick--theme-purple.brick--stack-up {
    border-bottom-color: #7d5bbe;
    margin-bottom: 1px; }
  .brick--theme-purple .brick__img-container {
    background-color: #392e5c; }
    .brick--theme-purple .brick__img-container:after {
      border-color: rgba(255, 255, 255, 0.1); }

.brick--theme-dark {
  background-color: #2c2541;
  border-color: #2c2541;
  color: #f9f8fc; }
  .brick--theme-dark.brick--stack-up {
    border-bottom-color: #4b367c;
    margin-bottom: 1px; }
  .brick--theme-dark .brick__img-container {
    background-color: #17141f; }
    .brick--theme-dark .brick__img-container:after {
      border-color: rgba(255, 255, 255, 0.1); }

.brick--theme-white,
.brick--block,
.brick--faint {
  background-color: white;
  border-color: #e5e3e8; }
  .brick--theme-white .brick__img-container,
  .brick--block .brick__img-container,
  .brick--faint .brick__img-container {
    background-color: #7d5bbe; }

.brick--theme-grey,
.brick--block {
  background-color: #faf9fa;
  border-color: #e5e3e8; }
  .brick--theme-grey .brick__img-container,
  .brick--block .brick__img-container {
    background-color: #b8b5c0; }
    .brick--theme-grey .brick__img-container:after,
    .brick--block .brick__img-container:after {
      border-color: rgba(0, 0, 0, 0.1); }

.brick--marked {
  box-shadow: 3px 0px 0px #6441a4 inset;
  padding-left: calc(1rem - 2px);
  border-radius: 0px;
  border: none; }
  .brick--marked.brick--theme-white, .brick--marked.brick--theme-grey {
    box-shadow: 3px 0px 0px #9a7fcc inset, 0px 0px 0px 1px #e5e3e8 inset; }
  .brick--marked.brick--theme-purple {
    box-shadow: 3px 0px 0px #b19dd8 inset; }
  .brick--marked.brick--theme-dark {
    box-shadow: 3px 0px 0px #b19dd8 inset; }
  .brick--marked.brick--theme-red {
    box-shadow: 3px 0px 0px #fc3636 inset; }

.brick--sharp {
  border-radius: 0px; }

.brick--pd-lg {
  padding: 2rem; }
  .brick--pd-lg .brick__caption {
    padding-top: 2rem; }

.brick--pd-none {
  padding: 0; }
  .brick--pd-none .brick__caption {
    padding: 1rem; }

@media (max-width: 1023px) {
  .brick--xs {
    text-align: left;
    margin: 1rem auto; } }

.brick--bleed {
  width: auto;
  margin: -3rem;
  padding: 3rem; }

.brick--push-up {
  margin-top: -6rem; }

.brick__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: .3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(32, 28, 43, 0.9);
  z-index: 2;
  margin: -1px;
  margin-bottom: -2px; }
  .brick--overlay:hover .brick__overlay {
    opacity: 1; }

body {
  background: white;
  font-kerning: normal; }

p {
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  font-size: 1.5rem;
  line-height: 2rem;
  color: #575260; }

a {
  cursor: pointer; }

.medium--text {
  font-family: 'Helvetica Neue', Helvetica, sans-serif;
  font-size: 2.6rem;
  line-height: 2rem;
  color: #706a7c; }

.right {
  text-align: right; }

.quarter-width {
  width: 75%; }
  @media screen and (max-width: 760px) {
    .quarter-width {
      width: 100%; } }

.half-width {
  width: 50%; }
  @media screen and (max-width: 760px) {
    .half-width {
      width: 100%; } }

.half-width--center {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.half-width--right {
  display: block;
  margin-left: auto;
  margin-right: 0; }

.container {
  position: relative;
  width: 100%;
  max-width: 1280px;
  z-index: 1;
  padding: 0 5rem;
  min-width: 0; }
  @media screen and (max-width: 760px) {
    .container {
      padding: 0 2rem; } }

.subtitle {
  color: #4b367c; }

.section {
  width: 100%; }

.section h2 {
  font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif; }

.section--white {
  background-color: #FFFFFF; }
  .section--white .section__headline {
    color: #4b367c; }
  .section--white .section__subline {
    color: #4b367c; }
  .section--white h2 {
    color: #4b367c; }

.section--light {
  background-color: #F9F8FC; }
  .section--light .section__headline {
    color: #4b367c; }
  .section--light .section__subline {
    color: #4b367c; }
  .section--light h2 {
    color: #4b367c; }

.section--dark {
  background-color: #201c2b; }
  .section--dark h2 {
    color: white; }
  .section--dark .contact-form {
    color: white; }
  .section--dark .button--inverse {
    border-color: white; }

.section--purple {
  background-color: #392e5c; }
  .section--purple h2 {
    color: white; }
  .section--purple .contact-form {
    color: white; }
  .section--purple .button--inverse {
    background: #4b367c;
    border-color: white;
    color: white; }
  .section--purple p {
    color: #cbc8d0; }

.page-header {
  padding: 2rem 0;
  background-color: #2C2640; }

.nav__item {
  padding: 2rem;
  font-size: 1.6rem;
  font-weight: lighter;
  font-family: 'Helvetica Neue', Helvetica, sans-serif; }
  @media screen and (max-width: 760px) {
    .nav__item {
      padding: 1rem; } }

/* stroke */
nav {
  width: 100%; }

nav ul li a {
  position: relative;
  padding-bottom: 0.5rem; }

nav ul li a:hover {
  color: white; }

nav ul li a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 3px auto auto auto;
  width: 0%;
  content: '.';
  color: transparent;
  background: white;
  height: 2px; }

nav ul li a:hover:after {
  width: 100%;
  transition: all 1s; }

nav ul li a.active:after {
  width: 100%; }

.page-header__nav {
  display: flex;
  flex-direction: row;
  align-items: center; }
  .page-header__nav:after {
    content: '';
    display: table;
    clear: both; }

.page-header__logo {
  fill: white;
  display: flex;
  flex-direction: row;
  align-items: center;
  float: left;
  margin-right: 8rem; }
  @media screen and (max-width: 760px) {
    .page-header__logo {
      margin-right: 2rem; } }

.page-header__tag {
  color: white;
  padding: 1rem 0 0 1rem;
  font-size: 14px; }

.brick__title-container {
  width: 100%;
  height: 80px;
  background-color: #4b367c;
  text-align: left;
  color: #faf9fa;
  margin: 0;
  padding: 5px;
  padding-left: 10px; }

.brick__title2-container {
  width: 100%;
  height: 80px;
  background-color: #392e5c;
  color: #faf9fa;
  text-align: left;
  margin: 0;
  padding: 5px;
  padding-left: 10px; }

.brick__title3-container {
  width: 100%;
  height: 80px;
  background-color: #2c2541;
  color: #faf9fa;
  text-align: left;
  margin: 0;
  padding: 5px;
  padding-left: 10px; }

.brick__img {
  width: 100%;
  height: 200px;
  background-color: #201c2b;
  text-align: center;
  margin: 0; }
  .brick__img svg {
    display: inline-block;
    position: relative;
    top: 50%;
    transform: perspective(1px) translateY(-50%); }
  .brick__img svg path {
    fill: #D7CDEA; }

.page-footer {
  background: #201c2b;
  padding: 1rem 0; }
  .page-footer:after {
    content: '';
    display: table;
    clear: both; }

.page-footer__logo {
  float: left;
  fill: white;
  margin-right: 2rem; }

.page-footer__nav-item {
  padding-right: 2rem; }

.section__headline {
  font: bold 3.5rem "Korolev", "Helvetica Neue", Helvetica, sans-serif;
  line-height: 4rem; }

.button--red {
  padding: 0.5rem 2rem;
  border: 2px solid #fc3636;
  color: #fc3636;
  display: inline-block;
  transition: border-color 250ms, color 250ms;
  font-size: 1.2rem;
  font-weight: normal;
  transition: all 200ms ease-in-out;
  background-color: #fc3636;
  color: white; }
  .button--red:hover:enabled {
    background-color: #fc3636;
    color: white; }
  .button--red:disabled {
    color: #cbc8d0;
    border: 2px solid #cbc8d0;
    cursor: default; }

.button--purple {
  padding: 0.5rem 2rem;
  border: 2px solid #6441a4;
  color: #6441a4;
  display: inline-block;
  transition: border-color 250ms, color 250ms;
  font-size: 1.2rem;
  font-weight: normal;
  transition: all 200ms ease-in-out;
  background-color: #6441a4;
  color: white; }
  .button--purple:hover:enabled {
    background-color: #6441a4;
    color: white; }
  .button--purple:disabled {
    color: #cbc8d0;
    border: 2px solid #cbc8d0;
    cursor: default; }

.button {
  padding: 1rem 2rem;
  border: 2px solid #6441a4;
  color: #6441a4;
  display: inline-block;
  transition: border-color 250ms, color 250ms;
  font-size: 1.4rem;
  font-weight: normal;
  transition: all 200ms ease-in-out; }
  .button:hover:enabled {
    background-color: #6441a4;
    color: white; }
  .button:disabled {
    color: #cbc8d0;
    border: 2px solid #cbc8d0;
    cursor: default; }

.button--center {
  position: relative;
  left: 50%;
  transform: translateX(-50%); }

.button--inverse {
  color: white;
  border-color: white;
  transition: all 200ms ease-in-out; }
  .button--inverse:hover {
    background-color: white;
    color: #6441a4;
    border-color: white; }

input[type=submit] {
  padding: 1rem 2rem;
  border: 2px solid #6441a4;
  color: #6441a4;
  display: inline-block;
  transition: border-color 250ms, color 250ms;
  font-size: 1.4rem;
  font-weight: normal;
  transition: all 200ms ease-in-out;
  background-color: transparent; }
  input[type=submit]:hover {
    background-color: #6441a4;
    color: white;
    cursor: pointer; }

.off-screen {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

.home__container--purple {
  background: #2c2640;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJnMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCUiIHN0b3AtY29sb3I9IiMyYzI2NDAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM0YjM4N2EiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2cxKSIvPjwvc3ZnPg==);
  background: -webkit-linear-gradient(top, #2c2640 0%, #4b387a 100%);
  background: -moz-linear-gradient(top, #2c2640 0%, #4b387a 100%);
  background: -o-linear-gradient(top, #2c2640 0%, #4b387a 100%);
  background: linear-gradient(to bottom, #2c2640 0%, #4b387a 100%); }
  .home__container--purple .carousel__container {
    margin: 15rem auto 0 auto; }

.home__brick {
  margin-right: 1rem;
  flex: 1;
  flex-basis: 350px;
  display: flex;
  flex-flow: row wrap; }
  .home__brick .brick__img-container {
    width: 100%;
    height: 200px;
    background-color: #392F5B;
    text-align: center;
    margin: 0; }
    .home__brick .brick__img-container svg {
      display: inline-block;
      position: relative;
      top: 50%;
      transform: perspective(1px) translateY(-50%); }
    .home__brick .brick__img-container svg path {
      fill: #D7CDEA; }
  .home__brick .brick__caption h3 {
    font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif; }
  .home__brick .brick__footer {
    padding: 1rem;
    align-self: flex-end;
    margin-top: 1rem; }

.home__sf-container {
  max-height: 400px;
  overflow-y: hidden;
  position: relative;
  top: 0;
  z-index: 1; }
  .home__sf-container #rube-container {
    position: relative;
    z-index: 0;
    top: 0;
    left: 0;
    width: 600px;
    background: transparent;
    transition: all 300ms ease-in-out;
    opacity: 0.3; }
    @media screen and (min-width: 980px) {
      .home__sf-container #rube-container {
        opacity: 1;
        width: 650px; } }
  .home__sf-container .home__sf-content {
    position: absolute;
    top: 0; }

.home__header {
  font: bold 8rem "Korolev", "Helvetica Neue", Helvetica, sans-serif; }
  @media screen and (max-width: 760px) {
    .home__header {
      font-size: 4rem; } }

.home__subheader {
  font-size: 1.8rem;
  font-weight: 200;
  line-height: 2.5rem;
  letter-spacing: 0.4px; }

.home__header--content {
  width: 40rem;
  z-index: 2;
  position: relative;
  right: 0; }

#home__header--code-contain {
  position: absolute;
  top: 3rem;
  right: 10rem; }

#home__header--code {
  position: absolute;
  top: 10rem;
  right: 23rem;
  z-index: 1;
  opacity: 0.3;
  transition: all 300ms ease-in-out; }
  @media screen and (min-width: 980px) {
    #home__header--code {
      opacity: 1; } }

#home__header--cursor {
  position: absolute;
  top: 33.3rem;
  right: 54rem;
  z-index: 1;
  animation: code--pulse 800ms infinite reverse; }

.recent-posts h3:hover {
  color: #b19dd8; }

.recent-posts time, .recent-posts p {
  color: #898395; }

@keyframes code--pulse {
  0% {
    opacity: 0; }
  50% {
    opacity: 0.5; }
  100% {
    opacity: 0; } }

.tower {
  flex-flow: row wrap; }

.docs {
  background: white; }

.docs__content {
  margin-top: 6rem; }

.docs__nav {
  border: 1px solid #dad8de;
  padding: 2rem;
  margin-bottom: 2rem; }
  .docs__nav .version-changer {
    width: 100%;
    height: 2rem; }
  .docs__nav h3 {
    font: bold 1.6rem "Korolev", "Helvetica Neue", Helvetica, sans-serif;
    padding: 0;
    color: black; }
    .docs__nav h3 a {
      color: black; }
  .docs__nav ul {
    margin-bottom: 2rem; }
  .docs__nav li {
    padding: 1rem 0 0 4px;
    font-size: 1.4rem; }
    .docs__nav li a {
      color: #706a7c; }
  .docs__nav a:hover {
    color: #7d5bbe; }
  .docs__nav .subpage {
    margin-left: 2rem; }
  .docs__nav .active {
    font-weight: bold; }

.docs__dropdown {
  position: relative;
  margin-bottom: 2rem; }
  .docs__dropdown select {
    position: absolute;
    width: 100%;
    background: none;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 1; }
  .docs__dropdown label {
    position: relative;
    background: white;
    border: 1px solid #dad8de;
    padding: 1.2rem 1rem 1rem;
    display: block;
    width: 100%;
    cursor: pointer;
    font-size: 1.6rem;
    font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif; }
    .docs__dropdown label:after {
      border: 5px solid transparent;
      border-top-color: #dad8de;
      content: '';
      display: block;
      position: absolute;
      right: 10px;
      top: calc((100% + 5px) / 2);
      transform: translateY(-50%); }

.gutter,
.code {
  padding: 2rem 1rem;
  line-height: 2rem;
  font-size: 1.6rem; }

.gutter {
  background: #dad8de;
  color: #a49fad;
  width: 36px;
  min-width: 36px; }

.code {
  background: #efeef1; }

.highlight {
  overflow-x: scroll;
  margin: 1rem 0 2rem; }
  .highlight table {
    width: 100%; }

.docs-content h1 {
  padding-bottom: 2rem;
  border-bottom: 1px solid #dad8de;
  font: bold 2.8rem "Korolev", "Helvetica Neue", Helvetica, sans-serif; }

.docs-content h2 {
  font-size: 2.2rem;
  font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif;
  border-bottom: 1px solid #dad8de; }

.docs-content h3 {
  font-size: 2rem;
  font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif; }

.docs-content h4 {
  font-size: 1.8rem;
  font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif; }

.docs-content p {
  font-size: 1.6rem;
  line-height: 3rem;
  margin-bottom: 1rem; }
  .docs-content p code {
    font-size: 1.8rem;
    padding: 4px;
    background: #efeef1;
    color: #cb4b16;
    border-radius: 2px; }

.docs-content ol {
  margin-left: 5rem;
  margin-bottom: 2rem; }
  .docs-content ol li {
    list-style-type: decimal;
    font-size: 1.6rem;
    color: #706a7c; }
    .docs-content ol li code {
      font-size: 1.8rem;
      padding: 4px;
      background: #efeef1;
      color: #cb4b16;
      border-radius: 2px; }

.docs-content ul {
  margin-left: 5rem;
  margin-bottom: 2rem; }
  .docs-content ul li {
    list-style-type: disc;
    font-size: 1.6rem;
    color: #706a7c; }
    .docs-content ul li code {
      font-size: 1.8rem;
      padding: 4px;
      background: #efeef1;
      color: #cb4b16;
      border-radius: 2px; }

.docs-content blockquote {
  color: #efeef1;
  border-left: 0.5rem solid #dad8de;
  padding-left: 0.5rem; }

.docs-content > table {
  border: 1px solid #dad8de;
  width: 100%;
  margin: 2rem 0;
  border-collapse: collapse; }
  .docs-content > table thead {
    background: #dad8de; }
  .docs-content > table td code {
    font-size: 1.8rem;
    padding: 4px;
    background: #efeef1;
    color: #cb4b16;
    border-radius: 2px; }
  .docs-content > table td,
  .docs-content > table th {
    padding: 1rem;
    border: 1px solid #dad8de;
    font-size: 1.4rem; }

.stream-first {
  background: white; }
  .stream-first .card h3 {
    font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif;
    font-size: 2rem; }
  .stream-first .brick__caption {
    display: block;
    background: white;
    padding: 1rem;
    border: 1px solid #e5e3e8;
    height: 14rem; }

.studio-partners {
  text-align: center; }
  .studio-partners img {
    margin: auto 2rem; }

.carousel {
  position: relative;
  display: none;
  overflow: hidden; }

.carousel__container {
  margin: 30rem auto 0 auto;
  position: relative;
  width: 100%;
  max-width: 1280px;
  z-index: 1;
  padding: 0 5rem; }

.carousel--loaded {
  display: block; }

.carousel__item {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(100%);
  transition: transform 1s;
  height: 512px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center; }

.carousel__headline {
  margin-top: auto;
  font-family: "Korolev", "Helvetica Neue", Helvetica, sans-serif;
  font-weight: bold;
  color: white;
  line-height: 4rem; }

.carousel__item--visible {
  transform: translateX(0); }

.carousel__item--exiting {
  transform: translateX(-100%); }

.carousel__cta {
  float: left; }

.carousel__logo {
  margin: 2rem 0; }

.contact-form {
  width: 75%;
  margin: 0 auto 6rem; }

.contact-form__input {
  padding-top: 2rem; }
  .contact-form__input input {
    padding: 1rem;
    width: 100%; }
  .contact-form__input label {
    font-size: 1.6rem;
    display: block;
    margin-bottom: 1rem; }
  .contact-form__input textarea {
    display: block;
    width: 100%;
    height: 200px; }
  .contact-form__input select {
    display: block;
    width: 100%; }

.brick__title-container,
.brick__title2-container,
.brick__title3-container {
  min-height: 80px;
  height: auto; }

@media screen and (max-width: 760px) {
  .carousel__item {
    background: none !important; } }

.flex__item.emb-panel {
  width: 65%; }

.flex__item.text-panel {
  width: 25%; }

.emb-panel .emb-embed {
  width: 600px;
  height: 380px; }

.flex__item.emb-third {
  width: 33%; }

@media screen and (max-width: 1120px) {
  .flex__item {
    flex: 0 1 100%; }
  .flex__item.emb-panel {
    flex: 0 1 auto;
    margin: 0 auto 50px; }
  .emb-panel .emb-embed {
    width: 100%; }
  .flex__item.emb-third {
    width: 100%;
    padding-bottom: 20px; } }

@media screen and (max-width: 800px) {
  .emb-panel .emb-embed {
    height: 264px; } }

.section--light {
  padding-left: 2rem;
  padding-right: 2rem; }
