:root {
  --vw-teal: #0F3C4C;
  --vw-teal-light: #1A5A6E;
  --vw-teal-dark: #082A36;
  --vw-sand: #F3E4D4;
  --vw-sand-light: #FAF4ED;
  --vw-sand-dark: #D9C4AE;
  --vw-terracotta: #E07A4B;
  --vw-terracotta-light: #E99A76;
  --vw-terracotta-dark: #C4612F;
  --vw-charcoal: #111111;
  --vw-white: #FFFFFF;
  --vw-off-white: #FAFAF8;
  --vw-gray-50: #F7F7F8;
  --vw-gray-100: #EEEEEF;
  --vw-gray-200: #D9D9DB;
  --vw-gray-300: #B8B8BC;
  --vw-gray-400: #94949A;
  --vw-gray-500: #6E6E76;
  --vw-gray-600: #4A4A52;
  --vw-gray-700: #333338;
  --vw-gray-800: #1E1E22;
  --vw-gray-900: #111114;
  --vw-success: #2A9D5C;
  --vw-warning: #E5A117;
  --vw-error: #D14343;
  --vw-info: #2E7CB8;
  --vw-brand-1ba: #534AB7;
  --vw-brand-brandmover: #085041;
  --vw-brand-relefi: #712B13;
  --vw-brand-auraos: #72243E;
  --vw-brand-vellyway: #633806;
  --vw-brand-artsmover: #C9A84C;
  --vw-font-heading: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --vw-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --vw-text-xs: 0.75rem;
  --vw-text-sm: 0.875rem;
  --vw-text-base: 1rem;
  --vw-text-lg: 1.25rem;
  --vw-text-xl: 1.5rem;
  --vw-text-2xl: 1.875rem;
  --vw-text-3xl: 2.25rem;
  --vw-text-4xl: 3rem;
  --vw-text-5xl: 3.75rem;
  --vw-leading-tight: 1.2;
  --vw-leading-snug: 1.35;
  --vw-leading-normal: 1.6;
  --vw-leading-relaxed: 1.75;
  --vw-weight-light: 300;
  --vw-weight-normal: 400;
  --vw-weight-medium: 500;
  --vw-weight-semibold: 600;
  --vw-weight-bold: 700;
  --vw-weight-extrabold: 800;
  --vw-space-1: 0.25rem;
  --vw-space-2: 0.5rem;
  --vw-space-3: 0.75rem;
  --vw-space-4: 1rem;
  --vw-space-6: 1.5rem;
  --vw-space-8: 2rem;
  --vw-space-10: 2.5rem;
  --vw-space-12: 3rem;
  --vw-space-16: 4rem;
  --vw-space-20: 5rem;
  --vw-space-24: 6rem;
  --vw-container-sm: 640px;
  --vw-container-md: 768px;
  --vw-container-lg: 1024px;
  --vw-container-xl: 1200px;
  --vw-container-2xl: 1400px;
  --vw-radius-xs: 4px;
  --vw-radius-sm: 6px;
  --vw-radius-md: 8px;
  --vw-radius-lg: 12px;
  --vw-radius-xl: 16px;
  --vw-radius-2xl: 24px;
  --vw-radius-full: 9999px;
  --vw-shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
  --vw-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --vw-shadow-md: 0 4px 6px rgba(0,0,0,0.06), 0 2px 4px rgba(0,0,0,0.04);
  --vw-shadow-lg: 0 10px 15px rgba(0,0,0,0.08), 0 4px 6px rgba(0,0,0,0.04);
  --vw-shadow-xl: 0 20px 25px rgba(0,0,0,0.1), 0 8px 10px rgba(0,0,0,0.04);
  --vw-shadow-2xl: 0 25px 50px rgba(0,0,0,0.15);
  --vw-transition-fast: 0.12s ease;
  --vw-transition-base: 0.2s ease;
  --vw-transition-slow: 0.4s ease;
  --vw-transition-spring: 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --vw-z-base: 1;
  --vw-z-dropdown: 100;
  --vw-z-sticky: 500;
  --vw-z-overlay: 900;
  --vw-z-modal: 1000;
  --vw-z-toast: 1100;

  /* ── v2.1.1: numeric spacing scale (mirrors theme.json presets) + missing colour aliases.
        These were referenced by hub/brand/contact templates but never declared. ── */
  --vw-space-30: 0.75rem;
  --vw-space-40: 1rem;
  --vw-space-50: 1.5rem;
  --vw-space-60: 2rem;
  --vw-space-70: 3rem;
  --vw-space-80: 4rem;
  --vw-space-90: 6rem;
  --vw-space-100: 8rem;
  --vw-blue: #2E6FB7;
  --vw-orange: #E5811F;
  --vw-terra: #E07A4B;
}
