Commit graph

15 commits

Author SHA1 Message Date
Arlind Ukshini
91cc7aa729 hero: center vertically, widen copy, +10% type, shrink backer
- #page-overview #hero padding rebalanced to clamp(3,8vh,6rem) top
  and clamp(4,10vh,7rem) bottom so the grid-centered content sits
  on the true vertical midline rather than being pushed upward by
  an asymmetric padding-bottom.
- .hero-copy max-width 58ch → 70ch (~+20%). .hero-lede follows to
  53ch (was 44ch). Headline size clamp(1.65rem,4vw,3.4rem) →
  clamp(1.8rem,4.4vw,3.75rem), lede follows in proportion.
- .support type + svg drop to half the previous (0.75x the base
  --step-sm, svg 27→14px). The "Backed by Innovationsfonden" line
  now reads as a quiet footnote instead of competing with the
  main copy above it.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 10:58:56 +02:00
Arlind Ukshini
7e3f0e6ada hero: drop eyebrow, tighten type, indent copy column
- "Meet Fenja AI" eyebrow removed — headline + wordmark pairing
  is enough to anchor the scene.
- Type scale reduced inside #hero: title clamp(1.65rem, 4vw, 3.4rem)
  (was clamp(2rem, 5.1vw, 4.4rem) via --step-hero), lede
  clamp(1rem, 1.7vw, 1.4rem). Reads calmer and keeps the headline
  from overshadowing the lede.
- .hero-copy gets padding-left: clamp(2rem, 8vw, 8rem) so the text
  block floats in the same way the wordmark does in its column —
  symmetric breathing room on both sides of the viewport rather
  than the copy hugging the left edge.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 10:54:47 +02:00
Arlind Ukshini
3e73313c3b hero: two-column layout with Fenja wordmark on the right
- Hero copy moves into a .hero-copy column on the left; a new
  .hero-mark column on the right holds the Fenja wordmark at
  clamp(200px, 22vw, 320px) wide — same position as the welcome
  page's .welcome-logo (~75% across the viewport).
- New eyebrow "Meet Fenja AI", headline "Trusted & Sovereign AI /
  built in Denmark, for Europe.", and expanded lede explaining
  that Fenja AI is both the company and the platform.
- "Supported by" → "Backed by". Both the wordmark font-size and
  the Innovationsfonden SVG get a 50% size bump (calc(--step-sm *
  1.5) on the text, 18px → 27px on the svg).
- Responsive: at <780px the grid collapses to a single column so
  the wordmark stacks below the copy on narrow desktop viewports
  (the mobile UA still gets the separate static mobile view).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 10:50:07 +02:00
Arlind Ukshini
a2cbf57ce2 stack-scene: centered title, per-card counters, earlier anchor
- Stack title bar moves from top-left next to the site-mark to
  centered at ~14vh so the title anchors visually to the cards
  below. Font size bumped to clamp(2rem, 3.6vw, 3rem).
- Counter ("1 / 4 … 4 / 4") relocates from the title bar into
  each .layer-card as a .card-counter element in the top-right of
  each card-box. No longer driven by ScrollTrigger onUpdate —
  each card carries its own number, so stacked + grid phases
  both read correctly without JS. Grid phase shrinks the counter
  so it doesn't compete with the per-cell label.
- SCENE_ANCHOR_OFFSET for stack-scene drops from 1800 back to 0,
  so clicking the "Capabilities" dot lands at the top of the
  pin — the title and first card come in together instead of
  starting mid-stack.

Welcome step: the "desktop experience" aside and its CSS are
removed. Users now see only the two definitions before the CTA.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 10:46:08 +02:00
Arlind Ukshini
5f466e68a9 tune overview anchors + stack-title-bar placement
- SCENE_ANCHOR_OFFSET replaced with getSceneAnchorOffset() so the
  bifrost scene can compute its offset per-viewport instead of using
  a fixed px count. bifrost lands at offsetTop + 0.85 * vh so the arc
  and sub-headline are already drawn in; stack-scene drops from 2100
  to 1800 so the anchor lands mid-stack rather than on the 4th card's
  final beat.
- .stack-title-bar top drops from clamp(3.75rem, 7vh, 5.25rem) to
  clamp(1.25rem, 2.8vh, 1.85rem) so the title floats at the same
  vertical baseline as the fixed .site-mark wordmark in the top-left,
  instead of sitting below it.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 09:53:40 +02:00
