/* First Call Scan design tokens. GENERATED by brand/tools/build.py from brand/brands.json; edit the config, not this file.
   Use: <link rel="stylesheet" href="tokens.css"> (or the @import below via a <link> to Google Fonts for speed).
   Light is the default. Dark: <html data-theme="dark">, or <html data-theme="auto"> to follow the OS setting.
   Legacy aliases (--bg, --ink, --muted, --line, --soft, --cta, --go, --bad) match the existing offer sites in this repo. */

:root {
  /* ---- brand ---- */
  --brand-name: "First Call Scan";
  --brand-domain: "firstcallscan.com";

  /* ---- color (light) ---- */
  --color-bg: #FFFFFF;              /* page background */
  --color-surface: #F4F6F2;         /* cards, alt sections */
  --color-ink: #13201A;             /* headings + body text */
  --color-muted: #56625B;           /* secondary text (AA on bg + surface) */
  --color-line: #D7DDD6;            /* borders, dividers */
  --color-primary: #0B6B4C;         /* brand color, links, CTA fill */
  --color-primary-strong: #08513A;  /* CTA hover / pressed */
  --color-on-primary: #FFFFFF;      /* text on primary */
  --color-accent: #F5B400;          /* highlight, badges, marker; never body text */
  --color-on-accent: #13201A;       /* text on accent */
  --color-go: #157A45;              /* good / pass / found */
  --color-bad: #D23C3C;             /* problem / fail / missing */
  --shadow-rgb: 19,32,26;

  /* ---- typography ---- */
  --font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --weight-display: 800;
  --weight-body: 400;
  --weight-strong: 600;
  /* fluid type scale, 1.25 ratio; body never below 16px on phones */
  --step--1: clamp(0.875rem, 0.85rem + 0.1vw, 0.9375rem);
  --step-0: clamp(1rem, 0.97rem + 0.15vw, 1.125rem);
  --step-1: clamp(1.25rem, 1.18rem + 0.35vw, 1.4rem);
  --step-2: clamp(1.5rem, 1.38rem + 0.6vw, 1.85rem);
  --step-3: clamp(1.875rem, 1.65rem + 1.1vw, 2.5rem);
  --step-4: clamp(2.25rem, 1.9rem + 1.8vw, 3.4rem);
  --step-5: clamp(2.75rem, 2.2rem + 2.8vw, 4.5rem);
  --leading-tight: 1.08;
  --leading-snug: 1.25;
  --leading-body: 1.6;
  --tracking-display: -0.02em;
  --tracking-caps: 0.08em;

  /* ---- shape + depth ---- */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;
  --shadow-sm: 0 1px 2px rgba(var(--shadow-rgb), 0.08);
  --shadow-md: 0 2px 4px rgba(var(--shadow-rgb), 0.06), 0 8px 20px rgba(var(--shadow-rgb), 0.08);
  --shadow-lg: 0 4px 8px rgba(var(--shadow-rgb), 0.06), 0 20px 48px rgba(var(--shadow-rgb), 0.14);
  --focus-ring: 0 0 0 3px var(--color-bg), 0 0 0 5px var(--color-primary);

  /* ---- layout ---- */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px;
  --space-6: 32px; --space-7: 48px; --space-8: 64px; --space-9: 96px;
  --measure: 680px;      /* body copy max width */
  --container: 1120px;   /* page max width */
  --gutter: 16px;        /* phone side padding */

  /* ---- legacy aliases used by scan/site, leads/site, etc. ---- */
  --bg: var(--color-bg);
  --ink: var(--color-ink);
  --muted: var(--color-muted);
  --line: var(--color-line);
  --soft: var(--color-surface);
  --cta: var(--color-primary);
  --go: var(--color-go);
  --bad: var(--color-bad);
}

:root[data-theme="dark"] {
  --color-bg: #0E1612;              /* page background */
  --color-surface: #16211B;         /* cards, alt sections */
  --color-ink: #EEF3EF;             /* headings + body text */
  --color-muted: #A3B0A8;           /* secondary text (AA on bg + surface) */
  --color-line: #2A3830;            /* borders, dividers */
  --color-primary: #3FBF8A;         /* brand color, links, CTA fill */
  --color-primary-strong: #5ED3A1;  /* CTA hover / pressed */
  --color-on-primary: #0E1612;      /* text on primary */
  --color-accent: #FFC629;          /* highlight, badges, marker; never body text */
  --color-on-accent: #0E1612;       /* text on accent */
  --color-go: #3FBF8A;              /* good / pass / found */
  --color-bad: #FF6B6B;             /* problem / fail / missing */
  --shadow-rgb: 0,0,0;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] {
    --color-bg: #0E1612;              /* page background */
    --color-surface: #16211B;         /* cards, alt sections */
    --color-ink: #EEF3EF;             /* headings + body text */
    --color-muted: #A3B0A8;           /* secondary text (AA on bg + surface) */
    --color-line: #2A3830;            /* borders, dividers */
    --color-primary: #3FBF8A;         /* brand color, links, CTA fill */
    --color-primary-strong: #5ED3A1;  /* CTA hover / pressed */
    --color-on-primary: #0E1612;      /* text on primary */
    --color-accent: #FFC629;          /* highlight, badges, marker; never body text */
    --color-on-accent: #0E1612;       /* text on accent */
    --color-go: #3FBF8A;              /* good / pass / found */
    --color-bad: #FF6B6B;             /* problem / fail / missing */
    --shadow-rgb: 0,0,0;
  }
}
