:root {
  --clr-bg-200: hsl(0, 0%, 13%);
  --clr-bg-150: hsl(30, 7%, 8%);
  --clr-bg-100: hsl(0, 0%, 0%);
  --clr-neutral-600: 	hsl(0, 3%, 70%);
  --clr-neutral-900: hsl(0, 0%, 93%);
  --clr-accent-700: hsl(44, 94%, 61%);
  --clr-accent-900: hsl(44, 94%, 75%);
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: var(--clr-neutral-900);
  color: var(--clr-neutral-900);
  margin: 0;
  padding: 0;
  max-width: 100%;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
}

flex-container {
  display: flex;
}

center-text {
  text-align: center;
}

h1 {
  font-family: Goldman, cursive;
  font-size: 4.75em;
  line-height: 1.5em;
}

.section-divide {
  background-color: var(--clr-neutral-900);
}

p {
  font-size: 1.3em;
  line-height: 1.5em;
  letter-spacing: .05em;
}


/*NAV*/

.nav-flex {
  background-color: var(--clr-bg-100);
  display: flex;
  height: 5vh;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  padding: .5em .5em;
  top: 0;
  width: 100%;
}

.flex-nav-flex {
  text-align: left;
}

.flex-nav-flex1 {
  width: 30%;
}

.flex-nav-flex1 h1 {
  text-align: left;
  padding-left: .5em;
  font-size: 3em;
  width: 100%;
  min-width: 500px;
}

.flex-nav-flex1 h1 .yellow-text {
  color: var(--clr-accent-700);
}

.nav-content {
  padding-right: .5em;
}

.nav-content a {
  text-decoration: none;
  margin: 0 3em;
  padding-bottom: .2em;
  color: var(--clr-accent-700);
  font-size: 1.1em;
  transition: 200ms ease;
  -webkit-transition: 200ms ease;
  -moz-transition: 200ms ease;
  -o-transition: 200ms ease;
}

.nav-content a:hover {
  color: var(--clr-accent-900);
  border-bottom: 3px solid var(--clr-neutral-900);
  border-radius: 2px;
}

.nav-content .icon {
  display: none;
}

@media only screen and (max-width: 1500px) {
  .nav-content a {
    margin: 0 2.5em;
    font-size: .95em;
  }
  .flex-nav-flex1 h1 {
    font-size: 3em;
  }
}


@media only screen and (max-width: 1280px) {
  .nav-content a {
    margin: 0 1.5em;
    font-size: 1em;
  }
  .flex-nav-flex1 h1 {
    font-size: 2em;
  }
}

@media only screen and (max-width: 850px) {
  .nav-content a {
    display: none;
  }
  .nav-content a.icon {
    float: right;
    display: block;
  }
  .nav-content a.icon:hover {
    border: none;
  }
  .nav-content.responsive {
    position: relative;
    margin-top: 25vh;
  }
  .nav-content.responsive a.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .nav-content.responsive a:not(.icon) {
    float: none;
    display: block;
    text-align: right;
    padding: 1em 1.5em;
    background-color: var(--clr-bg-100);
  }
}

@media only screen and (max-width: 700px) {
  .nav-content a {
    display: none;
  }
  .nav-content a.icon {
    float: right;
    display: block;
  }
  .nav-content a.icon:hover {
    border: none;
  }
  .nav-content.responsive {
    position: relative;
    margin-top: 35vh;
  }
  .nav-content.responsive a.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .nav-content.responsive a:not(.icon) {
    float: none;
    display: block;
    text-align: right;
    padding: 1em 1.5em;
    background-color: var(--clr-bg-100);
  }
}


/*HOME*/

#home {
  height: 95vh;
}

.home-background {
  background-image: url('../images/homeBackground.svg');
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
}

.home-flex {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 30 / 9;
}

.flex-home-flex {
  text-align: center;
  margin-top: 3em;
}

.flex-home-flex h1 {
  font-size: 3.5em;
  margin-bottom: 2em;
}

.home-button {
  text-decoration: none;
  padding: .6em 1em;
  border-radius: 10px;
  border: 3px solid var(--clr-neutral-900);
  background-color: rgba(0, 0, 0, 0);
  box-shadow:
    0 0 10px 5px var(--clr-accent-700),
    inset 0 0 10px 5px var(--clr-accent-700);
  color: var(--clr-neutral-900);
  font-size: 1.5em;
  font-weight: bolder;
  transition: 200ms ease;
  -webkit-transition: 200ms ease;
  -moz-transition: 200ms ease;
  -o-transition: 200ms ease;
}

.home-button-container a:hover {
  box-shadow:
    0 0 15px 5px var(--clr-accent-700),
    inset 0 0 15px 5px var(--clr-accent-700);
}

