/* ==========================================================================
   FinApt Group — Design Tokens
   All colors, typography, spacing, and component tokens from brand guidelines.
   ========================================================================== */

:root {
  /* ── Brand Colors ───────────────────────────────────────────────── */
  --color-dark-1:    rgb(40, 40, 40);
  --color-light-1:   rgb(255, 255, 255);
  --color-dark-2:    rgb(30, 89, 120);
  --color-light-2:   rgb(230, 230, 230);
  --color-accent-1:  rgb(0, 84, 158);       /* Brand Blue — Primary CTA */
  --color-primary:   rgb(0, 84, 158);       /* Brand Blue Alias */
  --color-accent-2:  rgb(58, 71, 100);      /* Navy-Slate — Premium Dark */
  --color-accent-3:  rgb(89, 179, 207);     /* Teal */
  --color-accent-4:  rgb(3, 189, 167);      /* Green-Teal */
  --color-accent-5:  rgb(135, 115, 90);     /* Warm Neutral */
  --color-accent-6:  rgb(200, 200, 200);    /* Light Gray */

  /* Derived / Utility */
  --color-body-bg:   rgb(255, 255, 255);
  --color-section-alt: rgb(247, 248, 250);
  --color-text:      rgb(40, 40, 40);
  --color-text-muted: rgb(100, 105, 115);
  --color-border:    rgb(225, 228, 232);
  --color-overlay:   rgba(30, 89, 120, 0.85);

  /* Derived Color Tints — for surfaces and accents */
  --color-accent-2-bg:   rgba(58, 71, 100, 0.04);
  --color-accent-2-deep: rgb(42, 52, 74);
  --color-accent-5-line: rgba(135, 115, 90, 0.25);
  --color-accent-5-bg:   rgba(135, 115, 90, 0.06);
  --color-dark-2-deep:   rgb(15, 50, 75);

  /* ── Typography ─────────────────────────────────────────────────── */
  --font-family: 'Manrope', Inter, 'Segoe UI', Arial, sans-serif;
  --font-display: 'Cormorant Garamond', 'Georgia', 'Times New Roman', serif;

  /* Font Sizes */
  --fs-h1: 52px;
  --fs-h2: 40px;
  --fs-h3: 32px;
  --fs-h4: 24px;
  --fs-h5: 20px;
  --fs-h6: 18px;
  --fs-body: 16px;
  --fs-small: 15px;
  --fs-xs: 13px;
  --fs-overline: 12px;

  /* Font Weights */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* Line Heights */
  --lh-h1: 1.12;
  --lh-h2: 1.18;
  --lh-h3: 1.22;
  --lh-h4: 1.3;
  --lh-body: 1.7;

  /* ── Spacing (8px system) ───────────────────────────────────────── */
  --space-1:   8px;
  --space-2:  16px;
  --space-3:  24px;
  --space-4:  32px;
  --space-5:  40px;
  --space-6:  48px;
  --space-7:  56px;
  --space-8:  64px;
  --space-9:  72px;
  --space-10: 80px;
  --space-12: 96px;
  --space-14: 112px;
  --space-16: 128px;
  --space-18: 144px;
  --space-20: 160px;
  --space-24: 192px;

  /* ── Layout ─────────────────────────────────────────────────────── */
  --container-max:   1440px;
  --container-wide:  1600px;
  --content-max:     800px;
  --content-narrow:  720px;
  --header-height:   88px;

  /* ── Components ─────────────────────────────────────────────────── */
  --card-radius:     14px;
  --card-radius-lg:  20px;
  --card-padding:    28px;
  --card-padding-lg: 40px;
  --card-shadow:     0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
  --card-shadow-hover: 0 12px 32px rgba(0, 0, 0, 0.1);
  --card-border:     1px solid var(--color-border);

  --btn-radius:      8px;
  --btn-padding:     14px 32px;
  --btn-padding-sm:  10px 24px;
  --btn-padding-lg:  18px 40px;

  /* ── Transitions ────────────────────────────────────────────────── */
  --transition-fast:   150ms ease;
  --transition-base:   250ms ease;
  --transition-slow:   400ms ease;
  --transition-spring: 350ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
