/* Nuvora tokens — generated from the design system's tokens.json (dark is the primary theme; gold palette). */
@font-face { font-family: "Space Grotesk"; src: url("../fonts/SpaceGrotesk-Variable.woff2") format("woff2"); font-weight: 300 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Lexend"; src: url("../fonts/Lexend-Variable.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap; }
:root {
  --bg: #0b0a08;
  --bg-raised: #1c1b17;
  --bg-hover: #28261f;
  --line: #28261f;
  --line-strong: #7f7c70;
  --line-alpha: #ffffff1f;
  --line-faint: #ffffff0f;
  --ink: #f4efe3;
  --ink-muted: #a9a598;
  --ink-subtle: #8f8c7f;
  --focus: #dda73c;
  --brand: #dda73c;
  --brand-hover: #ebc06a;
  --brand-text: #dda73c;
  --brand-wash: #211b11;
  --brand-display: #dda73c;
  --brand-mark: #dda73c;
  --logo-bar: #ffffff;
  --logo-word: #ffffff;
  --action-text: #819af8;
  --action-wash: #030f3a;
  --on-brand: #0b0a08;
  --avatar-empty: #f2f2f2;
  --primary-dark6: #0b0a08;
  --primary-dark5: #211b11;
  --primary-dark4: #3b2f1b;
  --primary-dark3: #5c4521;
  --primary-dark2: #8b6523;
  --primary-dark1: #b9862c;
  --primary-normal: #dda73c;
  --primary-light1: #ebc06a;
  --primary-light2: #f1d089;
  --primary-light3: #f6dea8;
  --primary-light4: #f9e9c4;
  --primary-light5: #fcf3de;
  --primary-light6: #fefaf1;
  --accent-dark6: #020a27;
  --accent-dark5: #030f3a;
  --accent-dark4: #051757;
  --accent-dark3: #06207e;
  --accent-dark2: #082aa5;
  --accent-dark1: #0c3be9;
  --accent-normal: #214ef4;
  --accent-light1: #3d64f5;
  --accent-light2: #5a7bf6;
  --accent-light3: #819af8;
  --accent-light4: #9fb1f9;
  --accent-light5: #cfd8fc;
  --accent-light6: #f5f7ff;
  --neutral-dark6: #1c1b17;
  --neutral-dark5: #28261f;
  --neutral-dark4: #3d3b32;
  --neutral-dark3: #55534a;
  --neutral-dark2: #67655b;
  --neutral-dark1: #7f7c70;
  --neutral-normal: #8f8c7f;
  --neutral-light1: #a9a598;
  --neutral-light2: #bcb8ab;
  --neutral-light3: #dcd8cb;
  --neutral-light4: #ebe7dc;
  --neutral-light5: #f4efe3;
  --neutral-light6: #ffffff;
  --success-dark: #063816;
  --success-normal: #13ba4a;
  --success-light: #d1fade;
  --success-fg: #13ba4a;
  --success-bg: #063816;
  --error-dark: #390a04;
  --error-normal: #ef442e;
  --error-light: #feeeec;
  --error-fg: #ef442e;
  --error-bg: #390a04;
  --warning-dark: #3d2d00;
  --warning-normal: #ffc217;
  --warning-light: #fff2cc;
  --warning-fg: #ffc217;
  --warning-bg: #3d2d00;
  --info-dark: #071a36;
  --info-normal: #2d77e2;
  --info-light: #d2e2f9;
  --info-fg: #d2e2f9;
  --info-bg: #071a36;
  --glow-brand: 0 0 50px 4px rgba(221, 167, 60, 0.35);
  color-scheme: dark;
  --font-display: "Space Grotesk", "Lexend", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Lexend", ui-sans-serif, system-ui, sans-serif;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-18: 18px;
  --space-24: 24px;
  --space-32: 32px;
  --space-40: 40px;
  --space-48: 48px;
  --space-52: 52px;
  --space-56: 56px;
  --space-64: 64px;
  --space-96: 96px;
  --space-128: 128px;
  --radius-none: 0px;
  --radius-sm: 4px;
  --radius-full: 999px;
  --frame-desktop: 1440px;
  --grid-columns: 3;
  --grid-gutter: 32px;
  --grid-margin: 124px;
  --content-width: 1192px;
  --frame-mobile: 390px;
  --grid-margin-mobile: 16px;
  --grid-gutter-mobile: 20px;
}
:root[data-theme="light"] {
  --bg: #f4efe3;
  --bg-raised: #ffffff;
  --bg-hover: #ebe7dc;
  --line: #ebe7dc;
  --line-strong: #7f7c70;
  --line-alpha: #211f1e1f;
  --line-faint: #211f1e0f;
  --ink: #1c1b17;
  --ink-muted: #55534a;
  --ink-subtle: #67655b;
  --focus: #8b6523;
  --brand: #dda73c;
  --brand-hover: #b9862c;
  --brand-text: #8b6523;
  --brand-wash: #fefaf1;
  --brand-display: #8b6523;
  --brand-mark: #dda73c;
  --logo-bar: #dda73c;
  --logo-word: #0b0a08;
  --action-text: #214ef4;
  --action-wash: #f5f7ff;
  --on-brand: #0b0a08;
  --avatar-empty: #f2f2f2;
  --primary-dark6: #0b0a08;
  --primary-dark5: #211b11;
  --primary-dark4: #3b2f1b;
  --primary-dark3: #5c4521;
  --primary-dark2: #8b6523;
  --primary-dark1: #b9862c;
  --primary-normal: #dda73c;
  --primary-light1: #ebc06a;
  --primary-light2: #f1d089;
  --primary-light3: #f6dea8;
  --primary-light4: #f9e9c4;
  --primary-light5: #fcf3de;
  --primary-light6: #fefaf1;
  --accent-dark6: #020a27;
  --accent-dark5: #030f3a;
  --accent-dark4: #051757;
  --accent-dark3: #06207e;
  --accent-dark2: #082aa5;
  --accent-dark1: #0c3be9;
  --accent-normal: #214ef4;
  --accent-light1: #3d64f5;
  --accent-light2: #5a7bf6;
  --accent-light3: #819af8;
  --accent-light4: #9fb1f9;
  --accent-light5: #cfd8fc;
  --accent-light6: #f5f7ff;
  --neutral-dark6: #1c1b17;
  --neutral-dark5: #28261f;
  --neutral-dark4: #3d3b32;
  --neutral-dark3: #55534a;
  --neutral-dark2: #67655b;
  --neutral-dark1: #7f7c70;
  --neutral-normal: #8f8c7f;
  --neutral-light1: #a9a598;
  --neutral-light2: #bcb8ab;
  --neutral-light3: #dcd8cb;
  --neutral-light4: #ebe7dc;
  --neutral-light5: #f4efe3;
  --neutral-light6: #ffffff;
  --success-dark: #063816;
  --success-normal: #13ba4a;
  --success-light: #d1fade;
  --success-fg: #063816;
  --success-bg: #d1fade;
  --error-dark: #390a04;
  --error-normal: #ef442e;
  --error-light: #feeeec;
  --error-fg: #390a04;
  --error-bg: #feeeec;
  --warning-dark: #3d2d00;
  --warning-normal: #ffc217;
  --warning-light: #fff2cc;
  --warning-fg: #3d2d00;
  --warning-bg: #fff2cc;
  --info-dark: #071a36;
  --info-normal: #2d77e2;
  --info-light: #d2e2f9;
  --info-fg: #071a36;
  --info-bg: #d2e2f9;
  --glow-brand: 0 0 50px 4px rgba(221, 167, 60, 0.22);
  color-scheme: light;
}
.display-xl { font-family: var(--font-display); font-size: 88px; line-height: 92px; font-weight: 600; letter-spacing: -0.04em; }
.display-hero { font-family: var(--font-display); font-size: 48px; line-height: 60px; font-weight: 700; letter-spacing: -0.02em; }
.h1 { font-family: var(--font-display); font-size: 36px; line-height: 48px; font-weight: 700; letter-spacing: -0.02em; }
.h2 { font-family: var(--font-display); font-size: 30px; line-height: 40px; font-weight: 600; letter-spacing: -0.01em; }
.h3 { font-family: var(--font-display); font-size: 24px; line-height: 32px; font-weight: 600; letter-spacing: 0; }
.body-lg { font-family: var(--font-body); font-size: 18px; line-height: 28px; font-weight: 400; }
.subtitle { font-family: var(--font-body); font-size: 16px; line-height: 24px; font-weight: 500; }
.body { font-family: var(--font-body); font-size: 16px; line-height: 24px; font-weight: 400; }
.body-sm { font-family: var(--font-body); font-size: 14px; line-height: 20px; font-weight: 400; }
.caption { font-family: var(--font-body); font-size: 12px; line-height: 16px; font-weight: 400; }
.label { font-family: var(--font-display); font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; }
.overline { font-family: var(--font-display); font-size: 10px; line-height: 14px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; }
.button-lg { font-family: var(--font-body); font-size: 18px; line-height: 24px; font-weight: 500; }
.button-md { font-family: var(--font-body); font-size: 16px; line-height: 24px; font-weight: 500; }
.button-rg { font-family: var(--font-body); font-size: 14px; line-height: 20px; font-weight: 500; }
.button-sm { font-family: var(--font-body); font-size: 12px; line-height: 16px; font-weight: 500; }
