/* ==========================================================================
   SURIDATA LANDING PAGE — Design Tokens
   Aesthetic: Austere, Sophisticated, Minimalist, High-Contrast Data
   ========================================================================== */

:root {
  /* ──────────────────────────────────────
     COLORS — Core High Contrast Palette
     ────────────────────────────────────── */
  --color-black: #001431;
  /* Deep navy — Suridata brand */
  --color-ink: #001431;
  --color-white: #FFFFFF;
  --color-off-white: #F8F9FA;
  --color-surface: #F2F3F5;

  /* Neutrals for utilitarian borders and subtle text */
  --color-gray-900: #0a1e3d;
  --color-gray-600: #666666;
  --color-gray-400: #999999;
  --color-gray-200: #E5E5E5;
  --color-gray-100: #F0F0F0;

  /* ──────────────────────────────────────
     COLORS — Semantic Product Palette
     ────────────────────────────────────── */
  --color-suri-total: #81c400;
  --color-comite-saude: #001431;
  --color-gestao-senhas: #9de033;

  /* Functional Accents */
  --color-primary: #81c400;
  --color-accent: #9de033;
  --color-danger: #D32F2F;

  /* ──────────────────────────────────────
     TYPOGRAPHY
     ────────────────────────────────────── */
  --font-family: 'Poppins', sans-serif;

  /* Editorial Scale */
  --text-micro: 0.65rem;
  /* 10px - for utilitarian labels */
  --text-xs: 0.75rem;
  /* 12px */
  --text-sm: 0.875rem;
  /* 14px */
  --text-base: 1rem;
  /* 16px */
  --text-lg: 1.125rem;
  /* 18px */
  --text-xl: 1.5rem;
  /* 24px */
  --text-2xl: 2rem;
  /* 32px */
  --text-3xl: 2.75rem;
  /* 44px */
  --text-4xl: 3.5rem;
  /* 56px */
  --text-5xl: 4.5rem;
  /* 72px */
  --text-6xl: 5.5rem;
  /* 88px */

  /* Weights */
  --font-light: 300;
  --font-regular: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;

  /* Line Heights */
  --leading-none: 1;
  --leading-tight: 1.1;
  --leading-snug: 1.3;
  --leading-normal: 1.6;

  /* Letter Spacing */
  --tracking-tighter: -0.04em;
  --tracking-tight: -0.02em;
  --tracking-normal: 0;
  --tracking-wide: 0.05em;
  --tracking-widest: 0.15em;

  /* ──────────────────────────────────────
     SPACING — Austere & Generous System
     ────────────────────────────────────── */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;
  --space-32: 8rem;
  --space-40: 10rem;

  /* ──────────────────────────────────────
     LAYOUT
     ────────────────────────────────────── */
  --container-max: 1240px;
  --container-padding: var(--space-6);
  --grid-gap: var(--space-8);

  /* ──────────────────────────────────────
     BORDERS & RADII — Sharp, Utilitarian
     ────────────────────────────────────── */
  --radius-none: 0;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 8px;
  --radius-pill: 9999px;

  --border-thin: 1px solid var(--color-gray-200);
  --border-dark: 1px solid var(--color-gray-900);

  /* ──────────────────────────────────────
     SHADOWS — Crisp and editorial
     ────────────────────────────────────── */
  --shadow-none: none;
  --shadow-sm: 0 4px 12px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.08);

  /* Floating form shadow */
  --shadow-form: 0 24px 64px rgba(0, 0, 0, 0.08), 0 0 1px rgba(0, 0, 0, 0.1);

  /* ──────────────────────────────────────
     TRANSITIONS
     ────────────────────────────────────── */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-expo: cubic-bezier(0.19, 1, 0.22, 1);
  --duration-fast: 200ms;
  --duration-normal: 400ms;
  --duration-slow: 700ms;

  /* ──────────────────────────────────────
     Z-INDEX
     ────────────────────────────────────── */
  --z-negative: -1;
  --z-base: 1;
  --z-overlay: 10;
  --z-sticky: 100;
}

/* Responsive Overrides */
@media (max-width: 1024px) {
  :root {
    --text-5xl: 3.5rem;
    --text-6xl: 4.5rem;
  }
}

@media (max-width: 768px) {
  :root {
    --text-4xl: 2.5rem;
    --text-5xl: 3rem;
    --text-6xl: 3.5rem;
    --space-32: 5rem;
    --space-40: 6rem;
  }
}