nav {
  height: 70px;
}

.topnav {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  height: 100%;
  margin: auto;
}

.navigation {
  display: flex;
  float: right;
  margin-top: 15px;
  margin-right: 50px;
}

.navigation li {
  padding: 0 10px;
  margin: 10px 10px;
  text-decoration: none;
  list-style-type: none;
}

.navigation li a {
  color: white;
  text-decoration: none;
}

.top-logo-container {
  margin-left: 50px;
  position: relative;
}

.top-logo-container a {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.hamburger-menu {
  display: none;
  cursor: pointer;
  width: 30px;
  height: 25px;
  position: relative;
  margin: 12.5px 20px;
}

.bar {
  width: 30px;
  height: 3px;
  background-color: white;
  position: absolute;
  transition: all 0.3s ease-in-out;
}

.bar1 { top: 0; }
.bar2 { top: 11px; }
.bar3 { top: 22px; }

.hamburger-menu.open .bar1 {
  transform: rotate(45deg) translate(8px, 8px);
}

.hamburger-menu.open .bar2 {
  opacity: 0;
}

.hamburger-menu.open .bar3 {
  transform: rotate(-45deg) translate(8px, -8px);
}

@media (max-width: 768px) {
  .topnav {
    display: flex;
    height: 50px;
    position: relative;
    top: 17%;
  }

  .top-logo-container {
    height: 50px;
    width: 50%;
  }
  
  .navigation {
    visibility: hidden;
    opacity: 0;
    flex-direction: column;
    position: fixed;
    top: 50px;
    left: 0;
    width: 100%;
    margin: 0;
    background-color: #333634;
    padding: 20px;
    z-index: 1;
    transform: translateX(-100%);
    transition: all 0.3s ease-in-out;
  }

  .navigation.show {
    visibility: visible;
    opacity: 1;
    transform: translateX(0);
  }

  .navigation li {
    margin: 10px 0;
  }

  .hamburger-menu {
    display: block;
    margin: 10px 30px;
  }
}