body {
  min-height: 100vh;
  max-height: 100vh;
  overflow: hidden;
  margin: 0;
  background: #f2ebe9;

  font-family: "Lato", sans-serif;
}
* {
  /* unselectable */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.creator {
  position: absolute;
  bottom: 5px;
  left: 50vw;
  transform: translate(calc(-50% - 50px));
  opacity: 0.7;
  font-style: italic;
}

h1 {
  position: absolute;
  z-index: 10;
  color: #f2a2b8;

  top: 0;
  left: -165px;
  transform-origin: top right;
}

a,
a:hover,
a:active {
  color: #f2a2b8;
}
a {
  text-decoration: transparent;
}
a:hover {
  text-decoration: underline;
}

/* ranges */
.ranges {
  position: fixed;
  margin-left: calc(100vw - 325px);
  margin-top: calc(((100vh - 775px) / 2) - 18vh);
  z-index: 10;
}
.container {
  width: 200px;
  height: 200px;
  margin: 50px 50px 25px;
  /*background-color: #333;*/
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;

  /* float: right; */
}
.item {
  width: 20px;
  height: 20px;
  /*background-color: rgb(245, 230, 99);*/
  cursor: grab;
}
.item:active {
  background-color: rgba(168, 218, 220, 1);
  cursor: grabbing;
}

.coor {
  margin-left: 50px;
  width: 200px;
  text-align: center;
}

.container-1 {
  border: 4px dashed #0178c4;
}
.container-1 .item {
  background: #f6c31e;
}

.container-2 {
  border: 4px dashed #f6c31e;
}
.container-2 .item {
  background: #f24824;
}

.container-3 {
  border: 4px dashed #f24824;
}
.container-3 .item {
  background: #0178c4;
}

/* HEAD Layer */
.head {
  width: calc(65vw - 50px);
  min-width: calc(100vw - 100px);
  height: 70vh;
  margin-top: 15vh;

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;
}

.head img,
.head div,
.head svg {
  position: absolute;

  height: 70vh;

  /*      IF ANIMATION      */
  /*transition: all 1s ease;*/
}

/* sourcils */
.head div {
  width: 70vh;
}
#eyebrown1,
#eyebrown2 {
  margin-top: 0.5vh;
}
#eyebrown1 {
  margin-left: 24.3vh;
  transform-origin: center 34.5%;
}
#eyebrown2 {
  margin-left: 39.2vh;
  transform-origin: center 34.5%;
}

#hear {
  transform-origin: center 14.5%;
  margin-top: 4px;
}
.opacity5 {
  opacity: 0.5;
}

.mouth {
  fill: none;
  stroke: #1b1630;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 4px;
}
.lunette {
  fill: none;
  stroke: #fef8f8;
  stroke-miterlimit: 10;
  stroke-width: 4px;
}

/*     RESPONSIVE
*******************************************/

@media only screen and (max-width: 900px) {
  .ranges {
    margin-left: calc(100vw - 305px);
  }
}

@media only screen and (max-width: 780px) {
  .ranges {
    margin-left: calc(100vw - 280px);
  }
}

@media only screen and (max-height: 740px) {
  .ranges {
    margin-top: calc(((100vh - 775px) / 2) - 10vh);
  }
  .container {
    margin: 20px;
  }
}
@media only screen and (max-height: 680px) {
  .container {
    transform: scale(0.8) translateX(25%);
    margin: 0;
  }
  .container-1{
    margin-top: 40px;
    transform: scale(0.8) translateX(25%) translateY(calc(25% - 40px));
  }
  .container-3 {
    transform: scale(0.8) translateX(25%) translateY(calc(-25% + 40px));
  }
}

/*               ANIMATION
*******************************************/

.head {
  animation: 2.5s ease 0s slideTop;
}
@keyframes slideTop {
  0% {
    transform: translateY(-100vw);
  }
  100% {
    transform: translateY(0);
  }
}

.ranges {
  animation: 3.5s ease slideRight;
}
@keyframes slideRight {
  0% {
    transform: translateX(400px);
  }
  50% {
    transform: translateX(400px);
  }
  100% {
    transform: translateX(0);
  }
}

.title {
  animation: 4.2s ease slideLeft;
  position: absolute;
  top: 0;
}
@keyframes slideLeft {
  0% {
    transform: translateX(-300px);
  }
  60% {
    transform: translateX(-300px);
  }
  100% {
    transform: translateX(0);
  }
}

.creator {
  animation: 5s ease slideBottom;
}
@keyframes slideBottom {
  0% {
    transform: translateY(70px) translateX(calc(-50% - 50px));
  }
  80% {
    transform: translateY(70px) translateX(calc(-50% - 50px));
  }
  100% {
    transform: translateY(0) translateX(calc(-50% - 50px));
  }
}
