Zoeken...  ⌘K GitHub

IconWithText icon

Icon links, tekst rechts layout.

/icon-with-text
src/components/icon/IconWithText.astro
---
/**
 * IconWithText
 * Icoon links, koptekst + tekst rechts
 */
interface Props {
  icon?: string;
  headline?: string;
  sub?: string;
  body?: string;
}
const { icon = '🎯', headline = 'Marketing die rendeert', sub = 'Voor ambitieuze bedrijven die willen groeien', body = 'BLURR is geen traditioneel bureau. We werken als verlengstuk van jouw team — strategisch, transparant en volledig gericht op resultaten die tellen. Van de eerste campagne tot een volledig geautomatiseerd marketing ecosysteem.' } = Astro.props;
---

<div class="iwt-wrap">
  <div class="iwt-icon-col">
    <div class="iwt-icon-ring">
      <span class="iwt-icon">{icon}</span>
    </div>
  </div>
  <div class="iwt-text-col">
    {sub && <span class="iwt-sub">{sub}</span>}
    {headline && <h2 class="iwt-headline">{headline}</h2>}
    {body && <p class="iwt-body">{body}</p>}
  </div>
</div>

<style>
  .iwt-wrap {
    --color-accent: #6366f1;
    --color-primary: #0a0a0a;
    display: flex;
    gap: 32px;
    align-items: flex-start;
    padding: 40px 32px;
    font-family: system-ui, sans-serif;
    max-width: 720px;
  }
  @media (max-width: 560px) {
    .iwt-wrap { flex-direction: column; }
  }
  .iwt-icon-col { flex-shrink: 0; }
  .iwt-icon-ring {
    width: 80px;
    height: 80px;
    border-radius: 20px;
    background: linear-gradient(135deg, #6366f1, #818cf8);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 24px rgba(99,102,241,0.3);
  }
  .iwt-icon { font-size: 2rem; }
  .iwt-text-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .iwt-sub {
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-accent);
  }
  .iwt-headline {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--color-primary);
    letter-spacing: -0.02em;
    line-height: 1.25;
  }
  .iwt-body {
    margin: 0;
    font-size: 0.925rem;
    line-height: 1.7;
    color: #4b5563;
  }
</style>

Props

Prop Type Default Beschrijving
icon string Emoji icon
headline string Koptitel
sub string Subtitel

* = verplicht