

:root {
  

  --brand-black: #000000;  
  --brand-red:   #d8000c;
  --brand-gold:  #f0e43c;
  --brand-white: #fcfcfc;

  

  --surface-0:  #111216;  
  --surface-1:  #181a20;  
  --surface-2:  #242833;  
  --surface-line: #343946;
  --surface-edge: #646c7e;
  --ice:        #dce8ef;  
  --ice-muted:  #8ea2b0;
  --rail:       #202631;

  
  
  --red-hot:    #e00810;
  --red-deep:   #a4000a;
  --amber:      #e4600c;  
  --gold-deep:  #c9b829;

  

  --bg:            var(--surface-0);
  --bg-card:       var(--surface-1);
  --bg-raised:     var(--surface-2);
  --bg-logo:       var(--brand-black);
  
  --border:        var(--surface-line);
  --border-strong: var(--surface-edge);   

  --text:          var(--brand-white);
  --text-muted:    #b0bac3;
  
  --text-faint:    #828d99;

  --accent:        var(--brand-gold);   
  --accent-hover:  #fff59a;
  --graphic:       var(--brand-red);    
  --graphic-hover: var(--red-hot);
  
  --focus:         var(--brand-gold);
  --focus-halo:    var(--brand-black);

  
  --medal: var(--brand-gold);

  

  --font-display: 'Archivo', 'Archivo Expanded', 'Helvetica Neue', Arial, sans-serif;
  --font-body:    'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono:    'IBM Plex Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  
  --step--1: clamp(0.83rem, 0.80rem + 0.15vw, 0.92rem);
  --step-0:  clamp(1.00rem, 0.95rem + 0.25vw, 1.13rem);
  --step-1:  clamp(1.27rem, 1.17rem + 0.50vw, 1.55rem);
  --step-2:  clamp(1.60rem, 1.42rem + 0.90vw, 2.13rem);
  --step-3:  clamp(2.03rem, 1.70rem + 1.60vw, 2.93rem);
  --step-4:  clamp(2.57rem, 2.00rem + 2.80vw, 4.03rem);
  --step-5:  clamp(3.25rem, 2.25rem + 5.00vw, 5.54rem);

  --leading-tight: 1.02;
  --leading-snug:  1.22;
  --leading-body:  1.62;

  
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-s:   0.75rem;
  --space-m:   1.25rem;
  --space-l:   2rem;
  --space-xl:  3.25rem;
  --space-2xl: 5.25rem;
  --space-3xl: 8.5rem;

  
  --header-h: 92px;

  --measure:          68ch;   
  --container:        1240px;
  --container-narrow: 720px;
  --gutter: clamp(1.25rem, 4vw, 3rem);

  
  --radius-s:    4px;
  --radius-m:    6px;
  --radius-l:    8px;
  --radius-xl:   8px;
  --radius-pill: 999px;

  --shadow-s: 0 1px 2px rgb(0 0 0 / 0.4);
  --shadow-m: 0 6px 20px -6px rgb(0 0 0 / 0.6);
  --shadow-l: 0 28px 64px -24px rgb(0 0 0 / 0.85);

  
  --glow-red: 0 8px 32px -12px rgb(216 0 12 / 0.55);

  
  --ease-out:   cubic-bezier(0.22, 1, 0.36, 1);
  --ease-swift: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast:   140ms;
  --dur-mid:    320ms;
  --dur-slow:   700ms;

  
  --z-base:    1;
  --z-content: 2;
  --z-header:  50;
  --z-overlay: 100;
}


@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0ms;
    --dur-mid:  0ms;
    --dur-slow: 0ms;
  }
}
