  :root{
    --navy:#0F2740;
    --navy-700:#0A1B2E;
    --navy-600:#14365A;
    --blue:#0369A1;
    --gold:#C9A24B;
    --gold-soft:#E4C57E;
    /* Darker gold for text on LIGHT backgrounds — passes WCAG AA: 5.12:1 on white, 4.86:1 on --bg */
    --gold-text:#866A22;
    --bg:#F7F9FB;
    --surface:#FFFFFF;
    --text:#0F172A;
    --muted:#5A6B7B;
    --border:#E3E9EF;
    --radius:14px;
    --shadow-sm:0 1px 2px rgba(15,39,64,.06), 0 1px 3px rgba(15,39,64,.08);
    --shadow-md:0 8px 24px rgba(15,39,64,.10);
    --shadow-lg:0 20px 50px rgba(15,39,64,.16);
    --maxw:1180px;
    --ease:cubic-bezier(.22,.61,.36,1);
    /* RGB channel tokens — use with rgba(var(--token-rgb), alpha) */
    --navy-rgb:15,39,64;
    --navy-700-rgb:10,27,46;
    --gold-rgb:201,162,75;
    --gold-soft-rgb:228,197,126;
    --blue-rgb:3,105,161;
    --gold-light:#F5DFA0;
    /* Near-black scrim token — low blue saturation, used in hero overlay */
    --scrim-rgb:6,12,20;
    /* Header height token */
    --header-h:74px;
  }
