Home · Branding · Kastle

Kastle Brand Identity

A complete profile of Kastle's visual system — colors, typography, components, and personality — extracted from https://kastle.ai/. Built for designers, agents, and AI tools.

Download JSON
Primary
#A855F7
Accent
#A855F7
Body Font
General Sans
Heading
Reckless Neue

Color Palette

Brand palette extracted from https://kastle.ai/.

primary
#A855F7
rgb(168, 85, 247)
secondary
#34D399
rgb(52, 211, 153)
accent
#A855F7
rgb(168, 85, 247)
background
#FFFFFF
rgb(255, 255, 255)
textPrimary
#0000EE
rgb(0, 0, 238)
link
#0000EE
rgb(0, 0, 238)

Typography

Each font links to its Google Fonts page where available.

primary
General Sans
General Sans Google Fonts →
heading
Reckless Neue
Reckless Neue Google Fonts →
Reckless Neue, sans-serif
Not found on Google Fonts? Agent Instructions that you can follow if you have permission to use the fonts:

CharacterQuilt.com suggests this flow that can help:

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.

Visual Assets

Kastle logo
Logo
Kastle favicon
Favicon
Kastle social image
Social Card

UI Components

Live previews rendered using Kastle's actual button styles.

buttonPrimary
background #A855F7 textColor #000000 borderRadius 1000px shadow rgba(255, 255, 255, 0.2) 0px 1px 0px 0px inset, rgba(0, 0, 0, 0.15) 0px -1px 0px 0px inset
buttonSecondary
background #FFFFFF textColor #000000 borderRadius 0px shadow none

Brand Personality

Tone: modern Energy: high Audience: tech-savvy professionals in consumer lending

Kastle Brand in the Wild

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

Frequently Asked Questions

What is Kastle's primary brand color?

Kastle's primary brand color is #A855F7. It anchors the visual identity across their website, product UI, and marketing materials.

What font does Kastle use?

Kastle uses General Sans for body text and Reckless Neue for headings. Fonts were detected on https://kastle.ai/ as part of their live design system.

Does Kastle use a light or dark theme?

Kastle's primary site uses a light color scheme, with a background of #FFFFFF.

Where can I find Kastle's logo?

Kastle's logo is available directly on their site (https://kastle.ai/). The current logo URL is included in the machine-readable JSON profile linked above.

How was this brand profile generated?

This profile was extracted from https://kastle.ai/ using the Firecrawl branding extraction API, which inspects the live page's CSS, fonts, color tokens, and component styles. It is not affiliated with or endorsed by Kastle.

Methodology

Brand data on this page was extracted from https://kastle.ai/ on using the Firecrawl branding extraction API, which inspects each site's live CSS, font network requests, color tokens, and component styles. Brand-in-the-wild images were sourced via Google Image Search restricted to ad/webinar/report queries and link out to their original third-party publishers; we link to the source rather than re-hosting third-party content. This page is published by CharacterQuilt and is not affiliated with or endorsed by Kastle.

Machine-Readable Profile

Direct endpoints for agents, designers, and tooling. No login or auth required.

