Inga: ambient wave loop, subtle scroll motion, check-list outcomes, nav caps
- Hero: drop the dusty-blue orb; add the thin-line wave loop Mike liked, paper- blended on the left so the headline stays clean (50% opacity, save-data/reduced -motion gated, fades in on play). - Motion: subtle reveal-on-scroll for below-fold sections (gated on has-motion, reduced-motion off, hero never animates — LCP/CLS safe), same idea as OC. - "What changes when we work together": replace the arrow bullets (read like a flow chart) with a clean single-column check-list with divider lines. - Nav: capitalize "The Moment" and "Where to Start". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -112,9 +112,13 @@ section { padding-block: clamp(3.4rem, 7vw, 6rem); scroll-margin-top: 86px; }
|
||||
font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
|
||||
.hero-creds span { position: relative; }
|
||||
.hero-creds span + span::before { content: "·"; position: absolute; left: -.75rem; color: var(--accent); }
|
||||
.hero-orb { position: absolute; right: -12vw; top: -10vw; width: 46vw; max-width: 620px; aspect-ratio: 1;
|
||||
background: radial-gradient(circle at 35% 35%, var(--accent-soft), rgba(157,189,199,.22) 60%, transparent 72%);
|
||||
border-radius: 50%; z-index: 1; pointer-events: none; }
|
||||
/* ambient hero loop (thin-line wave flow) — paper-blended on the left so text stays clean */
|
||||
.hero-media { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; background: var(--paper); }
|
||||
.hero-media::after { content: ""; position: absolute; inset: 0;
|
||||
background: linear-gradient(100deg, var(--paper) 24%, rgba(246,245,242,.55) 46%, rgba(246,245,242,0) 72%); }
|
||||
.hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block;
|
||||
opacity: 0; transition: opacity 1.1s ease; }
|
||||
.hero-video.is-playing { opacity: .5; }
|
||||
|
||||
/* ---- symptom list ---- */
|
||||
.checklist { list-style: none; padding: 0; margin: 1.8rem 0 0; display: grid; gap: .85rem; }
|
||||
@@ -129,11 +133,12 @@ section { padding-block: clamp(3.4rem, 7vw, 6rem); scroll-margin-top: 86px; }
|
||||
.bio-card { background: var(--accent-soft); border-radius: 18px; padding: clamp(1.4rem,3vw,2rem); }
|
||||
.bio-card h3 { margin-top: 0; }
|
||||
|
||||
/* ---- outcomes ---- */
|
||||
.outcomes { list-style: none; padding: 0; margin: 1.8rem 0 0; display: grid; gap: .9rem; }
|
||||
@media (min-width: 720px) { .outcomes { grid-template-columns: 1fr 1fr; gap: .9rem 2rem; } }
|
||||
.outcomes li { position: relative; padding-left: 1.9rem; }
|
||||
.outcomes li::before { content: "→"; position: absolute; left: 0; color: var(--accent-ink); font-weight: 700; }
|
||||
/* ---- outcomes (clean check-list, not a flow chart) ---- */
|
||||
.outcomes { list-style: none; padding: 0; margin: 1.4rem 0 0; }
|
||||
.outcomes li { position: relative; padding: .72rem 0 .72rem 2rem; line-height: 1.5; color: var(--charcoal); }
|
||||
.outcomes li + li { border-top: 1px solid rgba(53,107,123,.16); }
|
||||
.outcomes li::before { content: "✓"; position: absolute; left: .05rem; top: .72rem;
|
||||
color: var(--accent-ink); font-weight: 800; font-size: .96em; line-height: 1.5; }
|
||||
|
||||
/* ---- service cards ---- */
|
||||
.cards { display: grid; gap: 1.1rem; margin-top: 2.2rem; }
|
||||
@@ -190,4 +195,13 @@ section { padding-block: clamp(3.4rem, 7vw, 6rem); scroll-margin-top: 86px; }
|
||||
.site-footer nav a:hover { color: var(--accent); }
|
||||
.site-footer .fine { font-size: .82rem; color: rgba(246,245,242,.55); max-width: 60ch; }
|
||||
|
||||
/* ---- motion: subtle reveal on scroll (gated; hero never animates; CLS-safe) ---- */
|
||||
.has-motion main section:not(.hero) > .wrap {
|
||||
opacity: 0; transform: translateY(16px); transition: opacity .7s ease, transform .7s ease;
|
||||
}
|
||||
.has-motion main section:not(.hero) > .wrap.in { opacity: 1; transform: none; }
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.has-motion main section:not(.hero) > .wrap { opacity: 1; transform: none; transition: none; }
|
||||
}
|
||||
|
||||
:focus-visible { outline: 3px solid var(--accent-ink); outline-offset: 2px; border-radius: 3px; }
|
||||
|
||||
Reference in New Issue
Block a user