Arlind Ukshini
9b2c166b6c timeline + overview: pacing, labeling, and viewing guidance
Timeline page:
- .page-sub: final sentence wrapped in .page-sub-accent and styled
  crimson so the rhetorical beat lifts off the block.
- Scroll-to-begin hint is now toggled from applyScroll() against
  state.target, so it dismisses on first commit AND re-appears when
  the reader scrolls all the way back to the start. onWheel no longer
  hard-adds .hint-dismissed; the applyScroll toggle drives both ways.

Overview page:
- Hero scroll icon: size and presence bumped (2px line, 44px tall, 11px
  chevron, weight 600, color:var(--ink)) so it reads as a confident
  cue, not a whisper at the bottom of the hero.
- Architecture scene gains a title bar pinned with the scene: "The
  Fenja AI platform in four steps" with a 1/4 → 4/4 counter driven by
  the scroll-trigger onUpdate. Bar is placed below the site-mark's
  fixed position so the two don't collide.
- Dot-nav: dot size 5px → 10px (1.5px ring) for better click target +
  visual weight. Buttons for "Words" and "Participate" removed — the
  corresponding intermediate sections now map to their nearest
  surviving dot in bifrost.js's scroll-spy (words-scene →
  stack-scene, bifrost-meaning → bifrost).
- Renames: "Hero" → "Fenja introduction", "Architecture" →
  "Capabilities", "Bifrost" → "Project Bifrost".
- scrollTo() adds a per-scene SCENE_ANCHOR_OFFSET — stack-scene lands
  +2100px into its 5000px pin so the reader arrives on the fully
  stacked state instead of an empty pre-animation frame.

Welcome step (public/entrance.html):
- New .welcome-note callout between definitions and CTA advising
  desktop viewing and gentle scrolling so readers don't fly past
  animated sections before they've resolved.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 09:45:24 +02:00
Arlind Ukshini
69a7f62ae6 text changes and text design 2026-04-23 16:40:04 +02:00
Arlind Ukshini
e3a2d052a7 major great updates 2026-04-23 14:54:25 +02:00
Arlind Ukshini
ecf83137c9 fix hero anim. 2026-04-23 13:40:26 +02:00
Arlind Ukshini
8bd0fda910 fix hero placement, add iamges 2026-04-23 13:31:11 +02:00
Arlind Ukshini
af35862749 add welcome dot, card shrunk, topo.paralx., sticky scroll 2026-04-23 12:06:07 +02:00
Arlind Ukshini
f4cdbf4fd4 remove archive and other changes 2026-04-23 11:40:44 +02:00
Arlind Ukshini
f2f0f8a43e Merge Project Bifrost scenes into the Overview page
Six scroll-bound scenes (hero, architecture stack, words fly-in,
aurora arc, treasure-map, join CTA) now live inside page-overview,
above the existing 23-headline timeline. The Europe map stays as a
static background that fades with scroll.

- protected/index.html: rewrote #page-overview only; timeline and
  archive sections unchanged. Site-2 palette re-mapped to site-1
  Nordic Editorial tokens, Fraunces to Newsreader, tokens scoped
  to #page-overview.
- protected/timeline.js: dot-nav boots window.__bifrost.init()
  on first Overview activation. Added .js class on documentElement.
- protected/bifrost.js (new): Lenis + ScrollTrigger wired to the
  overview's internal scroller via scrollerProxy; drives Europe
  map opacity on scroll.
- protected/vendor/{lenis,gsap,scrolltrigger}.min.js (new):
  extracted from site-2's inlined vendor blobs; CSP-compliant.
- protected/fenja/illustrations/{community,council,pilot}.svg
  (new): treasure-map stop images.

No changes to src/, server.js, deploy/, or public/. CSP stays
strict (script-src 'self'); zero inline scripts added. Auth gate
and session model untouched.
2026-04-22 17:48:44 +02:00
Arlind Ukshini
dc545b0776 add welcome page and change transition to timeline 2026-04-22 17:31:45 +02:00
Arlind Ukshini
1c395c349b Initial commit: project-bifrost auth + timeline 2026-04-22 14:39:16 +02:00