/* =========================================================
   ZeroBaseTrack · Design Tokens
   Source of truth: brand system (branding-machine) —
   colors, typography, spacing, effects. Do not hand-edit
   values here without updating the brand system too.
   ========================================================= */

/* Fonte carregada via <link rel="preconnect"> + <link rel="stylesheet"> no <head> de cada
   página (não por @import aqui) — @import bloqueia a descoberta antecipada do recurso e atrasa
   o LCP. Ver index.html / alianca.html. */

:root {
  /* ── Brand palette ── */
  --navy:   #16306A;   /* primary structure */
  --cyan:   #49C2D0;   /* signal / "Track" signature */
  --orange: #F16545;   /* action / CTA */
  --amber:  #F2A33B;   /* alert / consequence */
  --ink:    #101D30;   /* dark bg / base text */
  --slate:  #4A5D74;   /* secondary text */
  --mist:   #F7FAFD;   /* light surface */
  --line:   #E2E9F1;   /* borders on light bg */
  --white:  #ffffff;

  /* ── Semantic foreground ── */
  --color-fg-base:        var(--ink);
  --color-fg-secondary:   var(--slate);
  --color-fg-on-dark:     #C3D0E2;
  --color-fg-on-dark-dim: #93A6BE;
  --color-fg-inverse:     var(--white);

  /* ── Semantic surfaces ── */
  --color-surface-page:   var(--white);
  --color-surface-subtle: var(--mist);
  --color-surface-dark:   var(--ink);
  --color-surface-navy:   var(--navy);

  /* ── Semantic brand ── */
  --color-brand-primary: var(--navy);
  --color-brand-signal:  var(--cyan);
  --color-action:        var(--orange);
  --color-alert:         var(--amber);

  /* ── Semantic borders ── */
  --color-border:        var(--line);
  --color-border-dark:   rgba(255, 255, 255, 0.12);
  --color-border-signal: var(--cyan);

  /* ── Stat / data colors (dark bg context) ── */
  --color-stat-value:  var(--cyan);
  --color-stat-label:  #B9C7DB;
  --color-stat-source: #7C8FA9;

  /* ── Type families ── */
  --font-display: 'Space Grotesk', system-ui, sans-serif;
  --font-body:    'Inter', system-ui, sans-serif;
  --font-mono:    'JetBrains Mono', monospace;

  /* ── Type scale ── */
  --text-2xs:  10px;
  --text-xs:   12px;
  --text-sm:   13px;
  --text-base: 14.5px;
  --text-md:   16px;
  --text-lg:   19px;
  --text-xl:   23px;
  --text-2xl:  30px;
  --text-3xl:  40px;
  --text-hero: clamp(34px, 5.4vw, 58px);

  /* ── Line heights ── */
  --leading-tight:  1.12;
  --leading-snug:   1.3;
  --leading-normal: 1.6;

  /* ── Letter spacing ── */
  --tracking-tight:   -0.5px;
  --tracking-eyebrow:  2.5px;
  --tracking-mono:     1px;

  /* ── Weights ── */
  --weight-normal:   400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;

  /* ── Spacing (base unit 4px) ── */
  --space-1:   4px;
  --space-2:   8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-7:  28px;
  --space-8:  32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* ── Layout ── */
  --wrap-max:      1120px;
  --wrap-padding:  28px;
  --section-pad:   84px;
  --nav-height:    68px;

  /* ── Border radii ── */
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   14px;
  --radius-xl:   16px;
  --radius-2xl:  18px;
  --radius-logo: 15px;
  --radius-pill: 999px;

  /* ── Shadows ── */
  --shadow-btn-primary:       0 6px 20px rgba(241, 101, 69, 0.28);
  --shadow-btn-primary-hover: 0 10px 26px rgba(241, 101, 69, 0.36);
  --shadow-btn-navy:          0 6px 20px rgba(22, 48, 106, 0.25);
  --shadow-card-hover:        0 12px 30px rgba(22, 48, 106, 0.08);

  /* ── Transitions ── */
  --duration-fast:   0.15s;
  --duration-normal: 0.25s;
  --easing-default:  ease;

  /* ── Blur ── */
  --blur-nav: blur(10px);
}
