Mojo Stylesby Mojo Layers

StylesPrimer

Style 39 of 41 · day and night study

Primer

Courses as a website: an outline with every lesson's minutes and a finish date from your hours a week, intakes with places left, a fee planner up front or in instalments with the refund date for your intake, recognition said plainly, and an honest fit check. Literata on chalk white with cobalt and a highlighter.

ClearHonestEncouraging

Best for

  • Online courses
  • Tutors
  • Music schools
  • Driving schools
  • Workshops
Literata · Inclusive Sans · Roboto Mono
Primer template home page: a bookish serif headline 'Do your own books, without the dread.' with the last words marked in highlighter yellow, beside a course outline card with a slider for hours a week, a finish date, and the first module open showing video, reading, practice and quiz lessons with their minutes
Primer template on a phone

STYLE.md ·

How Primer works. Every rule, written down.

Courses and education, as a website. It has four pieces:

  • A course outline. Modules you open one at a time, every lesson with its kind (video, reading, practice, live, quiz) and its minutes, what you'll be able to do at the end, and the totals worked out from the lessons. For self-paced courses, a slider turns your hours a week into a finish date.
  • Intakes. Start dates with their mode and times, places left, and full ones marked with the waitlist.
  • A fee planner. Up front or in instalments, dated from today, with the same total either way, and the last day for a full refund worked out from the intake you choose.
  • A fit check. A few honest questions with an honest answer, including "not yet, start here instead".

The type is Literata, Inclusive Sans and Roboto Mono, on chalk white with ink, one cobalt and a highlighter yellow. An open book with a bookmark is the mark.

Clear · honest · encouraging

Best for

  • Course providers, tutors and online schools. Short courses, bootcamps, cohort courses and self-paced ones. It's written to the recognition, refund and accessibility expectations (see "Courses: what we build in").
  • Anyone who teaches in sessions and takes enrolments:
    • music schools (Keys & Co: a term lesson by lesson, groups of four, a keyboard to borrow)
    • driving schools (Clearway: a ten-lesson package, start weeks by instructor, the learner-hours reality)
    • swim schools, language schools, coaching, workshops, community education
  • Audiences: adults deciding whether a course is worth their time and money, and people who need to know it'll work for them before they pay.

Less suited to: a school's whole website (newsletters, uniforms and the canteen), a university, or a creator's video library (Cue).

Personality and voice

Clear and encouraging, like a good teacher on the first day, and straight about what the course is and isn't.

  • Headlines: "Do your own books, without the dread." · "Dates and fees, all of them." · "An honest answer."
  • Buttons: "See dates and fees" · "Is it for me?" · "Enrol for 9 November, $690"
  • Microcopy:
    • "At 2 hours a week, about 4 weeks: starting Monday 9 November, finishing around 7 December."
    • "Full refund until Monday 23 November (14 days after you start)."
    • "Not yet. Here's what would help first."
  • Words to avoid: "accredited" or "certified" for a course that isn't, job or salary guarantees, "only 2 places left!" when it isn't true, and hidden instalment fees.

Colour

Token Day (light) Night study (dark) Role
--paper #fafaf7 #101217 Page
--card #ffffff #1a1d23 The outline, fees, fit check
--well #f1f1ec #15171c Alternate sections
--line #dfe0d9 #2d313a Hairlines
--ink / --ink-2 #16181d / #3b3e46 #eceef3 / #d0d3da Text
--muted #5c606b #9ea3ae Meta, minutes
--nib #263fa3 #9db0ff The one accent: buttons, links, the chosen intake
--hi #ffe14d #ffe46b Highlighter, fills only: behind the lit words, places taken, the fit score; text on it is ink
--hi-ink #7a5d00 #ffe46b The yellow as text (practice lessons)
--alert #b02a1f #ff978c Invalid fields, full intakes, a poor fit

