@font-face {
  font-family: 'Alviona';
  src: url('fonts/Alviona.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Garamond Gnosis';
  src: url('fonts/CormorantGaramondGnosis-Variable-Roman.ttf') format('truetype');
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Garamond Gnosis';
  src: url('fonts/CormorantGaramondGnosis-Variable-Italic.ttf') format('truetype');
  font-style: italic;
  font-weight: 300 700;
  font-display: swap;
}

:root {
  --font-display: 'Alviona', Georgia, 'Times New Roman', serif;
  --font-body: 'Cormorant Garamond Gnosis', Georgia, 'Times New Roman', serif;
  font-family: var(--font-body);
}

/* Override older local font shorthands, including controls and SVG labels.
 * The display selectors below keep priority for titles and feature names. */
:root body,
:root body :where(*) {
  font-family: var(--font-body);
}

/* Display typography for titles and feature names. */
:root :is(h1, h2, h3, h4, h5, h6, .game-main-title, .title-sub,
  .home-eyebrow, .eyebrow, .btn-label, .card-title, .card-action-hint,
  .settings-section-title, .team-title, .brand > span:last-child,
  .main-nav button, .tabs button, #modalActions button, #roll, #start,
  #rent-confirm-btn, #event-confirm-btn) {
  font-family: var(--font-display);
  font-weight: 400;
  font-synthesis: none;
}

:root :is(h1, h2, h3, h4, h5, h6, .card-title, .btn-label) {
  line-height: 1.3;
}

.rpg-menu-btn .btn-label {
  letter-spacing: .035em;
}

.game-main-title .title-sub {
  letter-spacing: .16em;
}
