/* GENERATED by @eastrouter/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: #F2E9DA;
  --er-prime-200: #EDD4AD;
  --er-prime-300: #E8B972;
  --er-prime-350: #E8B05A;
  --er-prime-400: #DB9425;
  --er-prime-500: #CC861B;
  --er-prime-600: #A86E14;
  --er-prime-900: #5E4012;
  --er-prime-950: #332208;
  --er-prime-grey-0: #FFFFFF;
  --er-prime-grey-100: #F2EEE6;
  --er-prime-grey-200: #E5E1D8;
  --er-prime-grey-300: #D4CEC5;
  --er-prime-grey-400: #B5AFA5;
  --er-prime-grey-50: #FAF8F2;
  --er-prime-grey-500: #A39B8E;
  --er-prime-grey-600: #757066;
  --er-prime-grey-700: #3B352B;
  --er-prime-grey-800: #292318;
  --er-prime-grey-900: #211B10;
  --er-prime-grey-950: #17120A;
  --er-purple-100: #EAE8F2;
  --er-purple-900: #231657;
  --er-sec-100: #E4EBF5;
  --er-sec-200: #BBD4F2;
  --er-sec-300: #609FEB;
  --er-sec-400: #2472D1;
  --er-sec-500: #1B5FB2;
  --er-sec-600: #0A458C;
  --er-sec-900: #09305E;
  --er-sec-950: #052142;
  --er-sec-grey-100: #EDF1F5;
  --er-sec-grey-200: #DCE0E5;
  --er-sec-grey-300: #C0C5CC;
  --er-sec-grey-400: #A6ABB2;
  --er-sec-grey-50: #F7FAFC;
  --er-sec-grey-500: #8D9299;
  --er-sec-grey-600: #737880;
  --er-sec-grey-700: #5A5E66;
  --er-sec-grey-800: #42454D;
  --er-sec-grey-900: #2A2D33;
  --er-sec-grey-950: #191B1F;
  --er-success-100: #D6E0CE;
  --er-success-50: #F1F5ED;
  --er-success-500: #68A843;
  --er-success-900: #203811;
  --er-warning-500: #D68D1C;
  --er-warning-900: #452F0D;
  --er-yellow-100: #E8E5D1;
  --er-yellow-900: #453D0E;

  /* ── Fonts ── */
  --er-font-display: 'Minion Pro', 'Iowan Old Style', Georgia, 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;
}
