diff --git a/inc/template.php b/inc/template.php
index 3bccb0bd87756029816c20586ea522e0ed3616c0..1fad18271c580c49cbff0ba510acd5a9faca48e9 100644
--- a/inc/template.php
+++ b/inc/template.php
@@ -893,12 +893,12 @@ function tpl_breadcrumbs($sep = '•') {
  * @author Nigel McNie <oracle.shinoda@gmail.com>
  * @author Sean Coates <sean@caedmon.net>
  * @author <fredrik@averpil.com>
- * @todo   May behave strangely in RTL languages
+ * @author Mark C. Prins <mprins@users.sf.net>
  *
  * @param string $sep Separator between entries
  * @return bool
  */
-function tpl_youarehere($sep = ' » ') {
+function tpl_youarehere($sep = ' → ') {
     global $conf;
     global $ID;
     global $lang;
@@ -909,12 +909,15 @@ function tpl_youarehere($sep = ' » ') {
     $parts = explode(':', $ID);
     $count = count($parts);
 
-    echo '<span class="bchead">'.$lang['youarehere'].' </span>';
-
+    echo '<nav><h2 class="bchead">'.$lang['youarehere'].': </h2>';
+    echo '<ul class="navlist">';
     // always print the startpage
-    echo '<span class="home">';
-    tpl_pagelink(':'.$conf['start']);
-    echo '</span>';
+    if ($count > 1) {
+        echo '<li class="home">'.html_wikilink(':'.$conf['start']).$sep.'</li>';
+    } else {
+        echo '<li class="home">'.$conf['start'].'</li>';
+    }
+
 
     // print intermediate namespace links
     $part = '';
@@ -923,18 +926,28 @@ function tpl_youarehere($sep = ' » ') {
         $page = $part;
         if($page == $conf['start']) continue; // Skip startpage
 
-        // output
-        echo $sep;
-        tpl_pagelink($page);
+        echo '<li>'.html_wikilink($page);
+        if ($i < $count - 2) {
+            echo $sep.'</li>';
+        } else {
+            echo '</li>';
+        }
     }
 
     // print current page, skipping start page, skipping for namespace index
     resolve_pageid('', $page, $exists);
-    if(isset($page) && $page == $part.$parts[$i]) return true;
+    if(isset($page) && $page == $part.$parts[$i]) {
+        echo '</li></ul></nav>';
+        return true;
+    }
+
     $page = $part.$parts[$i];
-    if($page == $conf['start']) return true;
-    echo $sep;
-    tpl_pagelink($page);
+    if($page == $conf['start']) {
+        echo '</li></ul></nav>';
+        return true;
+    }
+
+    echo $sep.'</li><li class="curid">'.noNSorNS($page).'</li></ul></nav>';
     return true;
 }
 
diff --git a/lib/tpl/dokuwiki/css/mixins.less b/lib/tpl/dokuwiki/css/mixins.less
index a88767e9706909d254d3b1083713aeb48304b59e..4b15bb60040c0ef9f39dda6fab367c6198408f43 100644
--- a/lib/tpl/dokuwiki/css/mixins.less
+++ b/lib/tpl/dokuwiki/css/mixins.less
@@ -7,4 +7,17 @@
     background: -o-linear-gradient(     @declaration);
     background: -ms-linear-gradient(    @declaration);
     background: linear-gradient(        @declaration);
-}
\ No newline at end of file
+}
+
+/**
+ * provides inline list styling.
+ */
+.inline-list(){
+    list-style-type: none;
+    
+    & li {
+        margin: 0;
+        padding: 0;
+        display: inline;
+    }
+}
diff --git a/lib/tpl/dokuwiki/css/structure.less b/lib/tpl/dokuwiki/css/structure.less
index 3ea2f83eb63a27941bfb25307cf354b82ca7f1ea..f7dea3948ddd70004409397039d5849471a8dc84 100644
--- a/lib/tpl/dokuwiki/css/structure.less
+++ b/lib/tpl/dokuwiki/css/structure.less
@@ -87,3 +87,18 @@ body {
 #dokuwiki__footer {
     clear: both;
 }
+
+.dokuwiki .navlist {
+    display: inline;
+    padding: 0;
+    .inline-list;
+}
+
+.bchead {
+    display: inline;
+    font-size: inherit;
+}
+
+.curid {
+    font-weight: bold;
+}