Merge nucleic/keen-willow-panda-3uc2 into main

Mirrored from corpo f21be6c.
This commit is contained in:
2026-08-10 22:14:31 -07:00
parent 58e451a7eb
commit a2770f9c50
+10 -18
View File
@@ -823,6 +823,7 @@ const canonical = new URL('/', Astro.site);
.footer { .footer {
padding-top: 1rem; padding-top: 1rem;
border-top: 1px solid var(--line); border-top: 1px solid var(--line);
transition: opacity 350ms ease-out;
} }
/* The stack is the journey to the site's closing information. Enhancement adds /* The stack is the journey to the site's closing information. Enhancement adds
@@ -833,10 +834,6 @@ const canonical = new URL('/', Astro.site);
pointer-events: none; pointer-events: none;
} }
.footer.is-footer-revealed {
animation: fade-in 500ms ease-out forwards;
}
.footer p { .footer p {
margin: 0; margin: 0;
} }
@@ -872,11 +869,6 @@ const canonical = new URL('/', Astro.site);
} }
} }
@keyframes fade-in {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes fade-up { @keyframes fade-up {
from { from {
transform: translate3d(0, 1rem, 0); transform: translate3d(0, 1rem, 0);
@@ -1231,16 +1223,16 @@ const canonical = new URL('/', Astro.site);
{ passive: true }, { passive: true },
); );
let footerRevealed = false; const setFooterVisible = (isVisible: boolean) => {
if (!footer) return;
const revealFooter = () => { footer.classList.toggle('is-awaiting-final-card', !isVisible);
if (!footer || footerRevealed) return; footer.toggleAttribute('inert', !isVisible);
if (isVisible) {
footerRevealed = true;
footer.classList.remove('is-awaiting-final-card');
footer.classList.add('is-footer-revealed');
footer.removeAttribute('aria-hidden'); footer.removeAttribute('aria-hidden');
footer.removeAttribute('inert'); } else {
footer.setAttribute('aria-hidden', 'true');
}
}; };
const activateTechnology = (index: number) => { const activateTechnology = (index: number) => {
@@ -1252,7 +1244,7 @@ const canonical = new URL('/', Astro.site);
}); });
if (progressCurrent) progressCurrent.textContent = String(index + 1).padStart(2, '0'); if (progressCurrent) progressCurrent.textContent = String(index + 1).padStart(2, '0');
if (index === cards.length - 1) revealFooter(); setFooterVisible(index === cards.length - 1);
}; };
activateTechnology(0); activateTechnology(0);