/* tokens.css — Le Jardin design system */
:root {
  /* --- Palette --- */
  --color-charcoal: #0B0B0B;
  --color-charcoal-soft: #161513;
  --color-ivory: #F4EBD9;
  --color-ivory-dim: #E6DCC6;
  --color-gold: #C9A24B;
  --color-gold-soft: #B7923F;
  --color-green: #4E6A4A;
  --color-rose: #B23A48;
  --color-line: rgba(201, 162, 75, 0.28);
  --color-line-strong: rgba(201, 162, 75, 0.55);

  /* --- Type --- */
  --font-display: "Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-script: "Great Vibes", "Brush Script MT", cursive;

  /* Type scale (fluid with clamp) */
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: clamp(1.25rem, 1.6vw, 1.5rem);
  --fs-xl: clamp(1.75rem, 3vw, 2.5rem);
  --fs-2xl: clamp(2.5rem, 5vw, 4rem);
  --fs-3xl: clamp(3.5rem, 8vw, 6.5rem);
  --fs-hero: clamp(3rem, 9vw, 7.5rem);

  --lh-tight: 1.05;
  --lh-snug: 1.25;
  --lh-normal: 1.55;

  /* Spacing scale (8pt base) */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;
  --sp-9: 6rem;
  --sp-10: 8rem;

  /* Layout */
  --max-w: 1440px;
  --max-w-prose: 680px;
  --gutter: clamp(1.25rem, 4vw, 3rem);
  --nav-h: 72px;

  /* Elevation / lines */
  --hairline: 1px solid var(--color-line);
  --hairline-strong: 1px solid var(--color-line-strong);

  /* Motion */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-soft: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 180ms;
  --dur-med: 420ms;
  --dur-slow: 900ms;
}

/* Base typography on body */
body {
  font-family: var(--font-body);
  font-size: var(--fs-base);
  line-height: var(--lh-normal);
  background: var(--color-charcoal);
  color: var(--color-ivory);
  font-weight: 400;
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 500;
  line-height: var(--lh-tight);
  letter-spacing: 0.005em;
}

.script {
  font-family: var(--font-script);
  font-weight: 400;
  letter-spacing: 0.02em;
}

.eyebrow {
  font-family: var(--font-body);
  font-size: var(--fs-xs);
  font-weight: 500;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--color-gold);
}
