Plus Jakarta Sans + Lora
Grumpy wizards make toxic brew
A standfirst set in Lora, one size up — where a pairing starts earning trust.
The five boxing wizards jump quickly over the lazy dog, mixing jugs of quiet vodka while the jury watches. Click anywhere in this preview and type your own text to try the pairing.
“Type is a beautiful group of letters, not a group of beautiful letters.”
— Matthew Carter
Fig. 1 — Plus Jakarta Sans over Lora, in the wild.
Plus Jakarta Sans 700 / Lora 400 — click any section and type your own copy.
Why it works
Plus Jakarta Sans's rounded corners and open counters keep bold headlines approachable rather than corporate, and Lora's brushed, calligraphic serifs continue that warmth into long-form text. The sans-heading-over-serif-body arrangement flips the classic editorial formula, which reads as contemporary while Lora's moderate contrast preserves book-like reading comfort — a strong fit for personal blogs and content-led brands.
More about each face: Plus Jakarta Sans · Lora
Use this pairing
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@700&family=Lora:wght@400;600&display=swap" rel="stylesheet">h1, h2, h3 {
font-family: 'Plus Jakarta Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
font-weight: 700;
}
body {
font-family: 'Lora', Georgia, 'Times New Roman', serif;
font-weight: 400;
}import { Plus_Jakarta_Sans, Lora } from "next/font/google";
const heading = Plus_Jakarta_Sans({
subsets: ["latin"],
weight: "700",
variable: "--font-heading",
});
const body = Lora({
subsets: ["latin"],
weight: "400",
variable: "--font-body",
});