Measured contrast (WCAG).

  • Day:
    • ink on paper 17.0:1
    • muted on paper 6.0:1 (5.6:1 on well)
    • cobalt on paper 8.7:1 (8.0:1 on well, 7.4:1 on its soft fill), white on cobalt 9.0:1
    • ink on highlighter 13.6:1; highlighter text 5.9:1
    • alert on paper 6.3:1
  • Night study:
    • ink 16.1:1
    • muted 7.4:1 (6.7:1 on card)
    • cobalt 9.0:1, text on cobalt 8.4:1, cobalt on its soft fill 7.5:1
    • highlighter 14.8:1, alert 9.0:1
  • Example dials: plum (Keys & Co), road green (Clearway) and tomato (Northside) all meet AA, and so does each closing card.

Typography

  • Display: Literata, 500–800 with italics. Made for long reading on screens; headlines, module names, fees.
  • Body: Inclusive Sans, 300–700. Designed for legibility, with distinct letterforms.
  • Mono: Roboto Mono, 400–600. Minutes, dates, places left.
Token Size Use
--fs-h1 clamp(42px, 5.6vw, 84px) Page headline
--fs-h2 clamp(30px, 3.5vw, 52px) Section headline
--fs-h3 21px Card titles
--fs-lead clamp(17.5px, 1.35vw, 20.5px) Intro paragraphs
--fs-body 17px Body

The signature move: the lit words in the headline get a highlighter stroke swept across them, as if someone marked the bit that matters.

Layout

  • Frame: a 1200px wrap with a max(20px, 4vw) gutter. An ink top line with a highlighter label for the next intake; a sticky header with the book mark; faint ruled lines, like an exercise book, in the hero.
  • Hero: copy on the left; the course outline on the right.
  • Then: intakes beside the fee planner; the fit check; support; straight answers; and a deep closing card ruled like a page, with a highlighter stroke sweeping across.

Shape

  • Friendly: --r-s 8px, --r-m 12px, --r-l 20px.
  • Intakes: a little calendar leaf with the month in red and the day in Literata.
  • The mark: an open book with a highlighter bookmark.

Motion language

  • Outline: modules open in place; the plus turns to a cross.
  • Fee planner: the schedule's rows step in when the plan or intake changes.
  • Fit check: the score fills like a highlighter.
  • Elsewhere: the highlighter sweeps across the headline, the closing card's stroke sweeps, sections reveal with a 14px rise over 650ms, and the phone menu drops in.
  • Motion switch in the footer ([data-motion-toggle], html.calm, remembered as site-motion, with the default from prefers-reduced-motion). Calm stops the sweeps, steps and fills.
  • Night study switch ([data-theme-toggle]), remembered as site-theme; theme-color follows.

Imagery and illustration

Real photos of real classes and real student work, with permission. The template uses the outline itself as the picture. No invented testimonials, completion rates or job outcomes.

Signature components

  • Outline: .outline[data-outline][data-for="<intakes id>"][data-max-useful], containing:
    • [data-outline-total], and either .pace with input[data-pace] and [data-pace-result], or a plain .pace paragraph for cohort courses
    • .modules > .module, each with button.mod-head[aria-controls] and .mod-body (.can, then .lessons > li[data-mins][data-count] with .kind.video|reading|practice|live|quiz)
  • Intakes: .intakes[data-intakes] (with an id) holding button.intake with data-date, data-name, data-mode, data-cap and data-places.
  • Fee planner: .fees[data-fees][data-for] with data-total, data-instalments, data-every, data-refund-days, data-refund-pct and optional data-refund-text, containing [data-fees-for], [data-plan="full"|"split"], [data-schedule], [data-fee-total], [data-refund], .recog (.yes when nationally recognised) and [data-fees-go].
  • Fit check: form.fit[data-fit] (optional data-yes, data-maybe, data-no) with fieldset[data-q][data-tip] radios valued 0, 1 or 2, and [data-fit-out].
  • Supporting pieces: .enrol-grid, .card, .facts, .notice, .side-box, .faq, .close-card (--close-bg, --close-em).

