diff --git a/src/app/colors.css b/src/app/colors.css
index 591e86651c..a3ca69e689 100644
--- a/src/app/colors.css
+++ b/src/app/colors.css
@@ -24,18 +24,16 @@
--color-neu-900: 75 15% 5%;
}
-@media (prefers-color-scheme: dark) {
- :root {
- --color-neu-900: 0 0% 100%;
- --color-neu-800: 75 57% 97%;
- --color-neu-700: 75 15% 95%;
- --color-neu-600: 77 14% 90%;
- --color-neu-500: 76 14% 85%;
- --color-neu-400: 77 14% 80%;
- --color-neu-300: 74 14% 70%;
- --color-neu-200: 76 15% 60%;
- --color-neu-100: 76 15% 40%;
- --color-neu-50: 77 14% 20%;
- --color-neu-0: 75 15% 5%;
- }
+html.dark {
+ --color-neu-900: 0 0% 100%;
+ --color-neu-800: 75 57% 97%;
+ --color-neu-700: 75 15% 95%;
+ --color-neu-600: 77 14% 90%;
+ --color-neu-500: 76 14% 85%;
+ --color-neu-400: 77 14% 80%;
+ --color-neu-300: 74 14% 70%;
+ --color-neu-200: 76 15% 60%;
+ --color-neu-100: 76 15% 40%;
+ --color-neu-50: 77 14% 20%;
+ --color-neu-0: 75 15% 5%;
}
diff --git a/src/app/conf/2025/assets/graphql-foundation-wordmark.svg b/src/app/conf/2025/assets/graphql-foundation-wordmark.svg
new file mode 100644
index 0000000000..556ab3f50b
--- /dev/null
+++ b/src/app/conf/2025/assets/graphql-foundation-wordmark.svg
@@ -0,0 +1,33 @@
+
diff --git a/src/app/conf/2025/components/hero/blur-bean-cropped.webp b/src/app/conf/2025/components/hero/blur-bean-cropped.webp
new file mode 100644
index 0000000000..41785f9cbd
Binary files /dev/null and b/src/app/conf/2025/components/hero/blur-bean-cropped.webp differ
diff --git a/src/app/conf/2025/components/hero/hero-photo.jpeg b/src/app/conf/2025/components/hero/hero-photo.jpeg
new file mode 100644
index 0000000000..5e9fed6fd0
Binary files /dev/null and b/src/app/conf/2025/components/hero/hero-photo.jpeg differ
diff --git a/src/app/conf/2025/components/hero/image-loaded.tsx b/src/app/conf/2025/components/hero/image-loaded.tsx
new file mode 100644
index 0000000000..e1486b7618
--- /dev/null
+++ b/src/app/conf/2025/components/hero/image-loaded.tsx
@@ -0,0 +1,21 @@
+"use client"
+
+import type { StaticImageData } from "next/image"
+import { useEffect, useState } from "react"
+
+export interface ImageLoadedProps extends React.HTMLAttributes
+ GraphQLConf
+ 2025
+
+
+