/* Scss Document */
input {
  position: fixed;
  opacity: 0; }

label {
  position: absolute;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  background: none;
  cursor: pointer; }
  label::before {
	position: fixed;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(18, 67, 100, 0.6);
	content: '';
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
  label .burger {
	position: fixed;
	z-index: 1000;
	width: 1em;
	height: 1em;
	margin: 0;
	padding: 0;
	transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	right: 30px;
	top: 27px;
}
    label .burger::before,
    label .burger .bar, label .burger::after {
      position: absolute;
      left: 0;
      display: block;
      width: 100%;
      height: 12%;
      background: white;
      content: '';
      transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
    label .burger .bar {
      top: 44%; }
    label .burger::before {
      top: 0;
      transform-origin: top left; }
    label .burger::after {
      bottom: 0;
      transform-origin: bottom left; }

input:focus + label .burger,
label:hover .burger {
  opacity: .75; }

nav {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: 1000;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: flex-start;
	transform: translate3d(0, 0, 0);
	/* material acceleration */
	transform: translateX(-100%);
	will-change: transform;
	transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
  nav::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: 25em;
	content: '';
	transform: skewX(15deg) translateX(-100%);
	transform-origin: bottom left;
	will-change: transform;
	transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	background-color: #FFFFFF;
}
    @media (min-width: 40em) {
      nav::before {
        width: 40em; } }
  nav a {
	margin: .5em 0;
	padding: .2em 2em;
	font-size: 25px;
	color: rgba(0,0,0,1.00);
	text-decoration: none;
	font-weight: bold;
	transform: translateX(-100%);
	transition: color .15s, transform .5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	letter-spacing: 0.09em;
	font-family: sans-serif;
}
    nav a:nth-child(1) {
      transition-delay: 0s, 100ms; }
    nav a:nth-child(2) {
      transition-delay: 0s, 150ms; }
    nav a:nth-child(3) {
      transition-delay: 0s, 200ms; }
    nav a:nth-child(4) {
      transition-delay: 0s, 250ms; }
    nav a:nth-child(5) {
      transition-delay: 0s, 300ms; }
    nav a:nth-child(6) {
      transition-delay: 0s, 350ms; }
    nav a:hover, nav a:focus {
      color: black; }



[id="navcheck"]:checked + label::before {
  opacity: 1;
  pointer-events: auto; }
[id="navcheck"]:checked + label .burger::before, [id="navcheck"]:checked + label .burger::after {
  width: 141.42%; }
[id="navcheck"]:checked + label .burger::before {
  transform: rotate(45deg) translateY(-50%); }
[id="navcheck"]:checked + label .burger::after {
  transform: rotate(-45deg) translateY(50%); }
[id="navcheck"]:checked + label .burger .bar {
  transform: scale(0.1); }


[id="navcheck"]:checked ~ nav {
	transform: translateX(0);
}
  [id="navcheck"]:checked ~ nav::before {
    transform: skewX(15deg) translateX(0); }


  [id="navcheck"]:checked ~ nav a {
    transform: translateX(0); }
[id="navcheck"]:checked ~ main .content {
  transform: translateX(3em);
  transform-origin: left center;
  -webkit-filter: blur(2px);
  filter: blur(2px);
  /* quite laggy :S */ }

/* helper */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; 
}

  @media (min-width: 60em) {
    article {
      width: 50%; } }

@media (max-width: 500px){
	  nav a {
	margin: .5em 0;
	padding: .2em 2em;
	font-size: 20px;
	color: rgba(0,0,0,1.00);
	text-decoration: none;
	font-weight: bold;
	transform: translateX(-100%);
	transition: color .15s, transform .5s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	letter-spacing: 0.09em;
}
	  label .burger {
	position: fixed;
	z-index: 1000;
	width: 1em;
	height: 1em;
	margin: 0;
	padding: 0;
	transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	right: 25px;
	top: 13px;
}
}
