/* ------------------------------------------------------------------------- *
 * Responsive up-scaling for large monitors.
 *
 * On wide viewports the page zooms up progressively so text and UI stay at a
 * comfortable size — a 1440p (2560px-wide) display ends up roughly matching the
 * reading size of a 1080p screen or phone — without the visitor having to reach
 * for browser zoom. `zoom` behaves like the browser's own zoom (scales
 * everything: text, spacing, images), and modern browsers evaluate media
 * queries against the un-zoomed viewport, so these breakpoints don't oscillate.
 *
 * No zoom at/under ~1080p (that size already reads well); it ramps up above it.
 * A visitor's own browser zoom still stacks on top, so this only sets a better
 * default — it never overrides their choice.
 *
 * DO NOT load this on single-card layouts that vertically centre with
 * `min-height:100vh; align-items:center` (checkout `body.cx`, auth `body.au`,
 * donate `body.dn`). `zoom` mis-computes 100vh there and pushes the card off
 * centre. It's for the content-flow pages: marketing, portal, docs.
 * ------------------------------------------------------------------------- */
@media (min-width: 2000px) { :root { zoom: 1.10; } }
@media (min-width: 2300px) { :root { zoom: 1.20; } }
@media (min-width: 2500px) { :root { zoom: 1.30; } }
@media (min-width: 3000px) { :root { zoom: 1.40; } }
