diff --git a/assets/css/main.css b/assets/css/main.css
index 7516cb1..666a287 100644
--- a/assets/css/main.css
+++ b/assets/css/main.css
@@ -1,2 +1,43 @@
-@import "tailwindcss";
+@import 'tailwindcss';
+@plugin "@tailwindcss/typography";
@source "hugo_stats.json";
+
+@font-face {
+ font-family: 'Neonderthaw Regular';
+ src: url('/fonts/Neonderthaw-Regular.ttf');
+ unicode-range:
+ U+000D, U+0020-007E, U+00A0-0131, U+0134-0148, U+014A-017E, U+018F, U+0192,
+ U+01A0-01A1, U+01AF-01B0, U+01C4-01D6, U+01D9-01DC, U+01E6-01E7,
+ U+01EA-01EB, U+01FA-021B, U+022A-022D, U+0230-0233, U+0237, U+0259,
+ U+02B9-02BA, U+02BC, U+02C6-02C7, U+02D8-02DD, U+0300-0304, U+0306-030C,
+ U+030F, U+0311-0312, U+031B, U+0323-0324, U+0326-0328, U+032E, U+0331,
+ U+0335, U+1E80-1E85, U+1E9E, U+1EA0-1EF9, U+2010, U+2013-2014, U+2018-201A,
+ U+201C-201E, U+2020-2022, U+2026, U+2030, U+2032-2033, U+2039-203A, U+2044,
+ U+2052, U+2074, U+20A1, U+20A3-20A4, U+20A6-20A7, U+20A9, U+20AB-20AD,
+ U+20B1-20B2, U+20B5, U+20B9-20BA, U+20BC-20BD, U+2116, U+2122, U+2202,
+ U+220F, U+2211-2212, U+2215, U+2219-221A, U+221E, U+222B, U+2248, U+2260,
+ U+2264-2265, U+25CA, U+27E8-27E9, U+F8FF, U+FB01-FB02;
+}
+
+@layer utilities {
+ .font-neon {
+ font-family: 'Neonderthaw Regular', serif;
+ }
+}
+
+lauti-calendar-list::part(container) {
+ --lauti-primary-color: #ffffff;
+ --lauti-secondary-color:;
+ --lauti-header-bg:;
+ --lauti-header-color: #ffffff;
+ --lauti-day-color: var(--color-pink-200);
+ @apply shadow-xl/20;
+ @apply rounded-lg;
+}
+lauti-calendar-list::part(header) {
+ @apply py-6;
+}
+lauti-calendar-list::part(list) {
+ @apply md:max-h-90;
+ @apply overflow-scroll;
+}
diff --git a/assets/js/background-blur.js b/assets/js/background-blur.js
new file mode 100644
index 0000000..004187a
--- /dev/null
+++ b/assets/js/background-blur.js
@@ -0,0 +1,51 @@
+function setBackgroundBlur(
+ targetId,
+ scrollDivisor = 300,
+ disableBlur = false,
+ isMenuBlur = false,
+) {
+ if (!targetId) {
+ console.error('data-blur-id is null');
+ return;
+ }
+ const blurElement = document.getElementById(targetId);
+ if (!blurElement) return;
+ if (disableBlur) {
+ blurElement.setAttribute('aria-hidden', 'true');
+ if (!isMenuBlur) {
+ blurElement.style.display = 'none';
+ blurElement.style.opacity = '0';
+ } else {
+ blurElement.style.display = '';
+ }
+ } else {
+ blurElement.style.display = '';
+ blurElement.removeAttribute('aria-hidden');
+ }
+ const updateBlur = () => {
+ if (!disableBlur || isMenuBlur) {
+ const scroll =
+ window.pageYOffset ||
+ document.documentElement.scrollTop ||
+ document.body.scrollTop ||
+ 0;
+ blurElement.style.opacity = scroll / scrollDivisor;
+ }
+ };
+ blurElement.setAttribute('role', 'presentation');
+ blurElement.setAttribute('tabindex', '-1');
+ window.addEventListener('scroll', updateBlur);
+ updateBlur();
+}
+
+document.querySelectorAll('script[data-blur-id]').forEach((script) => {
+ const targetId = script.getAttribute('data-blur-id');
+ const scrollDivisor = Number(
+ script.getAttribute('data-scroll-divisor') || 300,
+ );
+ console.log('burring ', targetId);
+ const isMenuBlur = targetId === 'menu-blur';
+ const settings = JSON.parse(localStorage.getItem('a11ySettings') || '{}');
+ const disableBlur = settings.disableBlur || false;
+ setBackgroundBlur(targetId, scrollDivisor, disableBlur, isMenuBlur);
+});
diff --git a/assets/js/registerLauti.js b/assets/js/registerLauti.js
new file mode 100644
index 0000000..2ddbb61
--- /dev/null
+++ b/assets/js/registerLauti.js
@@ -0,0 +1,6 @@
+import { configureLautiComponents } from 'wc-lauti';
+
+configureLautiComponents({
+ instanceUrl: 'https://eintopf.info',
+ instanceName: 'eintopf.info',
+});
diff --git a/content/_index.md b/content/_index.md
index 2aa7881..3c9fb94 100644
--- a/content/_index.md
+++ b/content/_index.md
@@ -2,4 +2,13 @@
title: Stuttgart Bike Night
subtitle: Donnerstags 19 Uhr
location: Flora & Fauna
+image: /images/bg-landing.jpg
---
+
+## Was ist die Stuttgarter Bike Night❓
+
+Eine aufstrebende regelmäßige bunte Nachtausfahrt mit Party-Pace durch Stuttgarts Bezirke.
+Wir wollen einen Groupride schaffen für Menschen, die sich in den sportlich fokussierten Radausfahrten vielleicht nicht ganz wohlfühlen 🤝💜 Eine 🚲 Fahrradausfahrt durch Stuttgart, bei der der Spaß am Radeln ganz oben steht 😄🙌.
+Wir verstehen uns als inklusive Gruppe 🌍✨, die einen sicheren Ort ohne Diskriminierung schaffen möchte, an dem sich alle wohl und willkommen fühlen können! 🏳️🌈💫.
+Also komm mit 👉🚲💡 und erkunde mit uns bunt leuchtend 🌈✨ die Stadtteile Stuttgarts 🏙️💛
+Wir fahren auf eigene Verantwortung ohne Anmeldung und sehen uns als kleine Gruppe, die aus Spaß fährt.
diff --git a/content/impressum.md b/content/impressum.md
new file mode 100644
index 0000000..38a8638
--- /dev/null
+++ b/content/impressum.md
@@ -0,0 +1,17 @@
+---
+title: Impressum
+image: /images/halloween.jpg
+---
+
+**Angaben gemäß § 5 TMG:**
+
+Jasper Levin Spahl
+Goppeltstr. 4D
+70191 Stuttgart
+Deutschland
+
+**Kontakt:**
+E-Mail: [jasperspahl@web.de](mailto:jasperspahl@web.de)
+
+Verantwortlich für den Inhalt nach § 55 Abs. 2 RStV:
+Jasper Levin Spahl (Anschrift wie oben)
diff --git a/data/footer.toml b/data/footer.toml
new file mode 100644
index 0000000..173fd6c
--- /dev/null
+++ b/data/footer.toml
@@ -0,0 +1,21 @@
+brand = "Stuttgart Bike Night"
+
+[[links]]
+name = "Impressum"
+url = "/impressum"
+
+[[links]]
+name = "Instagram"
+url = "https://instagram.com/stuttgartbikenight"
+
+[[links]]
+name = "Mastodon"
+url = "https://verkehrswende.social/@stuttgartbikenight"
+
+#[[links]]
+#name = "Signal Gruppe"
+#url = "https://signal.org"
+
+[[links]]
+name = "eintopf.info"
+url = "https://eintopf.info/gruppe/2e2994eb-ae45-4297-a2f6-9f7948da784c"
diff --git a/layouts/_partials/footer.html b/layouts/_partials/footer.html
index e69de29..9a60f73 100644
--- a/layouts/_partials/footer.html
+++ b/layouts/_partials/footer.html
@@ -0,0 +1,22 @@
+
diff --git a/layouts/_partials/header.html b/layouts/_partials/header.html
index 21ad117..9278082 100644
--- a/layouts/_partials/header.html
+++ b/layouts/_partials/header.html
@@ -2,15 +2,33 @@