Design system

Brand book

Everything here is rendered from the product tokens. This is not a copy of the design system: it is the design system. Change a value in the code and this page changes with it.

src/tokens.js — the only file in the project that holds a brand value. Not one colour, size or shadow on this page is typed by hand.

01

Brand idea

SuturaLab is a clinical decision trainer for nurses: not a course with a test at the end.

Positioning

Between the manual you look things up in and the hands-on workshop you never get to. A manual never makes you decide and a workshop does not fit into a shift. Here the case comes first, you choose, and the correction arrives with the whole reasoning.

Who it speaks to

Nurses in direct care in Spain and Latin America — primary care, emergency, wound clinics, care homes and home visits — and final-year students arriving on placement having never decided on their own.

The promise

You train the decision, not the memory.

What we are not

We are not an accreditation, not a clinical consultation and not a product catalogue. We promise no outcomes: we offer judgement with the guideline in hand and the source in sight.

How it shows

Every piece — a lesson, a post, an e-mail — ends in a decision taken and the reason for it. If a piece forces no decision, it is not ours.

The register

Colleague to colleague, never from a lectern. We take as read what a nurse knows, and we never take as read what the guideline qualifies.

03

Colour

One owned hue — surgical teal — on ink and paper, with 1 px rules. Every swatch carries its real contrast, computed against the backgrounds it may be combined with.

Teal scale

  • --teal-50 #EFFBF8 Ink on top16.16 AAA
  • --teal-100 #D3F3EB Ink on top14.50 AAA
  • --teal-200 #A6E6D8 Ink on top12.17 AAA
  • --teal-300 #6FD2BF Ink on top9.49 AAA
  • --teal-400 #34B8A2 Contrast on paper2.35 No textContrast on surface2.46 No text
  • --teal-500 #12A594 Contrast on paper2.93 No textContrast on surface3.07 AA large
  • --teal-600 #0E8C7E Contrast on paper3.94 AA largeContrast on surface4.14 AA large
  • --teal-700 #0E7C6B Contrast on paper4.86 AAContrast on surface5.10 AA
  • --teal-800 #0A6155 Contrast on paper7.01 AAAContrast on surface7.36 AAA
  • --teal-900 #074840 Contrast on paper9.95 AAAContrast on surface10.45 AAA

Accents

  • --accent #0E7C6B Contrast on paper4.86 AAContrast on surface5.10 AA
  • --accent-bright #12A594 Contrast on paper2.93 No textContrast on surface3.07 AA large
  • --accent-700 #0A6155 Contrast on paper7.01 AAAContrast on surface7.36 AAA
  • --accent-800 #074840 Contrast on paper9.95 AAAContrast on surface10.45 AAA
  • --accent-100 #D3F3EB Ink on top14.50 AAA
  • --accent-50 #EFFBF8 Ink on top16.16 AAA

Surfaces

  • --paper #F7FAF9 Ink on top16.30 AAA
  • --surface #FFFFFF Ink on top17.12 AAA
  • --surface-2 #EFF5F3 Ink on top15.51 AAA
  • --surface-3 #E4EEEB Ink on top14.45 AAA
  • --white #FFFFFF Ink on top17.12 AAA

Ink and lines

  • --ink #0B1F1C Contrast on paper16.30 AAAContrast on surface17.12 AAA
  • --ink-2 #37504B Contrast on paper8.29 AAAContrast on surface8.71 AAA
  • --ink-3 #58736D Contrast on paper4.89 AAContrast on surface5.14 AA
  • --line #DCE8E5 Ink on top13.62 AAA
  • --line-2 #C2D6D1 Ink on top11.27 AAA

Ember

  • --ember #C25333 Contrast on paper4.37 AA largeContrast on surface4.59 AA
  • --ember-600 #A8441F Contrast on paper5.69 AAContrast on surface5.98 AA
  • --ember-700 #8E3A1B Contrast on paper7.22 AAAContrast on surface7.58 AAA
  • --ember-50 #FCF1EC Ink on top15.43 AAA
  • --ember-line #EDC6B5 Ink on top10.88 AAA

