/* The Visual Narrative — design tokens, matched to the approved dashboard mockups.
   Change a value here and it changes everywhere. */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&display=swap');

:root {
  /* Brand */
  --paper: #FCFBF9;
  --bone: #F3F0EA;
  --bone-hover: #ECE8E0;
  --ink: #1A1A1A;
  --ink-2: #3A3A3A;
  --stone: #8A857C;
  --muted: #6B665E;
  --rule: #E3DFD7;
  --rule-soft: #EEEBE5;
  --dash: #CFC9BE;
  --white: #FFFFFF;
  --accent: #2D5F5D;
  --accent-soft: #E1ECEA;

  /* Status */
  --live-bg: #DCEFE2; --live-fg: #1F5A36; --live-dot: #2F8A52;

  /* Lead tiers (colour-blind checked) */
  --hot: #E34948;  --hot-bg: #FDE4E2;  --hot-fg: #A8221F;
  --warm: #EDA100; --warm-bg: #FDF1D3; --warm-fg: #7A5200;
  --cold: #2A78D6; --cold-bg: #DDEBFB; --cold-fg: #1C5CAB;

  /* Narrative chapters */
  --ch-vision: #E87BA4;     --ch-vision-bg: #FBE4ED;     --ch-vision-fg: #9E2F5A;
  --ch-first: #4A3AA7;      --ch-first-bg: #E6E3F6;      --ch-first-fg: #3A2C8F;
  --ch-lifestyle: #1BAF7A;  --ch-lifestyle-bg: #DDF3EA;  --ch-lifestyle-fg: #0F6B4A;
  --ch-place: #EB6834;      --ch-place-bg: #FDE6DA;      --ch-place-fg: #A3431A;

  /* Type */
  --font-display: 'Playfair Display', Georgia, serif;
  --font-ui: 'DM Sans', system-ui, sans-serif;

  /* Shape */
  --r-sm: 8px; --r-md: 10px; --r-lg: 14px; --r-pill: 999px;
}

/* Simple full-page message (site not found, coming soon). */
body.vn-simple { margin: 0; min-height: 100vh; display: flex; flex-direction: column; background: var(--paper); color: var(--ink); font-family: var(--font-ui); }
body.vn-simple main { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 48px 16px; gap: 12px; }
body.vn-simple h1 { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: clamp(32px, 6vw, 56px); letter-spacing: -0.02em; }
body.vn-simple p { margin: 0; color: var(--muted); font-size: 16px; max-width: 46ch; }
body.vn-simple footer { padding: 24px; text-align: center; font-family: var(--font-display); font-size: 15px; letter-spacing: -0.02em; color: var(--stone); }
