diff --git a/_projectCommon.php b/_projectCommon.php
index c9dcdb3..d6ae06b 100644
--- a/_projectCommon.php
+++ b/_projectCommon.php
@@ -15,5 +15,18 @@
  */
 
 // Set the theme for your project's web pages.
+require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php");
+
+$Nav = new Nav();
+$Nav->addNavSeparator("Eclipse Europa", "/europa");
+$Nav->addCustomNav("Friends of Europa", "/europa/friends.php", "_self", 1);
+$Nav->addCustomNav("Downloads", "/downloads/packages/release/Europa/WINTER", "_self", 1);
+$Nav->addCustomNav("Europa Projects", "/europa/projects.php", "_self", 1);
+$Nav->addCustomNav("Europa Effect", "/europa/europaeffect.php", "_self", 1);
+$Nav->addCustomNav("Europa Reviews", "/europa/europareviews.php", "_self", 1);
+$Nav->addCustomNav("Europa News", "/europa/europanews.php", "_self", 1);
+$Nav->addCustomNav("Write a Review, Win an Eclipse Shirt", "/org/press-release/20070612cb_europareviews.php", "_self", 1);
+$Theme->setNav($Nav);
+
 $App->Promotion = FALSE;
-$App->setOutDated( '2011-11-11', '<a href="https://projects.eclipse.org/releases/europa">Europa</a> is a past version of Eclipse. Please visit our <a href="/downloads/">download</a> page for the latest version of Eclipse. ' );
+$App->setOutDated('2011-11-11', '<a href="https://projects.eclipse.org/releases/europa">Europa</a> is a past version of Eclipse. Please visit our <a href="/downloads/">download</a> page for the latest version of Eclipse. ' );
diff --git a/content/en_europaeffect.php b/content/en_europaeffect.php
index 62d247e..d30fe9a 100644
--- a/content/en_europaeffect.php
+++ b/content/en_europaeffect.php
@@ -14,10 +14,9 @@
  * SPDX-License-Identifier: EPL-2.0
  */
 ?>
-<div style="background-color:#0B328B; border-top:3px solid #FF6700;">
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
   <img src="images/europaBannerHere.jpg" class="img-responsive">
 </div>
-<h1>Europa Effect</h1>
 <p>The following are just some of the examples of what Eclipse members
   are doing with Europa.
 </p>
diff --git a/content/en_europanews.php b/content/en_europanews.php
index 570dcaa..4caab5e 100644
--- a/content/en_europanews.php
+++ b/content/en_europanews.php
@@ -15,12 +15,9 @@
  */
 ?>
 
-<div style="background-color:#0B328B; border-top:3px solid #FF6700;">
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
   <img src="images/europaBannerHere.jpg" class="img-responsive">
 </div>
-<h3>
-  <a href="/community/whatsnew.rss"></a>Europa News
-</h3>
 <br />
 <ul>
   <li><a
diff --git a/content/en_europareviews.php b/content/en_europareviews.php
index 7746215..ae4cc1d 100644
--- a/content/en_europareviews.php
+++ b/content/en_europareviews.php
@@ -15,10 +15,9 @@
  */
 ?>
 
-<div style="background-color:#0B328B; border-top:3px solid #FF6700;">
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
   <img src="images/europaBannerHere.jpg" class="img-responsive">
 </div>
-<h1>Europa Reviews</h1>
 <p>
   Members of the Eclipse community were invited to write a review of the
   <a href="http://www.eclipse.org/europa/projects.php">Eclipse projects</a>
diff --git a/content/en_friends.php b/content/en_friends.php
index c449ba0..ea042c4 100644
--- a/content/en_friends.php
+++ b/content/en_friends.php
@@ -14,10 +14,9 @@
  * SPDX-License-Identifier: EPL-2.0
  */
 ?>
-  <div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
-    <img src="images/europaBannerHere.jpg" class="img-responsive">
-  </div>
-<h1>Friends of Europa</h1>
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
+  <img src="images/europaBannerHere.jpg" class="img-responsive">
+</div>
 <p>Want to join the Friends of Europa? Put one of these images up on
   your website.
 </p>