Semantic

  • --ok #0F7A55 Contrast on paper5.08 AAContrast on surface5.34 AA
  • --ok-50 #E8F6F0 Ink on top15.38 AAA
  • --ok-line #B4DDCB Ink on top11.53 AAA
  • --warn #96620B Contrast on paper4.94 AAContrast on surface5.19 AA
  • --warn-50 #FBF3E3 Ink on top15.51 AAA
  • --warn-line #E7D3A4 Ink on top11.62 AAA
  • --danger #B42318 Contrast on paper6.26 AAContrast on surface6.57 AA
  • --danger-50 #FCEFEE Ink on top15.26 AAA
  • --danger-line #F0C8C4 Ink on top11.22 AAA
  • --info-line #A6E6D8 Ink on top12.17 AAA
  • --gold #8A6A17 Contrast on paper4.81 AAContrast on surface5.05 AA

On ink

  • --on-dark #E9F3F0 Contrast on ink15.11 AAA
  • --on-dark-2 #C6DBD5 Contrast on ink11.81 AAA
  • --on-dark-3 #B4CFC8 Contrast on ink10.35 AAA
  • --on-dark-muted #95B2AB Contrast on ink7.53 AAA
  • --on-dark-faint #86A69F Contrast on ink6.49 AA
  • --dark-line #24413B Contrast on ink1.54 No text
  • --dark-line-2 #365B53 Contrast on ink2.26 No text
  • --accent-on-dark #6FD2BF Contrast on ink9.49 AAA
  • --accent-on-dark-2 #A6E6D8 Contrast on ink12.17 AAA
  • --accent-on-dark-3 #D3F3EB Contrast on ink14.50 AAA
  • --accent-on-dark-4 #EFFBF8 Contrast on ink16.16 AAA

Hard rule: ember

Ember belongs to the primary call to action and to alerts, and nowhere else. Never a section background, never decoration, never long text, never a second button on the same screen. If the warmth appears twice, it stops meaning “act here”.

--ember #C25333

Usage proportion

Sixty parts paper, thirty ink, eight teal and two ember. That is the proportion that lets one single thing call.

  • Paper 60%
  • Ink 30%
  • Teal 8%
  • Ember 2%

04

Typography

Schibsted Grotesk for headlines, Inter for interface and text. Both bundled on our own domain: no request to a font CDN and no consent problem.

Scale

  • An inverted edge will not close

    --f-4xl clamp(2.2rem,4.2vw + 1.1rem,3.9rem) · Schibsted Grotesk

  • An inverted edge will not close

    --f-3xl clamp(1.85rem,2.9vw + 1.12rem,3.1rem) · Schibsted Grotesk

  • An inverted edge will not close

    --f-2xl clamp(1.5rem,1.9vw + 1.05rem,2.35rem) · Schibsted Grotesk

  • An inverted edge will not close

    --f-xl clamp(1.24rem,1vw + 1.02rem,1.7rem) · Schibsted Grotesk

  • An inverted edge will not close

    --f-lg clamp(1.1rem,0.55vw + 1rem,1.35rem) · Inter

  • An inverted edge will not close

    --f-md clamp(1.03rem,0.3vw + 0.98rem,1.15rem) · Inter

  • An inverted edge will not close

    --f-base 1rem · Inter

  • An inverted edge will not close

    --f-sm 0.8125rem · Inter

  • An inverted edge will not close

    --f-xs 0.75rem · Inter

Allowed weights

  • Decide first--w-reg 400
  • Decide first--w-med 500
  • Decide first--w-semi 600
  • Decide first--w-bold 700
  • Decide first--w-display 620

Four weights and one display weight. No italics in headlines, no bold inside a headline.

Tracking

  • CATEGORY III--tr-tight -0.022em
  • CATEGORY III--tr-snug -0.012em
  • CATEGORY III--tr-wide 0.14em

Large condensed headlines take negative tracking; uppercase labels take positive tracking. Running text is never touched.

Line length

Between fifty-four and sixty-five characters per line: the width at which the eye finds the next line without getting lost, and the one we use for all long text in the product.

Longer and the line is lost; shorter and the rhythm breaks. --measure 65ch · --measure-narrow 54ch

Hierarchy

One h1 per page. Headline in display, subheading in Inter, label in teal uppercase. Never two consecutive levels at the same size.

Bundled families

  • Schibsted Grotesk/fonts/schibsted-latin.woff2latin · 400 900
  • Schibsted Grotesk/fonts/schibsted-latin-ext.woff2latin-ext · 400 900
  • Inter/fonts/inter-latin.woff2latin · 100 900
  • Inter/fonts/inter-latin-ext.woff2latin-ext · 100 900

Served from our own domain. Never from a font CDN.

05

Layout system

