Kanton Alpin Design Guide

23/25

Precision, not nostalgia.

Kanton Alpin treats transit information as civic machinery: hard alignments, working mechanisms, and red signal moments set into a white field.

White#ffffff Ink#111111 Signal#eb0000 Cobalt#1d4ed8

The site imagines KAV, Kanton Alpin Verkehrsbetriebe, as a small but exacting Swiss alpine railway: 34 stations, four lines, one master clock, and no decorative softness. Swiss International Style is used as operating logic. The page is built from indexed sections, hard baselines, visible grid pressure, and red instructions that behave like signals rather than accents. The mood should feel public, calm, and slightly intimidating in the way a perfectly run station can be intimidating.

The signature station clock in index.html is pure SVG: concentric face circles, injected tick rectangles, black bar hands, and a red lollipop second hand. setupClock() in main.js creates all 60 tick marks, reads real local time, updates the nav clock, and writes the hero's live minute-impulse counter. In pass 3 it also populates #impulse-rail, a 60-cell timing strip inside the station ledger. Seconds 0 through 58 draw the sweep; the final two cells invert to the black hold zone while the hand waits at twelve. The loop uses requestAnimationFrame only while visible; reduced-motion visitors get one-second updates.

The departure board is generated by setupBoard() from three invented timetable states. Each destination, time, via note, and platform is decomposed into individual .flap-char cells. animateFlapText() cascades through a controlled glyph alphabet, retriggering the flapTop and flapBottom rotateX keyframes so the rows clatter into place without images, canvas, or external code. The #board-step control lets keyboard or pointer users call the next timetable immediately; it fires the same row flip sequence plus a red scan flash from .board-wrap.is-stepping. Auto-rotation is now a paused timeout, not an always-running interval.

The network map, pictogram row, fare table, precision diagram, and red poster are also code-drawn. SVG handles the schematic lines, station labels, 48 by 48 wayfinding symbols, and the 58/2 timing diagram. CSS supplies the paper grain, modular grid, diagonal poster bars, table rules, custom selection, scrollbar color, hover states, and staggered load reveals. The palette stays narrow: #ffffff field, #111111 structure, #eb0000 signal, and spare #1d4ed8 for R2 and focus states. Archivo carries the Helvetica-like authority; Chivo Mono keeps numerals, fares, elevations, and operating notes tabular.

Prompt an AI agent to build a pure HTML/CSS/JS civic transit identity in strict Swiss International Style. Require one real-time mechanical signature, one data-driven kinetic display, all maps and pictograms drawn in code, no external assets, a dominant white field with signal red authority, and a guide that names the exact files and functions behind every visual technique.