Multi-page kit

  • Phone menu: .menu-btn[aria-controls] opens .site-menu. Escape, an outside click or choosing a link closes it, and Tab stays inside while it's open.
  • Current page: aria-current="page", shown as a cobalt-soft pill.
  • Inner pages: .page-head (ruled lines on the right), .crumbs, a .tag and a smaller .h1.
  • Fields: .field, .fields, .field-wide, fieldset.field-set, .check, .form-card, [aria-invalid="true"]; form[data-template].
  • Tiles, segmented control, gate, slider, switch, tables: .choices, .seg, [data-gate], input.range, .switch[role=switch], .table.
  • Events: intake (date, mode), pace (hours, weeks, finish), fees (plan, total, today), fit (answered, score).
  • Helper: Primer.refresh(root).

Courses: what we build in

We checked these for Australian course providers in October 2026:

  • Recognised or not, said plainly. Registered training organisations must show their RTO code and the code and title of nationally recognised courses, and everyone must clearly distinguish nationally recognised training from other training (ASQA, Standards for RTOs 2025). A provider that isn't an RTO says its courses aren't nationally recognised, on the fees and at enrolment, and the fit check sends people who want a qualification to an RTO.
  • Refunds and consumer law. Refund terms are given as dates for the student's own intake, and consumer guarantees apply whatever the policy says. Cancelling is online, and instalments stop straight away (the ACCC has acted against providers that made cancelling hard).
  • No pressure, no false outcomes. Places left are real; no job or salary guarantees; marketing email is optional and unticked.
  • Accessible learning. Captions edited by people, transcripts, keyboard and screen reader support, no timed quizzes, and adjustments on request.

These notes are design guidance, not legal advice.

Do and don't

  • Do show every lesson's time, and the totals from them.
  • Do say whether a course is nationally recognised, every time fees are shown.
  • Do tell people when a course isn't right for them yet.
  • Don't charge more for instalments without saying so up front.
  • Don't invent completion rates, testimonials or job outcomes.
  • Don't use the highlighter for anything but emphasis and fills.

Accessibility

  • AA contrast throughout (measured above), a skip link and a 3px focus ring.
  • Outline: modules are disclosure buttons; the pace slider is labelled and its result announced.
  • Intakes: toggle buttons whose text says the date, the group and the mode; full intakes are disabled with the reason in words.
  • Fee planner: the schedule and refund date are announced politely; the button names the date and the amount.
  • Fit check: real radio groups with legends; the verdict is announced.
  • Forms: labelled fields, errors listed in an alert, linked to and marked on each field.
  • Testing: responsive to 360px, and tested with motion on and off, in Day and Night study.

How to make it yours

Dial Range
Accent Cobalt (default), plum (Keys & Co), road green (Clearway), tomato (Northside). Set --nib, --nib-2, --nib-soft, --focus (plus --on-nib at night), --close-bg and --close-em.
Outline Your modules and lessons with real minutes; a pace slider for self-paced courses, or a schedule line for cohorts.
Intakes Your start dates, modes and capacity, from your enrolment system.
Fees Your fee, instalments, and refund window, or your own refund sentence.
Not negotiable Recognised or not said plainly, real places left, refund dates, unticked marketing consent, captions, and the Motion switch.

Start with Primer

Your business, in Primer. Fixed price, your content.

We set your logo, palette and words within Primer's rules and build the site. Prices in AUD, no GST added, 50% upfront and 50% on delivery.

Industry templates in Primer

Pricing and FAQOpen the live templateWant something bespoke instead?

The other 40

Dark · WebGL lightAurora

A living light field behind frosted glass.

Light and dark · interactiveSignal.

Precision you can see: a paper page around a dark instrument.

Light and dark · product motionStrata

A night band of moving print-layer lines over calm surfaces.

Light and dark · showroomFolio

A quiet showroom where the work is the hero.

Paper · night runRiso

Spot inks that overprint, sliding into register.

Light and evening · editorialAtelier

Quiet luxury, set like a lookbook.

Colour blocks · kinetic typeMarquee

