/* GENERATED by @wiskrouter/design-system — do not edit.
 * Source: Figma .fig · 62 primitives,
 * 54 semantic tokens, 28 text styles.
 * Regenerate with: npm run all
 */

/* Load the Google-served faces (JetBrains Mono):
   <link rel="preconnect" href="https://fonts.googleapis.com">
   <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
   <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400..700&display=swap"> */

/* ── Self-hosted faces — the licensed files in /public/fonts ── */
@font-face {
  font-family: 'Minion Pro';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/public/fonts/minionpro-medium.woff2') format('woff2'),
       url('/public/fonts/minionpro-medium.woff') format('woff');
}
@font-face {
  font-family: 'Minion Pro';
  font-style: italic;
  font-weight: 400 700;
  font-display: swap;
  src: url('/public/fonts/minionpro-medium-italic.woff2') format('woff2'),
       url('/public/fonts/minionpro-medium-italic.woff') format('woff');
}
@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/public/fonts/metropolis-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Metropolis';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/public/fonts/metropolis-regular-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/public/fonts/metropolis-medium.woff2') format('woff2');
}
@font-face {
  font-family: 'Metropolis';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('/public/fonts/metropolis-medium-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/public/fonts/metropolis-semibold.woff2') format('woff2');
}
@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/public/fonts/metropolis-bold.woff2') format('woff2');
}

/* Minion Pro is served in ONE upright weight (Medium) declared as the range
   400–700, so a 600/700 display style lands on the real face. Synthetic bold
   is switched off outright so no browser can fake a weight we do not own. */
html { font-synthesis-weight: none; }