@media only screen and (min-width: 3000px) {
  #home {
    height: 90vh;
  }
  .home-background {
    background-image: url(../images/homeBackgroundUltrawide.svg);
  }
}

@media only screen and (max-width: 1500px) {
  #home {
    height: 70vh;
  }
  .home-background {
    background-image: url(../images/homeBackground2.svg);
  }
}

@media only screen and (max-width: 1400px) {
  #home {
    height: 90vh;
  }
  .home-background {
    background-image: url(../images/homeBackground3.svg);
  }
}

@media only screen and (max-width: 900px) {
  #home {
    height: 90vh;
  }
  .home-background {
    background-image: url(../images/homeBackground4.svg);
  }
}

@media only screen and (max-width: 710px) {
  #home {
    height: 50vh;
    min-height: 200px;
  }
  .home-background {
    background-image: url(../images/homeBackground5.svg);
  }
  .flex-home-flex h1 {
    font-size: 2em;
  }
  .home-button-container {
    margin-top: 3em;
  }
  .home-button {
    padding: .4em .75em;
    font-size: 1.15em;
  }
}

@media only screen and (max-width: 350px) {
  #home {
    height: 60vh;
  }
  flex-home-flex h1 {
    font-size: 1.85em;
  }
  home-button-container {
    margin-top: 1em;
  }
}




/*GAME*/

#game {
  background-color: var(--clr-neutral-900);
  color: var(--clr-bg-150);
}

.game-flex {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.flex-game-flex {
  width: 60%;
  text-align: center;
}

.flex-game-flex p {
  text-align: left;
}

.flex-game-flex1 h1 {
  margin-top: 2em;
  margin-bottom: .75em;
}

.flex-game-flex2 {
  margin-top: 5em;
  min-width: 700px;
}

.flex-game-flex3 {
  aspect-ratio: 16 / 9;
  margin-top: 5%;
}

.flex-game-flex3 video {
  width: 80%;
  min-width: 300px;
}

@media only screen and (max-width: 1270px) {
  .flex-game-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-game-flex2 p {
    font-size: 1em;
  }
}

@media only screen and (max-width: 700px) {
  .flex-game-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-game-flex2 {
    width: 85%;
    min-width: 200px;
  }
  .flex-game-flex2 p {
    font-size: 1em;
  }
  /*WILL FIX WHEN TRAILER ADDED !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (a very important comment mhm) uhhhhhhhhhhhhhhhhhhhhhhhh*/
  .flex-game-flex3 video {
    height: 50%;
    min-height: 100px;
    width: 90%;
    min-width: 170px;
    margin-top: 5em;
    margin-bottom: 10em;
  }
}

@media only screen and (max-width: 400px) {
  .flex-game-flex1 h1 {
    font-size: 3em;
  }
  .flex-game-flex2 {
    width: 95%;
  }
}


/*PLAY*/

#play {
  background-color: var(--clr-neutral-900);
  color: var(--clr-bg-150);
}

.play-flex {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.flex-play-flex {
  width: 60%;
  text-align: center;
}

.flex-play-flex1 h1 {
  margin-bottom: .75em;
  text-align: center;
}

.flex-play-flex2 {
  margin-top: 5em;
}

.flex-play-flex3 {
  margin: 7.5em 0;
}

.flex-play-flex3 a {
  color: var(--clr-neutral-900);
  background-color: var(--clr-accent-700);
  border-radius: .35em;
  border: 2px solid hsl(44, 94%, 55%);
  padding: .6em 1em;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.5em;
  text-shadow: 1.5px 1.5px 1px rgba(0, 0, 0, 0.3);
  transition: 300ms ease;
  -webkit-transition: 300ms ease;
  -moz-transition: 300ms ease;
  -o-transition: 300ms ease;
}

.flex-play-flex3 a:hover {
  border: 2px solid var(--clr-bg-100);
  background-color: var(--clr-neutral-900);
  color: var(--clr-bg-100);
}

@media only screen and (max-width: 1270px) {
  .flex-play-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-play-flex2 p {
    font-size: 1em;
  }
  .flex-play-flex3 a {
    padding: .4em .75em;
  }
}

@media only screen and (max-width: 700px) {
  .flex-play-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-play-flex2 {
    width: 85%;
    min-width: 200px;
  }
  .flex-play-flex2 p {
    font-size: 1em;
  }
}

@media only screen and (max-width: 400px) {
  .flex-play-flex2 {
    text-align: center;
  }
  .flex-play-flex1 h1 {
    font-size: 3em;
  }
  .flex-play-flex2 {
    width: 95%;
  }
}


/*DESCRIPTION*/

#description {
  background-color: var(--clr-neutral-900);
  color: var(--clr-bg-150);
  max-width: 2560px;
}

