html {
  box-sizing: border-box; }

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

.container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto; }
  .container::after {
    clear: both;
    content: "";
    display: block; }

.items {
  display: flex;
  flex-wrap: wrap; }

section {
  padding: 80px 20px;
  background-color: white; }
  section.interstitial {
    background-color: transparent;
    position: relative;
    min-height: 600px; }
    section.interstitial .para-bg:before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      content: "";
      box-shadow: inset 0 20px 150px rgba(0, 0, 0, 0.6); }
    section.interstitial .para-bg:after {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      content: "";
      box-shadow: inset 0 -20px 150px rgba(0, 0, 0, 0.6); }

.full {
  position: relative;
  padding: 0 20px;
  height: 100vh;
  background-color: black; }
  .full .para-bg:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    box-shadow: inset 0 0 100em #000; }
  .full#home {
    background-color: transparent; }

.parallax-mirror {
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  -moz-transition: opacity 1s ease;
  transition: opacity 1s ease; }

.para-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-position: center center;
  background-size: cover; }
  .para-bg img {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

body, html {
  padding: 0;
  margin: 0;
  width: 100%; }

body {
  font-family: "futura-pt", sans-serif;
  font-weight: normal;
  font-size: 15px;
  background: black;
  line-height: 1.5; }
  body .overlay {
    -webkit-transition: opacity 1s ease;
    -moz-transition: opacity 1s ease;
    transition: opacity 1s ease;
    opacity: 1;
    background: #000;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1001; }
  body.loaded .overlay {
    opacity: 0; }

a, a:link {
  text-decoration: none;
  color: #999; }
  a:hover, a:link:hover {
    text-decoration: underline; }
  a:active, a:focus, a:link:active, a:link:focus {
    outline: 0; }

p, h1, h2, h3, h4, h5 {
  margin: 0 0 1em; }

strong, h1, h2, h3, h4, h5 {
  font-family: "futura-pt", sans-serif;
  font-weight: 500; }

section h2, section h3 {
  text-transform: uppercase; }

#logo-text {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 40%;
  width: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  margin: 0;
  padding: 0;
  z-index: 101;
  height: 145px; }
  header::after {
    clear: both;
    content: "";
    display: block; }
  header #logo {
    height: 105px;
    width: auto;
    position: absolute;
    left: 20px;
    top: 20px;
    opacity: 1;
    -webkit-transition: opacity 0.2s ease;
    -moz-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease; }
    header #logo img {
      height: 100%;
      width: auto; }
  header nav {
    padding-left: 140px; }
  header #mobile-nav {
    display: none; }
  header ul {
    height: 145px;
    display: table;
    list-style: none;
    margin: 0 20px 0;
    float: right; }
    header ul li {
      display: table-cell;
      vertical-align: middle;
      padding: 0 30px;
      text-align: center;
      position: relative;
      cursor: pointer; }
      header ul li.social {
        padding: 0 10px; }
      header ul li a {
        text-transform: uppercase;
        color: #fff;
        position: relative;
        cursor: pointer; }
        header ul li a:hover {
          text-decoration: none !important; }
        header ul li a:after {
          position: absolute;
          bottom: -3px;
          left: 0;
          height: 2px;
          display: block;
          content: "";
          width: 100%;
          -webkit-transition: 1s ease opacity;
          -moz-transition: 1s ease opacity;
          transition: 1s ease opacity;
          background: rgba(255, 255, 255, 0.8);
          opacity: 0; }
        header ul li a.social {
          text-indent: -10000em;
          width: 30px;
          height: 30px;
          background-repeat: no-repeat;
          background-position: center center;
          background-size: contain;
          display: inline-block;
          -webkit-transition: 0.3s ease opacity;
          -moz-transition: 0.3s ease opacity;
          transition: 0.3s ease opacity; }
          header ul li a.social:after {
            display: none; }
          header ul li a.social:hover {
            opacity: 0.8; }
          header ul li a.social.fb {
            background-image: url(../images/facebook-f.svg); }
          header ul li a.social.ig {
            background-image: url(../images/instagram.svg); }
      header ul li.active a:after, header ul li:hover a:after {
        opacity: 1; }

footer {
  text-align: center;
  text-transform: uppercase;
  font-size: 13px;
  padding: 40px 0;
  color: #666; }
  footer p:last-child {
    margin-bottom: 0; }

#burger-blanker {
  background-color: black;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: -10;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease; }

#info .items {
  align-items: center; }

#info .info-text {
  width: 50%;
  padding-right: 40px; }

#info .info-img {
  width: 50%; }
  #info .info-img img {
    width: 100%;
    height: auto; }

#music .sound-item {
  width: 100%;
  margin-bottom: 2em; }
  #music .sound-item h3 {
    margin-bottom: 10px; }
  #music .sound-item .sound-embed {
    width: 100%;
    height: 0;
    padding-bottom: 12.5%;
    position: relative;
    margin-bottom: 1em; }
    #music .sound-item .sound-embed .sound-embed-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
      #music .sound-item .sound-embed .sound-embed-inner iframe {
        width: 100%;
        height: 100%; }

