:root {
  --color-brown-dark: rgb(163, 150, 131);
  --color-gray-dark: rgb(74, 76, 97);
  --color-gray-medium: rgb(120, 118, 132);
  --color-gray-light: rgb(216, 216, 214);
}

@font-face {
  font-family: "ZenMasters";
  src: url("/client/static/ZenMasters.ttf");
}

@font-face {
  font-family: "PokemonClassic";
  src: url("/client/static/PokemonClassic.ttf");
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;

  image-rendering: pixelated;
}

body {
  padding: 0 10vw 100vw;
  padding-bottom: 100vw;

  background: url("/client/images/background.png") no-repeat,
    var(--color-gray-dark);
  background-size: contain;
  background-position-y: bottom;

  color: var(--color-gray-light);
  font-family: PokemonClassic;
  font-size: min(2vmax, 28px);
  text-align: center;
}

h1 {
  font-size: 6vmax;
  font-weight: normal;
  text-transform: lowercase;
}

p {
  margin-bottom: 5vmax;
}

em,
a {
  color: var(--color-brown-dark);
}

section {
  max-width: 1600px;
  margin: 0 auto;
  padding-top: 5vmax;

  border-top: 5px solid var(--color-gray-medium);
}
section:first-of-type {
  border-top: none;
}

ol,
ul {
  margin-bottom: 5vmax;

  display: inline-block;

  text-align: left;
}

ol {
  list-style: none;
}

ul {
  list-style: square;

  font-size: 1.5vmax;
}

ul li {
  margin-bottom: 3vmax;
}

select,
input,
textarea {
  padding-bottom: 4px;

  outline: none;
  border: none;
  border-bottom: 2px dashed var(--color-brown-dark);
  background: transparent;

  color: var(--color-brown-dark);
  font-family: inherit;
  font-size: inherit;

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

select::-ms-expand {
  display: none;
}

input,
textarea {
  width: 100%;
  margin-bottom: 5vmax;
}
input:last-child {
  margin-bottom: 0;
}
input::placeholder,
textarea::placeholder {
  color: var(--color-brown-dark);
  font-style: italic;
}

button {
  width: 100%;
  padding: 1vmax;

  outline: none;
  border: 2px solid var(--color-brown-dark);
  background: transparent;
  cursor: pointer;

  color: var(--color-brown-dark);
  font-family: inherit;
  font-size: inherit;
}

.hidden {
  display: none;
}

.announcement {
  margin: 100px auto;

  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2vmax;

  font-family: ZenMasters;
}

.announcement img {
  width: 15vmax;
}

.announcement p {
  margin-top: 6vmax;
  margin-bottom: 0;
}

.announcement a {
  margin-top: 6vmax;

  font-family: PokemonClassic;
  font-size: 1.5vmax;
  text-transform: lowercase;
}

.announcement a .info {
  display: block;

  font-family: ZenMasters;
  font-size: 4vmax;
}

.guest {
  margin-bottom: 5vmax;
}

#size-test {
  position: absolute;
  left: 0;
  transform: translateX(-200%);
  opacity: 0;
}
