:root {
  /* Brand colors extracted from the supplied Next Comunica logo */
  --color-red: #d10304;
  --color-red-bright: #ee1013;
  --color-red-deep: #990005;
  --color-red-soft: #ffe8e8;
  --color-ink: #0c0c0c;
  --color-graphite: #171717;
  --color-steel: #575757;
  --color-muted: #767676;
  --color-line: #deded9;
  --color-paper: #f7f7f3;
  --color-white: #ffffff;

  --font-display: "Syne", "Arial Black", sans-serif;
  --font-body: "Manrope", "Helvetica Neue", sans-serif;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: clamp(1.05rem, 1.4vw, 1.25rem);
  --text-xl: clamp(1.35rem, 2vw, 1.75rem);
  --text-2xl: clamp(2rem, 4.5vw, 4.6rem);
  --text-hero: clamp(3.25rem, 7.7vw, 8.4rem);

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;

  --radius-sm: 0.75rem;
  --radius-md: 1.25rem;
  --radius-lg: 2rem;
  --radius-xl: 3rem;
  --radius-pill: 999px;

  --shadow-soft: 0 18px 50px rgba(12, 12, 12, 0.12);
  --shadow-deep: 0 30px 80px rgba(0, 0, 0, 0.35);
  --shadow-red: 0 22px 60px rgba(209, 3, 4, 0.3);

  --container: 84rem;
  --container-narrow: 72rem;
  --header-height: 5.25rem;

  --ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-snappy: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 180ms;
  --duration-normal: 360ms;
  --duration-slow: 700ms;

  --z-header: 100;
  --z-float: 90;
  --z-dialog: 200;
}
