  :root{
    --ink:#00313C;        /* AORA deep teal */
    --teal:#136476;       /* accent */
    --sky:#E8F6FC;        /* light blue */
    --mist:#F4F6F5;       /* background */
    --line:#D6E1E4;
    --text:#2C2D2E;
    --muted:#6B7A7F;
    --white:#FFFFFF;
    --ok:#1E7A55;
    --warn:#B7791F;
    --bad:#A23B3B;
    --display:'Montserrat', 'Helvetica Neue', Arial, sans-serif;
    --body:'Roboto', 'Helvetica Neue', Arial, sans-serif;
  }
  *{box-sizing:border-box}
  html,body{margin:0}
  body{background:var(--mist);color:var(--text);font:16px/1.5 var(--body);-webkit-font-smoothing:antialiased}
  h1,h2,h3{font-family:var(--display);color:var(--ink);margin:0;text-wrap:balance}
  .logo{display:block;height:28px;width:auto;color:var(--ink)}
  .eyebrow{font:600 12px/1 var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
  .btn{appearance:none;border:0;border-radius:2px;background:var(--ink);color:var(--white);
       font:600 15px/1 var(--display);letter-spacing:.02em;padding:16px 22px;cursor:pointer;transition:background .15s}
  .btn:hover{background:var(--teal)}
  .btn:disabled{opacity:.5;cursor:default}
  .btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
  .btn.ghost:hover{background:var(--sky)}
  :focus-visible{outline:2px solid var(--teal);outline-offset:2px}
  .anniv{display:inline-flex;align-items:baseline;gap:6px;font-family:var(--display);color:var(--teal)}
  .anniv b{font-size:22px;font-weight:700;color:var(--ink)}
  .anniv span{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
  @media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
  [hidden]{display:none!important}
