src/components/heading/HeadingEditorial.astro
---
interface Props {
issue?: string;
title: string;
deck: string;
}
const { issue = "Vol. 04 — 2025", title = "De toekomst van digital marketing", deck = "Hoe AI, data en creativiteit samenkomen in een nieuw tijdperk van marketing." } = Astro.props;
---
<div class="hd-editorial">
{issue && <p class="hd-editorial__issue">{issue}</p>}
<h2 class="hd-editorial__title">{title}</h2>
<p class="hd-editorial__deck">{deck}</p>
<div class="hd-editorial__rule"></div>
</div>
<style>
:root {
--color-accent: #6366f1;
--color-primary: #0a0a0a;
}
.hd-editorial {
padding: 2.5rem 0;
max-width: 760px;
}
.hd-editorial__issue {
margin: 0 0 1rem;
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #999;
}
.hd-editorial__title {
margin: 0 0 0.75rem;
font-size: clamp(2.25rem, 5vw, 3.75rem);
font-weight: 900;
line-height: 1.05;
color: var(--color-primary);
letter-spacing: -0.025em;
}
.hd-editorial__deck {
margin: 0 0 1.5rem;
font-size: 1.2rem;
color: #444;
line-height: 1.65;
font-style: italic;
}
.hd-editorial__rule {
width: 60px;
height: 4px;
background: var(--color-accent);
border-radius: 2px;
}
</style>
Props
| Prop | Type | Default | Beschrijving |
|---|---|---|---|
issue | string | — | Volume- of editie-aanduiding |
title * | string | — | Hoofdtitel |
deck * | string | — | Dek-alinea onder de titel |
* = verplicht