/* EO Design System — design tokens.
   Values copied verbatim from the design-system bundle:
     tokens/colors.css, tokens/typography.css, tokens/spacing.css
   Do not introduce colours, type steps, spacing steps, radii or shadows
   that are not defined here. */

:root{
/* ---- Colours -------------------------------------------------------- */
/* Base colors — all use cases: backgrounds, headlines, body, graphics */
--eo-white:#FFFFFF;
--eo-base-blue:#0C0C31; /* PMS 282 C */
--eo-blue:#3D46F2; /* EO Blue, PMS 2728 C — THE brand color */
/* Primary colors — graphics; limited headlines/backgrounds; callouts when EO Blue already used */
--eo-pink:#FF346E; /* PMS 213 C */
--eo-orange:#FA653C; /* PMS 171 C */
--eo-yellow:#EFB82E; /* PMS 123 C */
--eo-green:#1EA691; /* PMS 3258 C */
--eo-gray:#5E617D; /* PMS 7667 C */
/* Accent pairs — charts/graphs/wide color delineation only */
--eo-blue-light:#A3A7E4; --eo-blue-dark:#1D007F;
--eo-pink-light:#FFB0C8; --eo-pink-dark:#A32246;
--eo-orange-light:#FFB5A4; --eo-orange-dark:#C94C3F;
--eo-yellow-light:#FCDE95; --eo-yellow-dark:#BF8B0A;
--eo-green-light:#ACE2D4; --eo-green-dark:#216854;
--eo-gray-light:#B7B8C3; --eo-gray-dark:#3C3E50;
/* Semantic aliases */
--surface-page:var(--eo-white);
--surface-dark:var(--eo-base-blue);
--surface-brand:var(--eo-blue);
--text-body:var(--eo-base-blue);
--text-heading:var(--eo-base-blue);
--text-brand:var(--eo-blue);
--text-muted:var(--eo-gray);
--text-on-dark:var(--eo-white);
--link:var(--eo-blue);
--link-on-dark:var(--eo-blue-light);
--border-subtle:var(--eo-gray-light);
--chart-1:var(--eo-blue);--chart-2:var(--eo-pink);--chart-3:var(--eo-orange);--chart-4:var(--eo-yellow);--chart-5:var(--eo-green);--chart-6:var(--eo-gray);

/* ---- Typography ------------------------------------------------------ */
--font-sans:'Roboto',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
/* Ratio-driven hierarchy. Base = Hero Headline (--type-hero). All other steps are brand-specified ratios of it. Web base: hero 48px */
--type-hero:48px; /* Bold, sentence case */
--type-display:calc(var(--type-hero)*4/3); /* 64px Regular */
--type-standard:calc(var(--type-hero)*3/4); /* 36px Bold */
--type-subhead:calc(var(--type-hero)/2); /* 24px Regular */
--type-small:calc(var(--type-hero)/3); /* 16px Bold */
--type-body:calc(var(--type-hero)/3); /* 16px Regular */
--type-caption:calc(var(--type-hero)/4); /* 12px Bold ALL CAPS */
--weight-regular:400;--weight-medium:500;--weight-bold:700;
--tracking-caption:.1em; /* "tracking 100" */
--leading-tight:1.15;--leading-normal:1.5;

/* ---- Spacing, radius, shadows ---------------------------------------- */
/* INFERRED — no numeric spacing/radius/shadow system published by EO; pragmatic defaults, replace if EO supplies specifics */
--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;
--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-pill:999px;
--shadow-card:0 2px 12px rgba(12,12,49,.10);
--shadow-raised:0 8px 28px rgba(12,12,49,.16);
}
