diff --git a/src/app.css b/src/app.css
index 17b01ce..9f5e8f5 100644
--- a/src/app.css
+++ b/src/app.css
@@ -54,24 +54,109 @@ a {
position: relative;
isolation: isolate;
overflow: clip;
- background:
- radial-gradient(circle at 50% 0%, rgba(181, 140, 255, 0.22), transparent 34rem),
- linear-gradient(to bottom, rgba(7, 0, 20, 0.18), rgba(54, 0, 95, 0.38));
+ background: var(--color-bg-deep);
}
-.landing-page::before {
- content: '';
+.space-backdrop,
+.space-backdrop::before,
+.space-backdrop::after,
+.star-layer {
+ pointer-events: none;
position: absolute;
+ inset: 0;
z-index: -1;
- inset: -8svh 0;
- background-image: url('/assets/squiggleverse-bg.webp');
- background-position: center top;
- background-size: cover;
- transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.16), 0) scale(1.08);
+}
+
+.space-backdrop {
+ overflow: hidden;
+ background:
+ radial-gradient(circle at 50% -8%, rgba(209, 183, 255, 0.2), transparent 23rem),
+ radial-gradient(ellipse at 18% 48%, rgba(112, 14, 181, 0.42), transparent 35rem),
+ radial-gradient(ellipse at 84% 50%, rgba(88, 8, 156, 0.38), transparent 34rem),
+ radial-gradient(ellipse at 50% 88%, rgba(111, 0, 185, 0.58), transparent 42rem),
+ linear-gradient(180deg, #03000b 0%, #0d001b 26%, #260047 62%, #57008f 100%);
+}
+
+.space-backdrop::before {
+ content: '';
+ inset: -16svh -8vw;
+ background:
+ radial-gradient(ellipse at 12% 32%, rgba(111, 42, 173, 0.22), transparent 28rem),
+ radial-gradient(ellipse at 88% 28%, rgba(102, 54, 176, 0.18), transparent 24rem),
+ radial-gradient(ellipse at 50% 83%, rgba(113, 0, 178, 0.44), transparent 35rem);
+ filter: blur(18px);
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.08), 0);
+ will-change: transform;
+}
+
+.space-backdrop::after {
+ content: '';
+ opacity: 0.2;
+ background-image:
+ linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
+ linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
+ background-size: 13rem 13rem;
+ mask-image: linear-gradient(to bottom, transparent, black 15%, black 86%, transparent);
+}
+
+.star-layer {
+ inset: -18svh -10vw;
+ background-repeat: repeat;
transform-origin: center top;
will-change: transform;
}
+.star-layer-dust {
+ opacity: 0.72;
+ background-image:
+ radial-gradient(circle, rgba(255, 255, 255, 0.74) 0 0.8px, transparent 1.4px),
+ radial-gradient(circle, rgba(223, 207, 255, 0.62) 0 0.7px, transparent 1.3px),
+ radial-gradient(circle, rgba(255, 255, 255, 0.5) 0 0.6px, transparent 1.2px);
+ background-position:
+ 1rem 2rem,
+ 6rem 8rem,
+ 11rem 4rem;
+ background-size:
+ 9rem 11rem,
+ 13rem 17rem,
+ 19rem 23rem;
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.1), 0);
+}
+
+.star-layer-far {
+ opacity: 0.78;
+ background-image:
+ radial-gradient(circle, rgba(255, 255, 255, 0.86) 0 1px, transparent 1.8px),
+ radial-gradient(circle, rgba(222, 204, 255, 0.72) 0 1px, transparent 1.7px),
+ radial-gradient(circle, rgba(255, 255, 255, 0.55) 0 0.8px, transparent 1.5px);
+ background-position:
+ 2rem 4rem,
+ 8rem 13rem,
+ 16rem 7rem;
+ background-size:
+ 17rem 19rem,
+ 23rem 29rem,
+ 31rem 37rem;
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.14), 0);
+}
+
+.star-layer-near {
+ opacity: 0.9;
+ background-image:
+ radial-gradient(circle, rgba(255, 255, 255, 0.98) 0 1.4px, rgba(202, 181, 255, 0.48) 2.2px, transparent 8px),
+ radial-gradient(circle, rgba(255, 255, 255, 0.9) 0 1px, rgba(180, 132, 255, 0.36) 2px, transparent 6px),
+ radial-gradient(circle, rgba(255, 255, 255, 0.78) 0 1px, transparent 2px);
+ background-position:
+ 4rem 6rem,
+ 14rem 18rem,
+ 24rem 10rem;
+ background-size:
+ 24rem 31rem,
+ 36rem 42rem,
+ 19rem 23rem;
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.28), 0);
+}
+
.hero {
width: min(1120px, 100%);
min-height: 100svh;
@@ -217,9 +302,25 @@ a {
}
@media (max-width: 768px) {
- .landing-page::before {
- inset: -4svh 0;
- transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.1), 0) scale(1.08);
+ .space-backdrop::before {
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.05), 0);
+ }
+
+ .star-layer {
+ inset: -10svh -18vw;
+ }
+
+ .star-layer-far {
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.08), 0);
+ }
+
+ .star-layer-dust {
+ opacity: 0.68;
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.06), 0);
+ }
+
+ .star-layer-near {
+ transform: translate3d(0, calc(var(--parallax-y, 0px) * -0.16), 0);
}
.hero {
@@ -258,7 +359,10 @@ a {
transition-duration: 0.001ms !important;
}
- .landing-page::before {
+ .space-backdrop::before,
+ .star-layer-dust,
+ .star-layer-far,
+ .star-layer-near {
transform: none;
will-change: auto;
}
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index 3f6fbbf..794ea7a 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -35,7 +35,9 @@
-
+
+
+
@@ -45,6 +47,12 @@
+
+
Squiggleverse
diff --git a/static/assets/squiggleverse-bg.webp b/static/assets/squiggleverse-bg.webp
deleted file mode 100644
index 1a65829..0000000
Binary files a/static/assets/squiggleverse-bg.webp and /dev/null differ
diff --git a/static/assets/squiggleverse-logo.webp b/static/assets/squiggleverse-logo.webp
deleted file mode 100644
index af6f9da..0000000
Binary files a/static/assets/squiggleverse-logo.webp and /dev/null differ
diff --git a/static/favicon.ico b/static/favicon.ico
new file mode 100644
index 0000000..312a3a0
Binary files /dev/null and b/static/favicon.ico differ
diff --git a/static/favicon.png b/static/favicon.png
new file mode 100644
index 0000000..c3f1d4d
Binary files /dev/null and b/static/favicon.png differ
diff --git a/static/favicon.svg b/static/favicon.svg
deleted file mode 100644
index f28f6a6..0000000
--- a/static/favicon.svg
+++ /dev/null
@@ -1,6 +0,0 @@
-
diff --git a/static/icons/squiggleverse-icon-192.png b/static/icons/squiggleverse-icon-192.png
new file mode 100644
index 0000000..132e34a
Binary files /dev/null and b/static/icons/squiggleverse-icon-192.png differ
diff --git a/static/icons/squiggleverse-icon-512.png b/static/icons/squiggleverse-icon-512.png
new file mode 100644
index 0000000..ec398a1
Binary files /dev/null and b/static/icons/squiggleverse-icon-512.png differ
diff --git a/static/site.webmanifest b/static/site.webmanifest
index ead6455..e1cb055 100644
--- a/static/site.webmanifest
+++ b/static/site.webmanifest
@@ -7,9 +7,14 @@
"theme_color": "#160030",
"icons": [
{
- "src": "/favicon.svg",
- "sizes": "64x64",
- "type": "image/svg+xml"
+ "src": "/icons/squiggleverse-icon-192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "/icons/squiggleverse-icon-512.png",
+ "sizes": "512x512",
+ "type": "image/png"
}
]
}