diff --git a/nuxt/components/AppHeader.vue b/nuxt/components/AppHeader.vue
index b03252573e..1aec8fd896 100644
--- a/nuxt/components/AppHeader.vue
+++ b/nuxt/components/AppHeader.vue
@@ -166,7 +166,7 @@ onMounted(() => {
Bridge the gap between OT and IT teams using FlowFuse, the only comprehensive application platform with industrial AI and governance baked in.
+ Bridge the gap between OT and IT teams using FlowFuse, the only comprehensive application platform with industrial AI and governance baked in.
![]()
diff --git a/nuxt/public/images/customer-headshots/dave-olsen-wenco.png b/nuxt/public/images/customer-headshots/dave-olsen-wenco.png
new file mode 100644
index 0000000000..45263e3440
Binary files /dev/null and b/nuxt/public/images/customer-headshots/dave-olsen-wenco.png differ
diff --git a/nuxt/public/images/customer-headshots/servan-petrosian-arch-systems.png b/nuxt/public/images/customer-headshots/servan-petrosian-arch-systems.png
new file mode 100644
index 0000000000..d50848c9f7
Binary files /dev/null and b/nuxt/public/images/customer-headshots/servan-petrosian-arch-systems.png differ
diff --git a/src/_data/chrome.json b/src/_data/chrome.json
index e5393f1485..6ba6b99864 100644
--- a/src/_data/chrome.json
+++ b/src/_data/chrome.json
@@ -6,15 +6,33 @@
"label": "Platform",
"columns": [
{
- "title": "Product",
+ "title": "Overview",
"titleGrid": "xl:col-start-2 xl:row-start-1",
- "listClasses": "row-span-3 xl:col-start-2 xl:row-start-2",
+ "listClasses": "row-span-6 xl:col-start-2 xl:row-start-2",
"links": [
{
- "label": "Features",
+ "label": "Product",
"href": "/product/",
"icon": "star"
},
+ {
+ "label": "FlowFuse Edge",
+ "href": "/product/edge/",
+ "icon": "chip",
+ "indent": true
+ },
+ {
+ "label": "FlowFuse Hub",
+ "href": "/product/hub/",
+ "icon": "circle-stack",
+ "indent": true
+ },
+ {
+ "label": "FlowFuse Fleet",
+ "href": "/product/fleet/",
+ "icon": "server-stack",
+ "indent": true
+ },
{
"label": "Security Statement",
"href": "/platform/security/",
@@ -417,12 +435,24 @@
"gridClasses": "grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-2 gap-x-8 gap-y-8",
"groups": [
{
- "title": "Product",
+ "title": "Overview",
"links": [
{
- "label": "Features",
+ "label": "Product",
"href": "/product/"
},
+ {
+ "label": "FlowFuse Edge",
+ "href": "/product/edge/"
+ },
+ {
+ "label": "FlowFuse Hub",
+ "href": "/product/hub/"
+ },
+ {
+ "label": "FlowFuse Fleet",
+ "href": "/product/fleet/"
+ },
{
"label": "Security Statement",
"href": "/platform/security/"
diff --git a/src/_includes/layouts/base.njk b/src/_includes/layouts/base.njk
index 1d578f0e86..bf62556b3b 100644
--- a/src/_includes/layouts/base.njk
+++ b/src/_includes/layouts/base.njk
@@ -199,7 +199,7 @@ eleventyComputed:
diff --git a/src/css/style.css b/src/css/style.css
index 93f8b06c49..a8ce5913c2 100644
--- a/src/css/style.css
+++ b/src/css/style.css
@@ -2896,6 +2896,17 @@ lite-youtube::before {
margin-left: 0 !important;
border-left: 0 !important;
}
+/* Nested sub-items (e.g. product tiers under "Product"). Needs a dedicated
+ rule since #nav-content li's `border-none` reset above beats a bare
+ Tailwind border utility on layer order. */
+.ff-website header .ff-nav-dropdown > ul.mega ul.sub-menu li.nav-indent {
+ margin-left: 0.6rem !important;
+ padding-left: 0 !important;
+ border-left: 2px solid var(--color-gray-200) !important;
+}
+.ff-website header .ff-nav-dropdown > ul.mega ul.sub-menu li.nav-indent > a {
+ padding-left: 1rem !important;
+}
/* Mobile accordion: eyebrows indent to the link icon column, moderate row
height, and tap feedback via a text-hugging underline (the desktop
animated line needs a text span the link markup does not have) */
@@ -2911,6 +2922,14 @@ lite-youtube::before {
padding-bottom: 0.5rem !important;
padding-left: 2.5rem !important; /* indent links under the section eyebrow (1.5rem) */
}
+ /* Same centering math as the desktop rule above, but against this
+ breakpoint's pl-2.5rem (40px) icon column: 40px + 10px = 50px = 3.125rem. */
+ .ff-website header .ff-nav-dropdown > ul.mega ul.sub-menu li.nav-indent {
+ margin-left: 3.125rem !important;
+ }
+ .ff-website header .ff-nav-dropdown > ul.mega ul.sub-menu li.nav-indent > a {
+ padding-left: 0.75rem !important;
+ }
/* Roomier mobile drawer: inset the whole menu and enlarge the top-level item
labels for easier tapping. Scoped to mobile only; desktop nav unaffected.
NOTE: horizontal padding is always safe, but vertical padding must apply