llms.txt

DisputeNinja Brand Identity

A complete profile of DisputeNinja's visual system — colors, typography, components, and personality.

Quick Facts

Field Value
Primary #0000EE
Accent #FFD86F
Body Font Satoshi
Heading Font Poppins

Color Palette

Typography

Visual Assets

UI Components

Brand Personality

Tone: modern · Energy: medium · Audience: business professionals

DisputeNinja Brand in the Wild

Real-world brand assets — ads, campaigns, marketing materials.

Working with these fonts

Not found on Google Fonts?

  1. Open the company's homepage in a browser with DevTools open.
  2. In the Network tab, filter by "Font" (or by extension: woff2, woff, ttf, otf).
  3. Hard-reload the page and click around (pricing, blog, careers) — some weights only load on specific routes.
  4. For each captured font URL: right-click → Save As to download the file locally.
  5. View the page's CSS (DevTools → Sources, or curl the stylesheet URLs) and copy out the matching @font-face declarations. Rewrite each src: url(...) to point to your local file path.

Programmatic alternative: load the URL with Playwright or Puppeteer, listen for response events whose Content-Type starts with font/, and write the body to disk. The CSS extraction step is the same.

Only do this if you have permission to use the brand assets — most proprietary fonts are licensed and may not be redistributable.

Machine-Readable Profile

{
 "colorScheme": "light",
 "fonts": [
  {
  "family": "Satoshi",
  "role": "body"
  },
  {
  "family": "Poppins",
  "role": "heading"
  }
 ],
 "colors": {
 "primary": "#0000EE",
 "accent": "#FFD86F",
 "background": "#FFFFFF",
 "textPrimary": "#120A0B",
 "link": "#FFD86F"
 },
 "typography": {
 "fontFamilies": {
 "primary": "Satoshi",
 "heading": "Poppins"
 },
 "fontStacks": {
 "heading": [
  "sans-serif"
 ],
 "body": [
  "sans-serif"
 ],
 "paragraph": [
  "Poppins",
  "sans-serif"
 ]
 },
 "fontSizes": {
 "h1": "12px",
 "h2": "56px",
 "body": "24px"
 }
 },
 "spacing": {
 "baseUnit": 4,
 "borderRadius": "20px"
 },
 "components": {
 "buttonPrimary": {
 "background": "#FFD86F",
 "textColor": "#000000",
 "borderRadius": "100px",
 "borderRadiusCorners": {
 "topLeft": "100px",
 "topRight": "100px",
 "bottomRight": "100px",
 "bottomLeft": "100px"
 },
 "shadow": "none"
 },
 "buttonSecondary": {
 "background": "#120A0B",
 "textColor": "#000000",
 "borderRadius": "100px",
 "borderRadiusCorners": {
 "topLeft": "100px",
 "topRight": "100px",
 "bottomRight": "100px",
 "bottomLeft": "100px"
 },
 "shadow": "none"
 }
 },
 "images": {
 "logo": "https://framerusercontent.com/images/wbELb5SezD3vFh0fu7I3EqG3qd0.png",
 "favicon": "https://framerusercontent.com/images/wbELb5SezD3vFh0fu7I3EqG3qd0.png",
 "ogImage": "https://framerusercontent.com/images/FJgEFjagWgflWDFbuvTefRJDjs.png",
 "logoHref": "./"
 },
 "__llm_logo_reasoning": {
 "selectedIndex": 0,
 "reasoning": "Selected #0 because it is visible, located in the header, and links to the homepage, matching the favicon and brand identity of DisputeNinja.",
 "confidence": 0.9,
 "source": "llm"
 },
 "__llm_button_reasoning": {
 "primary": {
 "index": 3,
 "text": "Schedule a call",
 "reasoning": "Button #3 has a vibrant background color (#FFD86F) which is distinct and eye-catching, making it the primary CTA. The text 'Schedule a call' is action-oriented, supporting its role as a primary button."
 },
 "secondary": {
 "index": 0,
 "text": "Get Started",
 "reasoning": "Button #0 is chosen as secondary due to its dark background color (#120A0B), which contrasts with the primary button's vibrant color. The text 'Get Started' suggests a secondary action."
 },
 "confidence": 0.95
 },
 "personality": {
 "tone": "modern",
 "energy": "medium",
 "targetAudience": "business professionals"
 },
 "designSystem": {
 "framework": "custom",
 "componentLibrary": ""
 },
 "confidence": {
 "buttons": 0.95,
 "colors": 0.9,
 "overall": 0.925
 },
 "__llm_metadata": {
 "logoSelection": {
 "llmCalled": true,
 "llmSucceeded": true,
 "finalSource": "llm",
 "rawLogoSelection": {
 "selectedLogoIndex": 0,
 "selectedLogoReasoning": "Selected #0 because it is visible, located in the header, and links to the homepage, matching the favicon and brand identity of DisputeNinja.",
 "confidence": 0.9
 }
 },
 "buttonClassification": {
 "llmCalled": true,
 "llmSucceeded": true
 }
 }
}