/**
 * Design tokens — single source of truth for the theme.
 * Lifted from the source design's :root and extended with spacing/z-index
 * scales and font fallback stacks. Components must consume these variables
 * rather than hard-coded values.
 */
:root {
  /* Brand palette */
  --enfx-navy: #1b2a4a;
  --enfx-navy-dark: #0f1b33;
  --enfx-navy-2: #22355c;
  --enfx-navy-3: #2b4270;
  --enfx-orange: #e8a020;
  --enfx-orange-light: #f0b840;
  --enfx-orange-d: #cf8a12;
  --enfx-white: #ffffff;
  --enfx-gray-light: #b0bec5;
  --enfx-gray-muted: #8a96a3;
  --enfx-soft: #f4f6fb;
  --enfx-line: #e6eaf1;
  --enfx-ink: #101d34;
  --enfx-body: #5a6678;
  --enfx-gold-soft: rgba(232, 160, 32, .12);

  /* Typography */
  --enfx-f-head: 'Sora', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --enfx-f-body: 'DM Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;

  /* Layout */
  --enfx-maxw: 1320px;
  --enfx-gutter: 30px;
  /* The usable measure inside .enfx-container (maxw minus both gutters). Inner
     page content is capped at this so it lines up with the logo bar, while a
     full-width block can still escape to the viewport edges. Keep in sync with
     contentSize/wideSize in theme.json. */
  --enfx-content-w: 1260px;
  /* Vertical rhythm. Every section derives its padding from these two, so the
     gaps stay consistent — tune here rather than per-section. */
  --enfx-section-y: 80px;   /* standard sections */
  --enfx-band-y: 44px;      /* compact bands (CTA) */
  --enfx-sec-head-gap: 46px;/* heading → content */
  /* Sticky header height — drives the anchor scroll offset. */
  --enfx-header-h: 80px;

  /* Effects */
  --enfx-shadow: 0 24px 50px -30px rgba(19, 32, 56, .35);
  --enfx-radius: 16px;
  --enfx-radius-lg: 24px;

  /* Decorative hand-drawn underline used on section titles */
  --enfx-wave: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14' preserveAspectRatio='none'%3E%3Cpath d='M3 9 C 40 3 90 3 130 6 S 180 11 197 6' fill='none' stroke='%23e8a020' stroke-width='3.5' stroke-linecap='round'/%3E%3C/svg%3E");

  /* Z-index scale */
  --enfx-z-header: 60;
  --enfx-z-totop: 80;
}
