/* Basic style */
* {
  box-sizing: border-box;
}
body {
  --primary: #fff;
  --secondary: #050840;
  --highlight-primary: #7ce7c9;
  --highlight-secondary: #9d7beb;
  --radius: 0.5rem;
  --pill: 2rem;
  --line: 0.1rem;

  margin: 2rem;
  padding: 0;
  font-family: 'Open Sans', sans-serif;
  font-size: 1rem;
  background: var(--secondary);
}
h1, h2, p, a {
  color: var(--primary)
}
li {
  font-size: 2em;
  display: inline-block;
  a {
    display: inline-block;
    margin: 0.2em;
    padding: 0.4em 0.8em;
    background: var(--secondary);
    color: var(--highlight-primary);
    border: var(--line) solid var(--highlight-primary);
    border-radius: var(--pill);
    font-weight: normal;
    text-decoration: none;
    &:hover, &:focus {
      color: var(--primary);
      border-color: var(--primary);
    }
  }
}


/* UI Event Classes */

/* Jump animation on the Design link */
a[href="#design"] {
  position: relative;
  background: var(--highlight-secondary);
  color: var(--secondary);
  border-color: var(--secondary);
}

.jump {
  animation-name: jump;
  animation-timing-function: cubic-bezier(0.28, 0.84, 0.42, 1);
  animation-duration: 1.2s;
  animation-iteration-count: 1;
}

@keyframes jump {
  0% {
    transform: scale(1, 1) translateY(0);
  }
  10% {
    transform: scale(1.1, 0.9) translateY(0);
  }
  30% {
    transform: scale(0.9, 1.1) translateY(-5rem) rotate(10deg);
  }
  50% {
    transform: scale(1.05, 0.95) translateY(0);
  }
  57% {
    transform: scale(1, 1) translateY(-0.5rem) rotate(-2deg);
  }
  64% {
    transform: scale(1, 1) translateY(0);
  }
  100% {
    transform: scale(1, 1) translateY(0);
  }
}

/* Hieronder komen jouw animaties en stijlen */

.scale {
  animation-name: scale;
  animation-timing-function: ease;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
}

@keyframes scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}

.transform {
  animation-name: transform;
  animation-timing-function: ease;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
}

@keyframes transform {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-50px);
  }
  100% {
    transform: translateY(0px);
  }
}

.shake {
  animation-name: shake;
  animation-timing-function: ease;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
}

@keyframes shake {
  0% {
    transform: translateX(0px);
  }
  10% {
    transform: translateX(-10px);
  }
  20% {
    transform: translateX(10px);
  }
  30% {
    transform: translateX(-10px);
  }
  40% {
    transform: translateX(10px);
  }
  50% {
    transform: translateX(-10px);
  }
  60% {
    transform: translateX(10px);
  }
  70% {
    transform: translateX(-10px);
  }
  80% {
    transform: translateX(10px);
  }
  90% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0px);
  }
}

.focus:focus {
  animation-name: focus;
  animation-timing-function: linear;
  animation-duration: 1.5s;
  animation-iteration-count: 1;
}

@keyframes focus {
  0% {
    border-color: white;
    color: white;
  }
  25% {
    border-color: red;
    color: red;
  }
  50% {
    border-color: green;
    color: green;
  }
  75% {
    border-color: blue;
    color: blue;
  }
  100% {
    border-color: white;
    color: white;
  }
}

.rotate {
  animation-name: rotate;
  animation-timing-function: ease;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
}

@keyframes rotate {
  0% {
    transform: rotate(0turn);
  }
  100% {
    transform: rotate(1turn);
  }
}

.rotateUp {
  animation-name: rotateUp;
  animation-timing-function: ease;
  animation-duration: 1s;
  animation-iteration-count: 1;
}

@keyframes rotateUp {
  0% {
    transform: rotateX(0deg);
  }
  100% {
    transform: rotateX(360deg);
  }
}

.rotateDown {
  animation-name: rotateDown;
  animation-timing-function: ease;
  animation-duration: 1s;
  animation-iteration-count: 1;
}

@keyframes rotateDown {
  0% {
    transform: rotateX(0deg);
  }
  100% {
    transform: rotateX(-360deg);
  }
}

#interface {
    transition: transform 10s ease-out;
}

.balloon-big {
    transform: scale(20);
}

#interaction {
    background: radial-gradient(circle at var(--x, 50%) var(--y, 50%), rgba(0, 0, 0, 0.462), #7ce7c9);
    transition: background 0.05s ease;
}
