body{
    background: #2a2a2a;
    padding: 0;
    margin: 0;
}

a:link {
	color: #75b8ff;
    text-decoration: none;
}
a:visited {
	color: #75b8ff;
}
a:hover {
	color: #ddd;
}
a:active {
	color: #FFF;
}

.indexFullWidth{
    width: 100%;
    padding: 0;
}

.indexTopStrip{
    width: 100%;
    padding: 0;
    background-color: #1f1f1f;
}

.indexCatStrip{
    width: 100%;
    padding: 0 10px;
    background-color: #242424;
    display: none;
}
.indexWidth{
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.indexMenuBar{
    position:absolute;
    width: 100%;
    height: 70px;
    background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, .5));
    /*margin-bottom: -60px;*/
    z-index: 5;
}

.indexVideo{
    width: 100%;
    background-color: black;
}

.indexImage{
    width: 100%;
}

.promoVideo{
    width: calc(100% - 20px);
    height: 40vw;
    max-height: 512px;
    display: block;
    padding: 0 10px 0 10px;
    background-clip: content-box;
}

.indexThumb{
    width: 25%;
    float: left;
    box-sizing: border-box;
    padding: 0px 10px 10px 10px;
    margin: 0;
    top:0;
    position: relative;
    cursor:pointer;
    height: 0;
    padding-bottom: calc(18.25% + 10px);
    background-color: black;
    background-clip: content-box;
}

.indexThumbImage{
    width: 100%;
}

.vidThumb{
    width: 100%;
}

.indexLogo{
    float: left;
    position:absolute;
    margin: 26px 0 0 10px;
    max-width: 343px;
    height: 80px;
}

.indexLogoImg{
    width: 100%;
}

.playIcon{
    position: absolute;
    text-align: center;
    width: 40%;
    height: 40%;
    bottom:36%;
    right:33%;
    opacity: 0.35;
}

.playIconSmall{
    position: absolute;
    text-align: center;
    width: 20%;
    height: 20%;
    bottom:16%;
    right:4%;
    opacity: 0.35;
}

.indexWidthText{
    padding: 10px 0;
    width: 100%;
    position: relative;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    text-align: center;
}

.indexTagLine{
    padding: 10px 10px 10px 10px;
    margin-bottom: 5px;
    width: 100%;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 24px;
    text-align: center;
    letter-spacing: 2px;
    box-sizing: border-box;
    
    animation-play-state: paused;
    animation-name: colorHighlight;
    animation-duration: 2s;
}

.joinText{
    padding: 2px;
    width: 100%;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    letter-spacing: 1px;
    box-sizing: border-box;
}

.joinTextSize{
    font-size: 24px;
    transform: translate(20px);
}

@keyframes colorHighlight{
    0% {background-color: rgba(65, 65, 65, 0);}
    1% {background-color: 3176bf;}
    30% {background-color: rgba(65, 65, 65, 0);}
    35% {background-color: 3176bf;}
    65% {background-color: rgba(65, 65, 65, 0);}
    70% {background-color: 3176bf;}
    100% {background-color: rgba(65, 65, 65, 0);}
}

.textTitle{
    position:relative;
    display: inline-block;
    text-decoration: none;
    padding-left: 10px;
    padding-right: 10px;
    color: #ffffff;
    font-family: Squada One, sans-serif;
    font-size: 42px;
    line-height: 60px;
    letter-spacing: 1px;
    text-align: left;
}