diff --git a/content/en_index.php b/content/en_index.php
index 029d0b2..e5374c9 100644
--- a/content/en_index.php
+++ b/content/en_index.php
@@ -14,75 +14,61 @@
  * SPDX-License-Identifier: EPL-2.0
  */
 ?>
-<div class="row">
-  <div class="col-md-18">
-  <div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
-    <img src="images/europaBannerHere.jpg" class="img-responsive">
+
+
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
+  <img src="images/europaBannerHere.jpg" class="img-responsive">
+</div>
+  <p>
+    Eclipse Europa is the annual release of Eclipse projects in 2007. Like
+    last year's Callisto release, the Europa release is a coordinated
+    release of different Eclipse project teams. This year, the annual
+    release includes <a href="projects.php">21 projects.</a> By releasing
+    these projects at the same time, the goal is to eliminate uncertainty
+    about version compatibility and make it easier to incorporate multiple
+    projects into your environment. <br />
+    <br /> <em>While Europa is about the simultaneous release of <a
+      href="projects.php">twenty one projects</a>, it is not a unification
+    of the projects - each project remains a separate open source
+    project operating with its own project leadership, its own
+    committers, and its own project plan.
+    </em>
+  <p>
+    Click <a href="http://wiki.eclipse.org/Simultaneous_Release">here</a>
+    to find out about the newest Eclipse Simultaneous Release
+  </p>
+  <div class="col-md-12">
+    <h3>Learn more</h3>
+    <ul>
+      <li><a href="europareviews.php">Europa Reviews</a></li>
+      <li>Check out the latest <a
+        href="http://live.eclipse.org/search/node/europa">Webinars</a> at
+        <a href="http://live.eclipse.org">Eclipse Live</a>
+      </li>
+      <li>ISVs adopting <a href="europaeffect.php">Europa projects</a></li>
+      <li>Listen to the <a href="http://www.eclipsezone.com/podcasts.jsp"
+        target="blank">EclipseZone Europa Podcasts</a>
+    </ul>
   </div>
-    <p>
-      Eclipse Europa is the annual release of Eclipse projects in 2007. Like
-      last year's Callisto release, the Europa release is a coordinated
-      release of different Eclipse project teams. This year, the annual
-      release includes <a href="projects.php">21 projects.</a> By releasing
-      these projects at the same time, the goal is to eliminate uncertainty
-      about version compatibility and make it easier to incorporate multiple
-      projects into your environment. <br />
-      <br /> <em>While Europa is about the simultaneous release of <a
-        href="projects.php">twenty one projects</a>, it is not a unification
-      of the projects - each project remains a separate open source
-      project operating with its own project leadership, its own
-      committers, and its own project plan.
-      </em>
-    <p>
-      Click <a href="http://wiki.eclipse.org/Simultaneous_Release">here</a>
-      to find out about the newest Eclipse Simultaneous Release
-    </p>
-    <div class="col-md-12">
-      <h3>Learn more</h3>
-      <ul>
-        <li><a href="europareviews.php">Europa Reviews</a></li>
-        <li>Check out the latest <a
-          href="http://live.eclipse.org/search/node/europa">Webinars</a> at
-          <a href="http://live.eclipse.org">Eclipse Live</a>
-        </li>
-        <li>ISVs adopting <a href="europaeffect.php">Europa projects</a></li>
-        <li>Listen to the <a href="http://www.eclipsezone.com/podcasts.jsp"
-          target="blank">EclipseZone Europa Podcasts</a>
-      </ul>
-    </div>
-    <div class="col-md-12">
-      <h3>
-        Europa News <a href="europanews.php"><img src="/images/more.gif"></a>
-      </h3>
-      <ul>
-        <li><a
-          href="http://www.infoworld.com/article/07/08/15/eclipse-europafollow_1.html">Eclipse
-          Europa aftermath draws plaudits, complaints</a> posted 3027 days
-          ago
-        </li>
-        <li><a
-          href="http://www.embedded.com/rss/showArticle.jhtml?articleID=201200387&cid=RSSfeed_embedded_news">Eclipse
-          Europa: An implementation guide for embedded geeks</a> posted
-          3049 days ago
-        </li>
-        <li><a href="http://www.froglogic.com/pg?id=NewsEvents&category=82">Java
-          Testing Tool froglogic Squish Supports New Eclipse Europa (3.3)</a>
-          posted 3058 days ago
-        </li>
-      </ul>
-    </div>
+  <div class="col-md-12">
+    <h3>
+      Europa News <a href="europanews.php"><img src="/images/more.gif"></a>
+    </h3>
+    <ul>
+      <li><a
+        href="http://www.infoworld.com/article/07/08/15/eclipse-europafollow_1.html">Eclipse
+        Europa aftermath draws plaudits, complaints</a> posted 3027 days
+        ago
+      </li>
+      <li><a
+        href="http://www.embedded.com/rss/showArticle.jhtml?articleID=201200387&cid=RSSfeed_embedded_news">Eclipse
+        Europa: An implementation guide for embedded geeks</a> posted
+        3049 days ago
+      </li>
+      <li><a href="http://www.froglogic.com/pg?id=NewsEvents&category=82">Java
+        Testing Tool froglogic Squish Supports New Eclipse Europa (3.3)</a>
+        posted 3058 days ago
+      </li>
+    </ul>
   </div>
