diff --git a/packages/ui/scripts/light-motifs.mjs b/packages/ui/scripts/light-motifs.mjs
index 938daf6..c2753bb 100644
--- a/packages/ui/scripts/light-motifs.mjs
+++ b/packages/ui/scripts/light-motifs.mjs
@@ -1,7 +1,8 @@
/**
* Writes the light and foil versions of the motif SVGs from the dark originals
* in src/assets/motifs, using the inks Greg picked on the light motif board
- * (2026-10-18). Run after a motif changes: node packages/ui/scripts/light-motifs.mjs
+ * (2026-10-18), and the light GK monogram in src/assets/brand/light. Run after
+ * a motif or the monogram changes: node packages/ui/scripts/light-motifs.mjs
*
* light/ deep gold line: the dark inks swapped for Starlight-page inks, glow removed
* foil/ the dark seal with its gold as foil, glow kept
@@ -63,3 +64,15 @@ for (const f of files) {
}
}
console.log(`${files.length} motifs written`);
+
+// The GK monogram on Starlight: a pale disc, deep gold rings and ink letters.
+const MONOGRAM = {
+ ...LIGHT,
+ "#131C2B": "#FFFFFF",
+ "#1F3B49": "#ECE6D8",
+ "#15232F": "#FBF9F4",
+};
+const brand = join(dir, "../brand");
+mkdirSync(join(brand, "light"), { recursive: true });
+writeFileSync(join(brand, "light", "gk-monogram.svg"), recolor(readFileSync(join(brand, "gk-monogram.svg"), "utf8"), MONOGRAM));
+console.log("monogram written");
diff --git a/packages/ui/src/assets/brand/light/gk-monogram.svg b/packages/ui/src/assets/brand/light/gk-monogram.svg
new file mode 100644
index 0000000..dded08a
--- /dev/null
+++ b/packages/ui/src/assets/brand/light/gk-monogram.svg
@@ -0,0 +1,2 @@
+
\ No newline at end of file
diff --git a/packages/ui/src/components/EdgeSeals.astro b/packages/ui/src/components/EdgeSeals.astro
index 4ff44d3..465ec21 100644
--- a/packages/ui/src/components/EdgeSeals.astro
+++ b/packages/ui/src/components/EdgeSeals.astro
@@ -39,7 +39,7 @@ const other = second === false ? null : (second ?? first);
top: 760px;
width: 620px;
height: 620px;
- opacity: 0.07;
+ opacity: calc(0.07 * var(--gk-ghost));
transform: rotate(-10deg);
}
.right {
@@ -47,7 +47,7 @@ const other = second === false ? null : (second ?? first);
top: 64%;
width: 560px;
height: 560px;
- opacity: 0.06;
+ opacity: calc(0.06 * var(--gk-ghost));
transform: rotate(8deg);
}
@media (max-width: 640px) {
diff --git a/packages/ui/src/components/SiteFooter.astro b/packages/ui/src/components/SiteFooter.astro
index a1abca7..624ad58 100644
--- a/packages/ui/src/components/SiteFooter.astro
+++ b/packages/ui/src/components/SiteFooter.astro
@@ -2,12 +2,13 @@
/** The site footer: the header divider again, then the monogram line and links. */
import monogram from "../assets/brand/gk-monogram.svg?url";
import Divider from "./Divider.astro";
+import Motif from "./Motif.astro";
const year = new Date().getFullYear();
---