/* Hallmark · tokens for love.fund · theme: custom
 * vibe: "watercolor wash, soft rose, organic, tender"
 * paper: oklch(97.5% 0.008 40) · accent: oklch(55% 0.15 20)
 * axes: light / roman-serif / warm (rose ~20°)
 */
:root {
  /* ---- pigment · palette (dark) ---- */
  --color-paper:      oklch(15%  0.02  320);
  --color-paper-2:    oklch(19%  0.022 320);
  --color-ink:        oklch(93%  0.01  40);
  --color-ink-2:      oklch(80%  0.012 40);
  --color-muted:      oklch(68%  0.012 40);
  --color-rule:       oklch(32%  0.02  320);
  --color-rule-2:     oklch(26%  0.02  320);
  --color-accent:     oklch(68%  0.15  15);
  --color-accent-ink: oklch(15%  0.02  320);
  --color-focus:      oklch(72%  0.18  15);

  /* ---- the field (hero canvas — flow-field fold) ---- */
  --field:     oklch(15% 0.02 320);
  --gift-gold: oklch(80% 0.12 85);
  --gift-rose: oklch(68% 0.17 15);

  /* ---- type ---- */
  --font-display: "Fraunces", ui-serif, Georgia, serif;
  --font-body:    "Newsreader", ui-serif, Georgia, serif;
  --font-love:    "DynaPuff", "Fraunces", ui-serif, serif;
  --font-fund:    "Chakra Petch", ui-sans-serif, system-ui, sans-serif;

  --text-sm:   0.8rem;
  --text-base: 1rem;
  --text-md:   1.25rem;
  --text-lg:   1.5625rem;
  --text-xl:   1.9531rem;
  --text-2xl:  2.4414rem;
  --text-display-s: clamp(1.7rem, 2.2vw + 1rem, 2.6rem);
  --text-display:   clamp(2.6rem, 5.2vw + 0.9rem, 5.5rem);

  /* ---- space (4pt scale) ---- */
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-sm:  0.75rem;
  --space-md:  1rem;
  --space-lg:  1.5rem;
  --space-xl:  2.5rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 9rem;

  --page-gutter: clamp(1.25rem, 5vw, 4.5rem);

  /* ---- motion ---- */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:     cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 220ms;
  --dur-long:  420ms;

  /* ---- misc ---- */
  --rule-hairline: 1px solid var(--color-rule);
  --radius-soft: 0.75rem;
  --z-base: 1;
  --z-raised: 10;
  --z-sticky: 200;
}
