/* --- generic styles --- */
* {
  box-sizing: border-box;
  font-family: inherit;
}

body {
  background-color: #01194a;
  color: #2b312b;
  font-family: monospace;
  margin: 0;
  background-image: url("/img/bg.gif");
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-position: center;
}

section {
  padding: 0.5em;
}

h1 {
  margin: 0;
  margin-bottom: 0.5em;
}

a {
  color: inherit;
  text-decoration: none;
}

/* --- components --- */
.nav {
  display: flex;
  justify-content: center;
}
.nav a {
  padding: 2px 4px;
  opacity: 0.75;

  &:after {
    content: " /";
    opacity: 0.5;
  }

  &:last-child:after {
    content: "";
  }

  &:hover {
    opacity: 1;
  }
}

.content {
  background: rgba(0, 0, 0, 0.25);
  color: #fefefe;
  display: grid;
  place-items: center;
  text-align: center;
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 1rem;
  border-radius: 3px;
  min-width: 300px;
  max-width: 90%;
}

.mediabtn {
  background: transparent;
  border: none;
  cursor: pointer;
  opacity: 0.85;
  transition: 0.25s all;

  &:hover {
    opacity: 1;
  }
}

.row {
  display: flex;
  flex-direction: row;

  &.aic {
    align-items: center;
  }
  &.aie {
    align-items: flex-end;
  }
  &.jcc {
    justify-content: center;
  }
  &.jcsb {
    justify-content: space-between;
  }
  &.jcsa {
    justify-content: space-around;
  }

  &.gap-1 {
    gap: 0.5rem;
  }
  &.gap-2 {
    gap: 1rem;
  }
  &.gap-3 {
    gap: 1.5rem;
  }
  &.gap-4 {
    gap: 2rem;
  }
}

/* mobile */
@media (max-width: 600px) {
  .row {
    flex-direction: column;
  }
}