:root {
  /* Tracks the resolved theme, not the OS. Left as "light dark" the browser
     keeps painting scrollbars, form controls and the canvas from the system
     preference even when data-theme has forced the opposite. */
  color-scheme: light;

  /* ── Primitives — theme-independent ── */
  --er-blue-100: #E6EFFA;
  --er-blue-900: #103059;
  --er-cyan-100: #DDEDEB;
  --er-cyan-900: #0B3631;
  --er-green-100: #ECF0DF;
  --er-green-900: #34400C;
  --er-magenta-100: #EDE3F0;
  --er-magenta-900: #3A104A;
  --er-orange-100: #F0E4DC;
  --er-orange-900: #452007;
  --er-pink-100: #EBDDE4;
  --er-pink-900: #470B2A;
  --er-prime-100: #FEF3C7;
  --er-prime-200: #FDE68A;
  --er-prime-300: #FCD34D;
  --er-prime-350: #FBBF24;
  --er-prime-400: #FBBF24;
  --er-prime-500: #F59E0B;
  --er-prime-600: #D97706;
  --er-prime-900: #78350F;
  --er-prime-950: #451A03;
  --er-prime-grey-0: #FFFFFF;
  --er-prime-grey-100: #EBF1EE;
  --er-prime-grey-200: #DCE5E0;
  --er-prime-grey-300: #C5D4CD;
  --er-prime-grey-400: #9EB3A9;
  --er-prime-grey-50: #F5F8F6;
  --er-prime-grey-500: #6F887D;
  --er-prime-grey-600: #4B6158;
  --er-prime-grey-700: #2F3F39;
  --er-prime-grey-800: #1A2421;
  --er-prime-grey-900: #111917;
  --er-prime-grey-950: #091114;
  --er-purple-100: #EAE8F2;
  --er-purple-900: #231657;
  --er-sec-100: #D1FAE5;
  --er-sec-200: #A7F3D0;
  --er-sec-300: #34D399;
  --er-sec-400: #10B981;
  --er-sec-500: #059669;
  --er-sec-600: #047857;
  --er-sec-900: #0F1A1C;
  --er-sec-950: #091114;
  --er-sec-grey-100: #EBF1EE;
  --er-sec-grey-200: #DCE5E0;
  --er-sec-grey-300: #C5D4CD;
  --er-sec-grey-400: #9EB3A9;
  --er-sec-grey-50: #F5F8F6;
  --er-sec-grey-500: #6F887D;
  --er-sec-grey-600: #4B6158;
  --er-sec-grey-700: #2F3F39;
  --er-sec-grey-800: #1A2421;
  --er-sec-grey-900: #111917;
  --er-sec-grey-950: #091114;
  --er-success-100: #D1FAE5;
  --er-success-50: #ECFDF5;
  --er-success-500: #10B981;
  --er-success-900: #064E3B;
  --er-warning-500: #F59E0B;
  --er-warning-900: #78350F;
  --er-yellow-100: #FEF3C7;
  --er-yellow-900: #78350F;

  /* ── Fonts ── */
  --er-font-display: 'Metropolis', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --er-font-body: 'Metropolis', 'Proxima Nova', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --er-font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  /* ── Spacing — measured from the comps, not from Variables ── */
  --er-space-4: 4px;
  --er-space-8: 8px;
  --er-space-10: 10px;
  --er-space-12: 12px;
  --er-space-16: 16px;
  --er-space-20: 20px;
  --er-space-24: 24px;
  --er-space-32: 32px;
  --er-space-40: 40px;
  --er-space-48: 48px;
  --er-space-56: 56px;
  --er-space-64: 64px;
  --er-space-80: 80px;
  --er-space-96: 96px;

  /* ── Radii ── */
  --er-radius-sm: 8px;
  --er-radius-md: 12px;
  --er-radius-lg: 16px;
  --er-radius-xl: 24px;
  --er-radius-pill: 32px;
  --er-radius-round: 999px;

  /* ── Elevation ── */
  --er-shadow-1: 0px 8px 32px rgba(0, 0, 0, 0.12);
  --er-shadow-2: 0px 12px 36px rgba(0, 0, 0, 0.12);
  --er-shadow-3: 0px 8px 80px rgba(0, 0, 0, 0.12);

  /* ── Type scale ── */
  --er-type-b1-family: var(--er-font-body);
  --er-type-b1-size: 18px;
  --er-type-b1-weight: 600;
  --er-type-b1-line-height: 1.2;
  --er-type-b2-family: var(--er-font-body);
  --er-type-b2-size: 16px;
  --er-type-b2-weight: 600;
  --er-type-b2-line-height: 1.2;
  --er-type-cd35-family: var(--er-font-mono);
  --er-type-cd35-size: 12px;
  --er-type-cd35-weight: 500;
  --er-type-cd35-line-height: 20px;
  --er-type-cd4-family: var(--er-font-mono);
  --er-type-cd4-size: 10px;
  --er-type-cd4-weight: 500;
  --er-type-cd4-line-height: 12px;
  --er-type-cd3-family: var(--er-font-mono);
  --er-type-cd3-size: 14px;
  --er-type-cd3-weight: 500;
  --er-type-cd3-line-height: 20px;
  --er-type-dh3-family: var(--er-font-display);
  --er-type-dh3-size: 40px;
  --er-type-dh3-weight: 600;
  --er-type-dh3-line-height: 48px;
  --er-type-dh3-letter-spacing: -0.01em;
  --er-type-dhero-family: var(--er-font-display);
  --er-type-dhero-size: 84px;
  --er-type-dhero-weight: 500;
  --er-type-dhero-line-height: 68px;
  --er-type-dhero-letter-spacing: -0.03em;
  --er-type-dihero-family: var(--er-font-display);
  --er-type-dihero-size: 84px;
  --er-type-dihero-weight: 500;
  --er-type-dihero-line-height: 68px;
  --er-type-dihero-letter-spacing: -0.03em;
  --er-type-cap1-family: var(--er-font-body);
  --er-type-cap1-size: 14px;
  --er-type-cap1-weight: 600;
  --er-type-cap1-line-height: 14px;
  --er-type-cap1-letter-spacing: 0.05em;
  --er-type-cap2-family: var(--er-font-body);
  --er-type-cap2-size: 12px;
  --er-type-cap2-weight: 600;
  --er-type-cap2-line-height: 12px;
  --er-type-cap2-letter-spacing: 0.05em;
  --er-type-h3-family: var(--er-font-body);
  --er-type-h3-size: 28px;
  --er-type-h3-weight: 600;
  --er-type-h3-line-height: 36px;
  --er-type-h4-family: var(--er-font-body);
  --er-type-h4-size: 24px;
  --er-type-h4-weight: 600;
  --er-type-h4-line-height: 32px;
  --er-type-h5-family: var(--er-font-body);
  --er-type-h5-size: 20px;
  --er-type-h5-weight: 700;
  --er-type-h5-line-height: 28px;
  --er-type-h6-family: var(--er-font-body);
  --er-type-h6-size: 18px;
  --er-type-h6-weight: 700;
  --er-type-h6-line-height: 24px;
  --er-type-h7-family: var(--er-font-body);
  --er-type-h7-size: 16px;
  --er-type-h7-weight: 700;
  --er-type-h7-line-height: 20px;
  --er-type-p1-family: var(--er-font-body);
  --er-type-p1-size: 20px;
  --er-type-p1-weight: 500;
  --er-type-p1-line-height: 28px;
  --er-type-p2-family: var(--er-font-body);
  --er-type-p2-size: 18px;
  --er-type-p2-weight: 500;
  --er-type-p2-line-height: 24px;
  --er-type-p3-family: var(--er-font-body);
  --er-type-p3-size: 16px;
  --er-type-p3-weight: 500;
  --er-type-p3-line-height: 24px;
  --er-type-p4-family: var(--er-font-body);
  --er-type-p4-size: 14px;
  --er-type-p4-weight: 600;
  --er-type-p4-line-height: 20px;
  --er-type-p5-family: var(--er-font-body);
  --er-type-p5-size: 12px;
  --er-type-p5-weight: 600;
  --er-type-p5-line-height: 16px;
  --er-type-dh1-family: var(--er-font-display);
  --er-type-dh1-size: 60px;
  --er-type-dh1-weight: 500;
  --er-type-dh1-line-height: 68px;
  --er-type-dh1-letter-spacing: -0.03em;
  --er-type-dh2-family: var(--er-font-display);
  --er-type-dh2-size: 48px;
  --er-type-dh2-weight: 500;
  --er-type-dh2-line-height: 52px;
  --er-type-dh2-letter-spacing: -0.02em;
  --er-type-dh4-family: var(--er-font-display);
  --er-type-dh4-size: 32px;
  --er-type-dh4-weight: 600;
  --er-type-dh4-line-height: 40px;
  --er-type-dh5-family: var(--er-font-display);
  --er-type-dh5-size: 24px;
  --er-type-dh5-weight: 600;
  --er-type-dh5-line-height: 32px;
  --er-type-dh6-family: var(--er-font-display);
  --er-type-dh6-size: 18px;
  --er-type-dh6-weight: 700;
  --er-type-dh6-line-height: 24px;
  --er-type-dih1-family: var(--er-font-display);
  --er-type-dih1-size: 60px;
  --er-type-dih1-weight: 500;
  --er-type-dih1-line-height: 72px;
  --er-type-dih1-letter-spacing: -0.03em;
  --er-type-dih2-family: var(--er-font-display);
  --er-type-dih2-size: 48px;
  --er-type-dih2-weight: 500;
  --er-type-dih2-line-height: 56px;
  --er-type-dih2-letter-spacing: -0.02em;
  --er-type-dih6-family: var(--er-font-display);
  --er-type-dih6-size: 18px;
  --er-type-dih6-weight: 600;
  --er-type-dih6-line-height: 24px;

  /* ── Semantic tokens — LIGHT ── */
  --er-bg-blue-subtle: var(--er-blue-100);
  --er-bg-cyan-subtle: var(--er-cyan-100);
  --er-bg-green-subtle: var(--er-green-100);
  --er-bg-magenta-subtle: var(--er-magenta-100);
  --er-bg-orange-subtle: var(--er-orange-100);
  --er-bg-prime-active: var(--er-prime-grey-0);
  --er-bg-prime-base: var(--er-prime-grey-0);
  --er-bg-prime-brand: var(--er-prime-500);
  --er-bg-prime-inverse: var(--er-prime-grey-950);
  --er-bg-prime-inverse-subtle: var(--er-prime-grey-950);
  --er-bg-prime-main-container: var(--er-prime-grey-0);
  --er-bg-prime-page-body: var(--er-prime-grey-50);
  --er-bg-prime-subtle: var(--er-prime-grey-100);
  --er-bg-purple-subtle: var(--er-purple-100);
  --er-bg-sec-brand: var(--er-sec-500);
  --er-bg-sec-brand-inverse: var(--er-sec-500);
  --er-bg-sec-brand-subtle-inverse: var(--er-sec-100);
  --er-bg-sec-muted: var(--er-sec-grey-100);
  --er-bg-sec-subtle: var(--er-sec-grey-50);
  --er-bg-success-subtle: var(--er-success-50);
  --er-bg-yellow-subtle: var(--er-yellow-100);
  --er-border-prime-base: var(--er-prime-grey-200);
  --er-border-prime-brand: var(--er-prime-500);
  --er-border-prime-strong: var(--er-prime-grey-300);
  --er-border-sec-base: var(--er-sec-grey-200);
  --er-border-sec-brand: var(--er-sec-500);
  --er-border-sec-strong: var(--er-sec-grey-300);
  --er-icon-blue: var(--er-blue-900);
  --er-icon-cyan: var(--er-cyan-900);
  --er-icon-green: var(--er-green-900);
  --er-icon-magenta: var(--er-magenta-900);
  --er-icon-on-color: var(--er-prime-grey-0);
  --er-icon-orange: var(--er-orange-900);
  --er-icon-pink: var(--er-pink-900);
  --er-icon-prime-base: var(--er-prime-grey-900);
  --er-icon-prime-strong: var(--er-prime-grey-950);
  --er-icon-prime-subtle: var(--er-prime-grey-600);
  --er-icon-purple: var(--er-purple-900);
  --er-icon-yellow: var(--er-yellow-900);
  --er-text-on-color: var(--er-prime-grey-0);
  --er-text-prime-base: var(--er-prime-grey-900);
  --er-text-prime-brand: var(--er-prime-500);
  --er-text-prime-brand-on-dark: var(--er-prime-350);
  --er-text-prime-inactive: var(--er-prime-grey-400);
  --er-text-prime-inverse: var(--er-prime-grey-50);
  --er-text-prime-strong: var(--er-prime-grey-950);
  --er-text-prime-subtle: var(--er-prime-grey-600);
  --er-text-sec-brand: var(--er-sec-500);
  --er-text-sec-brand-inverse: var(--er-sec-500);
  --er-text-sec-strong: var(--er-sec-grey-950);
  --er-text-sec-subtle: var(--er-sec-grey-600);
  --er-text-success: var(--er-success-900);
  --er-text-success-strong: var(--er-success-500);
  --er-text-warning-strong: var(--er-warning-500);
}

