:root{
/* --- Official palette (brand board, uploads/1.png) --- */
--blue-deep:#03378E;      /* anchor: identity, depth, contrast */
--blue-bright:#0760CF;    /* accent: highlights, CTAs, selected moments */
--blue-light:#A3D0FB;     /* soft accent, second-voice display type */
--blue-peri:#5A7BD1;      /* periwinkle: fills, muted text, section blocks */
--blue-pale:#E7F6FE;      /* pale wash: surfaces, whitespace with a tint */
--cream:#F2EEE4;          /* soft cream: warmth, paper, alternate surface */
--white:#FFFFFF;

/* --- Derived, from the palette only (no new hues) --- */
--blue-deep-press:#022A6E;
--blue-bright-press:#054FAC;
--blue-ink:#12264A;       /* long-form body text: deep blue, lower chroma */
--blue-pale-deep:#D6ECFB; /* pale blue, one step down — hover on pale surfaces */
--cream-deep:#E7E0D0;     /* cream, one step down — borders/hover on cream */
--blue-veil:rgba(3,55,142,.06);

/* --- Semantic surfaces --- */
--surface-page:var(--white);
--surface-soft:var(--blue-pale);
--surface-warm:var(--cream);
--surface-deep:var(--blue-deep);
--surface-accent:var(--blue-bright);
--surface-peri:var(--blue-peri);
--surface-card:var(--white);
--surface-card-soft:var(--blue-pale);

/* --- Semantic text --- */
--text-display:var(--blue-deep);
--text-heading:var(--blue-deep);
--text-body:var(--blue-ink);
--text-muted:var(--blue-peri);
--text-accent:var(--blue-bright);
--text-second-voice:var(--blue-light);
--text-on-deep:var(--cream);
--text-on-deep-muted:rgba(242,238,228,.68);
--text-on-accent:var(--white);
--text-on-soft:var(--blue-deep);

/* --- Lines & focus --- */
--border-hairline:rgba(3,55,142,.16);
--border-soft:rgba(3,55,142,.10);
--border-strong:var(--blue-deep);
--border-on-deep:rgba(242,238,228,.32);
--focus-ring:var(--blue-bright);

/* --- Links --- */
--link:var(--blue-bright);
--link-hover:var(--blue-deep);

/* --- Sticker system --- */
--sticker-cut:var(--white);          /* die-cut border colour */
--sticker-cut-width:10px;

/* --- Functional feedback only. Never used in marketing art direction. --- */
--feedback-error:#A63A2A;
--feedback-success:#1F6B4A;
--feedback-warning:#8A6314;
--feedback-error-soft:#F7EAE6;
--feedback-success-soft:#E8F1ED;
}
