diff --git a/website/public/favicon.svg b/website/public/favicon.svg
index 667b882..e341da3 100644
--- a/website/public/favicon.svg
+++ b/website/public/favicon.svg
@@ -1,12 +1,15 @@
diff --git a/website/src/components/layout/Logo.astro b/website/src/components/layout/Logo.astro
new file mode 100644
index 0000000..a1103ea
--- /dev/null
+++ b/website/src/components/layout/Logo.astro
@@ -0,0 +1,22 @@
+---
+interface Props {
+ size?: number;
+}
+
+const { size = 28 } = Astro.props;
+const gradientId = `synapse-g-${crypto.randomUUID()}`;
+---
+
diff --git a/website/src/components/layout/Nav.astro b/website/src/components/layout/Nav.astro
index 2c69edd..c3d179a 100644
--- a/website/src/components/layout/Nav.astro
+++ b/website/src/components/layout/Nav.astro
@@ -1,25 +1,13 @@
---
import ThemeToggle from './ThemeToggle.astro';
+import Logo from './Logo.astro';
import Search from '~/components/react/Search.tsx';
const path = Astro.url.pathname;
const isActive = (p: string) => path === p || (p !== '/' && path.startsWith(p));
---