.description-flex {
  display: flex;
  flex-flow: row;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  margin-bottom: 5%;
}

.flex-description-flex1 {
  width: 50%;
  margin-left: 4em;
}

.flex-description-flex1 h1 {
  margin-bottom: 2em;
}

.flex-description-flex1 p {
  margin-top: 4em;
}

.description-side_container {
  display: flex;
  flex-flow: row;
  justify-content: center;
  background-color: var(--clr-bg-150);
}

.flex-side-bound {
  width: 5vh;
}

.flex-description-flex2 {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 90vh;
}

.flex-description-flex2 .flex-bound {
  height: 10vh;
}

.flex-description-flex2 img {
  aspect-ratio: 16 / 11;
  border-radius: 2px;
  max-width: 500px;
  width: 100%;
  box-shadow:
    0 0 12.5px 5px var(--clr-accent-900);
}

@media only screen and (max-width: 1270px) {
  .flex-description-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-description-flex1 p {
    font-size: 1em;
  }
  .flex-description-flex2 {
    width: 40%;
    height: 60vh;
    min-width: 200px;
    min-height: 400px;
  }
}

@media only screen and (max-width: 1020px) {
  .flex-description-flex1 h1 {
    font-size: 3em;
  }
  .flex-description-flex1 p {
    font-size: .9em;
  }
  .flex-description-flex2 {
    width: 40%;
    height: 60vh;
    min-width: 200px;
    min-height: 400px;
  }
}

@media only screen and (max-width: 770px) {
  .home-background {
    background-attachment: scroll;
  }
  .description-flex {
    flex-flow: column;
    justify-content: center;
  }
  
  .flex-description-flex1 {
    width: 80%;
    margin-left: 2em;
    min-width: 150px;
  }
  .mobile-display-none {
    display: none;
  }
  .flex-description-flex1 h1 {
    margin-bottom: 2em;
  }
  
  .flex-description-flex1 p {
    margin-top: 4em;
  }
  
  .flex-description-flex2 {
    width: 0%;
    height: 0%;
    min-width: 0;
    min-height: 0;
  }
}

@media only screen and (max-width: 400px) {
  .flex-description-flex1 {
    margin-left: 0;
  }
  .flex-description-flex1 h1 {
    margin-bottom: 2em;
    font-size: 2.5em;
  }
}


/*CONTACT*/

#contact {
  background-color: var(--clr-neutral-900);
  color: var(--clr-bg-150);
  max-width: 2560px;
}

.contact-flex {
  display: flex;
  flex-flow: row-reverse;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}

.flex-contact-flex1 {
  width: 50%;
  margin-right: 4em;
  text-align: right;
}

.flex-contact-flex1 p {
  margin-top: 5em;
}

.flex-contact-flex2 {
  width: 40%;
  min-width: 400px;
  height: 100vh;
  min-height: 750px;
  background-color: var(--clr-bg-150);
}

/*****************************************/
/*fix later - being a pain*/
.contact-container {
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-end;
}

.member .role-text {
  font-weight: 600;
  font-size: 1.15em;
  margin-bottom: -5%;
}

.member p {
  font-weight: 500;
  font-size: .95em;
}

.member a {
  color: #333;
  font-size: .85em;
}

.member p, .member a {
  line-height: 0;
}

@media only screen and (max-width: 1270px) {
  .flex-contact-flex1 h1 {
    font-size: 3.25em;
  }
  .flex-contact-flex1 p {
    font-size: 1em;
  }
  .flex-contact-flex2 {
    width: 40%;
    height: 60vh;
    min-width: 200px;
    min-height: 400px;
  }
}

@media only screen and (max-width: 700px) {
  .contact-flex {
    flex-flow: column;
    justify-content: center;
  }
  
  .flex-contact-flex1 {
    width: 80%;
    margin-left: 4em;
  }
  
  .flex-contact-flex1 h1 {
    margin-bottom: 2em;
  }
  
  .flex-contact-flex1 p {
    margin-top: 4em;
  }
  
  .flex-contact-flex2 {
    width: 0%;
    height: 0%;
    min-width: 0;
    min-height: 0;
  }
}

@media only screen and (max-width: 400px) {
  .flex-contact-flex1 h1 {
    margin-bottom: 2em;
    font-size: 2.5em;
  }
}


/*FOOTER*/

/*Placeholder until footer content is figured out*/
#footer {
  background-color: var(--clr-bg-100);
  color: var(--clr-neutral-900);
}

.footer-flex {
  display: flex;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 20vh;
  margin-top: 10em;
}

