/* ---------- NAV CONTAINER ---------- */

.topnav {
  background-color: #333;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.topnav a {
  display: block;
  color: #f2f2f2;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
}

.topnav a:hover {
  background-color: #555;
  color: white;
}

/* ---------- MENU ---------- */

.mra-menu {
  display: none;          /* hidden on mobile */
  width: 100%;
  text-align: left;
}

.mra-menu a {
  display: block;
  padding: 14px 16px;
  color: #f2f2f2;
  text-decoration: none;
  text-align: left;
}

/* show menu when checkbox checked */
#mra-menu-toggle:checked ~ .mra-menu {
  display: block;
}

/* ---------- HAMBURGER ---------- */

.mra-menu-toggle {
  margin-left: auto;
  background: transparent;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
}

.mra-menu-toggle span {
  display: block;
  width: 26px;
  height: 3px;
  background: #fff;
  position: relative;
}

.mra-menu-toggle span::before,
.mra-menu-toggle span::after {
  content: "";
  position: absolute;
  left: 0;
  width: 26px;
  height: 3px;
  background: #fff;
}

.mra-menu-toggle span::before { top: -8px; }
.mra-menu-toggle span::after  { top: 8px; }

.mra-menu-toggle:focus,
.mra-menu-toggle:active {
  background: transparent;
  outline: none;
}

/* ---------- DESKTOP ---------- */

@media screen and (min-width:601px) {

  .mra-menu {
    display: flex;
    width: auto;
  }

  .mra-menu-toggle {
    display: none;
  }

}
