A “To Reader” affordance so a note about the app doesn’t require opening a page first, and the page-turn swipe, bound to the hero image only. Tokens, type and furniture are copied from the shipped shell; every control below is live.
Forward (drag left) turns to the lead item. Backwards (drag right) has no obvious destination — the cover is the first page. Try both and pick.
#itemPlate on an item page.:root and body.theme-studio are copied verbatim from the shell. Eksell Display is a local webfont that cannot load here, so the masthead falls back to Fraunces and reads a little warmer and narrower than the real thing. Cover photograph is CSS-generated (duotone plus SVG turbulence), not a hotlinked image; clamp() viewport units are swapped for container units so the 390 and 1024 frames both size correctly inside one page..cover-lead is an <a> wrapping the whole lead, including the “Open the page” action. A button cannot nest inside an anchor, so C requires lifting the action out into a sibling .lead-actions row. A and B need no structural change.touch-action: pan-y. Without it iOS can claim the horizontal gesture for back-navigation near the screen edge, and the listener never sees the travel. #itemPlate may want the same declaration..cover-body holds only .also — and the shipped 1.7fr 1fr grid then drops the list into column one, still wearing the left hairline that was meant to separate it from the lead, leaving column two empty. That is what the shell does today; it is copied here rather than corrected, and it wants a separate look.~/code/jc-review and nothing in Working/mockups/ was modified. This file is the whole output.