:root {
  /* Color Primitives */
  --rs-color-black: #000000;
  --rs-color-white: #ffffff;
  --rs-color-dark: #0a0a0a;
  --rs-color-success: #15803d;
  --rs-color-info: #0369a1;
  --rs-color-warning: #b45309;
  --rs-color-danger: #b91c1c;
  --rs-color-primary: #2b2b2b;
  --rs-color-primary-rgb: 43, 43, 43;
  --rs-color-primary-xlight: var(--rs-color-primary);
  --rs-color-primary-light: var(--rs-color-primary);
  --rs-color-primary-medium: var(--rs-color-primary);
  --rs-color-primary-dark: var(--rs-color-primary);
  --rs-color-primary-xdark: var(--rs-color-primary);
  --rs-color-primary-xlight-rgb: var(--rs-color-primary-rgb);
  --rs-color-primary-light-rgb: var(--rs-color-primary-rgb);
  --rs-color-primary-medium-rgb: var(--rs-color-primary-rgb);
  --rs-color-primary-dark-rgb: var(--rs-color-primary-rgb);
  --rs-color-primary-xdark-rgb: var(--rs-color-primary-rgb);

  --rs-color-secondary: #383838;
  --rs-color-secondary-rgb: 56, 56, 56;
  --rs-color-secondary-xlight: var(--rs-color-secondary);
  --rs-color-secondary-light: var(--rs-color-secondary);
  --rs-color-secondary-medium: var(--rs-color-secondary);
  --rs-color-secondary-dark: var(--rs-color-secondary);
  --rs-color-secondary-xdark: var(--rs-color-secondary);
  --rs-color-secondary-xlight-rgb: var(--rs-color-secondary-rgb);
  --rs-color-secondary-light-rgb: var(--rs-color-secondary-rgb);
  --rs-color-secondary-medium-rgb: var(--rs-color-secondary-rgb);
  --rs-color-secondary-dark-rgb: var(--rs-color-secondary-rgb);
  --rs-color-secondary-xdark-rgb: var(--rs-color-secondary-rgb);

  /* Space Primitives */
  --rs-space-0: 0;
  --rs-space-1: 0.25rem;
  --rs-space-2: 0.5rem;
  --rs-space-3: 1rem;
  --rs-space-4: 1.5rem;
  --rs-space-5: 2.25rem;
  --rs-space-6: 3rem;
  --rs-space-7: 4rem;
  --rs-space-8: 6rem;
  --rs-color-surface: #0a0a0a;
  --rs-color-surface-muted: #242424;
  --rs-color-surface-strong: #2e2e2e;
  --rs-color-surface-inverse: #121212;
  --rs-color-surface-xdark: #0d0d0d;
  --rs-color-text: #f5f5f5;
  --rs-color-text-muted: #c9c9c9;
  --rs-color-text-strong: #ffffff;
  --rs-color-accent: #454545;
  --rs-color-on-primary: #f5f5f5;
  --rs-color-on-primary-rgb: 245, 245, 245;
  --rs-color-on-secondary: #f5f5f5;
  --rs-color-on-secondary-rgb: 245, 245, 245;
  --rs-color-on-dark: #f5f5f5;
  --rs-color-on-dark-rgb: 245, 245, 245;
  --rs-font-heading: "Source Sans 3", "Noto Sans", "IBM Plex Sans", sans-serif;
  --rs-font-body: "Source Sans 3", "Noto Sans", "IBM Plex Sans", sans-serif;
  --rs-font-mono: "IBM Plex Mono", "JetBrains Mono", "SFMono-Regular", monospace;
  /* Typography scale: 14px base with a minor third (1.2) ratio. */
  --rs-font-size-2xs: 0.6076rem;
  --rs-font-size-xs: 0.7292rem;
  --rs-font-size-base: 0.875rem;
  --rs-font-size-md: 1.05rem;
  --rs-font-size-lg: 1.26rem;
  --rs-font-size-xl: 1.512rem;
  --rs-font-size-2xl: 1.8144rem;
  --rs-font-size-3xl: 2.1773rem;
  --rs-font-size-4xl: 2.6127rem;
  --rs-font-size-caption: var(--rs-font-size-2xs);
  --rs-font-size-small: var(--rs-font-size-xs);
  --rs-font-size-body: var(--rs-font-size-base);
  --rs-font-size-lead: var(--rs-font-size-md);
  --rs-font-size-h6: var(--rs-font-size-md);
  --rs-font-size-h5: var(--rs-font-size-lg);
  --rs-font-size-h4: var(--rs-font-size-xl);
  --rs-font-size-h3: var(--rs-font-size-2xl);
  --rs-font-size-h2: var(--rs-font-size-3xl);
  --rs-font-size-h1: var(--rs-font-size-4xl);
  --rs-letter-spacing-heading: 0;
  --rs-letter-spacing-eyebrow: 0;
  --rs-radius-sm: 0;
  --rs-radius-md: 0;
  --rs-radius-lg: 0;
  --rs-radius-pill: 0;
  --rs-shadow-sm: none;
  --rs-shadow-md: none;
  --rs-shadow-lg: none;
  --rs-border-subtle: 0 solid var(--rs-color-surface-strong);
  --rs-border-strong: 0 solid var(--rs-color-secondary);
  --rs-border-contrast: 0 solid var(--rs-color-accent);
  --rs-border-dashed: 0 dashed var(--rs-color-surface-strong);
  --rs-border-subtle-width: 0;
  --rs-border-subtle-style: solid;
  --rs-border-subtle-color: var(--rs-color-surface-strong);
  --rs-border-strong-width: 0;
  --rs-border-strong-style: solid;
  --rs-border-strong-color: var(--rs-color-secondary);
  --rs-border-contrast-width: 0;
  --rs-border-contrast-style: solid;
  --rs-border-contrast-color: var(--rs-color-accent);
  --rs-border-dashed-width: 0;
  --rs-border-dashed-style: dashed;
  --rs-border-dashed-color: var(--rs-color-surface-strong);
  --rs-overlay: rgba(0, 0, 0, 0.6);
  --rs-video-bg: var(--rs-color-surface-strong);
  --rs-gradient-hero: none;
  --rs-gradient-card: none;
  --rs-gradient-cta: none;
  --rs-bg-page: var(--rs-color-surface);
  --rs-container-max: 1200px;
  --rs-container-wide: 1320px;
  --rs-transition-fast: 160ms ease;
  --rs-transition-med: 240ms ease;
  --rs-transition-slow: 360ms ease;
  --rs-focus-ring: 0 0 0 3px rgba(255, 255, 255, 0.2);
}

/* Responsive container contexts */
.rs-page,
.rs-section__content,
.rs-section--root,
.rs-tab__panel,
.rs-modal__content,
.rs-custom-section {
  container-type: inline-size;
}

body.rs-menu-overlay-open {
  overflow: hidden;
}
