/* Top Clean & Clear — color tokens.
   Base values first, semantic aliases after. Blue is institutional and never
   signals interactivity; gold is the only conversion / interaction color. */
:root {
  /* Brand & accent */
  --tcc-gold: #f9c349;          /* CTA + every interactive/active state */
  --tcc-navy: #0b1f52;          /* hero band, logo navy — sampled from the mark */
  --tcc-blue-deep: #143789;     /* service band + CTA banner fills */
  --tcc-blue-info: #3268e5;     /* reserved: semantic Info only, never interaction */
  --tcc-violet: #5e2acf;        /* decorative step number "03" */
  --tcc-magenta: #c83ba5;       /* decorative step number "02" */
  --tcc-green: #39a939;         /* reserved / success */
  --tcc-red: #d33a2c;           /* error — an approved extension; no red exists in the source */
  --tcc-quote-blue: #3f5fd6;    /* service-page WhatsApp quote block fill — lighter than blue-deep, distinct from the navy hero/footer bands. Was too pale/desaturated at first pass (#7783c9, only 43% saturation) and read as lavender next to the site's other, more saturated blues — this is more saturated and closer to --tcc-blue-info's hue so it unambiguously reads as blue. */

  /* Tint fills — circular chips only, never button backgrounds */
  --tcc-tint-blue: #ecf2ff;
  --tcc-tint-rose: #f7f4f6;
  --tcc-tint-violet: #f4f2f7;
  --tcc-tint-mint: #f2f9f7;

  /* Neutrals */
  --tcc-white: #ffffff;
  --tcc-off-white: #fcfcfc;
  --tcc-grey-50: #f5f6f7;
  --tcc-grey-200: #dde1e6;
  --tcc-ink-600: #47484b;
  --tcc-ink-900: #22242b;
  --tcc-black-900: #1c1d20;

  /* ---- Semantic aliases ---- */
  --color-primary: var(--tcc-gold);
  --color-primary-contrast: var(--tcc-ink-900);
  --color-brand-deep: var(--tcc-blue-deep);
  --color-hero-bg: var(--tcc-navy);

  --surface-canvas: var(--tcc-white);
  --surface-card: var(--tcc-off-white);
  --surface-muted: var(--tcc-grey-50);
  --surface-dark: var(--tcc-black-900);
  --surface-ink: var(--tcc-ink-900);

  --border-hairline: var(--tcc-grey-200);
  --border-hairline-dark: rgba(255, 255, 255, 0.12);
  --scrim: rgba(34, 34, 34, 0.4);

  --text-strong: var(--tcc-ink-900);
  --text-body: var(--tcc-ink-600);
  --text-on-dark: var(--tcc-white);
  --text-on-dark-muted: rgba(255, 255, 255, 0.7);
  --text-on-dark-faint: rgba(255, 255, 255, 0.5);
  --text-light: var(--tcc-off-white);
  --text-link-hover: var(--color-primary);

  /* Semantic states. Error red is an approved extension of the extracted palette. */
  --state-info: var(--tcc-blue-info);
  --state-success: var(--tcc-green);
  --state-warning: var(--tcc-gold);
  --state-error: var(--tcc-red);
  --state-error-tint: #fdf0ef;
}
