Merge nucleic/frosty-grove-shrew-pb0i into main

Mirrored from corpo 0ef9133.
This commit is contained in:
2026-08-10 02:47:12 -07:00
parent 745b9faf84
commit 93a3e6241a
+14 -13
View File
@@ -536,7 +536,7 @@ const canonical = new URL('/', Astro.site);
right — the way the sentence reads, the way the verb points — then resting for
the balance of the cycle. What separates this from a loading shimmer is
everything quantitative: the light is the gradient's own mint rather than
white, it happens exactly once — a single ~1.2s pass as the line arrives,
white, it happens exactly once — a single ~0.65s dash as the line arrives,
never repeating — and the band is asymmetric — a long dim tail behind a
crisp leading edge — so it reads as something moving through, not a surface
effect.
@@ -583,8 +583,8 @@ const canonical = new URL('/', Astro.site);
100deg,
transparent 20%,
rgb(234 248 240 / 12%) 38%,
rgb(234 248 240 / 42%) 48%,
rgb(234 248 240 / 42%) 62%,
rgb(234 248 240 / 46%) 48%,
rgb(234 248 240 / 46%) 62%,
rgb(234 248 240 / 8%) 68%,
transparent 71%
);
@@ -597,12 +597,13 @@ const canonical = new URL('/', Astro.site);
/* The delay is set against the line's entrance, not the page's. The park
sits just off the first glyph, and the sweep is linear, so the light
enters almost the moment the delay ends — the delay IS the arrival time.
0.85s starts the light while the line is still completing its rise
(opacity full at ~1.38s), so the two emerge together: the sheen's first
moments inherit the line's last moments of fade-in. One iteration, by
design — the light passes through once as the words land, and the line
owns its stillness afterward. */
animation: sheen-pass 1.2s 0.85s linear;
0.7s launches the dash mid-rise: the line is about half faded-in when
the light takes off, the light outruns it down the length of the word,
and the sprint finishes right as the line settles (~1.38s) — the words
land and the light is already gone. Riding inside the still-fading line
also softens the dash's first frames for free. One iteration, by design:
a sprint run twice is choreography; run once it is an event. */
animation: sheen-pass 0.65s 0.7s linear;
}
.line-runs .that {
@@ -746,12 +747,12 @@ const canonical = new URL('/', Astro.site);
}
/* The whole animation is the sweep — one iteration, no dwell keyframe — so
the page pays for paint during a single 1.2s window at load and never
the page pays for paint during a single ~0.65s window at load and never
again. The sweep is linear on purpose: an eased segment read as the light
accelerating through the middle of the line (it was — ease-in-out is
fastest at its midpoint, which lands mid-word), and a runner holds a pace.
The softness at entry and exit comes from the band's own gradient profile,
not from the curve. */
fastest at its midpoint, which lands mid-word), and a sprinter at full
speed holds a pace. The softness at entry and exit comes from the band's
own gradient profile, not from the curve. */
@keyframes sheen-pass {
from { background-position: -115% 0; }
to { background-position: 235% 0; }