Zoeken...  ⌘K GitHub

FooterBrand Footer

Groot visueel merkmoment met kleur als achtergrond en grote slogan.

/footer-brand
src/components/footer/FooterBrand.astro
---
/**
 * FooterBrand
 * Footer met groot visueel merkmoment en kleur als achtergrond.
 */
interface Props {
  logo: string;
  slogan: string;
  links?: { label: string; href: string }[];
  copyright?: string;
  bg?: string;
}
const { logo, slogan, links = [], copyright, bg = '#6366f1' } = Astro.props;
---
<footer class="fbrand" style={`background:${bg}`}>
  <div class="fbrand-inner">
    <a href="/" class="fbrand-logo">{logo}</a>
    <p class="fbrand-slogan">{slogan}</p>
    {links.length > 0 && (
      <nav class="fbrand-links">
        {links.map(l => <a href={l.href} class="fbrand-link">{l.label}</a>)}
      </nav>
    )}
    <p class="fbrand-copy">{copyright ?? `© ${new Date().getFullYear()} ${logo}`}</p>
  </div>
</footer>
<style>
  .fbrand { }
  .fbrand-inner { max-width: 900px; margin: 0 auto; padding: 4rem 2rem; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 1.5rem; }
  .fbrand-logo { font-weight: 900; font-size: 1.5rem; color: #fff; text-decoration: none; letter-spacing: -0.04em; }
  .fbrand-slogan { font-size: clamp(1.25rem, 3vw, 2rem); font-weight: 700; color: rgba(255,255,255,0.9); line-height: 1.3; letter-spacing: -0.02em; margin: 0; }
  .fbrand-links { display: flex; flex-wrap: wrap; gap: 2rem; justify-content: center; }
  .fbrand-link { font-size: 0.875rem; font-weight: 500; color: rgba(255,255,255,0.65); text-decoration: none; transition: color 0.15s; }
  .fbrand-link:hover { color: #fff; }
  .fbrand-copy { font-size: 0.8125rem; color: rgba(255,255,255,0.4); margin: 0; }
</style>

Props

Prop Type Default Beschrijving
logo * string Merknaam
slogan * string Grote centrale slogan
links { label: string; href: string }[] Footer links
bg string Achtergrondkleur
copyright string Copyright tekst

* = verplicht