-  <div class="col-md-6">
-    <div class="sideitem">
-      <h6>Related Links</h6>
-      <ul>
-        <li><a href="friends.php">Friends of Europa</a></li>
-        <li><a href="/downloads/packages/release/Europa/WINTER">Downloads</a></li>
-        <li><a href="projects.php">Europa Projects</a></li>
-        <li><a href="/org/press-release/20070612cb_europareviews.php">Write
-          a Review, Win an Eclipse Shirt</a>
-        </li>
-      </ul>
-    </div>
-  </div>
-</div>
\ No newline at end of file
+</div>
diff --git a/content/en_projects.php b/content/en_projects.php
index e674214..99dab7c 100644
--- a/content/en_projects.php
+++ b/content/en_projects.php
@@ -14,10 +14,10 @@
  * SPDX-License-Identifier: EPL-2.0
  */
 ?>
-  <div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
-    <img src="images/europaBannerHere.jpg" class="img-responsive">
-  </div>
-<h1>Eclipse Europa Project</h1>
+
+<div class="margin-bottom-20" style="background-color:#0B328B; border-top:3px solid #FF6700;">
+  <img src="images/europaBannerHere.jpg" class="img-responsive">
+</div>
 <table class="table">
   <tr>
     <th class="text-left" width="35%">Project Name</th>
diff --git a/europaeffect.php b/europaeffect.php
index bf6a52e..37e906d 100644
--- a/europaeffect.php
+++ b/europaeffect.php
@@ -32,5 +32,5 @@
 $html = ob_get_clean();
 
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
\ No newline at end of file
diff --git a/europanews.php b/europanews.php
index 3547431..d1668be 100644
--- a/europanews.php
+++ b/europanews.php
@@ -32,5 +32,5 @@
 $html = ob_get_clean();
 
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
\ No newline at end of file
diff --git a/europareviews.php b/europareviews.php
index aff2e0a..fd1ab8d 100644
--- a/europareviews.php
+++ b/europareviews.php
@@ -33,5 +33,5 @@
 
 //$Theme->setExtraHeaders('<link rel="stylesheet" type="text/css" href="/europa/layout.css" media="screen" />');
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
\ No newline at end of file
diff --git a/friends.php b/friends.php
index 9929357..dfd5f7a 100644
--- a/friends.php
+++ b/friends.php
@@ -31,5 +31,5 @@
 $html = ob_get_clean();
 
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
\ No newline at end of file
diff --git a/index.php b/index.php
index 11285d0..d3aad8c 100644
--- a/index.php
+++ b/index.php
@@ -30,5 +30,5 @@
 $html = ob_get_clean();
 
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
\ No newline at end of file
diff --git a/projects.php b/projects.php
index ba06dc3..53a57d1 100644
--- a/projects.php
+++ b/projects.php
@@ -30,5 +30,5 @@
 $html = ob_get_clean();
 
 $Theme->setHtml($html);
-//$Theme->setDisplayHeaderTitle(TRUE);
+$Theme->setDisplayHeaderTitle(TRUE);
 $Theme->generatePage();
