/* Sochimenup tokens, taken from the client logo (green caduceus on white).
   Own-brand child: the Springhead palette is not used. This is the only file
   that holds literal colors; site.css reads variables. Every text/background
   pair is AA-checked in tests/test_contrast.py. */
:root {
  /* Raw palette. */
  --cnx-white: #ffffff;
  --cnx-tint: #f4f8ee;               /* green tint band */
  --cnx-brand-green: #84ac52;        /* FILL ONLY with ink on top (5.67); never text on white (2.62) */
  --cnx-brand-green-hover: #97bd66;  /* fill hover on the dark band (ink 6.93) */
  --cnx-text-green: #46692a;         /* green as text or link (6.34 on white) */
  --cnx-blue: #0a72b4;               /* science (5.15 on white) */
  --cnx-blue-tint: #ebf4fa;
  --cnx-purple: #5c4a9c;             /* events, membership, professionals (7.21 on white) */
  --cnx-purple-hover: #4a3b80;
  --cnx-purple-tint: #f2effa;
  --cnx-ink: #1f2a22;                /* 14.87 on white */
  --cnx-muted: #5b5b5b;              /* 6.79 on white, 6.31 on tint */
  --cnx-dark-band: #1f3a24;          /* professionals band (white 12.43) */
  --cnx-deep-text: #c9d8bf;          /* secondary text on the dark band (8.32) */
  --cnx-deep-line: #3a5a3f;          /* hairline on the dark band, decorative */
  --cnx-line: #dde5d3;               /* hairline on white or tint, decorative */
  --cnx-line-strong: #7c8774;        /* control boundary (3.77 on white, 3.5 on tint) */

  /* Semantic layer read by the Conexus core. */
  --cnx-surface: var(--cnx-white);
  --cnx-surface-alt: var(--cnx-tint);
  --cnx-text: var(--cnx-ink);
  --cnx-text-muted: var(--cnx-muted);
  --cnx-border: var(--cnx-line);
  --cnx-border-input: var(--cnx-line-strong);
  --cnx-primary: var(--cnx-purple);
  --cnx-primary-hover: var(--cnx-purple-hover);
  --cnx-primary-busy: var(--cnx-muted);
  --cnx-on-primary: var(--cnx-white);
  --cnx-link: var(--cnx-text-green);
  --cnx-accent: var(--cnx-brand-green);
  --cnx-selection: var(--cnx-tint);
  --cnx-focus-ring: var(--cnx-blue);

  /* Type: Figtree for UI and headings, Literata for reading. Self-hosted (site.css). */
  --cnx-font-text: "Figtree", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --cnx-font-display: "Figtree", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --cnx-font-reading: "Literata", Georgia, "Times New Roman", serif;
  --cnx-display-weight: 600;
  --cnx-fs-display: clamp(2.375rem, 1.55rem + 3.1vw, 3.875rem);
  --cnx-fs-h2: clamp(1.75rem, 1.4rem + 1.3vw, 2.5rem);
  --cnx-fs-h3: clamp(1.375rem, 1.2rem + 0.7vw, 1.75rem);
  --cnx-fs-h4: 1.25rem;
  --cnx-fs-lead: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);
  --cnx-fs-prose: 1.125rem;
  --cnx-fs-meta: 0.875rem;

  /* Spacing: core 4/8 rhythm plus two section steps. */
  --cnx-s-1: 4px;
  --cnx-s-2: 8px;
  --cnx-s-3: 12px;
  --cnx-s-4: 16px;
  --cnx-s-5: 24px;
  --cnx-s-6: 32px;
  --cnx-s-7: 48px;
  --cnx-s-8: 64px;
  --cnx-s-9: 96px;
  --cnx-s-10: 128px;
  --cnx-section: clamp(4rem, 2.5rem + 6vw, 7.5rem);

  --cnx-radius: 6px;
  --cnx-radius-media: 10px;
  --cnx-touch: 44px;
  --cnx-header-height: 5.5rem;
  --cnx-container-width: 76rem;
  --cnx-measure: 68ch;
}
