:root {
	--lvjcb-color-focus: var(--lvjcb-color-accent-deep);

	/* Spacing scale */
	--lvjcb-space-3xs: 4px;
	--lvjcb-space-2xs: 8px;
	--lvjcb-space-xs: 12px;
	--lvjcb-space-sm: 16px;
	--lvjcb-space-md: 24px;
	--lvjcb-space-lg: 40px;
	--lvjcb-space-xl: 64px;
	--lvjcb-space-section: 96px;

	/* Layout */
	--lvjcb-container-max: 1180px;
	--lvjcb-measure: 64ch;

	/* Radius */
	--lvjcb-radius: 8px;
	--lvjcb-radius-lg: 16px;

	/* Shadow */
	--lvjcb-shadow: 0 4px 16px rgba(28,49,68,0.08);
	--lvjcb-shadow-hover: 0 8px 32px rgba(28,49,68,0.12);
	--lvjcb-shadow-btn: 0 2px 8px rgba(28,49,68,0.12);
	--lvjcb-shadow-lg: 0 8px 32px rgba(28,49,68,0.12);

	/* Typography */
	--lvjcb-font-heading: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--lvjcb-font-body: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--lvjcb-font-quote: ui-serif, Georgia, 'Iowan Old Style', 'Times New Roman', serif;

	--lvjcb-text-h2: clamp(26px, 3.5vw, 38px);
	--lvjcb-text-h3: 17px;
	--lvjcb-text-h4: 17px;
	--lvjcb-text-h5: 16px;
	--lvjcb-text-base: 16px;
	--lvjcb-text-small: 14px;

	--lvjcb-font-weight-medium: 600;
	--lvjcb-font-weight-bold: 700;
	--lvjcb-font-weight-heavy: 800;
	--lvjcb-letter-spacing-wide: 0.1em;

	/* Motion */
	--lvjcb-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
	--lvjcb-transition-base: 220ms cubic-bezier(0.4, 0, 0.2, 1);

	/* Header */
	--lvjcb-header-height: 72px;
	--lvjcb-header-height-condensed: 60px;
	--lvjcb-header-top-height: 32px;
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--lvjcb-transition-fast: 0ms;
		--lvjcb-transition-base: 0ms;
	}
}
