:root {
  --color-primary: #0F2D4A;
  --color-primary-hover: #0A2238;
  --color-primary-light: #3F6E96;
  --color-primary-soft: #E9EFF5;
  --color-on-primary: #FFFFFF;

  --color-secondary: #2DD4BF;
  --color-secondary-end: #22B8CF;
  --color-secondary-soft: #DDF5F1;
  --color-secondary-strong: #08706A;
  --color-on-secondary: #04211F;

  --gradient-brand: linear-gradient(135deg, #07111C 0%, #0D1F31 55%, #17344F 100%);
  --gradient-accent: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-secondary-end) 100%);

  --color-dark: #0B1622;
  --color-dark-elevated: #132334;
  --color-dark-border: rgba(255, 255, 255, .12);
  --color-on-dark: #FFFFFF;
  --color-on-dark-muted: #AEBBC8;

  --color-charcoal: #1D242C;
  --color-charcoal-soft: #28313B;

  --color-bg: #FFFFFF;
  --color-surface: #F3F5F7;
  --color-border: #E3E7EC;
  --color-border-strong: #C9D0D8;
  --color-heading: #0E1A27;
  --color-text: #333F4C;
  --color-text-muted: #5A6674;

  --color-success: #13795B;
  --color-success-soft: #E1F4EC;
  --color-warning: #A15F00;
  --color-warning-soft: #FDF1DC;
  --color-warning-on-dark: #F5B544;
  --color-danger: #C42D37;
  --color-danger-soft: #FDECEE;
  --color-danger-on-dark: #FF8A8F;

  --font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-heading: var(--font-body);

  --fs-display: clamp(2.25rem, 1.5rem + 3vw, 3.75rem);
  --fs-h2: clamp(1.75rem, 1.3rem + 1.6vw, 2.6rem);
  --fs-h3: clamp(1.15rem, 1.05rem + .4vw, 1.35rem);
  --fs-lead: clamp(1.02rem, .96rem + .3vw, 1.2rem);
  --fs-body: 1rem;
  --fs-small: .875rem;
  --fs-xs: .75rem;

  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-pill: 999px;

  --shadow-sm: 0 1px 2px rgba(11, 22, 34, .06), 0 2px 8px rgba(11, 22, 34, .05);
  --shadow-md: 0 2px 4px rgba(11, 22, 34, .05), 0 12px 32px rgba(11, 22, 34, .11);
  --shadow-lg: 0 4px 8px rgba(11, 22, 34, .08), 0 30px 70px rgba(11, 22, 34, .3);

  --container: 1240px;
  --gutter: clamp(16px, 4vw, 32px);
  --header-height: 72px;
  --section-space: clamp(56px, 3vw + 40px, 92px);

  --ease: cubic-bezier(.2, .7, .2, 1);
  --duration: .2s;

  --z-header: 100;
  --z-drawer: 200;
}