diff --git a/apps/tup-cms/src/taccsite_cms/settings_custom.py b/apps/tup-cms/src/taccsite_cms/settings_custom.py
index 51750e29b..4975c6331 100644
--- a/apps/tup-cms/src/taccsite_cms/settings_custom.py
+++ b/apps/tup-cms/src/taccsite_cms/settings_custom.py
@@ -93,7 +93,7 @@
########################
PORTAL_LOGO = {
- "img_file_src": "tup_cms/img/org_logos/tacc-logo-white.svg",
+ "img_file_src": "tup_cms/img/org_logos/tacc-logo-white-25years--cropped.svg",
"is_remote": False,
"img_class": "",
"link_href": "/",
diff --git a/apps/tup-cms/src/taccsite_cms/templates/snippets/js-ad-hoc-scripts.html b/apps/tup-cms/src/taccsite_cms/templates/snippets/js-ad-hoc-scripts.html
index c78797a37..2fc095816 100644
--- a/apps/tup-cms/src/taccsite_cms/templates/snippets/js-ad-hoc-scripts.html
+++ b/apps/tup-cms/src/taccsite_cms/templates/snippets/js-ad-hoc-scripts.html
@@ -2,9 +2,4 @@
One
-
-{% comment %}
-If this works, delete `js-prevent-ugly-urls`:
-https://tacc.utexas.edu/admin/djangocms_snippet/snippet/150/change/
-{% endcomment %}
+
diff --git a/apps/tup-cms/src/taccsite_cms/templates/snippets/news/open-external-post.html b/apps/tup-cms/src/taccsite_cms/templates/snippets/news/open-external-post.html
deleted file mode 100644
index c4d011c30..000000000
--- a/apps/tup-cms/src/taccsite_cms/templates/snippets/news/open-external-post.html
+++ /dev/null
@@ -1,32 +0,0 @@
-{# To open external article URL, instead of internal one, on news listing #}
-{% load static %}
-
-
diff --git a/apps/tup-cms/src/taccsite_cms/templates/snippets/redirect.html b/apps/tup-cms/src/taccsite_cms/templates/snippets/redirect.html
deleted file mode 100644
index 9ea076eca..000000000
--- a/apps/tup-cms/src/taccsite_cms/templates/snippets/redirect.html
+++ /dev/null
@@ -1,30 +0,0 @@
-{# To redirect page to given URL or external URL from known content #}
-{% load static %}
-
-
diff --git a/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years--cropped.svg b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years--cropped.svg
new file mode 100644
index 000000000..7ef885704
--- /dev/null
+++ b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years--cropped.svg
@@ -0,0 +1,774 @@
+
+
diff --git a/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years.svg b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years.svg
new file mode 100644
index 000000000..4ae88eae6
--- /dev/null
+++ b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/img/org_logos/tacc-logo-white-25years.svg
@@ -0,0 +1,263 @@
+
+
diff --git a/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc.js b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc.js
index c871dc2be..589d4ee67 100644
--- a/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc.js
+++ b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc.js
@@ -1 +1,2 @@
+import './ad-hoc/external-articles.js';
import './ad-hoc/prevent-ugly-urls.js';
diff --git a/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc/external-articles.js b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc/external-articles.js
new file mode 100644
index 000000000..679bbcb5b
--- /dev/null
+++ b/apps/tup-cms/src/taccsite_custom/tup_cms/static/tup_cms/js/ad-hoc/external-articles.js
@@ -0,0 +1,13 @@
+import {
+ changeHowExternalArticleOpens,
+ redirectExternalArticle,
+} from 'https://cdn.jsdelivr.net/gh/TACC/Core-CMS@ecd6b18/taccsite_cms/static/site_cms/js/modules/manageExternalArticles.js';
+
+/* https://github.com/TACC/Core-CMS/blob/v4.35.13/taccsite_cms/static/site_cms/css/src/_imports/components/django.cms.blog.selectors.css#L6-L7 */
+const isNewsArticle = document.querySelectorAll(
+ '.app-blog article.post-detail'
+).length;
+const isNewsList = document.querySelectorAll('.app-blog .blog-list').length;
+
+if (isNewsList) changeHowExternalArticleOpens();
+if (isNewsArticle) redirectExternalArticle();
diff --git a/docs/contributing.md b/docs/contributing.md
index 56bd8799b..034dc491d 100644
--- a/docs/contributing.md
+++ b/docs/contributing.md
@@ -37,12 +37,12 @@ Only appointed team members may release versions.
1. Create release **or** pre-release and tag on GitHub.
- | type | use case | tag format | example |
- | ----------- | --------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
- | release | deploy to prod. | `vA.B.C` following [SemVer](https://semver.org/) | `v1.1.3` |
- | pre-release | deploy to dev. | `vA.B.C-YYYYMM-ZZ` Where `ZZ` is the _number_ of pre-releases since `vA.B.C`. | `v1.1.3-202312-03` Where `03` is the _third_ pre-release of December. |
+ | type | use case | tag format | example |
+ | ----------- | --------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
+ | release | deploy to prod. | `vA.B.C` following [SemVer](https://semver.org/) | `v1.1.3` |
+ | pre-release | deploy to dev. | `vA.B.D-YYYYMMNN` Where `NN` is the _Nth_ pre-release since `vA.B.C`. | `v1.1.4-20231203` Where `03` is the _third_ pre-release of December, following previous release of `v1.1.3`. |
-2. If a **pre-release** is off of a `dev` branch, i.e. has code from branches of un-merged PRs, then add those PRs to the changelog e.g.
+2. If a **pre-release** is off of a branch other than `main`, i.e. has code from branches of un-merged PRs, then add those PRs to the changelog e.g.
```markdown
- feat: TUP-631 migrate blog page css to core-cms by @wesleyboar in #385 at b7f6651