## 2026-10-12 (night) — the headings are two-tone again, and the home page has rules between its sections Both from the operator, 2026-10-12: the white/blue heading split was lost in the M3 switch and should come back everywhere (*„on the apps page too, the categories should be white/blue”*), and the home page's sections were hard to tell apart. - **41 headings got their `` back**, white lead-in and blue tail, which is what `h1 span, h2 span, h3 span, h4 span { color: var(--blue-bright) }` has always rendered — the rule never went away, the markup did. **No text changed**: the span is wrapped around words that were already there, so every page says exactly what it said before. - Home (5 + 5): the three that existed before M3 are split where they were split then (`Mit tud | a doboz ma?`, `Így néz ki | a vezérlőpult`, `Hogyan | működik?`). - Apps (6 + 6) and FAQ (6 + 7): **new**, these category headers never had it. A two-part name splits at its `&` (`Fájlkezelés & | Irodai`), a phrase on its last words. - Services (3 + 3): the three group headings. - **Left plain, deliberately:** a one-word heading has nowhere to split — `Alapkérdések`, `Költségek`, `Costs`, `Letöltés`, `Download`. Four other pages (technology, testing, backups, contact) still carried their splits and were not touched. - **A hairline between the home page's sections**, in the design system's own `--line`, with equal air above and below it (2.75rem each) so the rule sits centred in the gap rather than hugging the heading below. The first one also separates the hero from the page. Only the home page: every other page is a single run of one kind of thing. - Blue on the page background measures **7.9:1** — AA at any size, so the split is safe on the small headings too. - `site.css` — `?v=28` on all 22 pages. ## 2026-10-12 (night) — the laptop screen moves: six real apps behind the cut-out frame The operator recorded the six scenes himself and ruled on their length: *„use the full length for all of them, they had been cut as I liked them”*. Jellyfin, Paperless and RomM were filmed on those projects' own public demo sites, so nothing in the clip is anyone's private library; the films in the Jellyfin scene are public-domain prints. - **`website/assets/hero-clip.mp4` (1 134 KB) + `hero-clip.webm` (1 295 KB) + `hero-poster.webp` (53 KB)** — Jellyfin, Tandoor, OnlyOffice, Immich, RomM, Paperless, in that order, 0.6s crossfades, **36.6s** in all at 904×556 (2× the rendered size). Built by `scripts/make_hero_clip.py`, which now plays each scene at its own length instead of a fixed window. - **The hero on `/` and `/en/` is the clip**, behind `hero-laptop-frame.webp`: `.hero-screen` sits in the cut-out hole (`left 11.041%` / `top 12.345%` / `79.817%×64.305%`) at `z-index: 1`, the frame above it at `z-index: 2`, so bezel, glare and keyboard stay in front of the moving picture. - **Nothing autoplays by attribute.** `preload="none"` + a poster; the page's own script starts the clip when it scrolls into view, pauses it when it leaves, and **never starts it at all under `prefers-reduced-motion: reduce`**. With JavaScript off the poster simply stays. First paint costs the frame (59 KB) + poster (53 KB); the clip is fetched after. - **One set serves both languages** — the recordings are the same on both pages, so there is no `-hu`/`-en` pair to keep in step. The still composites (`dashboard-laptop-{hu,en}.webp`) stay in the repo, now unreferenced, as the fallback if the clip is ever pulled. - Caption and `aria-label` name the six apps and claim nothing about whose box they ran on. - **The language menu opened off the left edge of the window.** The controller's own rule centres it on the globe (`left: 50%` + `translateX(-50%)`), which is right where the globe sits in the middle of its row — but on the website the globe is at the far left of the sidebar footer, so 60 px of a 120 px menu hung outside the window and both labels were cut (operator, 2026-10-12). Anchored to the button's left edge in the website's own file, opening rightwards into the sidebar; `shell.css` stays a verbatim copy. Measured after: menu `x 24→144` inside a 240 px sidebar. - `site.css` — `?v=27` on all 22 pages. - **Not verified: playback in this workstation's Chrome.** Its media pipeline loads nothing at all today — a 1 KB generated WAV blob also stalls at `readyState 0` with no error, which rules the clip out as the cause. Geometry, layering and the poster were verified in the browser; the moving picture needs a Chrome restart to confirm. ## 2026-10-12 (evening) — the laptop frame, cut open for a moving screen Prepared, **not yet on the page**: the live hero still shows the still. The clip itself is the operator's to record (his decision, 2026-10-12: he films the apps, the assembly is built here). - **`website/assets/hero-laptop-frame.webp`** (59 KB) — the same laptop render, with the **screen cut out to transparency** so a clip can play underneath while the bezel, the keyboard and the glass reflection stay on top. The reflection is painted, not lifted: lifting the bright pixels out of the AI-drawn screen dragged a ghost of the drawn UI with it. - The hole is `left 11.041% · top 12.345% · width 79.817% · height 64.305%` of the frame, ratio **1.626:1**. Two pixels of slack: the lid keystones slightly, so a tight rectangle let the drawn sidebar's highlight show and a loose one showed page background at the top left. Both were seen. - **What will load, and when:** `