html,body {
  font-family: Roboto-Mono, Arial, sans-serif;
}

body {
  width: 90%;
  margin: 15px auto;
}

body * {
/*  border: solid red 1px;*/
}

.screen-reader-text {
  display: none;
}

a { 
  color: white;
  transition: all 0.25s;
}

a:hover, a:focus {
  color: #b43;
}

h2 {
  font-family: Roboto-Mono, Arial, sans-serif;
  font-weight: normal;
}

header, footer section {
  font-size: 16pt;
  font-stretch: ultra-condensed;
  text-transform: uppercase;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}

header > nav, footer section > nav {
  display: flex;
  flex-flow: row nowrap;
  justify-content: left;
  align-items: center;
}

header nav *, footer section nav * {
  margin: 0 20px;
}
header a, footer section a {
  color: black;
}


.logo {
  height: 100px;
}

.instalogo {
  height: 1.5em;
}

header ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

header li {
  display: inline;
  margin: auto 0;
}

header li:before {
  content: "|";
  color: #b43;
}


main > div {
  margin: 25px 10px;
}


#welcome {
  border: solid #600 7px;
  border-radius: 100px;
  background-size: cover;
  background-image: url("https://phxchessclub.com/wp-content/uploads/2023/01/Red-Coffee-Chess-About-2.jpg");
  background-attachment: fixed;
  color: white;
  padding: 150px 20px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  align-items: center;
}
#welcome > * {
  max-width: 50%;
}
#welcome h1 {
  font-size: 25pt;
  animation: fadeslide 1s ease;
}
.blurb {
  font-size: 18pt;
  animation: fadeslide 2s ease;
}
.blurb img {
  height: 18pt;
}

.locationbtn {
  animation: fadeslide 3s ease;
  display: table;
  font-size: 20pt;
  font-weight: bold;
  border: solid white 2px;
  background-color: #b43;
  padding: 5px;
  color: white;
  border-radius: 15pt;
}
.locationbtn:hover, .locationbtn:focus {
  background-color: white;
}
.vidcontainer {
  width: 560px;
  height: 315px;
  animation: fadein 1.5s ease;
}




.abtback {
  border: solid #200 7px;
  border-radius: 100px;
  background-size: cover;  background-image: url("https://phxchessclub.com/wp-content/uploads/2023/01/Coffee-Chess-About.jpg");
  background-attachment: fixed;
}
#about {
  backdrop-filter: brightness(40%);
  color: white;
  padding: 100px 50px;
  border-radius: 90px;
}

#about h2 {
  text-align: center;
  font-size: 30pt;
}
.aboutwrap {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-evenly;
}
.aboutwrap > * {
  max-width: 60%;
}
.aboutwrap img {
  height: 200px;
}
.aboutwrap p {
  font-size: 16pt;
}

#locations {
  text-align: center;
}
#locations h2 {
  font-size: 24pt;
}

#loclist {
  display: flex;
  flex-flow: row wrap;
  /*overflow-x: scroll;*/
  justify-content: center;
  align-items: stretch;
  align-content: flex-start;
  background-color: #aaa;
  width: 90%;
  padding: 10px;
  margin: 0 auto;
}

#loclist > div {
  border-radius: 25px;
  background-color: #888;
  border: solid black 1px;
  padding: 10px;
  margin: 2px;
  min-width: 250px;
  max-width: 10vw;
  flex: 1;
}
.imgwrap {
  border: solid black 1px;
  border-radius: 50%;
  overflow: hidden;
  width: 95%;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
}
#loclist img {
  transition: all 0.35s;
  width: 100%;
  aspect-ratio: 1 / 1;
}
#loclist img:hover {
  transform: scale(1.1);
}

#loclist p {
  font-size: 16pt;
  font-weight: bold;
}
#loclist a {
  color: black;
  font-weight: normal;
}
#loclist a:hover, #loclist a:focus {
  color: #b34;
}


#tournaments {
  text-align: center;
}
#tournyimg {
  height: 250px;
}
#tournaments h3 {
  font-size: 40pt;
}
#tournaments h2 {
  font-size: 48pt;
}
#tournaments h2 > img {
  vertical-align: middle;
  height: 40pt;
}

#tournaments p {
  font-size: 32pt;
}