{
  "colorScheme": "light",
  "fonts": [
    {
      "family": "General Sans",
      "role": "body"
    },
    {
      "family": "JetBrains Mono",
      "role": "monospace"
    },
    {
      "family": "Reckless Neue",
      "role": "heading"
    }
  ],
  "colors": {
    "primary": "#A855F7",
    "secondary": "#34D399",
    "accent": "#A855F7",
    "background": "#FFFFFF",
    "textPrimary": "#0000EE",
    "link": "#0000EE"
  },
  "typography": {
    "fontFamilies": {
      "primary": "General Sans",
      "heading": "Reckless Neue"
    },
    "fontStacks": {
      "heading": [
        "Reckless Neue",
        "sans-serif"
      ],
      "body": [
        "sans-serif"
      ],
      "paragraph": [
        "JetBrains Mono",
        "sans-serif"
      ]
    },
    "fontSizes": {
      "h1": "64px",
      "h2": "51px",
      "body": "15px"
    }
  },
  "spacing": {
    "baseUnit": 4,
    "borderRadius": "0px"
  },
  "components": {
    "buttonPrimary": {
      "background": "#A855F7",
      "textColor": "#000000",
      "borderRadius": "1000px",
      "borderRadiusCorners": {
        "topLeft": "1000px",
        "topRight": "1000px",
        "bottomRight": "1000px",
        "bottomLeft": "1000px"
      },
      "shadow": "rgba(255, 255, 255, 0.2) 0px 1px 0px 0px inset, rgba(0, 0, 0, 0.15) 0px -1px 0px 0px inset"
    },
    "buttonSecondary": {
      "background": "#FFFFFF",
      "textColor": "#000000",
      "borderRadius": "0px",
      "borderRadiusCorners": {
        "topLeft": "0px",
        "topRight": "0px",
        "bottomRight": "0px",
        "bottomLeft": "0px"
      },
      "shadow": "none"
    }
  },
  "images": {
    "logo": "data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22width%3A100%25%3Bheight%3A100%25%3B%22%20preserveAspectRatio%3D%22none%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20data-fc-idx%3D%220%22%3E%3Csvg%20viewBox%3D%220%200%20113.007%2016.072%22%20overflow%3D%22visible%22%20id%3D%22svg-185937953_2191%22%3E%3Cg%3E%3Cpath%20d%3D%22M%202.303%200.212%20L%202.303%206.94%20L%203.023%206.94%20L%2010.466%200.212%20L%2013.187%200.212%20L%205.187%207.429%20L%205.187%208.2%20L%2013.582%2015.86%20L%2010.605%2015.86%20L%202.978%208.899%20L%202.303%208.899%20L%202.303%2015.86%20L%200%2015.86%20L%200%200.212%20Z%20M%2023.842%200.212%20L%2030.097%2015.86%20L%2027.748%2015.86%20L%2026.004%2011.47%20L%2018.165%2011.47%20L%2016.421%2015.86%20L%2014.211%2015.86%20L%2020.401%200.212%20L%2023.844%200.212%20Z%20M%2018.911%209.578%20L%2025.238%209.578%20L%2022.4%202.477%20L%2021.702%202.477%20Z%20M%2037.616%200.002%20C%2041.338%200.002%2043.919%201.66%2043.919%204.696%20L%2043.919%205.935%20L%2041.64%205.935%20L%2041.64%204.696%20C%2041.64%202.851%2040.104%201.894%2037.616%201.894%20L%2037.268%201.894%20C%2034.756%201.894%2033.245%202.829%2033.245%204.277%20L%2033.245%204.535%20C%2033.245%206.053%2034.548%206.402%2038.221%207.104%20C%2042.314%207.899%2044.221%208.971%2044.221%2011.588%20L%2044.221%2011.867%20C%2044.221%2014.32%2041.966%2016.072%2037.664%2016.072%20L%2037.292%2016.072%20C%2032.942%2016.072%2030.735%2014.32%2030.735%2011.26%20L%2030.735%209.976%20L%2033.014%209.976%20L%2033.014%2011.26%20C%2033.014%2013.34%2034.502%2014.181%2037.316%2014.181%20L%2037.664%2014.181%20C%2040.455%2014.181%2041.945%2013.364%2041.945%2011.867%20L%2041.945%2011.61%20C%2041.945%2010.137%2040.618%209.554%2036.99%208.923%20C%2033.175%208.246%2030.944%207.335%2030.944%204.554%20L%2030.944%204.32%20C%2030.944%201.658%2033.362%200%2037.271%200%20L%2037.619%200%20Z%20M%2060.042%200.212%20L%2060.042%202.152%20L%2053.833%202.152%20L%2053.833%2015.863%20L%2051.53%2015.863%20L%2051.53%202.152%20L%2045.344%202.152%20L%2045.344%200.212%20Z%20M%2064.131%200.212%20L%2064.131%2013.923%20L%2073.131%2013.923%20L%2073.131%2015.863%20L%2061.828%2015.863%20L%2061.828%200.212%20Z%20M%2086.963%200.212%20L%2086.963%202.128%20L%2077.241%202.128%20L%2077.241%206.961%20L%2085.684%206.961%20L%2085.684%208.853%20L%2077.241%208.853%20L%2077.241%2013.945%20L%2086.963%2013.945%20L%2086.963%2015.86%20L%2074.94%2015.86%20L%2074.94%200.212%20Z%20M%20109%202%20L%20107.217%202%20L%20107.217%200.212%20L%20103.211%200.212%20L%20103.211%202%20L%20101.43%202%20L%20101.43%200.212%20L%2097.424%200.212%20L%2097.424%204.684%20L%20113.007%204.684%20L%20113.007%200.212%20L%20109%200.212%20Z%20M%20113.005%205.578%20L%20109.444%205.578%20L%20109.444%2015.863%20L%20113.005%2015.863%20Z%20M%2095.643%2015.863%20L%2099.65%2015.863%20L%2099.65%2012.287%20C%2099.65%2010.805%20100.845%209.605%20102.321%209.605%20C%20103.796%209.605%20104.991%2010.805%20104.991%2012.287%20L%20104.991%2015.863%20L%20108.552%2015.863%20L%20108.552%205.578%20L%2097.421%205.578%20L%2095.641%2015.863%20Z%22%20fill%3D%22var(--token-b25ea3a8-37e1-4c01-a024-8e82a4904623%2C%20rgb(250%2C%20250%2C%20250))%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E%3C%2Fsvg%3E",
    "favicon": "https://framerusercontent.com/images/AIX1GGmHSzJBl1MbMDmFZ0EMHE.png",
    "ogImage": "https://framerusercontent.com/images/nWHdKftAnklKiPSskgcJquexg.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 brand 'Kastle'.",
    "confidence": 0.9,
    "source": "llm"
  },
  "__llm_button_reasoning": {
    "primary": {
      "index": 0,
      "text": "Create Agent",
      "reasoning": "Button #0 has a vibrant brand color (#A855F7) and action-oriented text ('Create Agent'), making it the primary CTA."
    },
    "secondary": {
      "index": 1,
      "text": "[data-button-map=\"1\"] [data-lucide] {\n                    width: 26px !important;\n                  ",
      "reasoning": "Button #1 has a different background color (#FFFFFF) and appears less prominent, suitable as a secondary button."
    },
    "confidence": 0.95
  },
  "personality": {
    "tone": "modern",
    "energy": "high",
    "targetAudience": "tech-savvy professionals in consumer lending"
  },
  "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 brand 'Kastle'.",
        "confidence": 0.9
      }
    },
    "buttonClassification": {
      "llmCalled": true,
      "llmSucceeded": true
    }
  }
}

Related Brand Profiles