:root {
  /* Color */
  --c-bg:        #ffffff;
  --c-page-bg:   rgb(247, 252, 255);
  --c-ink:       #222;
  --c-ink-soft:  #555;
  --c-navbar-bg: #000;
  --c-navbar-fg: rgb(240, 240, 240);
  --c-brand:     #A75212;
  --c-accent:    rgba(46, 104, 83, 0.5);
  --c-accent-ink: rgba(230, 240, 240, 1.0);
  --c-link:      #7a3a1a;

  /* Type
     --f-display: screen-hinted serif for large display elements (the H1
       name on home). Libre Baskerville was designed and hinted for the
       web, so its curves stay clean at 40-60px where less-hinted faces
       show polygonal segmentation.
     --f-serif / --f-body: editorial serif used everywhere else — body
       copy, section headings, labels, pills. Source Serif 4's italic
       is load-bearing here (paper titles, course names). */
  --f-display: 'Libre Baskerville', Georgia, serif;
  --f-serif:   'Source Serif 4', Charter, Georgia, serif;
  --f-sans:    'Ubuntu', sans-serif;
  --f-body:    'Source Serif 4', Charter, Georgia, serif;
  --f-button:  'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;

  /* Spacing — 8 px rhythm */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 16px;
  --s-4: 24px;
  --s-5: 32px;
  --s-6: 48px;
  --s-7: 64px;

  /* Radii & shadows */
  --r-sm:        4px;
  --r-md:        8px;
  --r-pill:      999px;
  --shadow-band: 0 5px 20px 0 black;
}
