:root {
	/* Brand: Navy */
	--zm-navy-950: #020818;
	--zm-navy-900: #0A0F2E;
	--zm-navy-850: #10173F;
	--zm-navy-700: #1B2255;
	--zm-navy-purple-950: #1B1040;

	/* Brand: Purple */
	--zm-purple-500: #4A3AFF;
	--zm-purple-400: #7B6FFF;

	/* Brand: Gold */
	--zm-gold-600: #B8860B;
	--zm-gold-500: #D4AF37;
	--zm-gold-300: #E8CC6A;
	--zm-gold-glow: rgba(212, 175, 55, 0.15);

	/* Neutrals */
	--zm-white: #FFFFFF;
	--zm-gray-100: #F8F9FC;
	--zm-gray-400: #9CA3AF;

	/* Semantic surface mapping (dark-first brand) */
	--color-black: #0A0A0A;
	--color-white: var(--zm-white);
	--surface-base: var(--zm-navy-950);
	--surface-raised: var(--zm-navy-900);
	--surface-overlay: rgba(2, 8, 24, 0.72);

	--color-primary: var(--zm-purple-500);
	--color-secondary: var(--zm-navy-700);
	--color-accent: var(--zm-gold-500);

	--color-success: #34C759;
	--color-warning: #FF9500;
	--color-error: #FF3B30;
	--color-info: #007AFF;

	/* Typography */
	--font-primary: 'Inter', system-ui, -apple-system, sans-serif;
	--font-display: 'Playfair Display', Georgia, serif;
	--font-mono: 'JetBrains Mono', ui-monospace, monospace;

	--text-xs: 0.64rem;
	--text-sm: 0.8rem;
	--text-base: 1rem;
	--text-lg: 1.25rem;
	--text-xl: 1.563rem;
	--text-2xl: 1.953rem;
	--text-3xl: 2.441rem;
	--text-4xl: 3.052rem;

	--weight-regular: 400;
	--weight-medium: 500;
	--weight-semibold: 600;
	--weight-bold: 700;

	--leading-tight: 1.2;
	--leading-snug: 1.4;
	--leading-normal: 1.6;
	--leading-loose: 1.8;

	/* Spacing (8pt grid) */
	--space-1: 0.25rem;
	--space-2: 0.5rem;
	--space-3: 0.75rem;
	--space-4: 1rem;
	--space-6: 1.5rem;
	--space-8: 2rem;
	--space-10: 2.5rem;
	--space-12: 3rem;
	--space-16: 4rem;
	--space-24: 6rem;
	--space-32: 8rem;

	/* Motion */
	--duration-instant: 50ms;
	--duration-fast: 150ms;
	--duration-normal: 250ms;
	--duration-slow: 400ms;
	--duration-slower: 600ms;

	--ease-out: cubic-bezier(0.0, 0, 0.2, 1);
	--ease-in: cubic-bezier(0.4, 0, 1, 1);
	--ease-inout: cubic-bezier(0.4, 0, 0.2, 1);
	--ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);

	/* Motion — shared foundation (scroll reveal, count-up, Group 5+) */
	--zm-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
	--zm-ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
	--zm-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
	--zm-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

	--zm-duration-fast: 200ms;
	--zm-duration-base: 400ms;
	--zm-duration-slow: 700ms;
	--zm-duration-cinematic: 1100ms;

	--zm-reveal-distance: 48px;
	--zm-stagger-base: 80ms;

	/* Layout */
	--zm-container-max: 1280px;
	--zm-radius-sm: 8px;
	--zm-radius-md: 16px;
	--zm-radius-lg: 24px;
	--zm-glass-border: rgba(212, 175, 55, 0.25);
	--zm-glass-bg: rgba(255, 255, 255, 0.04);
	--zm-header-scrolled-bg: rgba(8, 10, 30, 0.88);
	--zm-header-scrolled-border: rgba(212, 175, 55, 0.12);

	/* Section rhythm — shared vertical breathing room, Group 9 visual upgrade */
	--zm-section-pad: clamp(6rem, 4rem + 6vw, 10rem);
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--zm-duration-fast: 0ms;
		--zm-duration-base: 0ms;
		--zm-duration-slow: 0ms;
		--zm-duration-cinematic: 0ms;
		--zm-reveal-distance: 0px;
		--zm-stagger-base: 0ms;
	}
}

@media (max-width: 767px) {
	:root {
		--zm-section-pad: clamp(3rem, 6vw, 6rem);
	}
}
