/*** 1. GLOBAL STYLES & FONT ***/
html,
body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}

@font-face {
  font-family: dotMatrix;
  /*src: url(http://missconceptions.net/fonts/dotmatrix.woff2);*/
  src: url(https://cdn.glitch.global/0a05193e-5450-4c22-b4af-ad0f7a53cd59/dotmatrix.woff2?v=1723643881582);
}

body {
  background-color: rgb(255, 255, 0);
  background-image: url("background-animTrans.gif");
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed; /* Keeps background still while content scrolls */
  
  margin: 0;
  font-family: "Archivo Narrow", sans-serif;
  font-style: normal;
  overflow-x: hidden; /* Prevents side-scrolling caused by rotated elements */
}

/*** 2. LAYOUT WRAPPER ***/
.wrapper {
  min-height: 87vh;
  display: grid;
  grid-template-columns: 1fr; 
  gap: 1rem;
  background: transparent; 
}

/* SIDE-BY-SIDE DESKTOP FORMAT */
@media (min-width: 769px) {
  .wrapper {
    grid-template-columns: 1fr 1fr;
    padding: 0;
    align-items: start; 
  }
}

/*** 3. HEADER AND HEADINGS ***/
header {
  background-color: rgb(0, 0, 0, 0.75);
  color: #ffffff;
  text-align: center;
  padding: 2rem 1rem;
  font: 400 36px dotMatrix, sans-serif;
  font-size: clamp(1.5rem, 8vw, 2.5rem);
}

h1 {
  rotate: 3deg;
  color: rgb(141, 67, 218);
}

h2 {
  font-size: 1.5rem;
  letter-spacing: 0.5rem;
  rotate: 1.5deg;
  text-align: center;
  text-shadow: #000000 2px 0 2rem; /* color, x, y, radius */
}

h3 {
  font-size: clamp(1.2rem, 5vw, 2.5rem);
  text-align: center;
  line-height: 3rem;
}

/*** 4. LINKS & FORM ***/
a:link,
a:visited {
  text-decoration: none;
  color: #fae73e;
}

a:hover,
a:active {
  text-decoration: none;
  color: #cccccc;
}

.signUp {
  text-align: left;
  color: rgba(255, 255, 0, 0.8);
  font-size: 1.5rem;
  text-transform: uppercase;
  line-height: 2rem;
}

.form-wrapper {
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}

.form-content {
  padding: 10px;
}

label {
  display: block;
  margin-bottom: 5px;
}

input[type="text"] {
  width: 100%;
  padding: 10px;
  border: 1px solid #cccccc;
  margin-bottom: 15px;
}

button {
  color: #000000;
  padding: 2rem;
  margin: 1rem 0;
  border: none;
  border-radius: 1rem;
  cursor: pointer;
  line-height: 2rem;
}

button,
input {
  font-family: inherit;
  font-size: 100%;
  background-color: rgb(255, 255, 0, 0.9);
  border: 1px solid #000000;
  box-sizing: border-box;
  border-radius: 4px;
  padding: 0.5rem 1rem;
  transition: 500ms;
}

button:hover {
  background-color: rgb(141, 67, 218, 0.9);
  color: #cccccc;
}

.content-members {
  width: 100%;
  max-width: 620px;
  text-align: center;
  margin: 0 auto;
  position: relative;
  font-size: 1.5rem;
  
  display: grid;
  grid-template-areas: 
    "shirt"
    "list";
  align-items: end; 
}

.content-members a {
  grid-area: shirt;
  z-index: 10;
  position: relative;
  display: block;
  border: 0;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

#membersList {
  grid-area: list;
  width: 100%;
  box-sizing: border-box;
  min-height: 100vh;
  text-align: left;
  padding: 4rem 2rem 2rem 2rem; 
  margin-top: -4.05rem; 
  background: #000000;
  color: #cccccc;
  font-size: 1rem;
  z-index: 1; 

}

.membersFrom {
  rotate: 0.3deg;
  color: #bfb6cc;
  display: block;
  margin: -1rem 0;
}
header {
  margin: 0; 
  width: 100%; 
}

h1 {
  margin: 0; 
  rotate: 3deg;
  color: rgb(141, 67, 218);
}

#printMembers {
  column-count: 1; 
  column-gap: 2rem;
  background-color: #af74ed;
  background-image: linear-gradient(25deg, #af74ed, #F3F3F4);
  background-size: 100%;
  -webkit-background-clip: text;
  -moz-background-clip: text;
  -webkit-text-fill-color: transparent; 
  -moz-text-fill-color: transparent;
  width: 100%;
  padding: 0 auto;
  font-size: clamp(1.2rem, 2vw, 2.5rem);
  line-height: 1.4;

  
}



.nickname {
  font-family: 'Sixtyfour', cursive; /* Matches the font linked in your head */
  font-family: "New Rocker", system-ui; /* might change this later */
  font-weight: 400;
  font-style: normal;
  color: #af74ed; 
  font-size: 1rem;
  /*font-style: italic;*/
  padding: 0 0.3rem; /* Adds a little breathing room around the nickname */
}

@media (max-width: 768px) {
  header {
    padding: 2rem 1rem;
    rotate: 0deg;
  }

  h1, h2 {
    rotate: 0deg;
  }

  h1 { font-size: 1.8rem; }
  h2 { font-size: 1.1rem; letter-spacing: 0.2rem; }
  h3 { font-size: 1.4rem; line-height: 1.8rem; }

  .wrapper {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .form-wrapper {
    width: 90%;
  }

  #membersList {
    padding: 3rem 1rem 1rem 1rem;
    width: 100%;
    margin-top: -3rem;
  }

  .nickname {
    font-size: 0.65rem;
    display: inline-block;
  }

  #printMembers {
    font-size: 6vw; 
  }
}

@media (max-width: 600px) {
  .wrapper {
    grid-template-columns: 1fr;
  }

}

  @media (max-width: 1024px) {
  #printMembers {
    column-count: 2; /* Fill the black box width by splitting the list */
  }
}