One gutter, one vertical rhythm and one spacing scale for the whole site. Everything below is drawn with the token’s value, not with a screenshot.

Spacing

  • --s00rem
  • --s1.25rem
  • --s2.5rem
  • --s3.75rem
  • --s41rem
  • --s51.5rem
  • --s62rem
  • --s73rem
  • --s84rem
  • --s95.5rem
  • --s107.5rem

Radii

  • --r-xs4px
  • --r-sm6px
  • --r-md10px
  • --r-lg14px
  • --r-xl22px
  • --r-pill999px

Elevation

  • --e1At rest: button, resting card
  • --e2Raised: active card, test
  • --e3Floating: menu, panel
  • --e4Above everything: modal, notice

Motion

  • --t-fast150ms
  • --t-base200ms
  • --t-slow250ms
  • --easecubic-bezier(.2,.7,.3,1)

One easing curve. With “reduce motion” on, every duration drops to 1 ms.

Widths and measures

  • --maxw1200px
  • --maxw-narrow760px
  • --toc-w290px
  • --header-h64px
  • --tap44px
  • --gutterclamp(1.15rem,4.2vw,2rem)
  • --section-yclamp(2.75rem,6vw,5rem)
  • --section-y-tightclamp(2rem,4.5vw,3.5rem)
  • --measure65ch
  • --measure-narrow54ch

System rules

  1. 1 px hairlines, not shadows, to separate blocks inside one surface.
  2. Visible numbering: steps, cases and sections are numbered in plain sight, never implied.
  3. One accent per piece: one call, one warm colour, one thing the eye looks at.
  4. One gutter and one vertical rhythm for the whole site: sections are never spaced by eye.
  5. No control under 44 px, on any screen.

06

Components

Rendered live from the same code that serves the product. What you see here is exactly what a student sees.

Clinical case card

Default

Example case

Clean forearm wound, 3 cm, 2 hours old. On approximation the edges invert. What do you do?

Selected

Example case

Clean forearm wound, 3 cm, 2 hours old. On approximation the edges invert. What do you do?

Marked: correct

Example case

Clean forearm wound, 3 cm, 2 hours old. On approximation the edges invert. What do you do?

An inverted edge puts epidermis against dermis: there is no apposition and the scar ends up depressed and wider. It is corrected by redoing the stitch with a 90° entry and more deep than superficial tissue, or with a vertical mattress stitch. Tightening does not evert: it makes the edge ischaemic.

Marked: wrong

Example case

Clean forearm wound, 3 cm, 2 hours old. On approximation the edges invert. What do you do?

An inverted edge puts epidermis against dermis: there is no apposition and the scar ends up depressed and wider. It is corrected by redoing the stitch with a 90° entry and more deep than superficial tissue, or with a vertical mattress stitch. Tightening does not evert: it makes the edge ischaemic.

Disabled

Example case

Clean forearm wound, 3 cm, 2 hours old. On approximation the edges invert. What do you do?

State rule

No state is carried by colour alone: a marked option also gains its key letter, a glyph and the written word, so it reads in greyscale, in print and with colour blindness.

Buttons

Tertiary Inactive

One ember button per screen at most. Every other action is teal, outlined or plain text.

Fields

It is used to save your progress. Nothing else.

Ten characters minimum.

Badges

Level 1 Free Paid In progress Review Coming soon

A badge states the status in words, not only in colour: that is what makes it readable in greyscale and in print.

Dressing

Calcium alginate

  • IndicationHeavy exudate, with a sloughy wound bed that needs autolytic debridement
  • ExudateHeavy
  • ChangeBy dressing saturation and the state of the periwound skin, not by the calendar

Not indicated in: dry wounds, scant exudate or stable dry eschar.

The choice is made on exudate level, wound-bed tissue and the state of the periwound skin (EPUAP/NPIAP/PPPIA 2019).

Level comparison table

The three levels, read from the database: no price is written in the code.
LevellessonsPrice
Esencial10Free
Clínico11€39
Experto8€79

07

Voice and tone

Clinical, confident, direct, colleague to colleague. Short sentences, the verb up front, and no word that would not survive a night shift.

