General Update

This commit is contained in:
Greg Kilmer
2026-07-04 10:53:14 -04:00
parent 71bffad507
commit 33fa312645
18 changed files with 921 additions and 346 deletions
+24 -12
View File
@@ -2,27 +2,39 @@
/**
* Footer.astro
* ---------------------------------------------------------------------------
* Minimal footer: social links (mdi icons), copyright, and the spec microcopy
* "Built with intention. Powered by caffeine." No emojis per spec.
* Minimal footer on a deep night-sky surface: a faint static starfield accent,
* a StarBurst mark beside the name, social links (mdi icons), copyright, and
* the spec microcopy "Built with intention. Powered by caffeine." No emojis.
*/
import Icon from '@components/Icon.astro';
import StarBurst from '@components/mystic/StarBurst.astro';
import StarField from '@components/mystic/StarField.astro';
import { socials, footerMicrocopy, siteIdentity } from '@lib/site';
const year = new Date().getFullYear();
const socialList = Object.values(socials);
---
<footer
class="border-t"
class="relative overflow-hidden border-t"
style="border-color: var(--color-border); background: var(--color-surface-sunken);"
>
<div class="container-prose flex flex-col items-center gap-6 py-10 text-center sm:flex-row sm:justify-between sm:text-left">
<div class="flex flex-col gap-1">
<p class="font-sans text-sm font-semibold" style="color: var(--color-text);">
{siteIdentity.name}
</p>
<p class="font-mono text-xs italic" style="color: var(--color-text-subtle);">
{footerMicrocopy}
</p>
{/* Faint static starfield — carries the night-sky treatment into the footer. */}
<StarField
class="pointer-events-none absolute inset-0 h-full w-full"
style="color: var(--color-accent); opacity:.35;"
density="sparse"
/>
<div class="container-prose relative z-10 flex flex-col items-center gap-6 py-10 text-center sm:flex-row sm:justify-between sm:text-left">
<div class="flex items-center gap-3">
<StarBurst class="h-5 w-5 shrink-0" style="color: var(--color-accent);" />
<div class="flex flex-col gap-1">
<p class="font-sans text-sm font-semibold" style="color: var(--color-text);">
{siteIdentity.name}
</p>
<p class="font-mono text-xs italic" style="color: var(--color-text-subtle);">
{footerMicrocopy}
</p>
</div>
</div>
<ul class="flex items-center gap-2">
@@ -43,7 +55,7 @@ const socialList = Object.values(socials);
))}
</ul>
</div>
<div class="container-prose pb-8 text-center text-xs" style="color: var(--color-text-subtle);">
<div class="container-prose relative z-10 pb-8 text-center text-xs" style="color: var(--color-text-subtle);">
&copy; {year} {siteIdentity.name}. All rights reserved.
</div>
</footer>
+5 -4
View File
@@ -41,11 +41,12 @@ const {
} = Astro.props;
---
<section class="relative overflow-hidden pt-28 sm:pt-32">
<!-- Calmer background: gradient only, no particles on interest pages. -->
<AnimatedBackground client:idle particles={false} />
<section class="relative min-h-[60vh] overflow-hidden pt-28 sm:pt-32">
<!-- Full animated Milky Way field + stars (matches the Home/Interests hero).
Carries the per-page morph name (one .vt-sky per page snapshot). -->
<AnimatedBackground client:idle transitionName="sky" />
<div class="container-prose relative z-10 flex flex-col items-start gap-6 py-12">
<div class="container-prose relative z-10 flex flex-col items-start gap-6 py-16">
<Reveal>
<a
href="/interests"