Visual identity, voice, and application rules for every surface the brand touches. This is the single source of truth.
This document governs how the Nivoda brand expresses itself anywhere brand expression is the goal — anywhere the brand performs.
| Marketing pages | Nivoda.com, blog, feature and campaign landing pages |
| Sales and investor decks | Pitch materials, board updates, fundraise collateral |
| Conference handoffs | Event signage, booths, partner collateral, JCK and similar |
| Longform documents | Whitepapers, reports, brand books, lookbooks |
| Hero moments | Splash screens, marketing emails, brand films, social hero assets |
| Internal materials | Brand onboarding, all-hands presentations, launch decks |
Editorial is where the brand performs. The full vocabulary is on the table — decorative violet eyebrows, italic call-and-response, mono labels, hairlines, the two-violet rule on dark. Restraint still applies (violet is precious; maximum 2–3 violet roles per composition), but the full toolkit is permitted.
Nivoda's brand sits at the intersection of three identities. Every decision traces back to one of these.
Human, local, relational
Century-old tradition. Independent jewellers, family businesses, trusted suppliers. Manifests in warm photography, friendly imagery, approachable tone.
Luxury marketplace
Diamonds, fine jewellery, certified stones. Manifests in serif display typography, restrained colour, generous whitespace, warm neutral palette.
Fintech backbone
A serious credit business underpins the platform. Manifests in clean data presentation, confidence in tone, and a dual-context palette that works across light and dark surfaces.
The brand expression is warm and restrained. A dual-context palette — warm light surfaces with white cards, dark surfaces for immersive moments. Violet is precious and reserved. Photography and serif typography carry the warmth.
| Company name | Nivoda |
| Description | The global B2B marketplace for diamonds and jewellery |
| Brand colour | Violet (not purple) |
| Neutral colour | Stone (warm grey, not cool grey) |
| Black philosophy | Soft black #0c0a09 — never true black #000000 |
| Theme | Dual-context — warm light (#f5f0ec) with white cards, dark (#0c0a09) for immersive moments |
Four approved variants. Use the canonical SVG assets — never recreate or approximate.
| Safe backgrounds | Warm light #f5f0ec, white #ffffff (cards only), dark #0c0a09, dark photography |
| Minimum clear space | 16px on all sides (or 1/4 of logo height, whichever is larger) |
| Minimum size (digital) | 40px width (wordmark), 24px width (icon) |
| Minimum size (print) | 1 inch / 25mm (wordmark), 0.5 inch / 12mm (icon) |
| Co-branding | Equal or greater visual weight. 16px minimum clear space between logos. |
Stretch, rotate, or distort. Change logo colours. Place on backgrounds that reduce legibility. Recreate or approximate. Add effects (shadows, gradients, outlines).
Use canonical SVG assets from /logos. Maintain aspect ratio. Respect minimum clear space. Use white variant on dark, black variant on light.
Two scales — violet and stone — plus four status colours. Violet is precious. Stone does the heavy lifting.
The choices we actually make — one role per row, rendered on its real surface in both contexts. Violet is precious. Stone does the heavy lifting.
| Role | Dark context | Light context |
|---|---|---|
| Background | stone-950 #0c0a09 |
warm #f5f0ec |
| Surface / card | stone-900 #1c1917 |
white #ffffff |
| Border | stone-700 #44403c |
stone-200 #e7e5e4 |
| Text — primary | stone-50 #fafaf9 |
stone-950 #0c0a09 |
| Text — body / muted | stone-400 #a8a29e |
stone-500 #78716c |
| Accent — display / fill | violet-500 #7655fd |
violet-600 #6330f5 |
| Accent — text / thin border | violet-400 #9886ff |
violet-600 #6330f5 |
| Hover fill | violet-500 #7655fd |
violet-600 #6330f5 |
Lighter on dark, darker on light — to avoid colour vibration against the surface. Violet always reads as the same role across contexts; the hex shifts to keep contrast right.
The two-violet rule on dark. Saturated violet against near-black causes chromatic vibration in thin or small elements. Use violet-500 #7655fd only where the violet has mass — Nanum display type, button hover fills, large accent blocks. Use violet-400 #9886ff everywhere else on dark: small text, links, eyebrows, 1px borders and dividers, dots, and any decorative line under 2px. The lift in value desaturates the fringe and pushes contrast against stone-950 from ~4.7 to ~7.2. Light context doesn't need this split — violet-600 holds at every size on warm surfaces.
Violet is placed, never scattered. It responds at the final beat of a Nanum title, in italic — never mid-phrase, never in subtitles, never in Inter.
Neutral text calls → violet responds in italic. The violet is always the final beat.
The response lands at the end of the phrase. Never in the middle, never interrupting.
Design becomes a systems function.
The platform is built for scale.
A market built on trust.
A subtitle with a violet beat
JetBrains Mono, uppercase — grey by default. Stone-500 on light, stone-400 on dark. The violet hairline beneath section eyebrows is where the brand accent lives; the text above it is neutral. Violet mono text is used only in deliberate editorial compositions where a label is itself a designed moment — rare, intentional, never in card labels, captions, or specimen headings.
Violet text
Yes. On dark: violet-500 #7655fd for display and fills, violet-400 #9886ff for small text and thin borders. On light: violet-600 #6330f5 at every size. Used for labels, eyebrows, metadata, and numbered indices — not italic. The italic call-and-response beat is reserved for Nanum Myeongjo titles only.
Violet button hovers
Yes. Both contexts use violet fills on hover — violet-500 on dark, violet-600 on light. Lighter on dark, darker on light, to avoid colour vibration against the surface.
The same composition rendered in both contexts. Identical content; only the surface and accent shift. Dark uses stone-400 for the eyebrow text, violet-500 for the display em, and stone-200 buttons. Light uses stone-500 for the eyebrow text, violet-600 for the display em, with stone-950 buttons. The violet hairline beneath the eyebrow is where the accent lives — the text above it is always neutral.
03 — Colour
Design becomes a systems function.
Dark · stone-950 surface · violet-500 accent
03 — Colour
Design becomes a systems function.
Light · warm surface · violet-600 accent
For immersive sections, hero moments, and presentations. Violet-500 #7655fd for text accents. Button hover: violet-500 fill.
| Element | Rest | Hover |
|---|---|---|
| Button (primary) | stone-200 fill, dark text, 999px radius | Violet-500 fill, white text |
| Button (secondary) | Transparent, stone-700 border, 999px radius | Violet-400 text, violet-400 border |
| Card border | stone-700 #44403c | stone-400 #a8a29e |
| Labels / eyebrows | violet-400 #9886ff | — |
| Text link | stone-400, underline | violet-400, underline |
Warm light surface (#f5f0ec) with white cards. Violet-600 #6330f5 for text accents. Button hover: violet-600 fill.
| Element | Rest | Hover |
|---|---|---|
| Button (filled) | stone-950 fill, white text, 999px radius | Violet-600 fill, white text |
| Button (outline) | Transparent, stone-200 border, 999px radius | Violet-600 text, violet-600 border |
| Card border | stone-200 #e7e5e4 | violet-600 #6330f5 |
| Labels / eyebrows | violet-600 #6330f5 | — |
| Text link | stone-500 | violet-600 |
Three callout variants for emphasis and guidance. Each has a distinct colour signal and a consistent JetBrains Mono label.
Used for named principles, key rules, or editorial emphasis. No surrounding border — only a violet left stroke. The title is optional but recommended when the callout names a specific principle.
Shape signals interactivity — the pill, underline, or border already tells the user "this is touchable." Colour rewards engagement. Buttons, links, and inputs carry no violet at rest. Violet is not a badge; it is the reward of reaching.
Used in pairs to contrast correct and incorrect usage. Green signals positive; red signals negative. Always pair them — a negative without a positive lacks context, and vice versa. The colour is semantic, not decorative: it carries meaning independent of the label text.
Use this callout to show correct application of a rule — a real example from the system, not a constructed one.
Use this to show what to avoid. Keep it specific — describe the exact failure, not a general warning.
| Variant | When to use | Border treatment |
|---|---|---|
| Editorial emphasis | Named principles, conceptual rules, key editorial emphasis | Left stroke only, 3px · no surrounding border |
| Positive | Example of a rule applied correctly | Full border + 3px top · always paired with Negative |
| Negative | Counter-example showing what to avoid | Full border + 3px top · always paired with Positive |
Three typefaces, each with a strict role. The serif carries warmth, the sans carries clarity, the mono carries precision.
| Weight | Value | Usage |
|---|---|---|
| Normal | 400 | Body text, supporting content. All Nanum Myeongjo display — the serif carries weight through size, not boldness. |
| Medium | 500 | Subsection headings (Inter), labels, JetBrains Mono labels |
| Semibold | 600 | Section headings (Inter), page titles (Inter), navigation |
| Bold | 700 | Strong emphasis (sparingly). Not for Nanum Myeongjo. |
| Token | Size | Usage |
|---|---|---|
| xs | 12px | Labels, metadata, helper text |
| sm | 14px | Supporting text, captions, table cells |
| base | 16px | Default body text |
| lg | 18px | Emphasised body, lead paragraphs |
| xl | 20px | Subsection headings |
| 2xl | 24px | Section headings |
| 3xl | 30px | Page titles |
| 4xl | 36px | Marketing headings |
| 5xl | 48px | Hero / display text |
For 1920×1080 projected decks. Calibrated for readability at projection distance.
| Token | Size | Usage |
|---|---|---|
| pres-hero | 180px | Title slide hero text (Nanum Myeongjo, 400) |
| pres-quote | 96px | Pull quotes, section covers (Nanum Myeongjo) |
| pres-title | 88px | Slide titles (Nanum Myeongjo, 400) |
| pres-lede | 28–36px | Lead paragraphs, card titles |
| pres-body | 22–26px | Card body, list items, descriptions |
| pres-body-sm | 18–20px | Footnotes, supporting text, italic closers |
| pres-label | 14–18px | Eyebrows, category labels (JetBrains Mono, uppercase) |
| pres-meta | 13–14px | Pagination, chrome labels, footer text |
Nanum Myeongjo always at weight 400. JetBrains Mono for structural and technical content — eyebrows, labels, metadata, pagination. UI contexts use the UI scale. Presentation contexts use the presentation scale.
Bold the serif. Use weights outside the four approved. Mix scales between contexts. Use JetBrains Mono for narrative body text.
4px base unit. Consistent padding, margins, and gaps across every surface.
Buttons & inputs
999px — pill-shaped. Soft, inviting, action-focused.
Cards
2px — near-square. Formal, structured, content-focused.
| Token | Value |
|---|---|
| sm | 0 1px 2px 0 rgba(0,0,0,0.05) |
| md | 0 4px 6px -1px rgba(0,0,0,0.1) |
| lg | 0 10px 15px -3px rgba(0,0,0,0.1) |
| xl | 0 20px 25px -5px rgba(0,0,0,0.1) |
Luxury is not packed. Breathing room is not wasted space — it is an active design decision that communicates authority, restraint, and confidence in the content.
The brand should never feel hurried. When in doubt, give it more room. A cramped layout signals anxiety; a generous layout signals that Nivoda knows its worth. This applies at every scale — between major sections, between subsections within a page, between cards in a grid, between a heading and its body text.
| Context | Spacing intent |
|---|---|
| Between major sections | 128px — a full breath between subjects |
| Before a subsection heading (h3) | 80–96px — clear separation from what came before |
| After a section eyebrow, before h2 | 32px hairline gap, then 64px to first content |
| Between cards in a grid | 32px — enough to read as distinct objects |
| Inside a card | 40px padding — content should not touch the edge |
| Between body paragraphs | 24px — measured but unhurried |
If it feels cramped, it is cramped.
This section governs three kinds of imagery: editorial photography, promotional banners, and iconography. The principles below expand each mode.
People-first editorial work rests on perspective, light, and palette. Real people in jewellery-trade settings, shot from inside the partner's world, lit like a luxury boutique, rendered in moody golden warmth.
Generation prompt · Midjourney
Female jeweller in formal attire stands beside a casually dressed male customer in the foreground, both seen from behind and slightly out of focus. Camera positioned directly behind them, tight over-the-shoulder angle, only the backs of their heads visible. The jeweller holds an iPad between them at chest height as they both look at the screen inside a jewellery store. The iPad screen is the only element in perfect, razor-sharp focus critically sharp, ultra-detailed, high clarity, no blur, no depth-of-field softness. The people are intentionally soft and out of focus, with visible depth blur separating them from the subject. Shallow depth of field explicitly locked onto the iPad screen. Focus priority on device. Background and foreground blur, subject isolation on iPad. Luxury commercial product photography, warm colour and moody lighting, high-end fashion advertising aesthetic, cinematic depth of field, premium editorial style.
A second photography mode for category banners in the marketplace. No human presence. The product is the subject — arranged in a receding line, one behind the other, the end always out of frame. Three ideas, one frame.
| Aspect ratio | Approximately 5:1 — wide, shallow banner format. Never square, never portrait. |
| Background | Near-black studio surface. No editorial warmth here — the dark field makes the products luminous. |
| Subject | Product only. No human presence, no jewellery-trade setting, no context. The product IS the message. |
| Arrangement | Products in a receding sequence. Minimum five items visible; the line must extend to blur. No scattered placement. |
| Depth of field | Sharp foreground, softening to blur as the line recedes. The blur amplifies the sense of infinite supply. |
| Colour | Warm product tones (gold, silver, diamond) against cool dark background. Never add artificial colour overlays. |
Lucide outlined icons, 1.5px stroke. Curated for brand-relevant concepts — gems, marketplace, partnership, craft, certification, origin — never generic UI plumbing. Inherits text colour. Used sparingly, with intent.
Thirty icons that fit the diamond-marketplace voice — partner relationships, trust, provenance, craft. Designers should pick from this set first; introducing additional Lucide glyphs is a per-case decision flagged to Chris.
| Icon set | Lucide — outlined style only, no filled variants |
| Stroke | 1.5px |
| Sizes | 16px (small), 20px (standard), 24px (large) |
| Colour | Inherits from text. Matches text colour in both dark and light contexts. |
| Avoid | Generic UI controls (settings cog, hamburger, chevrons, ellipsis) — use only when functionally required, never as decoration. |
Voice is constant — it's who we are. Tone shifts by context — it's how we adapt to the situation.
| Context | Register |
|---|---|
| Product UI | Clear, concise, action-oriented |
| Error messages | Calm, helpful, never blaming |
| Marketing | Confident, professional, warm |
| Personal, direct, value-focused | |
| Documentation | Precise, patient, structured |
| Internal comms | Casual, direct, no jargon |
Sentence case for headings and buttons. Oxford comma. Contractions in product UI, not in legal. Spell out one through nine, numerals for 10+.
No full stops on single-sentence labels or buttons. No exclamation marks in product UI. Question marks only in confirmation dialogs.
| Element | Style | Example |
|---|---|---|
| Page titles | Sentence case | Order history |
| Buttons | Sentence case | Place order |
| Product names | Title Case | Nivoda Express |
| Navigation | Sentence case | My orders |
The brand adapts to where it shows up. Different contexts, different lines — same identity.
Product UI
Brand expression is restrained. Professional and functional, not promotional. Logo in nav only. Primary colour used sparingly — CTAs, active states, key accents. Users are here to transact. Brand builds trust, never competes with the task.
Marketing
Brand expression is confident. Full visual palette available — hero imagery, brand colours, display typography. Polished, intentional, and human. Never generic, never hyperbolic.
Documentation
Step-by-step instructions with numbered lists. Screenshots must use current UI. Technical terms defined on first use. Never assume the reader's expertise level.
Internal comms
Lowest formality but the brand still applies. Never use internal shorthand in any context that might be forwarded externally.
| Requirement | Detail |
|---|---|
| Contrast | WCAG AA minimum (4.5:1 body, 3:1 large text) |
| Colour alone | Never rely on colour alone to convey meaning — pair with text or iconography |
| Stone-50 on stone-950 | High contrast, passes AAA |
| Violet-600 on white | 3.97:1 — passes AA for large text. Use violet-700+ for small body text. |
| Violet-400 on stone-950 | 6.77:1 — passes AA for all text sizes. |
Compositional references for the formats produced at trade events. These show the system applied — sketch your own, don't copy these.
850 × 2000 mm typical · single sided · 200 dpi at final size · 5 mm bleed all sides.
3000 × 2400 mm typical · tiled panels · single full-bleed photograph + lock-up.
rgba(0,0,0,0.45) dark scrim over the bottom two thirds.The piece a buyer takes back to their hotel and reads on the flight home. This is where violet lives. Light surfaces give violet permission to appear — but still only on accents: a thin rule under the headline, the arrow on the call-to-action, never as a fill.
Receive certified diamonds on memo from suppliers in 50+ countries. Show your client. Decide after. Pay for what you keep — return the rest, no questions, no hidden fees.
Apply once. Transact across the marketplace with 30 to 90 day terms. Designed for jewelers running a single shop, not corporate procurement.
Nivoda Brand Guidelines · Version 2.0 · May 2026