hermes-hub/.agents/skills/frontend-design/examples/example-magazine.html

859 lines
27 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>The Common Review — Issue 14, Winter 2026</title>
<meta name="description" content="A quarterly journal of essays, criticism, and letters. Issue 14: On Repair — Winter 2026.">
<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=Source+Serif+4:opsz,wght@8..60,400;8..60,600;8..60,700&family=Inter:wght@400;500&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<style>
/* ============================================================
THE COMMON REVIEW — Issue 14 / Winter 2026
Style: Editorial, NYT Magazine + Pentagram archive
Palette: B/W minimal + editorial red accent
Typography: Source Serif (display+body) + JetBrains Mono (meta)
============================================================ */
:root {
--surface: #FFFFFF;
--ink: #111111;
--ink-muted: #4A4A4A;
--ink-subtle: #888888;
--hairline: #E5E5E5;
--hairline-strong: #C7C7C7;
--accent: #C8281C;
--accent-soft: #FAE6E2;
--font-display: 'Source Serif 4', 'Charter', Georgia, serif;
--font-text: 'Source Serif 4', 'Charter', Georgia, serif;
--font-mono: 'JetBrains Mono', ui-monospace, monospace;
--text-xs: 0.6875rem;
--text-sm: 0.8125rem;
--text-base: 1rem;
--text-md: 1.125rem;
--text-lg: 1.375rem;
--text-xl: 1.75rem;
--text-2xl: 2.25rem;
--text-3xl: 3rem;
--text-4xl: 3.75rem;
--text-5xl: 4.75rem;
--text-6xl: 6rem;
--text-7xl: 7.5rem;
--lead-tight: 1.05;
--lead-snug: 1.2;
--lead-normal: 1.5;
--lead-loose: 1.7;
--track-tightest: -0.035em;
--track-tight: -0.02em;
--track-wide: 0.04em;
--track-widest: 0.14em;
--sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px;
--sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px;
--sp-9: 96px; --sp-10: 128px;
--r-sm: 2px;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
margin: 0;
font-family: var(--font-text);
font-size: var(--text-base);
line-height: var(--lead-normal);
color: var(--ink);
background: var(--surface);
font-feature-settings: 'kern' 1, 'liga' 1, 'onum' 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
a {
color: inherit;
text-decoration: none;
border-bottom: 1px solid var(--hairline-strong);
padding-bottom: 1px;
transition: border-color 140ms ease, color 140ms ease;
}
a:hover { border-color: var(--accent); color: var(--accent); }
a:focus-visible {
outline: 2px solid var(--accent);
outline-offset: 3px;
}
.mono { font-family: var(--font-mono); }
.sr-only {
position: absolute; width: 1px; height: 1px; padding: 0;
margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
white-space: nowrap; border: 0;
}
/* ----- Masthead --------------------------------------------------- */
.masthead {
border-bottom: 1px solid var(--ink);
padding: var(--sp-3) clamp(20px, 4vw, 48px);
text-align: center;
background: var(--surface);
}
.masthead__top {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
margin-bottom: var(--sp-2);
}
.masthead__top span { margin: 0 var(--sp-3); }
.masthead__title {
font-family: var(--font-display);
font-size: clamp(1.75rem, 4vw, 2.5rem);
font-weight: 700;
letter-spacing: var(--track-tight);
margin: 0;
line-height: 1;
}
.masthead__sub {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
margin-top: var(--sp-2);
}
/* ----- Cover / Hero ---------------------------------------------- */
.cover {
max-width: 1100px;
margin: 0 auto;
padding: clamp(48px, 8vw, 96px) clamp(20px, 4vw, 48px);
display: grid;
grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
gap: clamp(40px, 6vw, 80px);
align-items: center;
}
.cover__issue {
font-family: var(--font-mono);
font-size: var(--text-sm);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
margin-bottom: var(--sp-4);
}
.cover__issue span { color: var(--accent); margin-right: var(--sp-2); }
.cover__title {
font-family: var(--font-display);
font-size: clamp(3rem, 8vw, 7.5rem);
font-weight: 700;
letter-spacing: var(--track-tightest);
line-height: 0.95;
margin: 0 0 var(--sp-5) 0;
}
.cover__subtitle {
font-family: var(--font-display);
font-style: italic;
font-weight: 400;
font-size: clamp(1.25rem, 2.5vw, 1.875rem);
color: var(--ink);
line-height: 1.3;
margin-bottom: var(--sp-6);
max-width: 28ch;
}
.cover__lede {
font-size: var(--text-md);
line-height: 1.5;
max-width: 38ch;
color: var(--ink);
margin-bottom: var(--sp-7);
}
.cover__byline {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-wide);
text-transform: uppercase;
color: var(--ink-muted);
}
.cover__byline strong {
color: var(--ink);
font-weight: 500;
}
/* Cover "art" — CSS-only geometric composition */
.cover__art {
aspect-ratio: 4 / 5;
background: var(--ink);
position: relative;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}
.cover__art svg { width: 80%; height: 80%; }
/* ----- Section markers ------------------------------------------- */
.marker {
max-width: 1100px;
margin: 0 auto;
padding: var(--sp-7) clamp(20px, 4vw, 48px) var(--sp-5);
}
.marker__line {
display: flex;
align-items: center;
gap: var(--sp-3);
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
}
.marker__line::before, .marker__line::after {
content: '';
flex: 1;
border-top: 1px solid var(--hairline);
}
.marker__title {
font-family: var(--font-display);
font-style: italic;
font-weight: 400;
font-size: clamp(1.5rem, 3vw, 2.25rem);
margin: var(--sp-3) 0 0 0;
color: var(--ink);
}
/* ----- Index of articles ---------------------------------------- */
.index {
max-width: 1100px;
margin: 0 auto;
padding: 0 clamp(20px, 4vw, 48px) var(--sp-9);
}
.index__list {
list-style: none;
margin: 0;
padding: 0;
border-top: 1px solid var(--ink);
}
.index__item {
display: grid;
grid-template-columns: 60px minmax(0, 2.5fr) minmax(0, 1.5fr) 100px;
gap: var(--sp-5);
align-items: baseline;
padding: var(--sp-5) 0;
border-bottom: 1px solid var(--hairline);
transition: padding 200ms ease;
}
.index__item:hover { padding-left: var(--sp-3); }
.index__item:hover .index__title { color: var(--accent); }
.index__no {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-wide);
color: var(--ink-muted);
}
.index__title {
font-family: var(--font-display);
font-size: clamp(1.25rem, 2vw, 1.625rem);
font-weight: 600;
letter-spacing: var(--track-tight);
line-height: 1.2;
transition: color 200ms ease;
}
.index__author {
font-family: var(--font-display);
font-style: italic;
font-size: var(--text-sm);
color: var(--ink-muted);
}
.index__pages {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-wide);
color: var(--ink-muted);
text-align: right;
}
@media (max-width: 720px) {
.index__item {
grid-template-columns: 32px 1fr;
grid-template-rows: auto auto;
gap: var(--sp-2);
}
.index__author, .index__pages { grid-column: 2; }
}
/* ----- Featured article (full spread) --------------------------- */
.feature {
max-width: 1100px;
margin: 0 auto;
padding: var(--sp-9) clamp(20px, 4vw, 48px);
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
gap: clamp(32px, 6vw, 80px);
border-top: 1px solid var(--hairline);
}
.feature__meta {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
}
.feature__meta p { margin: 0 0 var(--sp-2) 0; }
.feature__meta strong { color: var(--ink); font-weight: 500; }
.feature__body {
max-width: 60ch;
}
.feature__kicker {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--accent);
margin: 0 0 var(--sp-4) 0;
}
.feature__title {
font-family: var(--font-display);
font-size: clamp(2rem, 4.5vw, 3.5rem);
font-weight: 700;
letter-spacing: var(--track-tight);
line-height: 1.05;
margin: 0 0 var(--sp-6) 0;
}
.feature__lede {
font-family: var(--font-display);
font-style: italic;
font-weight: 400;
font-size: clamp(1.125rem, 1.8vw, 1.5rem);
line-height: 1.4;
margin: 0 0 var(--sp-6) 0;
color: var(--ink);
}
.feature__lede::first-letter {
font-family: var(--font-display);
font-weight: 700;
font-size: 4em;
float: left;
line-height: 0.85;
margin: 0.08em 0.08em 0 0;
color: var(--ink);
}
.feature__text {
font-size: var(--text-md);
line-height: var(--lead-loose);
color: var(--ink);
}
/* Pull quote */
.pullquote {
max-width: 1100px;
margin: var(--sp-9) auto;
padding: 0 clamp(20px, 4vw, 48px);
display: grid;
grid-template-columns: 1fr 4fr 1fr;
}
.pullquote__body {
grid-column: 2;
border-top: 1px solid var(--ink);
border-bottom: 1px solid var(--ink);
padding: var(--sp-7) 0;
font-family: var(--font-display);
font-style: italic;
font-weight: 400;
font-size: clamp(1.5rem, 3.5vw, 2.5rem);
line-height: 1.25;
letter-spacing: var(--track-tight);
color: var(--ink);
}
.pullquote__attr {
display: block;
margin-top: var(--sp-4);
font-style: normal;
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
}
/* ----- Sections (Essays, Letters, Reviews) ---------------------- */
.section {
max-width: 1100px;
margin: 0 auto;
padding: 0 clamp(20px, 4vw, 48px);
display: grid;
grid-template-columns: 200px minmax(0, 1fr);
gap: clamp(32px, 5vw, 64px);
padding-block: var(--sp-9);
border-top: 1px solid var(--hairline);
}
.section__head {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink-muted);
}
.section__head .no { display: block; font-size: var(--text-sm); margin-bottom: var(--sp-2); color: var(--accent); }
.section__head .title {
display: block;
font-family: var(--font-display);
font-style: italic;
font-size: clamp(1.25rem, 2vw, 1.625rem);
font-weight: 400;
text-transform: none;
letter-spacing: var(--track-tight);
color: var(--ink);
}
.section__items {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--sp-7);
}
.excerpt {
display: grid;
gap: var(--sp-3);
}
.excerpt__title {
font-family: var(--font-display);
font-size: clamp(1.25rem, 2.2vw, 1.625rem);
font-weight: 600;
letter-spacing: var(--track-tight);
line-height: 1.2;
margin: 0;
}
.excerpt__byline {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-wide);
text-transform: uppercase;
color: var(--ink-muted);
}
.excerpt__body {
font-size: var(--text-base);
line-height: var(--lead-loose);
color: var(--ink);
margin: 0;
}
/* ----- Subscribe / Footer -------------------------------------- */
.subscribe {
max-width: 1100px;
margin: 0 auto;
padding: var(--sp-9) clamp(20px, 4vw, 48px);
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
gap: clamp(32px, 6vw, 80px);
align-items: center;
border-top: 1px solid var(--ink);
}
.subscribe__title {
font-family: var(--font-display);
font-size: clamp(1.75rem, 3.5vw, 2.75rem);
font-weight: 600;
letter-spacing: var(--track-tight);
line-height: 1.1;
margin: 0 0 var(--sp-3) 0;
}
.subscribe__body {
font-size: var(--text-md);
line-height: 1.5;
color: var(--ink-muted);
max-width: 40ch;
margin: 0;
}
.subscribe__form {
display: flex;
gap: 0;
border-bottom: 1px solid var(--ink);
}
.subscribe__input {
flex: 1;
padding: var(--sp-3) 0;
background: transparent;
border: 0;
font-family: var(--font-display);
font-size: var(--text-md);
color: var(--ink);
outline: none;
}
.subscribe__input::placeholder { color: var(--ink-subtle); font-style: italic; }
.subscribe__input:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.subscribe__submit {
padding: var(--sp-3) var(--sp-4);
background: transparent;
border: 0;
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
color: var(--ink);
cursor: pointer;
transition: color 140ms ease;
}
.subscribe__submit:hover { color: var(--accent); }
.colophon {
border-top: 1px solid var(--hairline);
padding: var(--sp-6) clamp(20px, 4vw, 48px);
max-width: 1100px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--sp-5);
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-wide);
color: var(--ink-muted);
}
.colophon h4 {
font-family: var(--font-mono);
font-size: var(--text-xs);
letter-spacing: var(--track-widest);
text-transform: uppercase;
margin: 0 0 var(--sp-2) 0;
color: var(--ink);
font-weight: 500;
}
.colophon p { margin: 0; line-height: 1.6; }
@media (max-width: 720px) {
.cover, .feature, .subscribe, .section {
grid-template-columns: 1fr;
gap: var(--sp-7);
}
.colophon { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
scroll-behavior: auto !important;
}
}
</style>
</head>
<body>
<!-- ====== MASTHEAD ========================================== -->
<header class="masthead" role="banner">
<div class="masthead__top mono">
<span>Vol. XIV</span>
<span>·</span>
<span>Winter 2026</span>
<span>·</span>
<span>£14 / $18</span>
</div>
<h1 class="masthead__title">The Common Review</h1>
<p class="masthead__sub mono">A Quarterly of Essays, Criticism &amp; Letters · Est. 2012</p>
</header>
<main id="main">
<!-- ====== COVER ============================================== -->
<section class="cover" aria-labelledby="cover-title">
<div>
<p class="cover__issue mono">
<span>Issue 14</span> · On Repair
</p>
<h2 id="cover-title" class="cover__title">
On mending<br>
what was<br>
not broken.
</h2>
<p class="cover__subtitle">
Twelve essays on the strange comfort of fixing things,
the things we break to fix, and what we learn in between.
</p>
<p class="cover__lede">
From a violin maker in Cremona to a network engineer in
Bangalore to a divorcée in Brooklyn repairing her mother's
dining chairs — twelve writers consider the work of repair
in an age that has stopped expecting things to last.
</p>
<p class="cover__byline mono">
<strong>Edited by</strong> Helen Marstrand &amp; Imani Okafor ·
<strong>Cover</strong> Plate IV (after Ruskin) by T. Belo
</p>
</div>
<!-- Cover art — pure CSS/SVG, "after Ruskin" abstract composition -->
<figure class="cover__art" aria-hidden="true">
<svg viewBox="0 0 200 250" xmlns="http://www.w3.org/2000/svg">
<!-- Architectural fragment / broken column -->
<g fill="none" stroke="#FFFFFF" stroke-width="0.8">
<line x1="40" y1="40" x2="160" y2="40"/>
<line x1="40" y1="55" x2="160" y2="55"/>
<line x1="60" y1="55" x2="60" y2="100"/>
<line x1="100" y1="55" x2="100" y2="100"/>
<line x1="140" y1="55" x2="140" y2="100"/>
<line x1="40" y1="100" x2="160" y2="100"/>
<!-- broken section -->
<line x1="60" y1="120" x2="100" y2="120"/>
<line x1="120" y1="125" x2="140" y2="125"/>
<line x1="60" y1="140" x2="100" y2="140"/>
<line x1="120" y1="145" x2="140" y2="145"/>
<!-- base -->
<line x1="30" y1="180" x2="170" y2="180"/>
<line x1="30" y1="195" x2="170" y2="195"/>
<line x1="40" y1="210" x2="160" y2="210"/>
</g>
<!-- "Crack" — irregular line -->
<path d="M 105 100 L 110 130 L 100 155 L 115 175 L 105 195"
fill="none" stroke="#C8281C" stroke-width="1.5"/>
<text x="100" y="235" text-anchor="middle"
font-family="JetBrains Mono, monospace"
font-size="6" letter-spacing="2" fill="#FFFFFF">
PLATE IV · AFTER RUSKIN · 2026
</text>
</svg>
</figure>
</section>
<!-- ====== INDEX OF ARTICLES ================================== -->
<div class="marker" aria-hidden="false">
<div class="marker__line">
<span>§ 01 — In this issue</span>
</div>
<p class="marker__title">Twelve pieces, ordered as they were received.</p>
</div>
<section class="index" aria-label="Index of articles in this issue">
<ol class="index__list">
<li class="index__item">
<span class="index__no mono">001</span>
<span class="index__title">The Last Violin Maker of Cremona</span>
<span class="index__author">by Marta Bellucci</span>
<span class="index__pages mono">pp. 6 — 19</span>
</li>
<li class="index__item">
<span class="index__no mono">002</span>
<span class="index__title">A Letter from Bangalore, on Servers</span>
<span class="index__author">by Pranav Iyer</span>
<span class="index__pages mono">pp. 20 — 33</span>
</li>
<li class="index__item">
<span class="index__no mono">003</span>
<span class="index__title">Six Chairs, One Mother, One Summer</span>
<span class="index__author">by Ruth Cohen</span>
<span class="index__pages mono">pp. 34 — 47</span>
</li>
<li class="index__item">
<span class="index__no mono">004</span>
<span class="index__title">The Architecture of Ruins</span>
<span class="index__author">by David Park, AIA</span>
<span class="index__pages mono">pp. 48 — 63</span>
</li>
<li class="index__item">
<span class="index__no mono">005</span>
<span class="index__title">Mending, an interview with Jun Takahashi</span>
<span class="index__author">by Imani Okafor</span>
<span class="index__pages mono">pp. 64 — 78</span>
</li>
<li class="index__item">
<span class="index__no mono">006</span>
<span class="index__title">On Throwing Things Away (and Why We Don't)</span>
<span class="index__author">by Helen Marstrand</span>
<span class="index__pages mono">pp. 79 — 88</span>
</li>
</ol>
</section>
<!-- ====== FEATURED ARTICLE =================================== -->
<article class="feature" aria-labelledby="feature-title">
<aside class="feature__meta mono">
<p><strong>Essay</strong></p>
<p>№ 001 / 12</p>
<p>pp. 6 — 19</p>
<p style="margin-top: var(--sp-5)">From the Editor</p>
</aside>
<div class="feature__body">
<p class="feature__kicker">From Issue 14</p>
<h2 id="feature-title" class="feature__title">
The Last Violin<br>
Maker of Cremona
</h2>
<p class="feature__lede">
There are perhaps forty of them still working in the city
where the violin was invented. Marta Bellucci spent three
months with one of the youngest, who is sixty-three, and
has begun to wonder what happens when there are none.
</p>
<p class="feature__text">
The workshop is on the second floor of a building that has
not been painted since 1962. You climb a narrow staircase
and pass a door marked <em>Ulderico Bellucci — Liutaio</em>,
and you enter a room that smells of spruce and varnish and
the slow, patient work of centuries. Signor Bellucci is
already at his bench when I arrive, as he has been every
morning for forty-one years.
</p>
</div>
</article>
<!-- ====== PULL QUOTE ========================================= -->
<aside class="pullquote">
<blockquote class="pullquote__body">
"The instrument is not finished when it leaves my bench.
It is finished when it is played, and then it begins, slowly,
to become something else."
<span class="pullquote__attr">— Marta Bellucci, p. 14</span>
</blockquote>
</aside>
<!-- ====== SECTIONS =========================================== -->
<section class="section" aria-labelledby="letters-heading">
<div class="section__head">
<span class="no">§ 02</span>
<span class="title">Letters</span>
</div>
<ul class="section__items" role="list">
<li class="excerpt">
<h3 class="excerpt__title">On the Problem with "Repair" as a Metaphor</h3>
<p class="excerpt__byline mono">by A. Whitfield-Reeves · 2 pages</p>
<p class="excerpt__body">
The word <em>repair</em> suggests that there was once a state
of being unbroken. I'm not sure that is true of language,
of relationships, or of institutions. A modest dissent.
</p>
</li>
<li class="excerpt">
<h3 class="excerpt__title">A Reply from Bombay</h3>
<p class="excerpt__byline mono">by D. Mistry · 1 page</p>
<p class="excerpt__body">
Whitfield-Reeves is right about language and wrong about
institutions. I have spent twenty years repairing both,
and only the second has been worth the effort.
</p>
</li>
</ul>
</section>
<section class="section" aria-labelledby="reviews-heading">
<div class="section__head">
<span class="no">§ 03</span>
<span class="title">Reviews</span>
</div>
<ul class="section__items" role="list">
<li class="excerpt">
<h3 class="excerpt__title">
<em>The Repair Manual</em>, by Klara Vozka &amp; Henrik Pálsson
</h3>
<p class="excerpt__byline mono">Reviewed by Sofia Mendes · 3 pages</p>
<p class="excerpt__body">
A useful and sometimes maddening book. The authors have
fixed, between them, four washing machines, a guqin, and
a marriage. The first two are described with great clarity;
the third is the book's undoing and its quiet triumph.
</p>
</li>
<li class="excerpt">
<h3 class="excerpt__title">
<em>On Things That Endure</em>, by Asha Pradhan
</h3>
<p class="excerpt__byline mono">Reviewed by T. Belo · 2 pages</p>
<p class="excerpt__body">
Pradhan writes with the kind of attention usually reserved
for rare insects. The book is short, the sentences longer
than they look, and the final chapter — on a clay pot her
grandmother refused to throw away — is one of the best
things I've read this year.
</p>
</li>
</ul>
</section>
<!-- ====== SUBSCRIBE ========================================== -->
<section class="subscribe" aria-labelledby="subscribe-title">
<div>
<h2 id="subscribe-title" class="subscribe__title">
Four issues a year.<br>
By post, or by screen.
</h2>
<p class="subscribe__body">
Subscribers receive each issue at the start of the season,
with the option of a printed copy posted from Edinburgh.
£48 / year (UK), £62 (Europe), $78 (rest of world).
</p>
</div>
<form class="subscribe__form" action="#" method="post" novalidate>
<label for="email" class="sr-only">Your email</label>
<input id="email" type="email" required class="subscribe__input"
placeholder="your email" autocomplete="email">
<button type="submit" class="subscribe__submit">Subscribe →</button>
</form>
</section>
</main>
<!-- ====== COLOPHON ============================================ -->
<footer class="colophon" role="contentinfo">
<div>
<h4>Set in</h4>
<p>
Source Serif 4<br>
Inter (display meta)<br>
JetBrains Mono (metadata)
</p>
</div>
<div>
<h4>The Common Review</h4>
<p>
Published quarterly by<br>
Common Editions Ltd., Edinburgh<br>
ISSN 2050-4118
</p>
</div>
<div>
<h4>Correspondence</h4>
<p>
12 Forrest Road, EH1 2QN<br>
<a href="mailto:editor@commonreview.org">editor@commonreview.org</a><br>
Letters welcomed
</p>
</div>
</footer>
</body>
</html>