:root{
  --bgblue:#010511;
  --gold:#eecf62;
  
  --red:#ff0000;
  --yellow:#ffea00;
  --green:#37c104;
  --lblue:#00a8ff;
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

* {
  padding:0;
  margin:0;
  box-sizing: border-box;
  font-family:inherit;
  color:inherit;
}

img {
  max-width:100%;
  display:block;
}

.wrap {
  position:relative;
  width:1240px;
  padding:0 20px;
  max-width:100%;
  margin:0 auto;
  clear:both;
}

#burger,
#mobnav {
  display:none;
}

html {
  min-height:100%;
}

body {
  float:left;
  clear:left;
  width:100%;
  font-size:62.5%;
  background-color:var(--bgblue);
  color:#fff;
  min-height:100%;
  font-family: 'Montserrat', sans-serif;
}

#bg-vid {
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  z-index:0;
  object-fit:cover;
}

#navg {
  position:absolute;
  z-index:1;
  top:0;
  left:0;
}

header {
  position:fixed;
  z-index:100;
  left:0;
  top:0;
  width:100%;
  background-color:#001222;
}

    nav {
      float:left;
      clear:left;
      width:100%;
      position: relative;
      z-index:2;
    }
  
      nav ul {
        list-style: none;
        text-align: center;
      }

        nav ul li {
          display:inline-block;
          vertical-align: middle;
        }

          nav ul li a,
          nav button {
            float:left;
            width:100%;
            text-decoration: none;
            font-size:1.2em;
            letter-spacing: 0.2em;
            padding:1.75em 1.25em;
            text-transform: uppercase;
          }

          nav button {
            background:none;
            border:0;
            outline:transparent;
            cursor: pointer;
          }

            nav ul li a:hover,
            nav button:hover,
            .active{
              color:var(--lblue);
            }

            .active {
              font-weight:Bold;
            }

            .social {
              padding:1em 0;
            }

            .social a {
              display:inline-block;
              width:auto;
              float:left;
              clear:none;
              border:none;
              padding:0;
              margin-left:0.5em;
            }

              .social a img {
                width:20px;
              }

              .social a:hover {
                filter:grayscale(1) brightness(200%);
              }

              .social a.signup img {
                float:left;
              }

              .social a.signup span {
                float:left;
                background-color: var(--lblue);
                color: var(--bgblue);
                height: 20px;
                padding: 0.2em 0.25em;
                letter-spacing: 0;
              }

    #logo {
      display:block;
      margin-left:1em;
      width:250px;
      position: relative;
      z-index: 2;
    }
  
      #logo img {
        width:100%;
      }

.flex {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-direction:row;
  flex-direction:row;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
}

.fcw {
  float:left;
  clear:left;
  width:100%;
}

.main {
  float:left;
  clear:left;
  width:100%;
  padding: 5% 5% 0;
  position: relative;
  z-index:2;
}

  .main > .left {
    float:left;
    width:47.5%;
    position: sticky;
    top:0;
  }

  .main > .right {
    float:right;
    width:47.5%;
    text-align: center;
  }

  .main h2.tagline {
    font-size: 1.8vw;
    color: var(--lblue);
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    letter-spacing: 0.15em;
    margin-top: 1.5vw;
  }
    .tagline span {
      color: #fff;
    }

#logo-small {
  width:100%;
  margin-bottom:5vw;
}

#ed {
  width: 100%;
}

.main p,
.main li{
  font-size:1.4em;
  line-height:1.6;
  margin-bottom:1em;
}

  .main p a,
  .main li a {
  }

.main ul,
.main ol {
  margin:2em;
}

  .main li {
    padding-left:1em;
  }

.main h2,
.main h3,
.main h4,
.main h5,
.main h6 {
  font-size:2.5em;
  margin-bottom:1em;
  letter-spacing: 0.05em;
  color:var(--lblue);
}

.main h3 {
  font-size:2.2em;
}

.main h4 {
  font-size:1.9em;
}

.main h5 {
  font-size:1.6em;
}

.main h6 {
  font-size:1.3em;
}

.main td {
  font-size:1.6em;
  padding:1em;
}

  .main td p,
  .main td li {
    font-size:1em;
    margin-bottom:0;
    font-weight:300;
  }

  .main td img {
    display:inline-block;
  }

.align_left {
  float:left;
}

.align_right {
  float:right;
}

.align_center {
  text-align: center;
}

img.align_left {
  margin:0.5em 1em 1em 0;
}

img.align_right {
  margin:0.5em 0 1em 1em;
}

img.align_center {
  display:block;
  margin-left:auto;
  margin-right:auto;
}

.logo-small {
  width:30%;
  margin:5% 35%;
}

.ctas {
  margin:4em 0;
}

.cta {
  margin:0.5em;
  font-size:1.8em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: center;
  padding:0.75em 1.5em;
  text-decoration: none;
  background-color:var(--lblue);
  color:#fff;
}

  .cta:hover {
    color:var(--lblue);
    background-color:#fff;
  }
  
  footer {
    float:left;
    clear:both;
    width:100%;
    margin-top:5em;
  }
  
    footer .social {
      text-align: center;
    }
  
      footer .social a {
        float:none;
        display:inline-block;
      }

        footer .social a img {
          width:30px;
        }

.watch-box {
  display:none;
  position:fixed;
  width:100%;
  height:100%;
  left:0;
  top:0;
  background-color:rgba(0,0,0,0.7);
  text-align:center;
  z-index: 101;
}

  .watch-box .content {
    position:absolute;
    min-width:75%;
    max-width:100%;
    max-height:100%;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    background-color:var(--lblue);
    padding:1em;
  }

    .close {
      position:absolute;
      right:-1em;
      top:-1em;
      background-color:#fff;
      color:var(--lblue);
      font-size:1.8em;
      text-decoration:none;
      padding:0.5em;
      border-radius: 10em;
      width:2.25em;
      text-align: center;
    }

.main .copyright {
  font-size: 1em;
  opacity: 0.5;
}


#snipcart {
	position:fixed;
	z-index:1000;
}

@media screen and (max-width:1099px) {
  .cta {
    display: block;
    width:100%;
    margin:0 0 0.5em 0;
  }

  .logo-small {
    display:none;
  }
}

@media screen and (max-width:959px) {

  header {
    left:100%;
    transition:left 0.25s ease-out;
  }

    header.visible {
      left:0;
    }

    nav {
      padding-top:5em;
    }

    header * {
      pointer-events: initial;
    }

    nav li,
    nav li a {
      float:left;
      clear:left;
      width:100%;
    }

    nav li {
      border-bottom:1px solid #ffffff20;
    }

      nav li:last-of-type{
        border:none;
      }

    #burger {
      display:block;
      position:fixed;
      right:5%;
      top:1.5em;
      width:40px;
      z-index:101;
    }

    nav .social {
      text-align: center;
    }
  
      nav .social a {
        float:none;
        display:inline-block;
      }

        nav .social a img {
          width:30px;
        }

}

@media screen and (max-width:699px) {
  
  .main > .left,
  .main > .right {
    width:100%;
    position: static;
  }

  .main > .left {
    padding-top:5em;
  }

  .main > .right {
    padding-bottom:5%;
  }

  .main h2.tagline {
    font-size: 5vw;
  }

  .watch-box .content {
    width:95%;
    padding:0.5em;
  }

  .wrap {
    padding:0 10px;
  }
}