<div class="container">
  <header>
    <div class="l-logo">
      <svg class="c-logo" viewBox="0 0 492 492">
        <path style="fill:#fff;" d="M484,385.5c-5.333-5.333-12-8-20-8h-34l-161-302c-5.333-9.333-13-14-23-14s-17.667,4.667-23,14l-161,302H28c-8,0-14.667,2.667-20,8s-8,11.667-8,19S2.667,418,8,423s12,7.5,20,7.5h50h336h50c8,0,14.667-2.5,20-7.5s8-11.167,8-18.5C492,397.166,489.333,390.833,484,385.5z M155,377.5l91-184l91,184H155z"/>
      </svg>
    </div>
    <nav class="l-nav">
      <a class="l-nav__link" href="javascript:void(0)">About</a>
      <a class="l-nav__link" href="javascript:void(0)">Shop</a>
      <a class="l-nav__link" href="javascript:void(0)">Blog</a>
      <a class="l-nav__link" href="javascript:void(0)">Support</a>
      <a class="l-nav__link" href="javascript:void(0)">Register</a>
    </nav>
  </header>
</div>
<p class="credits">Icon from the <a href="http://map-icons.com/">Map Icons Set</a> by Scott de Jonge</p>
html {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

* {
  margin: 0;
  padding: 0;
}

body {
  background-color: #45444b;
  color: #858585;
  min-width: 10em;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

a {
  color: #fff;
  text-decoration: none;
  transition: color 0.2s;
}

a:hover,
a:focus {
    color: #1c1c1c;
}

.credits {
  position: absolute;
  bottom: 0;
  padding: 1em;
  font-size: 0.85em;
}

header {
  background-color: #e96788;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5em 1em;
}

.l-nav {
  display: flex;
  justify-content: space-around;
}

@media screen and (max-width: 479px) and (min-height: 450px) {
  header {
    position: fixed;
    width: 4em;
    right: 0;
    top: 0;
    bottom: 0;
    align-items: stretch;
  }
  .l-nav {
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
  }
  .l-nav__link {
    padding: 0 0.5em;
  }
}

@media screen and (max-width: 479px) and (max-height: 449px) {
  .l-nav {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
  }
  .l-nav__link {
    flex: auto;
  }
}

@media screen and (max-width: 767px) {
  header {
    flex-wrap: wrap;
  }
  .l-logo {
    text-align: center;
    flex: 1 0 100%;
  }
  .l-nav__link {
    padding: 1em;
  }
}

@media screen and (min-width: 768px) {
  .l-logo {
    flex: 0 1 40%;
  }
  .l-nav {
    flex: 1 0 auto;
  }
}

.c-logo {
  width: 3.5em;
  padding: 0.5em;
}