:root{
/* Base palette — sampled from the FLP mark */
--flp-navy:#004D9E;
--flp-green:#66B645;
--flp-red:#D80F31;
--navy-deep:#00366F;
--bright-blue:#5DE0E6;
--cream:#FCFBFA;
--white:#FFFFFF;
--ink:#1E2733;
--ink-soft:#4A5568;
--hairline:#E4E2DA;

/* Tints — derived washes for section backgrounds and soft fills */
--navy-wash:#F1F6FB;
--green-wash:#F2F8EE;
--red-wash:#FDF1F3;

/* Semantic — surfaces */
--surface-page:var(--cream);
--surface-card:var(--white);
--surface-wash:var(--navy-wash);
--surface-anchor:var(--navy-deep);
--surface-inverse-card:var(--white);

/* Semantic — text */
--text-heading:var(--flp-navy);
--text-body:var(--ink);
--text-muted:var(--ink-soft);
--text-eyebrow:var(--flp-navy);
/* All type on a blue ground is pure white. There is no muted on-dark tint —
   hierarchy on blue comes from size and weight, never from color. */
--text-on-dark:var(--white);
--text-on-action:var(--white);

/* Semantic — action (green is the only primary action color) */
--action:var(--flp-green);
--action-hover:#5AA33D;
--action-press:#4E8F34;
--action-text:var(--white);
/* There is no outlined/secondary button. Non-CTA actions are text links. */
--link:var(--flp-navy);
--link-hover:var(--navy-deep);
--link-on-dark:var(--white);

/* Semantic — accents & feedback */
--accent:var(--flp-red);
--accent-soft:var(--red-wash);
--danger:var(--flp-red);
--focus-ring:var(--flp-navy);

/* Semantic — lines */
--border-subtle:var(--hairline);
--border-strong:var(--flp-navy);
--divider:var(--hairline);

/* The trio rotation: any group of exactly three rotates these, in order */
--trio-1:var(--flp-navy);
--trio-2:var(--flp-green);
--trio-3:var(--flp-red);
}
