
@import url(https://fonts.googleapis.com/css?family=Squada+One);
* {
  box-sizing: border-box;
}


nav {
  padding: 18px;
  position: fixed;
  bottom: 50px;
  height: 55px;
  left: 50%;
  width: 800px;
  margin-left: -400px;
  z-index: 3;
}
nav .wrapper {
  padding: 0;
  width: 785px;
}
nav .wrapper, nav svg {
  height: 100%;
}
nav #accent {
  margin-right: 15px;
  cursor: pointer;
  height: 20px;
  width: 30px;
  float: left;
}
nav .nodes {
  position: relative;
  margin-top: -5px;
  margin-left: 5px;
  float: left;
}

.line {
  position: absolute;
  width: 400px;
  height: 1px;
  top: 14px;
}
.line .red, .line .blue {
  width: 100%;
  height: 1px;
}
.line .red-container {
  overflow: hidden;
  height: 1px;
  width: 58px;
}

.line .blue {
  background-color: #C4DF9B;
}

.node {
  margin-left: 90px;
  width: 20px;
  height: 20px;
  margin-top: 5px;
  float: left;
  margin-right: -10px;
  position: relative;
}
.node .splash {
  transform: translateZ(0px) scale(1);
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  pointer-events: none;
  opacity: 1;
}
.node.active .active-circle {
  transform: scale(1);
  opacity: 1;
}
.node.active .splash {
  transition: transform 1200ms, opacity 1500ms;
  transform: translateZ(0px) scale(2.5);
  opacity: 0 !important;
}
.node.active .inactive-circle {
  transition: opacity 200ms;
  opacity: 0;
}
.node .active-circle {
  transition: all 300ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  transform: scale(0.7);
  position: absolute;
  opacity: 0;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background-color: #4b1202;
  *zoom: 1;
}
.node .active-circle .cover {
  transform: translateZ(0px);
  width: 16px;
  height: 16px;
  background: white;
  border-radius: 100%;
  position: absolute;
  top: 2px;
  left: 2px;
}
.node .active-circle .white {
  transition: all 300ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 100%;
  position: absolute;
  transform: translateX(5px) translateY(5px) scale(1);
}
.node .inactive-circle {
  transition: all 300ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  width: 14px;
  height: 14px;
  display: block;
  background: white;
  position: absolute;
  border-radius: 100%;
  border: 4px solid #C4DF9B;
  top: 3px;
  left: 3px;
}
.node:hover {
  cursor: pointer;
}
.node:hover .active-circle {
  transition: all 200ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  transform: scale(0.84);
}
.node:hover .active-circle .white {
  transition: all 200ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  transform: translateX(4.7px) translateY(5px) scale(1.42);
}
.node:hover .inactive-circle {
  transition: all 200ms cubic-bezier(0.63, 0.62, 0.48, 1.84);
  transform: scale(0.85);
}

.items {
  position: relative;
}

