:root {
  /* Palette */
  --c-graphite: #222222;
  --c-paper: #f4f4f0;
  --c-rust: #d94826;
  --c-pine: #1b3b31;
  --c-sand: #d7cdba;
  --c-slate: #5a6460;

  /* Typography */
  --font-display: 'Bebas Neue', Impact, sans-serif;
  --font-body: 'DM Sans', system-ui, -apple-system, sans-serif;

  /* Type Scale */
  --text-xs: clamp(0.75rem, 0.7vw + 0.6rem, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8vw + 0.7rem, 1rem);
  --text-base: clamp(1rem, 1vw + 0.8rem, 1.125rem);
  --text-lg: clamp(1.125rem, 1.5vw + 0.9rem, 1.25rem);
  --text-xl: clamp(1.25rem, 2vw + 1rem, 1.5rem);
  --text-2xl: clamp(1.5rem, 3vw + 1.2rem, 2rem);
  --text-3xl: clamp(2rem, 4vw + 1.5rem, 3rem);
  --text-4xl: clamp(2.5rem, 6vw + 1.8rem, 4.5rem);
  --text-5xl: clamp(3rem, 8vw + 2rem, 6rem);
  --text-mega: clamp(4rem, 12vw + 2rem, 9rem);

  /* Spacing Scale */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-6: 1.5rem;
  --s-8: 2rem;
  --s-12: 3rem;
  --s-16: 4rem;
  --s-24: 6rem;
  --s-32: 8rem;

  /* Layout */
  --max-w: 88rem; /* 1408px */
  --grid-gap: var(--s-8);
  --pad-x: var(--s-6);

  /* Borders */
  --border-radius: 2px;
  --border-w: 1px;
}

@font-face {
  font-family: 'Bebas Neue';
  src: url('../fonts/bebas_neue_1.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/dm_sans_1.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'DM Sans';
  src: url('../fonts/dm_sans_3.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
