.top-nav {
  &,
  & > .container {
    height: 64px;
    line-height: 64px;
    text-align: center;
    position: relative;
  }

  // Smaller on mobile
  @media (max-width: 480px) {
    & > .container {
      height: 32px;
      line-height: 32px;
      margin-top: 8px;
    }

    & {
      height: 32px + 8px + 8px;
      padding: 8px 0;
      border-bottom: solid 1px $dark-line-color;
      margin-bottom: 8px;
    }
  }

  & > .container {
    @include gutter(padding-left);
    @include gutter(padding-right);
    max-width: $area-width;
    margin: 0 auto;
  }
}

.top-nav > .container {
  & {
    display: flex;
    align-items: center;
    position: relative;
  }

  & > .left {
    flex: 0 0 auto;
    line-height: 32px;
  }

  & > .brand {
    flex: 1 1 auto;
  }

  & > .actions {
    flex: 0 0 auto;
    display: flex;
  }

  & > .brand {
    @include font-size(-1);
    display: inline-block;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;

    &,
    &:visited {
      color: $base-text;
    }

    &:hover {
      color: $base-a;
    }
  }

  // Mobile
  @media (max-width: 480px) {
    & > .brand {
      display: none;
    }

    & > .actions {
      margin-left: auto;
    }
  }

  // Desktop: absolute the actions
  @media (min-width: 481px) {
    & > .actions {
      position: absolute;
      @include gutter(right);
      top: (64px - 32px) / 2;
    }

    & > .left {
      position: absolute;
      @include gutter(left);
      top: (64px - 32px) / 2;
    }
  }

  // Offset so it doesn't look misasligned
  @media (min-width: $area-width) {
    & > .left > .home {
      position: relative;
      left: -16px;
    }
  }
}
