/*
	Design tokens – generated from design/design-spec.md.
	Sections may only use these variables: no hard-coded colors or font
	families anywhere else. Translucent shades are derived in sections with
	color-mix() from these tokens.
*/

:root {
	/* Brand (sampled from the logo) */
	--c-primary: #0a3172;
	--c-primary-hover: #072556;
	--c-primary-dark: #061c44;
	--c-primary-light: #9cc2ff;
	--c-primary-soft: #eaf0fb;
	--c-on-primary: #ffffff;
	--c-accent: #d92027;
	--c-accent-hover: #b3161c;
	--c-accent-soft: #fdecec;
	--c-on-accent: #ffffff;

	/* Surfaces & text */
	--c-bg: #ffffff;
	--c-bg-alt: #f4f6fa;
	--c-bg-dark: #04112b;
	--c-surface: #ffffff;
	--c-text: #1b2437;
	--c-text-muted: #5a6478;
	--c-heading: #0a1b3d;
	--c-on-dark: #ffffff;
	--c-border: #dde3ee;

	/* Status */
	--c-success: #1a8a4a;
	--c-danger: #c81e1e;
	--c-star: #f5a623;

	/* Font families */
	--f-body: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--f-heading: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

	/* Font sizes (fluid between 480px and 1024px viewports) */
	--fs-xs: 0.8125rem;
	--fs-sm: 0.9375rem;
	--fs-base: 1rem;
	--fs-lg: clamp(1.0625rem, 0.98rem + 0.35vw, 1.1875rem);
	--fs-xl: clamp(1.25rem, 1.1rem + 0.7vw, 1.5rem);
	--fs-2xl: clamp(1.625rem, 1.25rem + 1.6vw, 2.375rem);
	--fs-3xl: clamp(2rem, 1.35rem + 2.6vw, 3.25rem);

	/* Spacing */
	--space-1: 0.25rem;
	--space-2: 0.5rem;
	--space-3: 0.75rem;
	--space-4: 1rem;
	--space-5: 1.5rem;
	--space-6: 2rem;
	--space-7: 3rem;
	--space-8: 4rem;
	--space-section: clamp(3rem, 2rem + 5vw, 6rem);
	--space-gutter: clamp(1rem, 0.5rem + 2.5vw, 2rem);

	/* Shape, depth & layout */
	--radius: 14px;
	--radius-sm: 10px;
	--radius-lg: 22px;
	--radius-pill: 999px;
	--shadow-sm: 0 1px 2px rgb(4 17 43 / 0.08);
	--shadow-md: 0 8px 24px rgb(4 17 43 / 0.12);
	--shadow-lg: 0 24px 60px rgb(4 17 43 / 0.28);
	--container: 1240px;
}
