/*
 * Currently using the free-for-personal-use Radio Grotesk (Regular only),
 * aliased under the design token name 'PP Radio Grotesk'. Replace with a
 * licensed multi-weight file before commercial release.
 */
@font-face {
  font-family: 'PP Radio Grotesk';
  src: url('fonts/RadioGrotesk-Regular.otf') format('opentype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  /* Colors */
  --color-canvas-white: #ffffff;
  --color-ink-black: #000000;
  --gradient-ink-black: linear-gradient(rgb(25, 25, 25), rgb(0, 0, 0));
  --color-storm-gray: #e5e7eb;
  --color-muted-gray: #dfdfdf;
  --color-whisper-gray: #c9c9c9;
  --color-dim-gray: #6e6e6e;
  --color-neutral-accent: #6e6e6e;
  --color-neutral-accent-dark: #000000;

  /* Typography: Font Families */
  --font-inter: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-pp-radio-grotesk: 'PP Radio Grotesk', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-times: 'Times', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Typography: Scale */
  --text-caption: 10px;
  --leading-caption: 1.5;
  --tracking-caption: 0.02px;
  --text-body: 14px;
  --leading-body: 1.5;
  --tracking-body: -0.02px;
  --text-subheading: 24px;
  --leading-subheading: 1.3;
  --tracking-subheading: -0.01px;
  --text-heading: 38px;
  --leading-heading: 1.2;
  --tracking-heading: -0.01px;
  --text-heading-lg: 56px;
  --leading-heading-lg: 1.1;
  --tracking-heading-lg: -0.01px;
  --text-display: 68px;
  --leading-display: 1.1;
  --tracking-display: -0.01px;

  /* Typography: Weights */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* Spacing */
  --spacing-unit: 8px;
  --spacing-8: 8px;
  --spacing-16: 16px;
  --spacing-24: 24px;
  --spacing-32: 32px;
  --spacing-40: 40px;
  --spacing-48: 48px;
  --spacing-64: 64px;
  --spacing-72: 72px;
  --spacing-80: 80px;
  --spacing-88: 88px;
  --spacing-96: 96px;

  /* Layout */
  --section-gap: 80px;
  --card-padding: 16px;
  --element-gap: 16px;

  /* Border Radius */
  --radius-md: 6px;
  --radius-full: 60px;
  --radius-full-2: 80px;

  /* Named Radii */
  --radius-cards: 6px;
  --radius-pills: 80px;
  --radius-buttons: 6px;
  --radius-default: 6px;

  /* Shadows */
  --shadow-sm: rgba(0, 0, 0, 0.16) 0px 2px 6px 0px;

  /* Surfaces */
  --surface-canvas-white: #ffffff;
  --surface-muted-gray: #dfdfdf;
}