.textTitle2{
    position:relative;
    display: inline-block;
    text-decoration: none;
    padding-left: 10px;
    padding-right: 10px;
    color: #ffffff;
    font-family: Squada One, sans-serif;
    font-size: 42px;
    line-height: 60px;
    letter-spacing: 1px;
    text-align: left;
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.indexMenuButton{
    height: 50px;
    float:right;
    padding: 0 25px 0 25px;
    margin: 5px 5px 5px 5px;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    cursor:pointer;
}
.indexMenuButton:hover{
    background-color: rgba(128, 128, 128, 1);
}

.signupButton{
    height: 50px;
    width: calc(100% - 10px); 
    box-sizing: border-box;
    padding: 0 25px 0 25px;
    margin: 5px 5px 5px 5px;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 24px;
    text-align: center;
    line-height: 50px;
    cursor:pointer;
}
.signupButton:hover{
    background-color: rgba(128, 128, 128, 1);
}

.blueButton{
    background-color: #0f4b8a;
}
.blueButton:hover{
    background-color: #3176bf;
}

.sideButton{
    margin-right: 10px;
}

.muteButton{
    position: absolute;
    top: 0;
    left: 10px;
    width: 60px;
    height: 60px;
    padding:10px;
    box-sizing: border-box;
    opacity: 0.5;
}

.categoryButton{
    height: 50px;
    display: inline-block;
    margin: 0 0 4px 0;
    width: calc(12.5% - 6px);
    text-decoration: none;
    color: #ffffff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    line-height: 50px;
    background-color: rgba(64, 64, 64, 1);
    box-sizing:	border-box;
    cursor:pointer;
}
.categoryButton:hover{
    background-color: #000000;
}

.debugText{
    height: 150px;
    padding: 10px;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    text-align: left;
    background-color: black;
}

.indexWideButton{
    height: 60px;
    margin-top: 10px;
    margin-bottom: 20px;
    margin-left: 10px;
    width: calc(100% - 20px);
    position: relative;
    text-decoration: none;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
    font-size: 24px;
    text-align: center;
    line-height: 60px;
    background-color: #0f4b8a;
    cursor:pointer;
}
.indexWideButton:hover{
    background-color: rgba(128, 128, 128, 1);
}


.footer{
    width: 100%;
    height: 50px;
    padding: 10px;
    float:left;
    
    background-color: #222222;
    
    color: #fff;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 14px;
    text-align: center;
    box-sizing:	border-box;
}

.signupFrame{
    display: none;
    border: 5px solid #0f4b8a;
    padding: 20px;
    position:fixed;
    top: 50%;
    transform: translateX(-210px) translateY(-290px);
    left: 50%;
    width: 420px;
    height: 580px;
    background-color: rgba(0, 0, 0, 0.9);
    box-sizing: border-box;
    box-shadow: 0px 0px 40px #000000;
    background-image: url(../images/index2/signupbackground.jpg);
    background-size: 100%;
    background-repeat: no-repeat;
}

.signupClose{
    float: right;
    transform: translate(15px, -15px)
}


@media (max-width: 1280px) {
    .indexLogo{
        margin: 26px 0 0 22px;
    }
}

@media (max-width: 980px) {
    
    .indexThumb{
        width: 33.3%;
        padding-bottom: calc(24.75% + 10px);
    }
    .categoryButton{
        width: calc(25% - 8px)
    }
}

@media (max-width: 800px) {

    .indexThumb{
        padding: 5px;
        padding-bottom: 24.75%;
    }
    .promoVideo{
        width: calc(100% - 10px);
        padding: 0 5px 0 5px;
    }
    .textTitle{
        width: 100%;
        padding: 0;
        line-height: 50px;
        text-align: center;
        background-color: #2a2a2a;
    }
    .leftButton{
        float: left;
    }
    .sideButton{
        margin-right: 5px;
    }
    .indexCatStrip{
        padding: 5px;
    }
    .categoryButton{
        width: calc(50% - 7px);
    }
    .indexTagLine{
        padding: 10px 10px 5px 10px;
        font-size: 22px;
        letter-spacing: 1px;
    }
    .indexWideButton{
        width: 100%;
        margin: 0;
    }
    .playIconSmall{
        bottom:12%;
    }
}

@media (max-width: 580px) {
    .promoVideo{
        height: 54vw;
        max-height: 720px;
        margin-left: -21%;
        width: 140%;
        background-color: black;
        margin-bottom: 0;
        overflow: hidden;
    }

    .indexLogo{
        margin: 21px 0 0 20px;
    }
    
    .indexThumb{
        width: 50%;
        padding-bottom: 37.5%;
        height: auto;
        padding: 5px;
    }
    
    .indexMenuButton{
        height: 50px;
        padding: 0 10px 0 10px;
        line-height: 50px;
    }
    
    .indexMenuBlueButton{
        height: 50px;
        margin: 5px 5px 0 5px;
        padding: 0 15px 0 15px;
        line-height: 50px;
    }
    
    .textHide{
        display: none;
    }
}

@media (max-width: 420px) {

    .textTitle{
        width: 100%;
        line-height: 60px;
        text-align: center;
        font-size: 36px;
    }
    
    .indexLogo{
        margin: 23px 0 0 20px;
        width: 200px;
    }
    
    .indexMenuButton{
        padding: 0 10px 0 10px;
        font-size: 14px;
    }
    
    .indexMenuBlueButton{
        padding: 0 10px 0 10px;
        font-size: 14px;
    }
    
    .joinText{
        font-size: 16px;
    }
    

    .joinTextSize{
        font-size: 20px;
        transform: translate(20px);
    }
    
    .signupFrame{
        width: 100%;
        height: 100%;
        transform: translateX(-50%) translateY(-50%);
    }
}
