/* ==========================================================================
   variables.css
   Design tokens for the BGS public site UI foundation.
   Consumed by style.css / animation.css / responsive.css.
   ========================================================================== */

:root {
  /* --- Brand palette (as specified) --- */
  --primary: #002563;
  --secondary: #0A4D9C;
  --accent: #FFC107;
  --success: #16a34a;
  --danger: #dc2626;
  --white: #ffffff;
  --light: #f8fafc;
  --dark: #111827;

  --shadow: 0 15px 40px rgba(0, 0, 0, .12);
  --radius: 18px;
  --transition: .35s ease;

  /* --- Supporting tokens (derived, not in original spec) --- */
  /* Tints/shades used by hover states and overlays */
  --primary-dark: #001839;
  --primary-rgb: 0, 37, 99;
  --secondary-rgb: 10, 77, 156;
  --accent-rgb: 255, 193, 7;

  /* Text colors */
  --text-body: #4a5568;
  --text-muted: #718096;
  --text-heading: var(--dark);

  /* Surfaces */
  --surface: var(--white);
  --surface-alt: var(--light);
  --border-color: #e2e8f0;

  /* Gradients (built from the palette above, reused by hero/page-header/stats) */
  --gradient-primary: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
  --gradient-overlay: linear-gradient(135deg, rgba(var(--primary-rgb), .9), rgba(var(--secondary-rgb), .9));

  /* Radius scale (in addition to the single --radius token requested) */
  --radius-sm: 8px;
  --radius-md: 15px;
  --radius-lg: var(--radius);
  --radius-pill: 50px;
  --radius-circle: 50%;

  /* Shadow scale (in addition to the single --shadow token requested) */
  --shadow-sm: 0 5px 20px rgba(0, 0, 0, .05);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, .1);
  --shadow-lg: var(--shadow);
  --shadow-primary: 0 15px 30px rgba(var(--primary-rgb), .2);

  /* Spacing scale (used by section-padding / utility classes) */
  --space-xs: 8px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 40px;
  --space-xl: 60px;
  --space-2xl: 80px;

  /* Typography */
  --font-base: 'Poppins', sans-serif;
  --fs-base: 1rem;
  --lh-base: 1.7;

  /* Motion (in addition to the single --transition token requested) */
  --transition-fast: .2s ease;
  --transition-slow: .5s cubic-bezier(.175, .885, .32, 1.275);

  /* Layout */
  --container-xl-width: 1320px;
}