#videos .video-item {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2%; }
  #videos .video-item:nth-child(2n) {
    margin-right: 0; }
  #videos .video-item h3 {
    margin-bottom: 10px; }
  #videos .video-item .video-embed {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    position: relative; }
    #videos .video-item .video-embed .video-embed-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      overflow: hidden; }
      #videos .video-item .video-embed .video-embed-inner iframe {
        width: 100%;
        height: 100%; }
      #videos .video-item .video-embed .video-embed-inner a {
        position: absolute;
        width: 100%;
        height: 100%;
        text-indent: -100000em;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background-position: center center;
        background-size: cover; }
        #videos .video-item .video-embed .video-embed-inner a .play-btn {
          text-indent: 0;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
          #videos .video-item .video-embed .video-embed-inner a .play-btn .feather {
            width: 80px;
            height: 80px;
            fill: red;
            stroke: #e60000; }
            #videos .video-item .video-embed .video-embed-inner a .play-btn .feather polygon {
              fill: #fff;
              stroke: #fff; }

#gallery .slide {
  width: 33%;
  display: inline-block; }
  #gallery .slide img {
    width: 100%;
    height: auto;
    display: block;
    border: 5px #fff solid; }

#shows .gig {
  margin-bottom: 40px; }
  #shows .gig .gig-date {
    width: 10%;
    padding-right: 20px; }
    #shows .gig .gig-date .date-inner {
      background: #fff;
      padding: 10px;
      text-align: center;
      border-radius: 3px;
      float: left;
      margin-right: 10px;
      box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
      width: 80%;
      min-width: 60px; }
      #shows .gig .gig-date .date-inner .date-part {
        display: block;
        margin-bottom: 0;
        line-height: 1;
        font-size: 15px;
        color: #333;
        text-transform: uppercase; }
        #shows .gig .gig-date .date-inner .date-part.date-part-date {
          padding: 3px 0;
          font-size: 28px;
          font-weight: 800;
          color: #990000; }
  #shows .gig .gig-desc {
    width: 90%; }

@media screen and (max-width: 960px) {
  header {
    height: 100px; }
    header #logo {
      height: 60px; }
    header #mobile-nav {
      display: block;
      position: absolute;
      right: 30px;
      top: 38px; }
    header #burger,
    header .social {
      display: inline-block;
      vertical-align: top;
      width: 30px;
      height: 30px;
      overflow: hidden;
      text-indent: 101%;
      white-space: nowrap;
      background: url(../images/burger.svg) center center no-repeat;
      background-size: contain;
      margin-left: 20px; }
      header #burger.fb,
      header .social.fb {
        background-image: url(../images/facebook-f.svg); }
      header #burger.ig,
      header .social.ig {
        background-image: url(../images/instagram.svg); }
    header .social {
      opacity: 1;
      -webkit-transition: opacity 0.2s ease;
      -moz-transition: opacity 0.2s ease;
      transition: opacity 0.2s ease; }
    header ul {
      opacity: 0;
      position: absolute;
      -webkit-transition: opacity 0.3s ease;
      -moz-transition: opacity 0.3s ease;
      transition: opacity 0.3s ease;
      pointer-events: none;
      float: none;
      top: 70px;
      right: 0;
      width: 100%;
      height: auto;
      display: block;
      margin: 0;
      padding: 0; }
      header ul li {
        display: block;
        float: none;
        text-align: center;
        font-size: 28px; }
        header ul li a {
          display: inline-block;
          padding: 15px 0; }
          header ul li a:after {
            bottom: 15px; }
        header ul li.social {
          display: none; }
  body.menu-open {
    overflow: hidden; }
    body.menu-open #burger-blanker {
      opacity: 0.9;
      z-index: 9999;
      pointer-events: auto; }
    body.menu-open header {
      z-index: 10000; }
      body.menu-open header .social, body.menu-open header #logo {
        opacity: 0; }
      body.menu-open header #burger {
        background-image: url(../images/close.svg); }
      body.menu-open header ul {
        opacity: 1;
        pointer-events: auto; }
  section {
    padding: 20px 20px; }
    section.interstitial {
      display: none; }
  #home {
    padding-top: 145px; }
    #home #logo-text {
      margin-top: 25px; }
  #info {
    background: #eee; }
    #info .info-text {
      width: 100%;
      padding-right: 0px; }
    #info .info-img {
      width: 100%; }
  #music .sound-item .sound-embed {
    padding-bottom: 25%; }
  #videos {
    background: #eee; }
    #videos .video-item {
      width: 100%;
      margin-right: 0; }
  #shows {
    background: #eee; }
    #shows .gig .gig-date {
      width: 35%; }
    #shows .gig .gig-desc {
      width: 65%; } }