#tournamentblock {
  color: white;
  background-size: cover;
  font-size: larger;
  border-radius: 100px;
  background-image: url("https://phxchessclub.com/wp-content/uploads/2023/01/Phoenix-Chess-Tournaments.jpg");
  padding: 100px 50px;
  background-attachment: fixed;
}
#ticketbtn {
  font-size: 48pt;
  background: #b43;
  border: solid white 10px;
  border-radius: 40px;
  padding: 5px;
  display: inline;
  transition: all 0.25s;
}
#ticketbtn:hover, #ticketbtn:focus {
  border-color: #b34;
  background-color: white;
}



#contact {
  border: solid black 1px;
  border-radius: 100px;
  background-image: url("https://phxchessclub.com/wp-content/uploads/2023/01/Home-Background.jpg");
  background-attachment: fixed;
  background-size: cover;
  text-align: center;
}
#contact h2 {
  font-size: 28pt;
}
#contact > p {
  font-size: 16pt;
}
#contactwrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  align-items: flex-start;
}
#contactwrap > * {
  max-width: 35%;
}
#contactwrap form {
  background-color: white;
  padding: 10px;
  text-align: left;
  font-size: 14pt;
}
#contactwrap form input {
  font-size: 14pt;
}

#socials h4 {
  font-weight: bold;
}

#socials {
  font-size: 18pt;
  color: #b43;
}

#socials a { color: black; }
#socials a:hover, #socials a:focus {
  color: #b43;
}

#chessdcimg {
  max-width: 85%;
  width: 200px;
}


#copyright {
  text-align: center;
  color: #666;
  font-style: italic;
}


/*hide these elements on small screens*/
.hidemobile { display: initial; }

/* for the hamburger menu */
.hamburger {
  position: relative;
  display: none;
  width: 1.25em;
  height: 0.8em;
  margin-right: 0.3em;
  border-top: 0.2em solid #b69;
  border-bottom: 0.2em solid #b20;
}
.hamburger::before {
  content: "";
  position: absolute;
  top: 0.3em;
  left: 0px;
  width: 100%;
  border-top: 0.2em solid #b43;
}
.hamburger:hover::after, .hamburger:focus::after { content: ""; }



#snow {
  background-image: url("queen.svg"), url("king.svg"), url("rook.svg");
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  z-index: 1;
  animation: snow 1000s linear infinite;
  pointer-events: none;
}


/*For Mobile Site */
@media screen and (max-width: 640px){
  body { width: 95%; margin: 15px auto;}
  .hidemobile { display: none; }

  header {
    flex-flow: column nowrap;
    font-size: 20pt;
  }

  header nav {
    text-align: center;
    flex-flow: column nowrap;
    justify-content: center;
  }

  header nav *, footer section nav * {
    margin: 0 5px;
  }

  header ul {
    margin: 0 auto;
  }

  header li {
    display: block;
    border: solid #b43 1px;
    margin: 15px 0;
    padding: 5px;
    width: 100%;
  }

  header li:before {
    content: "";
    padding-right: 5px;
    color: #b43;
  }


  .hamburger {display: inline-block; margin: 20px;}
  .toglinks { display: none; }

  main > div { margin: 25px 0px; }

  #welcome {
    border-radius: 40px;
    padding: 50px 10px;
    flex-flow: column nowrap;
    background-attachment: scroll;
  }
  #welcome div, #welcome p {
    max-width: 100%;
    margin: 25px;
  }

  .abtback {
    background-attachment: scroll;
    border-radius: 40px;
  }

  #about {
    border-radius: 40px;
    padding: 50px 10px;
    flex-flow: column nowrap;
  }
  .aboutwrap > * {
    max-width: 100%;
  }


  #loclist > div {
    margin: 5px;
    min-width: 75%;
  }


  #tournamentblock {
    background-attachment: scroll;
    border-radius: 40px;
    padding: 50px 10px;
  }

  #tournamentblock h2 {
    font-size: 32pt;
  }

  #ticketbtn {
    font-size: 20pt;
  }


  #contact {
    border-radius: 40px;
    background-attachment: scroll;
  }

  #contactwrap {
    flex-flow: column nowrap;
    align-items: center;
  }

  #contactwrap > * {
    max-width: 90%;
  }

  #contactwrap form {
    text-align: center;
  }


}
