Visual Theme & Atmosphere
Mistral AI carries itself with a singular, almost cinematographic visual signature — the homepage opens with "Frontier AI. In your hands." rendered in elegant near-serif display type over a photographic mountain landscape bathed in mustard-orange sunset light. Below the hero, every page closes with the same recognizable element: a horizontal "sunset stripe" gradient band running red→orange→yellow→cream that wraps the foot of the page just above the footer. This stripe is THE brand recognizer — it appears on the homepage, products/studio, solutions/coding, news articles, contact form, and services tier page without exception.
The system pairs PP Editorial Old (a near-serif elegant display face) for hero displays with Inter for everything else (body, headings, UI). Cream-yellow surfaces ({colors.cream}, {colors.surface-cream-soft}) anchor form panels and feature cards; saturated orange ({colors.primary}) carries primary CTAs; the deep mountain photography on the homepage and the dark code mockups inside Le Studio create photographic depth. Cards are rectangular with {rounded.lg} (12px) corners — distinctly less playful than Miro's or Mintlify's pill-buttons-everywhere approach. Buttons are also {rounded.md} (8px), not pills — Mistral's geometry is more sober and editorial than its peers.
Key Characteristics:
- Atmospheric mountain-sunset hero photography (orange-red-yellow gradient sky)
- ...
Live Visual Theme Representation:
Visual Theme Example
Color Palette & Roles
> Source pages: mistral.ai/ (homepage), /products/studio (Le Studio product), /solutions/coding (coding solution), /news/vibe-remote-agents-mistral-medium-3-5 (news), /contact (contact form), /services (services tiers). Token coverage was identical across all six pages.
Brand & Accent
- Mistral Orange ({colors.primary}): Primary CTA color, brand orange
- Orange Deep ({colors.primary-deep}): Pressed-state and emphasis variant
- ...
Cream / Neutral Warm
- Cream ({colors.cream}): Warm yellow-cream surface for form panels, feature cards, footer
- Cream Soft ({colors.cream-soft}): Lighter cream variant
- ...
Surface
- Canvas White ({colors.canvas}): Page background and card surface
- Surface ({colors.surface}): Subtle quieter background
- ...
Text
- Ink ({colors.ink}): Primary headlines and body text
- Ink Tint ({colors.ink-tint}): Slightly softer black for hero overlay text
- ...
Semantic
- Link ({colors.link}): Inline link color (matches primary orange)
Typography Rules
Font Family
PP Editorial Old (display): Mistral's signature near-serif elegant display typeface used for hero displays, large numbers, and editorial section openers. Carries a slightly classical, intelligent character that contrasts the contemporary product positioning. Fallbacks: 'Times New Roman', Georgia, serif.Inter (UI prose): Variable typeface for body, navigation, buttons, labels, captions. Fallbacks: ui-sans-serif, system-ui, -apple-system, sans-serif.
JetBrains Mono (code): Monospace for code blocks and IDE mockups. Fallbacks: 'SF Mono', Menlo, Consolas, monospace.
Hierarchy
| Token | Size | Weight | Line Height | Letter Spacing | Family | Use |
|---|---|---|---|---|---|---|
| ... | ... | ... | ... | ... | ... | ... |
Principles
- Editorial / sans pairing — PP Editorial Old (near-serif, classical) anchors hero displays; Inter (geometric sans) carries everything else. The contrast IS the brand voice.
- Generous body leading (1.55 on body-md) for editorial readability across long-form pages
- ...
Layout Principles
Spacing System
- Base unit: 4px (8px primary increment)
- Tokens:
{spacing.xxs}(4px) ·{spacing.xs}(8px) ·{spacing.sm}(12px) ·{spacing.md}(16px) ·{spacing.lg}(20px) ·{spacing.xl}(24px) ·{spacing.xxl}(32px) ·{spacing.xxxl}(40px) ·{spacing.section-sm}(48px) ·{spacing.section}(64px) ·{spacing.section-lg}(96px) ·{spacing.hero}(120px) - ...
Grid & Container
- Marketing pages use 1280px max-width with 32px gutters
- Hero band uses 2-column split (text left, sunset photography right) on desktop
- ...
Whitespace Philosophy
Marketing surfaces give content generous breathing room —{spacing.hero} (120px) hero padding lets the mountain-sunset photography fill the frame. Form pages tighten dramatically: contact form panel uses {spacing.xxl} (32px) internal padding, fields stack on {spacing.md} (16px) gap.
Grid Layout Wireframe Mockup:
Layout Grid Example
Depth & Elevation
The system runs predominantly flat with strategic atmospheric depth from photography.
| Level | Treatment | Use |
|---|---|---|
| ... | ... | ... |
Decorative Depth
- The atmospheric depth on Mistral's hero comes from the photographic mountain-sunset imagery — natural light gradient does the work
- The "sunset stripe" closing band carries depth via its multi-stop gradient (red → orange → yellow → cream)
- ...
Elevation Level Showcase:
Elevation Level Example
Used for background layers, sidebar headers, or baseline borders.
Used for floating product elements, cards, and hover states.
Used for modals, select menus, code editor tooltips, and overlay headers.
Border Radius & Shape Scale:
Component Stylings
Border Radius Scale
| Token | Value | Use |
|---|---|---|
| ... | ... | ... |
{rounded.md} (8px) for buttons, {rounded.lg} (12px) for cards, {rounded.full} reserved for badges and the rare pill tab.
Photography Geometry
- Hero photography is full-bleed atmospheric mountain-sunset imagery with no internal framing
- IDE/code mockups render with
{rounded.lg}(12px) corners on dark canvas - ...
Buttons
button-primary — Saturated-orange primary CTA, the dominant action.
- Background
{colors.primary}, text{colors.on-primary}, typography{typography.button-md}, padding10px 20px, rounded{rounded.md}. - ...
button-cream — Warm cream-yellow secondary action, common on cream-surface sections.
- Background
{colors.cream}, text{colors.ink}, border1px solid {colors.beige-deep}, typography{typography.button-md}, padding10px 20px, rounded{rounded.md}.
button-dark — Dark/black primary CTA on cream surfaces.
- Background
{colors.ink}, text{colors.on-dark}, typography{typography.button-md}, padding10px 20px, rounded{rounded.md}.
button-secondary — Outlined secondary action.
- Background transparent, text
{colors.ink}, border1px solid {colors.hairline-strong}, typography{typography.button-md}, padding10px 20px, rounded{rounded.md}.
button-on-cream — White button on cream-tinted backgrounds.
- Background
{colors.canvas}, text{colors.ink}, border1px solid {colors.beige-deep}, typography{typography.button-md}, padding10px 20px, rounded{rounded.md}.
button-link — Inline orange text link.
- Background transparent, text
{colors.primary}, typography{typography.body-sm-medium}, padding0. Underline on activation.
Cards & Containers
card-base — Standard content card.
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xl}, border1px solid {colors.hairline-soft}.
card-feature — White feature card with larger padding.
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid{colors.hairline-soft}`.
card-cream — Warm cream-yellow feature card (services tiers, perk callouts).
- Background
{colors.cream}, text{colors.ink}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid {colors.beige-deep}.
card-cream-soft — Lighter cream variant.
- Background
{colors.surface-cream-soft}, text{colors.ink}, rounded{rounded.lg}, padding{spacing.xxl}.
card-feature-product — Product showcase card with subtle elevation.
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid {colors.hairline-soft}, shadowrgba(0, 0, 0, 0.04) 0px 4px 12px.
card-photographic — Photographic product card with dark background.
- Background
{colors.surface-code}, text{colors.on-dark}, rounded{rounded.lg}, padding0(image fills the card).
pricing-card — Standard pricing tier card.
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid {colors.hairline-soft}.
pricing-card-featured — Featured pricing tier (cream background + orange border).
- Background
{colors.cream}, rounded{rounded.lg}, padding{spacing.xxl}, border2px solid {colors.primary}.
Inputs & Forms
text-input — Standard text field.
- Background
{colors.canvas}, text{colors.ink}, border1px solid {colors.hairline-strong}, rounded{rounded.md}, padding{spacing.sm} {spacing.md}, height 44px.
text-input-focused — Activated state.
- Border switches to
2px solid {colors.primary}.
text-area — Multi-line text area for contact form.
- Background
{colors.canvas}, text{colors.ink}, border1px solid {colors.hairline-strong}, rounded{rounded.md}, padding{spacing.md}.
contact-form-panel — Cream-tinted form container on the contact page.
- Background
{colors.cream}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid {colors.beige-deep}. Hosts text-inputs, text-area, submitbutton-dark.
Tabs
pill-tab + pill-tab-active — Pill-style tab nav (used sparingly on product pages).
- Inactive: background
{colors.canvas}, text{colors.steel}, border1px solid {colors.hairline}, padding{spacing.xs} {spacing.md}, rounded{rounded.full}. - ...
segmented-tab + segmented-tab-active — Underline-style tab navigation.
- Inactive: text
{colors.steel}, transparent background, padding{spacing.sm} {spacing.md}, no bottom border. - ...
Badges & Status
badge-orange — Saturated orange badge.
- Background
{colors.primary}, text{colors.on-primary}, typography{typography.caption-bold}, rounded{rounded.full}, padding4px 10px.
badge-cream — Cream-tinted tag chip.
- Background
{colors.cream-deeper}, text{colors.ink}, typography{typography.caption-bold}, rounded{rounded.full}, padding4px 10px.
badge-dark — Dark/black status badge.
- Background
{colors.ink}, text{colors.on-dark}, typography{typography.caption-bold}, rounded{rounded.full}, padding4px 10px.
promo-banner — Sticky black promo strip ABOVE the top nav.
- Background
{colors.ink}, text{colors.on-dark}, typography{typography.body-sm-medium}, padding{spacing.sm} {spacing.md}. Carries one-line copy + inline CTA.
Code
code-block — Syntax-highlighted IDE-style code block (Le Studio page mockup, agent demos).
- Background
{colors.surface-code}, text{colors.on-dark}, typography{typography.code-md}, rounded{rounded.md}, padding{spacing.md}.
code-block-header — Header bar above the code block.
- Background
{colors.surface-code}, text{colors.on-dark-muted}, typography{typography.caption}, padding{spacing.xs} {spacing.md}, bottom border1px solid rgba(255,255,255,0.08).
Documentation Components
feature-icon-tile — Cream-yellow feature icon callout.
- Background
{colors.cream}, rounded{rounded.md}, padding{spacing.md}, border1px solid {colors.beige-deep}.
industry-tile — Industry-vertical tile in solutions page grid.
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xl}, border1px solid {colors.hairline-soft}.
stat-cell — Stat-row cell ("75% more / 80% better").
- Background transparent, text
{colors.ink}, typography{typography.stat-display}, padding{spacing.lg}.
customer-testimonial-card — Customer quote card (used inside Le Studio and Solutions pages).
- Background
{colors.canvas}, rounded{rounded.lg}, padding{spacing.xxl}, border1px solid {colors.hairline-soft}. Quote in{typography.body-md}, attribution in{typography.body-sm}{colors.steel}.
logo-wall-item — Customer logo wordmark cell.
- Background transparent, text
{colors.steel}, typography{typography.body-md-medium}, padding{spacing.lg}.
faq-accordion-item — FAQ panel.
- Background
{colors.canvas}, rounded{rounded.md}, padding{spacing.xl}, bottom border1px solid {colors.hairline}.
app-store-badge — App Store / Google Play download badge.
- Background
{colors.ink}, text{colors.on-dark}, typography{typography.caption-bold}, rounded{rounded.md}, padding{spacing.sm} {spacing.md}.
Navigation
Top Navigation (Marketing) — Sticky white bar.
- Background
{colors.canvas}, height ~64px, bottom border1px solid {colors.hairline-soft}. - ...
Signature Components
hero-band-sunset — Atmospheric sunset hero band.
- Background gradient
linear-gradient(135deg, {colors.sunshine-700} 0%, {colors.sunshine-900} 60%, {colors.primary} 100%)overlaid on photographic mountain landscape. - ...
sunset-stripe-band — Horizontal closing band at the foot of every page.
- Multi-stop gradient:
{colors.primary}→{colors.sunshine-700}→{colors.sunshine-500}→{colors.yellow-saturated}→{colors.cream}. - ...
cta-banner-cream — Page-bottom CTA band on cream surface.
- Background
{colors.cream}, text{colors.ink}, rounded{rounded.lg}, padding{spacing.section}. "The next chapter of AI is yours." headline in{typography.heading-1}(PP Editorial Old), button row below.
footer-region — Cream-tinted multi-column footer.
- Background
{colors.footer-cream}, padding{spacing.section} {spacing.xxl}. - ...
footer-link — Individual footer link.
- Background transparent, text
{colors.primary}, typography{typography.body-sm}, padding{spacing.xxs} 0.
Interactive Component Demonstrations:
Component Interactive Example
Do's and Don'ts
Do
- Reserve
{colors.primary}(saturated orange) for primary CTAs and active states only - Use the sunset stripe band at the foot of every page — it's the brand's most recognizable signature
- Pair PP Editorial Old (display) with Inter (UI) — never substitute either with a generic alternative
- Apply
{rounded.md}(8px) to buttons and{rounded.lg}(12px) to cards consistently - Use cream-yellow surfaces ({colors.cream}) for form panels, feature cards, and footer
- Anchor heroes with photographic mountain-sunset imagery (or its visual equivalent — atmospheric gradient sky)
- Use stat-display token (PP Editorial 56px) for stat callouts to maintain editorial character
Don't
- Don't use pill-shaped buttons (
{rounded.full}) — Mistral's geometry is sober and editorial, not playful - Don't introduce additional accent colors beyond the orange/yellow/cream sunset palette
- Don't reduce hero leading below 1.05 — the editorial display needs that magazine-grade tightness
- Don't replace PP Editorial Old hero displays with Inter — the editorial / sans contrast IS the brand
- Don't apply heavy shadows on flat documentation cards; reserve elevation for IDE mockups
- Don't drop the sunset stripe band from any page bottom — it's the brand's continuity element
- Reserve
{colors.primary}(saturated orange) for primary CTAs and active states only - Use the sunset stripe band at the foot of every page — it's the brand's most recognizable signature
- Pair PP Editorial Old (display) with Inter (UI) — never substitute either with a generic alternative
- Apply
{rounded.md}(8px) to buttons and{rounded.lg}(12px) to cards consistently - Use cream-yellow surfaces ({colors.cream}) for form panels, feature cards, and footer
- Anchor heroes with photographic mountain-sunset imagery (or its visual equivalent — atmospheric gradient sky)
- Use stat-display token (PP Editorial 56px) for stat callouts to maintain editorial character
- Don't use pill-shaped buttons (
{rounded.full}) — Mistral's geometry is sober and editorial, not playful - Don't introduce additional accent colors beyond the orange/yellow/cream sunset palette
- Don't reduce hero leading below 1.05 — the editorial display needs that magazine-grade tightness
- Don't replace PP Editorial Old hero displays with Inter — the editorial / sans contrast IS the brand
- Don't apply heavy shadows on flat documentation cards; reserve elevation for IDE mockups
- Don't drop the sunset stripe band from any page bottom — it's the brand's continuity element
Responsive Behavior
Breakpoints
| Name | Width | Key Changes |
|---|---|---|
| ... | ... | ... |
Touch Targets
- Buttons render at 40–44px effective height — at WCAG AAA floor with
10px 20pxpadding - Form inputs render at 44px height
- ...
Collapsing Strategy
- Promo banner stays full-width; truncates at < 480px
- Top nav below 1024px collapses to hamburger
- ...
Image Behavior
- Mountain-sunset photography uses 16:9 ratio with full-bleed scaling
- IDE mockup images maintain aspect ratio across breakpoints
- ...
Responsive Adaptation Note:
Responsive Behavior Example
Agent Prompt Guide
1. Focus on ONE component at a time
2. Reference component names and tokens directly ({colors.primary}, {component-name}-pressed)
- ...
Copyable Agent Integration Prompt:
Prompt Guide Copy Box
Full System Design Tokens
The parsed design tokens extracted from the core stylesheet of this design system:
| Design Token | Hex Value | System Palette Role |
|---|---|---|
| --primary | #fa520f | System color representation for primary |
| --primary-deep | #cc3a05 | System color representation for primary-deep |
| --on-primary | #ffffff | System color representation for on-primary |
| --sunshine-300 | #ffd06a | System color representation for sunshine-300 |
| --sunshine-500 | #ffb83e | System color representation for sunshine-500 |
| --sunshine-700 | #ffa110 | System color representation for sunshine-700 |
| --sunshine-800 | #ff8105 | System color representation for sunshine-800 |
| --sunshine-900 | #ff8a00 | System color representation for sunshine-900 |
| --yellow-saturated | #ffd900 | System color representation for yellow-saturated |
| --cream | #fff8e0 | System color representation for cream |
| --cream-light | #fffaeb | System color representation for cream-light |
| --cream-deeper | #fff0c2 | System color representation for cream-deeper |
| --beige-deep | #e6d5a8 | System color representation for beige-deep |
| --block-5 | #ffe295 | System color representation for block-5 |
| --block-6 | #ffd900 | System color representation for block-6 |
| --block-7 | #ff8105 | System color representation for block-7 |
| --ink | #1f1f1f | System color representation for ink |
| --ink-tint | #3d3d3d | System color representation for ink-tint |
| --charcoal | #2c2c2c | System color representation for charcoal |
| --slate | #4a4a4a | System color representation for slate |
| --steel | #6a6a6a | System color representation for steel |
| --stone | #8a8a8a | System color representation for stone |
| --muted | #a8a8a8 | System color representation for muted |
| --hairline | #e5e5e5 | System color representation for hairline |
| --hairline-soft | #ededed | System color representation for hairline-soft |
| --hairline-strong | #c7c7c7 | System color representation for hairline-strong |
| --canvas | #ffffff | System color representation for canvas |
| --surface | #fafafa | System color representation for surface |
| --surface-cream | #fff8e0 | System color representation for surface-cream |
| --surface-cream-soft | #fffaeb | System color representation for surface-cream-soft |
| --surface-code | #1c1c1e | System color representation for surface-code |
| --on-dark | #ffffff | System color representation for on-dark |
| --on-dark-muted | #a8a8a8 | System color representation for on-dark-muted |
| --on-cream | #1f1f1f | System color representation for on-cream |
| --footer-cream | #fff8e0 | System color representation for footer-cream |
| --link | #fa520f | System color representation for link |