/* Dispatch — design tokens. Bold light newsprint + editorial vermilion + category colours. */
:root {
	--d-paper:   #f6f2e9;   /* warm newsprint */
	--d-paper-2: #ece4d5;   /* deeper */
	--d-card:    #fffdf8;   /* raised card */
	--d-ink:     #17140f;   /* near-black */
	--d-ink-2:   #57514a;   /* muted */
	--d-ink-3:   #8b8378;   /* faint */
	--d-line:    rgba(23, 20, 15, 0.15);
	--d-line-2:  rgba(23, 20, 15, 0.08);
	--d-accent:  #e0402a;   /* editorial vermilion */
	--d-accent-d: #c02f1c;

	/* category colours */
	--cat-politics:   #e0402a;
	--cat-business:   #1f6f4e;
	--cat-culture:    #7a3fd0;
	--cat-technology: #1f66e0;
	--cat-opinion:    #c98a1e;
	--cat-world:      #0f8a8a;
	--cat: var(--d-accent);   /* current category colour, overridden inline */

	/* type */
	--f-display: 'Bricolage Grotesque', system-ui, sans-serif;
	--f-serif:   'Source Serif 4', Georgia, serif;
	--f-mono:    'IBM Plex Mono', ui-monospace, monospace;

	/* scale — editorial */
	--fs-50:  0.72rem;
	--fs-100: 0.82rem;
	--fs-200: 0.94rem;
	--fs-300: 1.0625rem;
	--fs-400: 1.28rem;
	--fs-500: 1.65rem;
	--fs-600: 2.15rem;
	--fs-700: clamp(2.2rem, 3.6vw, 3.4rem);
	--fs-800: clamp(2.8rem, 6vw, 5.4rem);
	--fs-900: clamp(3.6rem, 10vw, 9rem);

	--pad-x: clamp(18px, 4vw, 72px);
	--maxw:  1560px;
	--ease:  cubic-bezier(0.22, 1, 0.36, 1);
	--ease-io: cubic-bezier(0.65, 0, 0.35, 1);
}