Kinetic type on full-bleed colour blocks.

Light and dusk · physicsPebble

Soft clay pebbles you can flick, for brands that look after people.

Light and after hours · labelsRemedy

The care of a well-run dispensary: labels that print, packs that count out.

Bench and night shift · evidenceAssay

Corporate science: a chromatogram that runs, a batch that releases.

Day and night freight · logisticsDispatch

Clinical logistics: a parcel that rides its tracker, a label that slaps on.

Day clinic and night shift · telehealthVigil

Telehealth with a lamp left on: the clinic's day as a clock, every free time lit.

Case notes and after hours · disclosureCandour

A clinic that shows its working: a record that writes itself, a ledger that says who pays.

Day and night board · split-flapTableau

The menu board: rows that clatter into place, price tickets and one brass accent.

Reading room and night stacks · filedCatalogue

Information, filed: index cards in a drawer, pulled to the front one at a time.

Day issue and night issue · officialCharter

The official document, made friendly: a record that fills itself in under a foil seal.

Birch and polar night · steadyCairn

Care built stone by stone: a cairn that stacks itself and a year with the visits marked.

Salon and after hours · polishedLustre

The salon chair as a website: a swatch fan that opens and a menu where every service is timed.

Daylight and evening · elegantBlush

The makeup case, opened: a compact that flips up to pans you can tap, and a morning planned backwards.

Clinic and night clinic · candidLucent

Clinical calm, layered light: a cross-section to explore and risks given equal billing.

Daytime and night shift · brightPolish

Bright and tidy: a polish rack that paints nails, a builder that adds up, a queue you can join.

Shopfront and late shift · old-schoolClipper

The corner barbershop: a pole that turns, a board of who's free, a ticket printer.

Parchment and back room · boldFlash

The tattoo studio: a flash sheet that inks itself in, an estimate, the artists' books.

Morning and cool room · freshStem

The florist: build a bouquet stem by stem, a ring of seasons, a cut-off that tells the truth.

Proof and darkroom · quietContact

The photographer: a contact sheet that develops, coverage on the day's timeline, is my date free?

Clinic and after hours · gentleEnamel

The dentist: tap the tooth that hurts, every fee with its number, a comfort plan that comes with you

Daylight and night shift · warmCollar

The vet: a tag that engraves their name, is it urgent?, did they eat it?, their first year by date

Paper and chambers · plainClause

The lawyer: a clause that redlines itself into plain English, terms that explain themselves, the fee up front

Morning and evening · calmExhale

The studio: a breath that paces you, a timetable with spots left, the cheapest way to come

Lunch and dinner · warmMise

The restaurant: pick your table on the floor plan, a menu that listens for allergies, an honest surcharge

Day and lights out · friendlyThread

The forum: replies on a thread line, a report on every post, similar threads as you type

Morning and late edition · trustworthyMasthead

The newsroom: labels on every story, corrections you can see, a live blog that waits for you

Studio and screening · boldCue

The video creator: chapters on the scrubber, a transcript that follows along, partnerships marked

Daylight and after dark · loudNeedle

Music streaming: a player bar that follows you, explicit songs marked, lyrics that light up

Matinee and late show · cinematicReel

TV and film streaming: ratings with reasons, profiles that lock or hide, shelves and a title sheet

Light and dark · clearConsole

Software products: a tour with hotspots, pricing with real totals, data location and uptime

Daylight and evening · warmKindred

Charities: a gift picker with a live receipt, where every dollar went, volunteer shifts, and a gift you can stop online

Day and night · upfrontTurndown

Places to stay: nightly rates on a calendar, the whole total up front, cancellation in dates, rooms measured

Daylight and candlelight · warmGarland

Weddings and events: dates with minimum spends, a quote with every line, spaces that fit, the day hour by hour

Playtime and nap time · warmSprout

Childcare: the gap after the subsidy, rooms by age with ratios, places by day, the full quality rating

Custom · from $2,500Yours?

A look nobody else has, designed from scratch.