/* RESET STYLES & HELPER CLASSES
–––––––––––––––––––––––––––––––––––––––––––––––––– */
:root {
  --white: #fff;
  --yellow: #fffbbc;
  --orange: #d1b39f;
  --header-bar-bg: #333;
  --menu-bg: #292929;
}

body.fix-body{
  overflow: hidden;
}

.menu-shifter ul {
  list-style: none;
  padding-left: 0;
}
.menu-shifter li{
  line-height: 1;
}

.menu-shifter button {
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 100%;
}

.menu-shifter a {
  text-decoration: none;
}

.menu-shifter button,
.menu-shifter a {
  color: inherit;
}

.menu-shifter .menu-wrapper {
  position: fixed;
  z-index: 999;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  font-size: 250%;
  font-size: 5.5vmin;
  text-transform: uppercase;
}

.menu-shifter  .menu-wrapper.is-visible {
  display: block;
  background-color: #2e2e2e;
  color: #fff;
  animation: menuAnimate 0.3s  ease-out;
  -webkit-animation: menuAnimate 0.3s  ease-out;
}

.menu-shifter  .list-wrapper {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 120px 20px 20px 20px;
  overflow-y: auto;
  background: #2e2e2e;
}

.menu-shifter .list-wrapper.l2,
.menu-shifter .list-wrapper.l3 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transform: translateX(100%);
  backface-visibility: hidden;
  transition: transform 0.5s;
}

.menu-shifter .list-wrapper.l2.is-visible,
.menu-shifter .list-wrapper.l3.is-visible {
  transform: none;
}

.menu-shifter .list-wrapper.l1 ul > li > .sub-menu,
.menu-shifter .list-wrapper.l2 .level-3 {
  display: none;
}

.menu-shifter .menu-wrapper li + li {
  margin-top: 20px;
}

.menu-shifter .menu-wrapper a {
  display: inline-block;
  position: relative;
  padding: 6px 0 0 0;
}

.menu-shifter .menu-wrapper a.nested {
  text-decoration: underline;
}

.menu-shifter .menu-wrapper a:hover,
.menu-shifter .menu-wrapper a.is-active,
.menu-shifter .menu-wrapper li.active-parent a,
.menu-shifter .menu-wrapper li.active a {
  color: #2e2e2e;
  background: #fff;
}

.menu-shifter .back-one-level{
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}
.menu-shifter .close-menu {
  display: none;
  top: 15px;
  left: 15px;
  color: white;

}

.menu-shifter .back-one-level svg,
.menu-shifter .close-menu svg {
  fill: #fff;
  margin-right: 10px;
}


/* menu-icon */
.menu-shifter .menu-icon .line {
  background-color: #000;
}
.menu-shifter a.menu-icon{
  display: block;
  padding: 9px;
  margin-left: 11px;
  position: absolute;
  z-index: 103;
  outline: none;
  -webkit-tap-highlight-color:transparent;
  width: 40px;
  /* padding: 12px; */
}

.menu-shifter .menu-icon .line{
  display: block;
  height: 2px;
  width: 100%;
  margin: 4px 0;
  border-radius: 2px;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275),opacity 0.3s ease-out;
  transform: translateZ(0);
  transition: color: 0.
}

/* menu-icon hover */
.menu-shifter .menu-icon:hover > .line {
  transform: scaleX(1.2);
}

/* inner menu-icon active */

.menu-shifter .menu-icon.active > .line-1,
.menu-shifter .menu-icon.active:hover > .line-1 {
  -webkit-transform: translateY(6px) rotateZ(-135deg);
  transform: translateY(6px) rotateZ(-135deg);
  background-color: #fff;
}
.menu-shifter .menu-icon.active > .line-2,
.menu-shifter .menu-icon.active:hover > .line-2 {
  opacity: 0;
  background-color: #fff;
}
.menu-shifter .menu-icon.active > .line-3,
.menu-shifter .menu-icon.active:hover > .line-3 {
  -webkit-transform: translateY(-6px) rotateZ(135deg);
  transform: translateY(-6px) rotateZ(135deg);
  background-color: #fff;
}

@keyframes menuAnimate {
  0% {
    transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
}

100% {
    transform: translateX(0)  ;
    -webkit-transform: translateX(0)  ;
    -moz-transform: translateX(0)  ;
    -ms-transform: translateX(0)  ;
    -o-transform: translateX(0)  ;
}
}

@-webkit-keyframes menuAnimate {
  0% {
      transform: translateX(100%);
      -webkit-transform: translateX(100%);
      -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
      -o-transform: translateX(100%);
}

  100% {
      transform: translateX(0)  ;
      -webkit-transform: translateX(0)  ;
      -moz-transform: translateX(0)  ;
      -ms-transform: translateX(0)  ;
      -o-transform: translateX(0)  ;
}
}

@-moz-keyframes menuAnimate {
  0% {
    transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
}

  100% {
    transform: translateX(0)  ;
    -webkit-transform: translateX(0)  ;
    -moz-transform: translateX(0)  ;
    -ms-transform: translateX(0)  ;
    -o-transform: translateX(0)  ;
}
}
