
.section {
  z-index: 2;
  position: relative; }
  .section__title {
    text-align: center;
    font-size: 80rem;
    font-weight: 100;
    line-height: 1.2; }
  .section__text {
    margin-bottom: 1em; }

.section--main {
  overflow: hidden;
  text-align: center;
  background: #3f227e;
  /* Old browsers */
  background: -moz-linear-gradient(top, #3f227e 0%, #375e99 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3f227e), color-stop(100%, #375e99));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #3f227e 0%, #375e99 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #3f227e 0%, #375e99 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #3f227e 0%, #375e99 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #3f227e 0%, #375e99 100%);
  /* W3C */

  background-color: black;
  color: #ececf5;
  border-bottom: none; }

  .section--main__canvas {
    position: absolute;
    z-index: -2;
    top: 30px;
    left: 50%;
    margin: 0 0 0 -1100px; }
  .section--main__waveform {
    opacity: 0;
    width: 150%;
    height: 500px;
    max-height: 500px;
    position: absolute;
    z-index: -3;
    top: 80px;
    left: -25%;
    -webkit-transition: all 4s ease;
    -moz-transition: all 4s ease;
    -ms-transition: all 4s ease;
    -o-transition: all 4s ease;
    transition: all 4s ease; }
    .loaded .section--main__waveform {
      opacity: 1; }
    .section--main__waveform .waveform {
      width: 100%;
      height: 100%;
      fill: none;
      stroke-width: .07; }
    .section--main__waveform .blue {
      stroke: rgba(100, 104, 255, 0.3); }
    .section--main__waveform .red {
      stroke: rgba(100, 68, 150, 0.3); }
    .section--main__waveform .green {
      stroke: rgba(100, 155, 102, 0.3); }

.section--main:before {
    content: '';
    position: absolute;
    background: #3f227e;
    /* Old browsers */
    background: -moz-linear-gradient(top, #3f227e 0%, #375e99 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3f227e), color-stop(100%, #375e99));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #3f227e 0%, #375e99 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #3f227e 0%, #375e99 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #3f227e 0%, #375e99 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, #3f227e 0%, #375e99 100%);
    /* W3C */
    opacity: 0.5;
    bottom: -200%;
    left: 0;
    width: 50%;
    height: 200%;
    z-index: -4;
    -webkit-transform-origin: right top;
    -moz-transform-origin: right top;
    -ms-transform-origin: right top;
    -o-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: skewY(45deg);
    -moz-transform: skewY(45deg);
    -ms-transform: skewY(45deg);
    -o-transform: skewY(45deg);
    transform: skewY(45deg); }

.section--main:after {
    content: '';
    position: absolute;
    background: #375e99;
    /* Old browsers */
    background: -moz-linear-gradient(top, #375e99 0%, #3f227e 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #375e99), color-stop(100%, #3f227e));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #375e99 0%, #3f227e 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #375e99 0%, #3f227e 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #375e99 0%, #3f227e 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, #375e99 0%, #3f227e 100%);
    /* W3C */
    opacity: 0.5;
    bottom: -200%;
    right: 0;
    width: 50%;
    height: 200%;
    z-index: -4;
    -webkit-transform-origin: left top;
    -moz-transform-origin: left top;
    -ms-transform-origin: left top;
    -o-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: skewY(-45deg);
    -moz-transform: skewY(-45deg);
    -ms-transform: skewY(-45deg);
    -o-transform: skewY(-45deg);
    transform: skewY(-45deg); }
  @media screen and (max-width: 900px) {
    .section--main__title {
      -webkit-transition: all 0s ease-out;
      -moz-transition: all 0s ease-out;
      -ms-transition: all 0s ease-out;
      -o-transition: all 0s ease-out;
      transition: all 0s ease-out;
      font-size: 40rem; }
    .section--main__caption {
      font-size: 16rem; } }

