diff --git a/cspell.de.json b/cspell.de.json
index 5aec2cf..f466489 100644
--- a/cspell.de.json
+++ b/cspell.de.json
@@ -109,6 +109,7 @@
"Portfoliogröße",
"Preissignalbasierter",
"prognosebasierter",
+ "RDDL",
"REBALANCE",
"Rebalancing",
"Redispatch",
diff --git a/cspell.en.json b/cspell.en.json
index fc674da..29eebd6 100644
--- a/cspell.en.json
+++ b/cspell.en.json
@@ -67,6 +67,7 @@
"normalised",
"normalises",
"OCPP",
+ "RDDL",
"optimisation",
"optimised",
"optimises",
diff --git a/de/technology/index.html b/de/technology/index.html
index 7d6fd4e..3cad6bc 100644
--- a/de/technology/index.html
+++ b/de/technology/index.html
@@ -55,9 +55,14 @@
.security-item h4 { font-size:0.875rem; font-weight:600; color:var(--text-primary); margin-bottom:0.35rem; }
.security-item p { font-size:0.8rem; color:var(--text-muted); line-height:1.5; }
hr.divider { border:none; border-top:1px solid #2a3850; margin:var(--spacing-md) 0; }
- /* Hardware image */
- .hw-image-wrap { border-radius:12px; overflow:hidden; border:1px solid #2e3d52; margin-bottom:var(--spacing-lg); }
- .hw-image-wrap img { display:block; width:100%; height:auto; }
+ /* NODE ZERO product grid */
+ .hw-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:var(--spacing-lg); }
+ @media(max-width:600px){ .hw-grid { grid-template-columns:1fr; } }
+ .hw-product { border:1px solid #2e3d52; border-radius:12px; overflow:hidden; }
+ .hw-product img { display:block; width:100%; height:auto; }
+ .hw-product-label { padding:0.875rem 1.25rem; background:var(--card-bg); }
+ .hw-product-name { display:block; font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--primary-green); margin-bottom:0.2rem; }
+ .hw-product-role { display:block; font-size:0.9rem; font-weight:500; color:var(--text-primary); }
@@ -71,14 +76,39 @@
-
-

+
{{ tech_hw_h2 }}
+
{{ tech_hw_sub_pre }}RDDL Foundation{{ tech_hw_sub_post }}
+
+
+

+
+ NODE ZERO
+ local-first intelligence
+
+
+
+

+
+ NODE ZERO
+ relay
+
+
+
+

+
+ NODE ZERO
+ meter link
+
+
+
+

+
+ NODE ZERO
+ ZIGBEE³
+
+
diff --git a/images/3-phase-reader.jpeg b/images/3-phase-reader.jpeg
new file mode 100644
index 0000000..78eccf3
Binary files /dev/null and b/images/3-phase-reader.jpeg differ
diff --git a/images/bridge-edge-device.jpeg b/images/bridge-edge-device.jpeg
new file mode 100644
index 0000000..1553ed8
Binary files /dev/null and b/images/bridge-edge-device.jpeg differ
diff --git a/images/sidecar.jpeg b/images/sidecar.jpeg
new file mode 100644
index 0000000..00ea42c
Binary files /dev/null and b/images/sidecar.jpeg differ
diff --git a/images/zigbee-dongle.jpeg b/images/zigbee-dongle.jpeg
new file mode 100644
index 0000000..2ddd49c
Binary files /dev/null and b/images/zigbee-dongle.jpeg differ
diff --git a/technology/index.html b/technology/index.html
index 1244384..ca68a2e 100644
--- a/technology/index.html
+++ b/technology/index.html
@@ -55,9 +55,14 @@
.security-item h4 { font-size:0.875rem; font-weight:600; color:var(--text-primary); margin-bottom:0.35rem; }
.security-item p { font-size:0.8rem; color:var(--text-muted); line-height:1.5; }
hr.divider { border:none; border-top:1px solid #2a3850; margin:var(--spacing-md) 0; }
- /* Hardware image */
- .hw-image-wrap { border-radius:12px; overflow:hidden; border:1px solid #2e3d52; margin-bottom:var(--spacing-lg); }
- .hw-image-wrap img { display:block; width:100%; height:auto; }
+ /* NODE ZERO product grid */
+ .hw-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:var(--spacing-lg); }
+ @media(max-width:600px){ .hw-grid { grid-template-columns:1fr; } }
+ .hw-product { border:1px solid #2e3d52; border-radius:12px; overflow:hidden; }
+ .hw-product img { display:block; width:100%; height:auto; }
+ .hw-product-label { padding:0.875rem 1.25rem; background:var(--card-bg); }
+ .hw-product-name { display:block; font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--primary-green); margin-bottom:0.2rem; }
+ .hw-product-role { display:block; font-size:0.9rem; font-weight:500; color:var(--text-primary); }
@@ -71,14 +76,39 @@
Built for energy infrastructure.
Not adapted from IoT.
-
+
-
-

+
{{ tech_hw_h2 }}
+
{{ tech_hw_sub_pre }}RDDL Foundation{{ tech_hw_sub_post }}
+
+
+

+
+ NODE ZERO
+ local-first intelligence
+
+
+
+

+
+ NODE ZERO
+ relay
+
+
+
+

+
+ NODE ZERO
+ meter link
+
+
+
+

+
+ NODE ZERO
+ ZIGBEE³
+
+
diff --git a/templates/technology/index.html b/templates/technology/index.html
index 41f0ef2..fe5930f 100644
--- a/templates/technology/index.html
+++ b/templates/technology/index.html
@@ -55,9 +55,14 @@
.security-item h4 { font-size:0.875rem; font-weight:600; color:var(--text-primary); margin-bottom:0.35rem; }
.security-item p { font-size:0.8rem; color:var(--text-muted); line-height:1.5; }
hr.divider { border:none; border-top:1px solid #2a3850; margin:var(--spacing-md) 0; }
- /* Hardware image */
- .hw-image-wrap { border-radius:12px; overflow:hidden; border:1px solid #2e3d52; margin-bottom:var(--spacing-lg); }
- .hw-image-wrap img { display:block; width:100%; height:auto; }
+ /* NODE ZERO product grid */
+ .hw-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:var(--spacing-lg); }
+ @media(max-width:600px){ .hw-grid { grid-template-columns:1fr; } }
+ .hw-product { border:1px solid #2e3d52; border-radius:12px; overflow:hidden; }
+ .hw-product img { display:block; width:100%; height:auto; }
+ .hw-product-label { padding:0.875rem 1.25rem; background:var(--card-bg); }
+ .hw-product-name { display:block; font-size:0.7rem; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--primary-green); margin-bottom:0.2rem; }
+ .hw-product-role { display:block; font-size:0.9rem; font-weight:500; color:var(--text-primary); }
@@ -71,14 +76,39 @@
{{ tech_h1 }}
-
+
-
-

+
{{ tech_hw_h2 }}
+
{{ tech_hw_sub_pre }}RDDL Foundation{{ tech_hw_sub_post }}
+
+
+

+
+ NODE ZERO
+ local-first intelligence
+
+
+
+

+
+ NODE ZERO
+ relay
+
+
+
+

+
+ NODE ZERO
+ meter link
+
+
+
+

+
+ NODE ZERO
+ ZIGBEE³
+
+