.mb-ham {
  --color: #ff9100;
  width: 36px;
  height: 36px;
  padding: 0;
  margin: 0;
  outline: none;
  position: relative;
  border: none;
  background: none;
  cursor: pointer;
  display: none;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  transition: 0.35s;
}

.mb-ham svg {
  width: 64px;
  height: 48px;
  top: -6px;
  left: -14px;
  stroke: var(--color);
  stroke-width: 4px;
  filter:drop-shadow(0 0 12px rgba(255,145,0,.35));
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  display: block;
  position: absolute;
}

.mb-ham svg path {
  transition:
    stroke-dasharray var(--duration, 0.85s) var(--easing, ease) var(--delay, 0s),
    stroke-dashoffset var(--duration, 0.85s) var(--easing, ease)
      var(--delay, 0s);

  stroke-dasharray: var(--array-1, 26px) var(--array-2, 100px);
  stroke-dashoffset: var(--offset, 126px);
  transform: translateZ(0);
}

.mb-ham svg path:nth-child(2) {
  --duration: 0.7s;
  --easing: ease-in;
  --offset: 100px;
  --array-2: 74px;
}

.mb-ham svg path:nth-child(3) {
  --offset: 133px;
  --array-2: 107px;
}

.mb-ham.active svg path {
  --offset: 57px;
}

.mb-ham.active svg path:nth-child(1),
.mb-ham.active svg path:nth-child(3) {
  --delay: 0.15s;
  --easing: cubic-bezier(0.2, 0.4, 0.2, 1.1);
}

.mb-ham.active svg path:nth-child(2) {
  --duration: 0.4s;
  --offset: 2px;
  --array-1: 1px;
}

.mb-ham.active svg path:nth-child(3) {
  --offset: 58px;
}