/* System dark, unless the page explicitly asked for light. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
  --er-bg-blue-subtle: var(--er-blue-900);
  --er-bg-cyan-subtle: var(--er-cyan-900);
  --er-bg-green-subtle: var(--er-green-900);
  --er-bg-magenta-subtle: var(--er-magenta-900);
  --er-bg-orange-subtle: var(--er-orange-900);
  --er-bg-prime-active: var(--er-prime-grey-800);
  --er-bg-prime-base: var(--er-prime-grey-800);
  --er-bg-prime-brand: var(--er-prime-400);
  --er-bg-prime-inverse: var(--er-prime-grey-0);
  --er-bg-prime-inverse-subtle: var(--er-prime-grey-700);
  --er-bg-prime-main-container: var(--er-prime-grey-900);
  --er-bg-prime-page-body: var(--er-prime-grey-950);
  --er-bg-prime-subtle: var(--er-prime-grey-900);
  --er-bg-purple-subtle: var(--er-purple-900);
  --er-bg-sec-brand: var(--er-sec-400);
  --er-bg-sec-brand-inverse: var(--er-prime-600);
  --er-bg-sec-brand-subtle-inverse: var(--er-warning-900);
  --er-bg-sec-muted: var(--er-sec-grey-800);
  --er-bg-sec-subtle: var(--er-sec-grey-900);
  --er-bg-success-subtle: var(--er-success-900);
  --er-bg-yellow-subtle: var(--er-yellow-900);
  --er-border-prime-base: var(--er-prime-grey-700);
  --er-border-prime-brand: var(--er-prime-600);
  --er-border-prime-strong: var(--er-prime-grey-600);
  --er-border-sec-base: var(--er-sec-grey-700);
  --er-border-sec-brand: var(--er-sec-600);
  --er-border-sec-strong: var(--er-sec-grey-600);
  --er-icon-blue: var(--er-blue-100);
  --er-icon-cyan: var(--er-cyan-100);
  --er-icon-green: var(--er-green-100);
  --er-icon-magenta: var(--er-magenta-100);
  --er-icon-on-color: var(--er-prime-grey-0);
  --er-icon-orange: var(--er-orange-100);
  --er-icon-pink: var(--er-pink-100);
  --er-icon-prime-base: var(--er-prime-grey-50);
  --er-icon-prime-strong: var(--er-prime-grey-0);
  --er-icon-prime-subtle: var(--er-prime-grey-400);
  --er-icon-purple: var(--er-purple-100);
  --er-icon-yellow: var(--er-yellow-100);
  --er-text-on-color: var(--er-prime-grey-0);
  --er-text-prime-base: var(--er-prime-grey-100);
  --er-text-prime-brand: var(--er-prime-300);
  --er-text-prime-brand-on-dark: var(--er-prime-350);
  --er-text-prime-inactive: var(--er-prime-grey-500);
  --er-text-prime-inverse: var(--er-prime-grey-950);
  --er-text-prime-strong: var(--er-prime-grey-50);
  --er-text-prime-subtle: var(--er-prime-grey-400);
  --er-text-sec-brand: var(--er-sec-300);
  --er-text-sec-brand-inverse: var(--er-prime-300);
  --er-text-sec-strong: var(--er-prime-grey-50);
  --er-text-sec-subtle: var(--er-sec-grey-400);
  --er-text-success: var(--er-success-100);
  --er-text-success-strong: var(--er-success-500);
  --er-text-warning-strong: var(--er-warning-500);
  }
}

/* Explicit dark beats a light OS. */
:root[data-theme="dark"] {
  color-scheme: dark;
  --er-bg-blue-subtle: var(--er-blue-900);
  --er-bg-cyan-subtle: var(--er-cyan-900);
  --er-bg-green-subtle: var(--er-green-900);
  --er-bg-magenta-subtle: var(--er-magenta-900);
  --er-bg-orange-subtle: var(--er-orange-900);
  --er-bg-prime-active: var(--er-prime-grey-800);
  --er-bg-prime-base: var(--er-prime-grey-800);
  --er-bg-prime-brand: var(--er-prime-400);
  --er-bg-prime-inverse: var(--er-prime-grey-0);
  --er-bg-prime-inverse-subtle: var(--er-prime-grey-700);
  --er-bg-prime-main-container: var(--er-prime-grey-900);
  --er-bg-prime-page-body: var(--er-prime-grey-950);
  --er-bg-prime-subtle: var(--er-prime-grey-900);
  --er-bg-purple-subtle: var(--er-purple-900);
  --er-bg-sec-brand: var(--er-sec-400);
  --er-bg-sec-brand-inverse: var(--er-prime-600);
  --er-bg-sec-brand-subtle-inverse: var(--er-warning-900);
  --er-bg-sec-muted: var(--er-sec-grey-800);
  --er-bg-sec-subtle: var(--er-sec-grey-900);
  --er-bg-success-subtle: var(--er-success-900);
  --er-bg-yellow-subtle: var(--er-yellow-900);
  --er-border-prime-base: var(--er-prime-grey-700);
  --er-border-prime-brand: var(--er-prime-600);
  --er-border-prime-strong: var(--er-prime-grey-600);
  --er-border-sec-base: var(--er-sec-grey-700);
  --er-border-sec-brand: var(--er-sec-600);
  --er-border-sec-strong: var(--er-sec-grey-600);
  --er-icon-blue: var(--er-blue-100);
  --er-icon-cyan: var(--er-cyan-100);
  --er-icon-green: var(--er-green-100);
  --er-icon-magenta: var(--er-magenta-100);
  --er-icon-on-color: var(--er-prime-grey-0);
  --er-icon-orange: var(--er-orange-100);
  --er-icon-pink: var(--er-pink-100);
  --er-icon-prime-base: var(--er-prime-grey-50);
  --er-icon-prime-strong: var(--er-prime-grey-0);
  --er-icon-prime-subtle: var(--er-prime-grey-400);
  --er-icon-purple: var(--er-purple-100);
  --er-icon-yellow: var(--er-yellow-100);
  --er-text-on-color: var(--er-prime-grey-0);
  --er-text-prime-base: var(--er-prime-grey-100);
  --er-text-prime-brand: var(--er-prime-300);
  --er-text-prime-brand-on-dark: var(--er-prime-350);
  --er-text-prime-inactive: var(--er-prime-grey-500);
  --er-text-prime-inverse: var(--er-prime-grey-950);
  --er-text-prime-strong: var(--er-prime-grey-50);
  --er-text-prime-subtle: var(--er-prime-grey-400);
  --er-text-sec-brand: var(--er-sec-300);
  --er-text-sec-brand-inverse: var(--er-prime-300);
  --er-text-sec-strong: var(--er-prime-grey-50);
  --er-text-sec-subtle: var(--er-sec-grey-400);
  --er-text-success: var(--er-success-100);
  --er-text-success-strong: var(--er-success-500);
  --er-text-warning-strong: var(--er-warning-500);
}

