/* =============================================
   FIST BUMP — Design Tokens
   Derived from book cover & interior art
   ============================================= */

:root {
  /* Primary palette — from the jersey */
  --navy: #1a2744;
  --navy-deep: #0d1b2a;
  --gold: #c5a84a;
  --gold-light: #e8d48b;

  /* Accent palette — from the scene */
  --sunset-orange: #e8734a;
  --red: #c0392b;
  --red-bright: #e74c3c;
  --field-green: #2d5a27;
  --field-green-light: #4a8b3f;
  --sky-purple: #4a3060;

  /* Neutrals */
  --cream: #fdf6e3;
  --cream-dark: #f5e6c8;
  --white: #ffffff;
  --gray-100: #f8f9fa;
  --gray-600: #6c757d;
  --gray-900: #212529;

  /* Semantic */
  --bg-primary: var(--cream);
  --bg-dark: var(--navy-deep);
  --text-primary: var(--navy-deep);
  --text-light: var(--cream);
  --text-muted: var(--gray-600);
  --accent: var(--gold);
  --cta: var(--sunset-orange);
  --cta-hover: #d4623a;

  /* Typography scale */
  --font-display: 'Bangers', cursive;
  --font-body: 'Nunito', sans-serif;
  --font-handwritten: 'Patrick Hand', cursive;

  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);
  --text-base: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.625vw, 1.375rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.5vw, 2rem);
  --text-2xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);
  --text-3xl: clamp(2.5rem, 1.8rem + 3.5vw, 4rem);
  --text-4xl: clamp(3rem, 2rem + 5vw, 5.5rem);
  --text-hero: clamp(3.5rem, 2rem + 7vw, 8rem);

  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 2rem;
  --space-xl: 4rem;
  --space-2xl: 6rem;
  --space-3xl: 8rem;

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 800px;
  --nav-height: 70px;
  --border-radius: 12px;
  --border-radius-lg: 24px;

  /* Shadows */
  --shadow-sm: 0 2px 4px rgba(13, 27, 42, 0.1);
  --shadow-md: 0 4px 12px rgba(13, 27, 42, 0.15);
  --shadow-lg: 0 8px 30px rgba(13, 27, 42, 0.2);
  --shadow-comic: 4px 4px 0px var(--navy-deep);
  --shadow-comic-sm: 2px 2px 0px var(--navy-deep);

  /* Transitions */
  --transition-fast: 150ms ease;
  --transition-base: 300ms ease;
  --transition-slow: 500ms ease;
  --transition-bounce: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
