
:root {
  color-scheme: light;

  
  --ink: #1E232B;
  --muted: #5B6670;
  --paper: #FAF6EE;
  --surface: #FFFFFF;
  --primary: #1F3F73;
  --primary-hover: #172F58;
  --primary-tint: #E6ECF6;
  --accent: #C9552A;
  --accent-tint: #F6E3D9;
  --line: #E0D9CC;
  --control-border: #6F7A85;
  --error: #9E1B2E;
  --error-tint: #F8E3E6;
  --success: #1F6B4A;
  --success-tint: #E1F0E8;
  --focus: #0B7A75;

  
  --font-display: "Bricolage Grotesque", "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-body: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;

  
  --text-xs: 0.875rem;                                   
  --text-sm: 0.9375rem;                                  
  --text-legal: 1rem;                                    
  --text-body: clamp(1rem, 0.9375rem + 0.3vw, 1.125rem); 
  --text-lg: 1.25rem;
  --text-xl: 1.5rem;
  --text-2xl: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
  --text-3xl: clamp(2rem, 1.6rem + 1.6vw, 2.75rem);
  --text-display: clamp(2.25rem, 1.75rem + 2.4vw, 3.5rem);
  --text-figure: clamp(1.75rem, 1.4rem + 1.6vw, 2.5rem);  

  --leading-body: 1.6;
  --leading-tight: 1.15;
  --leading-heading: 1.2;

  --weight-regular: 400;
  --weight-bold: 700;

  
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;

  
  --container: 1200px;
  --measure: 70ch;                       
  --gutter: clamp(16px, 2.5vw, 40px);    
  --grid-gap: clamp(16px, 2vw, 24px);

  
  --radius-lg: 16px;
  --radius-md: 12px;
  --radius-sm: 8px;
  --radius-button: 10px;
  --radius-pill: 999px;

  
  --border-width: 1px;
  --control-border-width: 1.5px;
  --focus-ring-width: 3px;
  --focus-ring-offset: 3px;

  
  --shadow-sm: 0 1px 2px rgba(30, 35, 43, 0.06);
  --shadow-md: 0 6px 20px rgba(30, 35, 43, 0.08);

  
  --duration-fast: 120ms;
  --duration: 180ms;
  --ease: cubic-bezier(0.2, 0, 0, 1);

  
  --tap-target: 44px;
}
