{% load brickwork_icons %} {% comment %} Feature grid (04-interfaces.md section 4d): a responsive grid of feature cards. Structural, consumed via {% include %} (BR-BW-MKT ยง4d structural- include doctrine). Required context: none. Optional context: heading (str): the section intro heading. lede (str): the section intro body. items (list of dicts): {icon?, heading, body, url?, aria_label?}. icon is a registry name rendered via {% bw_icon %} decorative=True (the icon reinforces the heading/body text, which already carries the meaning). An empty (or omitted) items list renders the section intro alone (or nothing at all if that too is empty), never a fabricated placeholder card. List-shaped, so it has no flat-kwarg spelling (#98): a Django template cannot build a list inline, so supply items from context (the view, or a wrapper template's own data); the scalar intro context (heading, lede, columns) is flat and template-authorable as-is. item.url (str, optional, #99): when present the whole card renders as an anchor (bw-feature-card--link) so a feature card can navigate to its subject, taking the marketing kit's link hover affordance (the heading ink moves to accent on hover, with the standard colour transition; the focus ring comes from the global :focus-visible rule). Absent, the card stays the plain non-interactive
{{ lede }}
{% endif %}