:root{
  /* ---- Base palette ---- */
  --electric-blue:#3E6AE1;      /* sole chromatic accent — primary CTA */
  --electric-blue-hover:#3457B8;/* darkened blue for CTA hover */
  --white:#FFFFFF;              /* dominant background / canvas */
  --light-ash:#F4F4F4;          /* subtle alternate surface */
  --carbon-dark:#171A20;        /* warm near-black, blue undertone */
  --graphite:#393C41;           /* body text */
  --pewter:#5C5E62;             /* tertiary text / sub-links */
  --silver-fog:#8E8E8E;         /* placeholder / disabled */
  --cloud-gray:#EEEEEE;         /* light borders / dividers */
  --pale-silver:#D0D1D2;        /* subtle UI borders */

  /* ---- Transparency layers ---- */
  --frosted-glass:rgba(255,255,255,0.75); /* nav backdrop on scroll */
  --overlay-scrim:rgba(128,128,128,0.65); /* modal / cookie overlay */
  --hover-tint:rgba(0,0,0,0.05);          /* rare subtle hover hint */

  /* ---- Semantic aliases ---- */
  --accent:var(--electric-blue);
  --accent-hover:var(--electric-blue-hover);

  --bg-page:var(--white);
  --surface:var(--white);
  --surface-alt:var(--light-ash);
  --surface-dark:var(--carbon-dark);

  --text-heading:var(--carbon-dark);
  --text-body:var(--graphite);
  --text-tertiary:var(--pewter);
  --text-placeholder:var(--silver-fog);
  --text-on-accent:var(--white);
  --text-on-dark:var(--white);

  --border-subtle:var(--cloud-gray);
  --border-ui:var(--pale-silver);
}
:root{
  /* ---- 8px base spacing scale ---- */
  --space-0:0;
  --space-1:4px;    /* minimal button outer padding */
  --space-2:8px;    /* base unit */
  --space-3:16px;   /* 1rem — nav item padding, card gap */
  --space-4:24px;
  --space-5:32px;
  --space-6:48px;
  --space-7:64px;
  --space-8:96px;

  /* ---- Layout ---- */
  --container-max:1383px;
  --nav-height:56px;
  --section-min-height:100vh;
}
:root{
  /* ---- Motion: one universal duration, color-only transitions ---- */
  --duration:0.33s; /* @kind other */
  --duration-fast:0.25s; /* @kind other */
  --ease-standard:cubic-bezier(0.5,0,0,0.75); /* @kind other */ /* text-link box-shadow ease */

  /* Ready-made transition strings matching the brand */
  --transition-button:border-color var(--duration),background-color var(--duration),color var(--duration),box-shadow var(--duration-fast);
  --transition-nav:color var(--duration),background-color var(--duration);
  --transition-link:box-shadow var(--duration) var(--ease-standard),color var(--duration);
}