/* ── Type utilities ── */
.er-b1 {
  font-family: var(--er-type-b1-family);
  font-size: var(--er-type-b1-size);
  font-weight: var(--er-type-b1-weight);
  line-height: var(--er-type-b1-line-height);
}
.er-b2 {
  font-family: var(--er-type-b2-family);
  font-size: var(--er-type-b2-size);
  font-weight: var(--er-type-b2-weight);
  line-height: var(--er-type-b2-line-height);
}
.er-cd35 {
  font-family: var(--er-type-cd35-family);
  font-size: var(--er-type-cd35-size);
  font-weight: var(--er-type-cd35-weight);
  line-height: var(--er-type-cd35-line-height);
}
.er-cd4 {
  font-family: var(--er-type-cd4-family);
  font-size: var(--er-type-cd4-size);
  font-weight: var(--er-type-cd4-weight);
  line-height: var(--er-type-cd4-line-height);
}
.er-cd3 {
  font-family: var(--er-type-cd3-family);
  font-size: var(--er-type-cd3-size);
  font-weight: var(--er-type-cd3-weight);
  line-height: var(--er-type-cd3-line-height);
}
.er-dh3 {
  font-family: var(--er-type-dh3-family);
  font-size: var(--er-type-dh3-size);
  font-weight: var(--er-type-dh3-weight);
  line-height: var(--er-type-dh3-line-height);
  letter-spacing: var(--er-type-dh3-letter-spacing);
}
.er-dhero {
  font-family: var(--er-type-dhero-family);
  font-size: var(--er-type-dhero-size);
  font-weight: var(--er-type-dhero-weight);
  line-height: var(--er-type-dhero-line-height);
  letter-spacing: var(--er-type-dhero-letter-spacing);
}
.er-dihero {
  font-family: var(--er-type-dihero-family);
  font-size: var(--er-type-dihero-size);
  font-weight: var(--er-type-dihero-weight);
  line-height: var(--er-type-dihero-line-height);
  letter-spacing: var(--er-type-dihero-letter-spacing);
  font-style: italic;
}
.er-cap1 {
  font-family: var(--er-type-cap1-family);
  font-size: var(--er-type-cap1-size);
  font-weight: var(--er-type-cap1-weight);
  line-height: var(--er-type-cap1-line-height);
  letter-spacing: var(--er-type-cap1-letter-spacing);
  text-transform: uppercase;
}
.er-cap2 {
  font-family: var(--er-type-cap2-family);
  font-size: var(--er-type-cap2-size);
  font-weight: var(--er-type-cap2-weight);
  line-height: var(--er-type-cap2-line-height);
  letter-spacing: var(--er-type-cap2-letter-spacing);
  text-transform: uppercase;
}
.er-h3 {
  font-family: var(--er-type-h3-family);
  font-size: var(--er-type-h3-size);
  font-weight: var(--er-type-h3-weight);
  line-height: var(--er-type-h3-line-height);
}
.er-h4 {
  font-family: var(--er-type-h4-family);
  font-size: var(--er-type-h4-size);
  font-weight: var(--er-type-h4-weight);
  line-height: var(--er-type-h4-line-height);
}
.er-h5 {
  font-family: var(--er-type-h5-family);
  font-size: var(--er-type-h5-size);
  font-weight: var(--er-type-h5-weight);
  line-height: var(--er-type-h5-line-height);
}
.er-h6 {
  font-family: var(--er-type-h6-family);
  font-size: var(--er-type-h6-size);
  font-weight: var(--er-type-h6-weight);
  line-height: var(--er-type-h6-line-height);
}
.er-h7 {
  font-family: var(--er-type-h7-family);
  font-size: var(--er-type-h7-size);
  font-weight: var(--er-type-h7-weight);
  line-height: var(--er-type-h7-line-height);
}
.er-p1 {
  font-family: var(--er-type-p1-family);
  font-size: var(--er-type-p1-size);
  font-weight: var(--er-type-p1-weight);
  line-height: var(--er-type-p1-line-height);
}
.er-p2 {
  font-family: var(--er-type-p2-family);
  font-size: var(--er-type-p2-size);
  font-weight: var(--er-type-p2-weight);
  line-height: var(--er-type-p2-line-height);
}
.er-p3 {
  font-family: var(--er-type-p3-family);
  font-size: var(--er-type-p3-size);
  font-weight: var(--er-type-p3-weight);
  line-height: var(--er-type-p3-line-height);
}
.er-p4 {
  font-family: var(--er-type-p4-family);
  font-size: var(--er-type-p4-size);
  font-weight: var(--er-type-p4-weight);
  line-height: var(--er-type-p4-line-height);
}
.er-p5 {
  font-family: var(--er-type-p5-family);
  font-size: var(--er-type-p5-size);
  font-weight: var(--er-type-p5-weight);
  line-height: var(--er-type-p5-line-height);
}
.er-dh1 {
  font-family: var(--er-type-dh1-family);
  font-size: var(--er-type-dh1-size);
  font-weight: var(--er-type-dh1-weight);
  line-height: var(--er-type-dh1-line-height);
  letter-spacing: var(--er-type-dh1-letter-spacing);
}
.er-dh2 {
  font-family: var(--er-type-dh2-family);
  font-size: var(--er-type-dh2-size);
  font-weight: var(--er-type-dh2-weight);
  line-height: var(--er-type-dh2-line-height);
  letter-spacing: var(--er-type-dh2-letter-spacing);
}
.er-dh4 {
  font-family: var(--er-type-dh4-family);
  font-size: var(--er-type-dh4-size);
  font-weight: var(--er-type-dh4-weight);
  line-height: var(--er-type-dh4-line-height);
}
.er-dh5 {
  font-family: var(--er-type-dh5-family);
  font-size: var(--er-type-dh5-size);
  font-weight: var(--er-type-dh5-weight);
  line-height: var(--er-type-dh5-line-height);
}
.er-dh6 {
  font-family: var(--er-type-dh6-family);
  font-size: var(--er-type-dh6-size);
  font-weight: var(--er-type-dh6-weight);
  line-height: var(--er-type-dh6-line-height);
}
.er-dih1 {
  font-family: var(--er-type-dih1-family);
  font-size: var(--er-type-dih1-size);
  font-weight: var(--er-type-dih1-weight);
  line-height: var(--er-type-dih1-line-height);
  letter-spacing: var(--er-type-dih1-letter-spacing);
  font-style: italic;
}
.er-dih2 {
  font-family: var(--er-type-dih2-family);
  font-size: var(--er-type-dih2-size);
  font-weight: var(--er-type-dih2-weight);
  line-height: var(--er-type-dih2-line-height);
  letter-spacing: var(--er-type-dih2-letter-spacing);
  font-style: italic;
}
.er-dih6 {
  font-family: var(--er-type-dih6-family);
  font-size: var(--er-type-dih6-size);
  font-weight: var(--er-type-dih6-weight);
  line-height: var(--er-type-dih6-line-height);
  font-style: italic;
}
