{% load brickwork_components %} {% comment %} Callout (Beat Phase B, icvoss/django-brickwork#542): an editorial note pulled out of the flow of a docs or blog page. Promotes the content/callout example pattern and the existing .bw-callout* CSS into a callable include. WHY THIS IS NOT {% bw_alert %} / _alert.html. An alert is a STATUS message about the current state of the application ("your export failed"). A callout is editorial: part of the document, true whenever the page is read, and not a response to anything the reader did. They look similar and mean different things, so a callout is NEVER given role="alert" or aria-live: announcing a permanent note as if it just happened is wrong, and it would interrupt a screen-reader user mid-sentence. Required: title (the kind is stated as TEXT here, never colour alone). Optional: body (str): plain paragraph body on the include path. variant ("note" default | "info" | "success" | "warning" | "danger" | "neutral"): maps to .bw-callout--* modifiers. Named blocks (semver-public, BR-BW-TPL-001): body: rich body markup (wins over the body= string when both are filled via extends). Prefer extends when the body needs links or lists. Closed variant raises via `{% bw_options %}`. States: none (static editorial block). Accessibility: deliberately no role="alert"/aria-live (see above). The kind is stated as text in the title, never colour alone (WCAG 1.4.1). Covered by axe.spec.mjs against primitives-*.html and sections-*.html (the content/callout example). Responsive: no breakpoint switch. {% endcomment %}{% bw_options component="brickwork/components/_callout.html" variant=variant %}{% bw_require title=title %} {% with bw_variant=variant|default:"note" %} {% endwith %}