Brandguide v1.5 · single source of truth

De huisstijl van
EVO Connect, in één document.

Hoe we praten. Hoe we eruitzien. Wat we wel en niet doen. Geen pakkende slogans op een muur. Gewoon de regels die elke klantopdracht consistent maken.

Patroonstraat 1, Nijkerk
evoconnect.nl
Fabian Wessels, oprichter
Wijzigingen in v1.5
Logo-sectie toegevoegd. Nieuwe sectie 02 met wordmark, monogram, anatomie, clearspace, minimum sizes, kleurregels, achtergronden, do's en don'ts, en een download-pakket (4 SVG-bestanden plus ZIP). Logo-tokens (--logo-ink #111827, --logo-accent #4abaeb) staan los van de UI-tokens.
Secties hernummerd. Kleur 02→03, Typografie 03→04, Ritme 04→05, Componenten 05→06, Iconografie 06→07, Regels 07→08, Microcopy 08→09, Open punten 09→10.
Wijzigingen in v1.2.1
Responsive type scale. Alle --text-* tokens omgezet van px naar clamp(). Headings schalen nu vloeiend tussen mobile en wide screen. Body, small en eyebrow blijven vast voor toegankelijkheid.
Schaal per device. Nieuwe referentietabel in sectie 05: precieze pixelwaardes per token op zes breakpoints (375 / 768 / 1024 / 1280 / 1440 / 1920+). Cheatsheet voor toekomstige opdrachten.
Wijzigingen in v1.2
Display font: Bricolage Grotesque. Vervangt Poppins. Dutch grotesque DNA, eigenwijze details, variable font met optical-size axis. Voelt directer en eigenzinniger zonder weird te worden.
Modulaire scale 1.250. Sizes verschuiven mee: Display XL 96, Display L 72, H1 56, H2 40, H3 28, H4 22, Body L 20, Body 16, Small 14, Eyebrow 12. Mathematisch coherent.
Italic-strategie aan. <em> tags krijgen voortaan zowel cyan kleur als echte italic. Dubbele markering, één regel.
Cyan-playbook. Wanneer wel, wanneer niet, plus opacity-schaal. Cyan blijft cyan, maar wordt slimmer ingezet.
Regellengte vastgelegd. 45ch voor lede, 65ch voor body, 75ch maximum. Drie nieuwe tokens.
Tracking-tabel per size. Geen ad-hoc waardes meer. Tokens voor xl, display, h1, h2, h3, body, small, eyebrow.
"De handdruk, niet de sales-pitch."
// elke beslissing in deze gids leidt terug naar deze regel
01 · Stem & toon

Hoe we praten.

Direct, warm, no-nonsense, een tikje brutaal. Geen corporate vulling, geen US-superlatieven. Dutch first, sentence case, je en jij. Korte zinnen. Twee-woord-zinnen zijn aangemoedigd.

✓ Zo wel

"Geen gedoe. Gewoon geregeld."

Anafora ("Geen … Geen …") is een handtekening. Twee zinnen, één idee. Klant snapt het binnen één ademteug.

× Zo niet

"Wij ontzorgen jouw onderneming met state-of-the-art oplossingen."

Buzzword-stack. Vage superlatieven. Voelt als een commercial uit 2014. Schrappen.

✓ Zo wel

"Bakkie doen? Dan kijken we samen waar je staat."

Uitnodiging in spreektaal. Een mens aan de andere kant, geen verkoopformulier.

× Zo niet

"Hi there! Klik hieronder om een vrijblijvende intake in te plannen!"

Tech-bro opening. Engels-Nederlandse mix. Twee uitroeptekens. Drie kruisjes.

"Geen gedoe."Het anker van het hele merk. Mag in elke pillar terugkomen.
"Bakkie doen?"De uitnodiging tot een gesprek. Speelser alternatief voor "intake".
"Korte lijnen, snel schakelen"Onze werkwijze in vier woorden.
"Eerlijk advies"Wat we verkopen, naast techniek.
"Vast bedrag per maand"Het prijsverhaal. Geen verrassingen achteraf.
"100% jouw eigendom"De ownership-belofte. Geen klantenkluizen.
"Score een kop koffie"Speelse CTA, alleen bij low-stakes touchpoints.
03 · Kleur

Vijf kleuren.
Drie rollen.

Vier basis-kleuren, plus amber als action-kleur. Geen gradients. Geen schaduwen die uit het navy-familie stappen. Elke kleur heeft één taak, en geen kleur leent een taak van een andere.

Ink Primair
#0a2463 --brand-ink
Cyan Highlight
#01c2ff --brand-accent
Amber Action
#f59e0b --brand-action
Cream Pagina
#f7fdff --brand-cream
Paper Cards
#ffffff --brand-paper

Wie doet wat?

De vijf kleuren naast hun taak. Hou deze tabel open bij twijfel.

Ink
Body-tekst, headings, navy slabs, ghost-button outline.
--brand-ink
Cyan
Inline highlight (em-tag), focus rings, links, decoratieve dots. Zie playbook hieronder.
--brand-accent
Amber
Primary CTA fill, urgente callouts, "doe nu" momenten. Altijd met ink-tekst.
--brand-action
Cream
Standaard pagina-achtergrond. Koel, met cyan-zweem.
--brand-cream
Paper
Cards die boven cream zweven. Pure wit, hairline border.
--brand-paper
Cyan-playbook

Cyan is geen kleur voor "decoratie". Het is functioneel: het markeert iets, geeft focus, of nodigt uit tot actie. Als het niet één van die drie dingen doet, hoort het niet op de pagina.

Wanneer wel
  • Eén highlight-woord in een headline, via em-tag (italic + cyan)
  • Focus rings op interactieve elementen (3px, 35% opacity)
  • Links in body-tekst, met onderlijning 2px offset 4px
  • De decoratieve dot in het wordmark en het nav-logo
  • Text-selection highlight
  • Inline pijl-CTA's ("Lees verder →")
Wanneer niet
  • Primary CTA fill (dat doet amber)
  • Achtergrond van grote vlakken of slabs
  • Body-tekst kleuren
  • Meerdere cyan-momenten boven elkaar in één scherm
  • Hover-state van non-emphasis elements
  • Decoratieve borders of dividers zonder functie
Opacity-schaal
100% Actieve highlight in headline
50% Subtle accent, zelden gebruikt
35% Focus ring, 3px, 0 offset
10% Section tint, ultra subtle

Koele neutralen // --n-0 → --n-900

De grijsschaal interpoleert van cream naar navy. Elke grijs zit in de navy-familie, zodat hij nooit vecht met het merk.

n-0
n-50
n-100
n-200
n-300
n-400
n-500
n-600
n-800
n-900
/* Bestaande tokens */ --brand-ink: #0a2463; --brand-accent: #01c2ff; --brand-cream: #f7fdff; --brand-paper: #ffffff; --brand-action: #f59e0b; /* v1.2 · cyan opacity tokens */ --brand-accent-ring: rgba(1, 194, 255, 0.35); --brand-accent-soft: rgba(1, 194, 255, 0.10);
04 · Typografie

Bricolage luid,
Inter helder.

Display is Bricolage Grotesque. Body is Inter. Mono is JetBrains Mono. Dutch grotesque DNA voor headlines, workhorse-leesbaarheid voor body. Modulaire scale op ratio 1.250. Letter-spacing schaalt invers met font-size.

Display XL Bricolage 800 52→96 · 0.95 tracking -0.04em
Geen gedoe.
Eén keer per pagina, alleen voor de hero. Mobile: 52px.
Display L Bricolage 800 44→72 · 1.0 tracking -0.035em
Een digitale partner.
Voor section heroes. Max twee per pagina.
H1 Bricolage 800 36→56 · 1.05 tracking -0.025em
Bouw, hosting en groei.
Eén H1 per pagina. SEO en visueel anker.
H2 Bricolage 700 28→40 · 1.1 tracking -0.02em
Wat doen wij eigenlijk?
Belangrijkste subkop binnen content.
H3 Bricolage 700 22→28 · 1.15 tracking -0.015em
Website laten maken
In cards, blogposts, dienstenoverzicht.
H4 Bricolage 600 18→22 · 1.2
Subkop binnen sectie
Voor microsegmentatie van content.
Body L Inter 400 17→20 · 1.55
Lede paragraph, eerste tekst onder een hero of section title.
Max 45ch. Inter 400.
Body Inter 400 16 · 1.7 (fixed)
Default body voor leesblokken. Korte lijnen, snel schakelen. Wij denken mee, niet aan een knop boven het hoofdscherm.
Max 65ch. Vast op 16px (toegankelijkheid).
Small Inter 400/500 14 · 1.5 (fixed)
Captions, meta-tekst, voetnoten en disclaimers.
Min size voor UI-chrome.
Eyebrow Inter 600 caps 12 · 1.4 (fixed) tracking 0.06em
Uitgelicht project
Sentence omhoog naar caps, niet titel.
Mono JetBrains Mono 500 14 / 1.5
// project-id: 2026-evo-04 · status: live
Codeblokken, project-IDs, technische inline.

Schaal per device.

Wat elke token uitkomt op elk schermformaat. Mobile is 375px, desktop is 1440px, wide screen 1920+. Body, small en eyebrow zijn vast (toegankelijkheid). Alles ertussen schaalt vloeiend via clamp().

Token Mobile
375
Tablet V
768
Tablet H
1024
Laptop
1280
Desktop
1440
Wide
1920+
Display XL 52px 62px 77px 93px 96px 96px
Display L 44px 51px 62px 72px 72px 72px
H1 36px 43px 52px 56px 56px 56px
H2 28px 31px 36px 40px 40px 40px
H3 22px 24px 26px 28px 28px 28px
H4 18px 20px 21px 22px 22px 22px
Body L 17px 18px 19px 20px 20px 20px
Body fixed 16px 16px 16px 16px 16px 16px
Small fixed 14px 14px 14px 14px 14px 14px
Eyebrow fixed 12px 12px 12px 12px 12px 12px

Vetgedrukt = clamp-anker (min of max bereikt). Tussenwaardes schalen vloeiend met de viewport. Onder 720px scrollt de tabel horizontaal.

Italic-strategie: dubbele markering.

De em-tag doet voortaan twee dingen tegelijk: cyan kleur én Bricolage italic. Subtiel maar onmiskenbaar. Het highlight-moment heeft daarmee twee signalen, zodat hij ook werkt voor mensen met kleurblindheid.

// em-tag in actie
Geen gedoe,
gewoon geregeld.

Optie A. Bricolage italic in dezelfde family. Werkt overal, geen extra font-load, past bij understatement. Dit is de v1.2 default.

Optie B (later). Instrument Serif italic als display-twist. Dramatischer, editorial. Geparkeerd voor v1.3 als je extra drama wilt.

Regellengte: 45 tot 75 tekens.

Te smal = oog springt te vaak terug. Te breed = oog raakt de regel kwijt. De sweet spot is 45 tot 75 tekens. Gebruik de drie tokens.

× Te smal · 30 ch

Wij bouwen websites waar je echt wat aan hebt. Snel, eerlijk, en zonder kleine lettertjes.

✓ Ideaal · 65 ch (body)

Wij bouwen websites waar je echt wat aan hebt. Snel, eerlijk geprijsd, en zonder kleine lettertjes. Je krijgt een vaste contactpersoon, geen ticketsysteem. Korte lijnen, snel schakelen.

× Te breed · onbeperkt

Wij bouwen websites waar je echt wat aan hebt. Snel, eerlijk geprijsd, en zonder kleine lettertjes. Je krijgt een vaste contactpersoon, geen ticketsysteem. Korte lijnen, snel schakelen. Een digitale partner, geen leverancier, en wij denken mee in plaats van alleen knoppen klikken op een hoofdscherm.

/* Modulaire scale 1.250 · responsive met clamp() */ --text-display-xl: clamp(3.25rem, 6vw + 1rem, 6rem); /* 52 → 96 */ --text-display-l: clamp(2.75rem, 4.5vw + 1rem, 4.5rem); /* 44 → 72 */ --text-h1: clamp(2.25rem, 3.5vw + 1rem, 3.5rem); /* 36 → 56 */ --text-h2: clamp(1.75rem, 2vw + 1rem, 2.5rem); /* 28 → 40 */ --text-h3: clamp(1.375rem, 1vw + 1rem, 1.75rem); /* 22 → 28 */ --text-h4: clamp(1.125rem, 0.5vw + 1rem, 1.375rem); /* 18 → 22 */ --text-body-l: clamp(1.0625rem, 0.4vw + 0.95rem, 1.25rem); /* 17 → 20 */ --text-body: 1rem; /* 16 */ --text-small: 0.875rem; /* 14 */ --text-eyebrow: 0.75rem; /* 12 */ /* Letter-spacing per size */ --track-xl: -0.04em; --track-display: -0.035em; --track-h1: -0.025em; --track-h2: -0.02em; --track-h3: -0.015em; --track-body: 0; --track-small: 0.005em; --track-eyebrow: 0.06em; /* Regellengte */ --measure-lede: 45ch; --measure-body: 65ch; --measure-max: 75ch;
05 · Ritme

Vier-pixel raster.

Alles in deze stijl is een veelvoud van 4. Section gaps zitten op 64 tot 96. Inter-block op 24 tot 32. Inline op 8 tot 16.

--space-14px
--space-28px
--space-312px
--space-416px
--space-524px
--space-632px
--space-748px
--space-864px
--space-996px
--space-10128px
06 · Componenten

De bouwblokken.

Buttons, form, cards, data en navigatie. Elk component pakt één rol en pakt die ook. Geen mengvormen. Hairlines op cream, hardere borders op slabs.

// buttons · pill radius · 12/22 padding
Lees verder
// pills · badges · status
Beschikbaar voor nieuwe projecten Nieuw WordPress Live Tijdelijke aanbieding
// card · 16px radius · hairline · shadow-sm → md
Service

WooCommerce webshop

Een webshop die meegroeit met je voorraad. iDEAL, snelle hosting, en geen plug-in-puzzel om de twee maanden.

Bekijk
// input · cyan focus ring (--brand-accent-ring)
6.2 · Form

Inputs die gehoord worden.

Cyan focus-ring, rode error-ring, groene success-ring. Label boven, helper-text onder. Nooit placeholder als enige label.

// input · states
We sturen je een bevestiging.
Vul een geldig e-mailadres in.
Adres gevalideerd.
// textarea · select · disabled
Beschikbaar na inloggen.
// checkbox · radio · file
// helper- en error-text patroon
Minimaal 12 tekens, één cijfer, één hoofdletter.
Te kort en geen cijfers.
// formulier · in context

Laat even horen.

Eén werkdag reactie. Geen verkoop-pitch.

We reageren binnen één werkdag.
6.3 · Cards

Vijf kaartjes, vijf rollen.

Service, case, blog, testimonial, pricing. Zelfde basis (radius, hairline, schaduw). Andere inhoud, andere klik-flow.

// service-card
Service

WooCommerce webshop

Een webshop die meegroeit met je voorraad. iDEAL, snelle hosting, en geen plug-in-puzzel om de twee maanden.

Bekijk
// case-card · met image en resultaat-tag
+42% omzet
Case · webshop

LeatherSweets

Maatwerk WooCommerce-shop met snelle iDEAL-checkout en herkenbare merkidentiteit.

Lees de case
// blog-card · met image en datum
12 mei 2026 · 4 min

Waarom WordPress nog steeds de juiste keuze is in 2026

Geen no-code platform, geen headless overkill. Een eerlijke kijk op wat er voor MKB werkt.

Lees verder
// testimonial-card
Eindelijk een bureau dat snel schakelt. Geen tickets, gewoon even bellen. En als ik 's avonds wat vraag, ligt er 's ochtends een antwoord.
AS
Astrid van Spronsen
Eigenaar · LeatherSweets
// pricing-card · twee tiers
Geregeld
€149/mnd

Voor wie zekerheid wil zonder gedoe.

  • Snelle hosting en SSL
  • Wekelijkse updates en backups
  • Beveiligingsmonitoring
  • Eén uur kleine wijzigingen per maand
  • Reactie binnen één werkdag
6.6 · Data display

Cijfers, citaten, tabellen.

Eén nummer, één punt. Geen dashboards-met-zes-grafieken die niemand leest. Een sterke quote pakt meer aandacht dan tien stat-blokken.

// stat-block · met delta
42%
Omzetgroei na launch
+12% vs Q1
1.8s
Gemiddelde laadtijd
-0.6s
98
PageSpeed-score
+14 punten
// quote-block · large

Wij bouwen websites waar je echt wat aan hebt. Snel, eerlijk geprijsd, en zonder kleine lettertjes.

Fabian Wessels · Founder EVO Connect
// avatars · sizes en status
FW FW FW
// divider · hairline en met label

of

// lijsten · bullet · numbered · check
  • Snelle hosting
  • Maandelijkse updates
  • Vaste contactpersoon
  1. Kennismaking
  2. Voorstel en planning
  3. Bouw en oplevering
  • Inclusief SSL
  • Inclusief backups
  • Inclusief monitoring
// tabel · hairlines en hover-row
PlanPrijsUren wijzigingReactietijd
Geregeld€149/mnd1 uurEén werkdag
Vooruit€229/mnd2 uurEén werkdag
MaatwerkOp aanvraagOnbeperktDirect
6.7 · Navigatie

Plek-in-de-site, altijd.

Breadcrumbs, tabs en paginering laten zien waar je bent en wat de volgende stap is. Niet meer.

// breadcrumb
// pagination
// tabs · pill-style
Overzicht Cases Reviews FAQ
// tabs · underline-style
Beschrijving Specificaties Beoordelingen
// anchor-nav · verticaal · in-page

De primary CTA in context.

Amber op cream. Amber op navy. Twee plekken waar deze knop het meeste werk doet.

// hero · op cream

Geen gedoe,
gewoon geregeld.

Wij bouwen websites waar je echt wat aan hebt. Snel, eerlijk geprijsd, en zonder kleine lettertjes.

// CTA-blok · op navy slab

Een digitale partner,
geen leverancier.

Vaste contactpersoon, geen ticketsysteem. Korte lijnen, snel schakelen.

07 · Iconografie

Eigen set. Functioneel.

Line-icons op een 24px-grid, 1.5px stroke, ronde caps en joins. Geen fill, geen multi-color, erven currentColor. Eigen paths, geen Lucide. De pijl naar rechts is de inline-CTA.

7.1 · De set

12 iconen, klaar voor gebruik

Hover op een icoon voor copy en download. Wissel hieronder kleur en formaat, of pak alles in één ZIP. Stroke blijft scherp, ook bij grote maten.

Grid 24 × 24
Stroke 1.5px
Caps en joins Round
Fill Geen
Color currentColor
7.2 · Schaal

Vier maten. Niet meer.

Elke maat heeft een rol. Mix ze niet door elkaar binnen één component. Een button gebruikt 16px, een card-icoon 24px. Punt.

XS
14px
Inline in tekst, kleine pills, breadcrumb-separators.
SM
16px
Buttons, form-velden, list-checks, nav-items.
MD
24px
Card-headers, feature-tiles, stat-cards.
LG
40px
Hero-features, empty-states, illustratief gebruik.
16px
20px
24px
28px
36px
48px
7.3 · Kleurrollen

Navy als anchor. Cyan voor focus.

Iconen volgen dezelfde kleurlogica als tekst. Navy is de default, cyan markeert wat belangrijk is, action-amber roept tot actie. Muted voor secundaire info.

Navy
Default voor 90% van de iconen.
--brand-ink
Cyan
Status-positief, focus, feature-iconen.
--brand-accent
Amber
CTA-buttons, attentie, primaire actie.
--brand-action
Muted
Hulpinfo, metadata, breadcrumbs.
--text-muted
7.4 · In context

Zo zet je ze in

Iconen werken altijd in samenhang met tekst, kleur en spacing. Hieronder de patronen die op de site en in demo's voorkomen.

Button + icoon (16px, stroke 2)
Icon volgt het label rechts bij CTA's. Links bij play/start/back-acties. Stroke gaat naar 2 omdat 1.5 te dun wordt op 16px.
Feature card (22px, cyan in tint-box)
Snel geregeld

Binnen 14 dagen live, zonder eindeloze meetings.

Icon in een gekleurde tint-box geeft visuele rust en hiërarchie. Box: 44×44, radius-md, accent-soft achtergrond.
Check list (18px, success-groen)
  • WordPress hosting inbegrepen
  • Onbeperkt content-updates
  • SEO-monitoring per maand
Voor positieve lijsten (pricing, features). Stroke 2 voor leesbaarheid op kleine maat. Margin-top 1px tegen baseline-shift.
Stat card (20px, cream op ink-tile)
+34%
Conversie Q3
Icon-tile maakt cijfers visueler op dashboards en case-studies. 40×40 tile, navy achtergrond, cream icoon.
Inline in tekst (14px, cyan)

Geen gedoe, gewoon geregeld. Plan een tijd via de site, of stuur een mailtje naar fabian@evoconnect.nl.

Inline iconen blijven cyan om afleiding te beperken. Vertical-align: -2px houdt ze op de juiste baseline. Spaarzaam inzetten, max één per zin.
7.5 · Regels

Wel en niet

Korte lijst om consistentie te bewaken. Bij twijfel: liever geen icoon dan een verkeerd icoon.

Wel doen
  • De eigen 12 gebruiken. Pas pad zelf aan als je iets nieuws nodig hebt, in dezelfde stijl.
  • Stroke 1.5 standaard, 2.0 bij iconen kleiner dan 18px.
  • Iconen pixel-aligned plaatsen (flexbox, geen margins).
  • Labels naast iconen waar mogelijk. Solo iconen alleen als de betekenis universeel is.
  • Kleur via currentColor. Eén regel CSS regelt de hele tile.
  • Voor een nieuwe variant: paths in ICONS-object toevoegen, geen aparte SVG-bestanden inplakken.
Niet doen
  • Geen Lucide, Font Awesome of Heroicons mixen met de eigen set.
  • Geen filled, 3D of geïllustreerde iconen.
  • Geen emoji als icoon. Voelt amateuristisch.
  • Geen iconen schalen door width en height niet gelijk te houden.
  • Geen drie kleuren door elkaar in één scherm.
  • Geen iconen zonder bedoeling. Versiering is geen reden.
Gekopieerd
08 · Regels

Wat we wel doen.
Wat we nooit doen.

Hou deze pagina open als je twijfelt. Als iets aan de "× nooit"-kant zit, schrap het en begin opnieuw.

Wel
  • Sentence case in elke heading.
  • Je en jij, altijd. Geen u, tenzij de klant dat zelf doet.
  • "Geen X, gewoon Y" formules voor reassurance.
  • Bricolage Grotesque voor alle display, Inter voor alle body.
  • Em-tag is italic + cyan. Altijd allebei.
  • Amber voor primary CTA's. Met ink-tekst, nooit wit.
  • Body-tekst max 65 tekens per regel. Lede max 45.
  • Focus rings zichtbaar laten. Cyan ring op 0 offset.
Nooit
  • Em dashes (—). Nooit. Punt, komma, dubbele punt of haakjes.
  • Cyan als CTA-fill of als grote achtergrond.
  • Meerdere cyan-momenten in één scherm boven elkaar.
  • Hardcoded font-sizes. Gebruik altijd --text-* tokens.
  • Hardcoded letter-spacing. Gebruik altijd --track-* tokens.
  • Body-tekst breder dan 75 tekens per regel.
  • Title Case in headings. "Hi there" openers.
  • Stockfoto's. Buzzwords. Cartoon-mascots.
09 · Microcopy

De formules.

Voor elke veelvoorkomende plek op de site zit er een patroon. Vul de gaten, hou de cadans.

Primary CTA (amber)"Offerte aanvragen" · "Wensen bespreken" · "Plan een afspraak"
Secondary CTA (ghost)"Bekijk de mogelijkheden" · "Bakkie doen?"
Section eyebrowSentence omhoog naar caps. "Uitgelicht project". Geen icoon ervoor.
Reassurance line"Geen X, gewoon Y." Twee zinnen, één belofte.
Empty / loading"Even geduld…" Eén woord als het kan.
404"Niets te vinden hier. Terug naar boven?"
Form succes"Top, ik heb 'm. Ik bel je binnen 24 uur."
10 · Open punten

Nog één ding.

Eén klein technisch detail uit de bronbestanden, plus één upgrade-pad voor later.

Status: technisch
01 Logo SVG fills. De aangeleverde logo-SVG's hebben lege <defs>. De wordmark rendert nu met navy + cyan als fallback. Vraag: zijn die fallback-kleuren correct, of zit er een specifiekere fill-rule in het bronbestand?
Geparkeerd voor v1.3
02 Editorial italic upgrade. Optie B uit de typografieverkenning: Instrument Serif italic voor em-momenten. Dramatischer, distinctief. Niet nu nodig, wel als je over een paar maanden meer signature wilt.