.glossary-term { display:inline; padding:0; border:0; background:none; color:inherit; font:inherit; letter-spacing:inherit; text-transform:inherit; text-decoration:underline; text-underline-offset:.18em; text-decoration-thickness:1px; cursor:pointer; font-variant-numeric:lining-nums tabular-nums; }
.glossary-term:focus-visible { outline:2px solid var(--wine); outline-offset:3px; }
.glossary-dialog { position:fixed; inset:0; margin:auto; box-sizing:border-box; width:min(460px,calc(100vw - 40px)); max-height:calc(100dvh - 48px); padding:32px; border:1px solid rgba(112,44,54,.2); background:#faf9f6; color:var(--graphite); font:400 1rem/1.6 Raleway,sans-serif; box-shadow:0 16px 64px rgba(35,31,32,.14); }
.glossary-dialog::backdrop { background:rgba(35,31,32,.22); backdrop-filter:blur(4px); }
.glossary-dialog h2 { margin:0 32px 14px 0; color:var(--wine); font-size:clamp(1.3rem,4vw,1.7rem); line-height:1.2; font-variant-numeric:lining-nums tabular-nums; font-feature-settings:"lnum" 1,"tnum" 1; }
.glossary-dialog p { margin:0 0 18px; }
.glossary-dialog a { color:var(--wine); font-size:.85rem; }
.glossary-close { position:absolute; top:5px; right:5px; width:44px; height:44px; border:0; background:none; color:var(--wine); font:inherit; font-size:1.5rem; cursor:pointer; }
.glossary-close:focus-visible { outline:2px solid var(--wine); outline-offset:0; }
/* EIR numerals must also align in non-interactive headings and static copy. */
.eir-page main, .eir-page main * {
  font-variant-numeric:lining-nums tabular-nums;
  font-feature-settings:"lnum" 1,"tnum" 1;
}
