.nav{display: none;}
.navToggle {
  display: block;
  position: fixed;
  top: 30px;
  z-index: 100;
  -webkit-user-select: none;
  user-select: none;
}
.navToggle a {
  text-decoration: none;
  color: #020202;
  font-weight: 600;
  font-size: 26px;
  transition: all 0.3s ease;
}
.navToggle a:hover {
  color: #0075a2;
}
.navToggle input {
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  cursor: pointer;
  opacity: 0;
  z-index: 2;
  -webkit-touch-callout: none;
}
.navToggle span {
  position: relative;
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #0075a2;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
}
.navToggle span:first-child {
  transform-origin: 0% 0%;
}
.navToggle span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

.navToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #232323;
}
.navToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}
.navToggle input:checked ~ span:nth-last-child(2) {
  transform: rotate(-45deg) translate(0, -1px);
}
.navToggle input:checked ~ .navItem {
  transform: none;
}

.navItem {
  position: absolute;
  width: 120vw;
  height: 100vh;
  top: -30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(250,250,250,0.95);
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  transform-origin: 0% 0%;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
}

.navItem li {
  padding: 10px 0;
  font-size: 22px;
}

.nav .navToggle {
  position: fixed;
  right:0;
}
.nav .navToggle input {
  right: 40px;
}
.nav .navToggle span {
  right: 40px;
}
.nav .navItem {
  right:0;
  margin:0;
  transform: translate(100%, 0);
}
.nav .navItem li a:hover {
  padding-left: 5px;
}

@keyframes text-slide-in {
  0% {
    -webkit-transform: translateX(100px);
    -moz-transform: translateX(100px);
    -ms-transform: translateX(100px);
    -o-transform: translateX(100px);
    transform: translateX(100px);
  }
  100% {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}