diff --git a/css/ebi-css-build/ebi-global.scss b/css/ebi-css-build/ebi-global.scss
index 60631c0ec6d393d092123135926bb3bc1c912b93..badf506f4f85e67da8737dbc7fa70ddbab582626 100644
--- a/css/ebi-css-build/ebi-global.scss
+++ b/css/ebi-css-build/ebi-global.scss
@@ -341,6 +341,18 @@
     .lead { color: $secondary-color; margin-bottom: .5rem; }
   }
 
+  // external links
+  a.external{
+    &:after {
+      content: " x";
+      font-family: "EBI-Generic";
+      font-size: .65rem;
+      position: relative;
+      top: -1px;
+      margin-left: .4rem;
+    }
+  }
+
   // read more
   a.read-more,
   a.readmore,
diff --git a/js/foundationExtendEBI.js b/js/foundationExtendEBI.js
index 73c42d60fd936df76a087081d510becece1cd859..3b35c4feac5546a6ba9e9120d61958a97316c94e 100644
--- a/js/foundationExtendEBI.js
+++ b/js/foundationExtendEBI.js
@@ -395,6 +395,18 @@ function invokeResponsiveMenuEBI() {
 
   }
 
+  // Programatically open external links in new tabs, and add '.external'
+  function addBlankTargetToExternalLinkEBI(parent) {
+    var parent = parent || '#content';
+    $(parent + ' a').filter(function() {
+       return this.hostname && this.hostname !== location.hostname;
+    }).attr('target','_blank');
+  }
+  function addExternalToBlankWindowLinksEBI(parent) {
+    var parent = parent || '#content';
+    $(parent + ' a[target="_blank"]').addClass('external');
+  }
+
   /* Allow invokation of of foundation and foundationExtendEBI with data attributes
 
     <body data-foundationInvoke="document" data-foundationExtendEBI="document">
@@ -416,5 +428,9 @@ function invokeResponsiveMenuEBI() {
     if (bodyData.foundationExtendEBI === 'true') bodyData.foundationExtendEBI = 'document';
     $(bodyData.foundationExtendEBI).foundationExtendEBI();
   }
+  if (bodyData.addExternal) {
+    addBlankTargetToExternalLinkEBI();
+    addExternalToBlankWindowLinksEBI();
+  }
 
 }(jQuery));