Reference vocabulary: GNEAUPP (Technical Document no. II) and EPUAP/NPIAP/PPPIA (International Guideline, 2019).
We sayWe do not sayWhy
Dependence-related skin lesion (GNEAUPP, LRD)BedsoreLRD is the GNEAUPP umbrella term; “bedsore” says nothing about the force that produced the lesion.
Pressure ulcer / pressure injuryEscharEschar is tissue in the wound bed, not the condition: it describes what you see, not what it is.
Category I to IVGrade I to IVGNEAUPP and EPUAP/NPIAP use “category” to avoid the idea of a ladder you climb up and down.
UnstageableCategory VThere is no category V: it is a full-thickness lesion whose bed is obscured by slough or eschar.
Deep tissue injuryPurple pressure ulcerPersistent non-blanchable deep red, maroon or purple discolouration, with the skin intact or not.
Moisture-associated skin damage (MASD)Moisture ulcerIt is not a pressure ulcer: the cause is moisture, the assessment is different and so is the management.
Friction injuryRub woundFriction is a tangential surface force; shear acts in the deeper planes and is not the same thing.
Non-blanchable erythemaRedness that will not goIt is the criterion that defines category I, and it is checked with finger pressure or a transparent disc.

Forbidden

  • Outcome promises: “learn to suture in a weekend”.
  • Accreditations that do not exist: our certificate is a certificate of completion and grants no professional competence.
  • Commercial urgency: countdowns, limited places, discounts expiring tonight.
  • Decorative emoji on any brand surface.
  • Unsupported clinical advice: every claim carries its source or it is not published.

Register and references

We use the cautious language of the guidelines: “it is recommended”, “consider”, “there is not enough evidence”. Where the guideline hesitates, we hesitate in writing.

Sources are always cited in the piece itself, with document and year.

08

Image policy

An image exists only if it illustrates exactly the content beside it.

Where no correct clinical photograph exists, we draw our own diagram and label it “Diagram”. Never a decorative stock photo, never a sensationalist wound image or one without clinical context. An image that does not correspond is worse than no image.

Correct

Wound-edge morphologyFour schematic sections comparing a clean perpendicular edge, a contused edge, a bevelled edge and an avulsion with tissue loss.Clean edgePerpendicular cutPrimary closureContused edgeDevitalised tissueTrim it firstBevelled edgeThin flapRisk of necrosisAvulsionTissue lossConsider referralWound-edge morphology
Diagram The edge decides the technique: only the first one closes with a plain simple stitch.

Our own diagram, labelled as a diagram, with a written description, next to the text that explains exactly that.

Incorrect

A stock photo of a generic operating theatre next to a text about pressure-ulcer categorisation: it decorates, it does not teach, and it suggests a setting that is not the one in the content.

Before publishing an image

  1. Does it show exactly what the paragraph beside it says? If not, out.
  2. Is it a clinical photograph with context and consent, or should it be a labelled diagram?
  3. Does it have alt text written by someone who understands the content?
  4. Are its origin and licence credited on the credits page?

09

Social templates

Four master grids for Instagram, 1080 × 1350 px (4:5), drawn with these same tokens. Any future piece is composed by picking one, inventing nothing.

  • CASE 01

    Edges invert on approximation. What do you do?

    • A
    • B
    • C
    • D

    A — Case

    Ink background. “CASE 0X” label in teal at the top, the question in a large condensed headline filling most of the height, four options in minimal rows at the bottom and a small symbol in one corner. No photograph.

  • Alginate

    Hydrocolloid

    Heavy exudate, sloughy wound bed.

    B — A/B decision

    Paper background. Split vertically, two options facing each other in large type, a 1 px hairline in the centre and one line of clinical context underneath.

  • It is not a “moisture ulcer”.
    It is MASD.

    GNEAUPP · Technical Document no. II

    C — Vocabulary

    Paper background with a teal accent. “It is not X. It is Y.” at display size, with the source in small type at the foot.

  • THREE LEVELS

    • Essential · €0
    • Intermediate · €39
    • Advanced · €79
    Start free

    D — Product

    Ink background and the only place ember appears: the three-level ladder and a single call to action.

Composition rules

  1. 72 px safe margin on all four sides: no text outside it.
  2. Twelve words maximum in the headline, and never a single word alone on the last line.
  3. The grid alternates ink and paper: never three pieces in a row on the same background.
  4. The clinical source goes inside the image, not only in the caption.
  5. Never a wound photograph in the piece: if something must be illustrated, a labelled diagram.

Measurements

  • Canvas1080 × 13504:5
  • Margin72 pxon all four sides
  • HeadlineSchibsted GroteskInter
  • Grid rhythmA C B A C B A C Dfirst nine pieces