{% load brickwork_components brickwork_icons %} {% comment %} Pricing tier (04-interfaces.md section 4d): one plan card. Structural, consumed via {% include %} directly, or looped by _pricing_table.html (BR-BW-MKT ยง4d structural-include doctrine). Reuses _card.html's elevated surface shape conceptually (its own markup, per BR-BW-MKT-003's clean-room rule) rather than composing _card.html by {% extends %}, since a caller looping tiers needs a plain {% include %} per iteration and {% include %} cannot fill an {% extends %}d block. Required context: name, price. Optional context: period (str, e.g. "/month"). description (str). features (list of str): each a ticked line. List-shaped, so it has no flat-kwarg spelling (#98): a Django template cannot build a list inline, so supply it from context (the view, or a wrapper template's own data). Every other input on this card is a flat string, so a tier is otherwise fully template-authorable. cta ({label, url}). cta_label / cta_href (str, #98): the same CTA as flat strings, for a template-authored caller (the ADR-056 compose-it-yourself shape). When both shapes are supplied the dict wins outright (the flat kwargs are ignored); a dict-shaped caller renders byte-identically to before the flat shape existed. highlighted (bool, default False): the recommended tier; raised elevation plus an accent border. badge (str, e.g. "Most popular"): rendered via {% bw_badge %} when highlighted. {% endcomment %}
{% if highlighted and badge %}
{% bw_badge badge variant="info" %}
{% endif %}

{{ name }}

{% if description %}

{{ description }}

{% endif %}

{{ price }} {% if period %}{{ period }}{% endif %}

{% if features %} {% endif %} {% if cta or cta_label %}
{% if cta %}{% bw_button cta.label variant=highlighted|yesno:"primary,secondary" size="lg" href=cta.url %}{% else %}{% bw_button cta_label variant=highlighted|yesno:"primary,secondary" size="lg" href=cta_href %}{% endif %}
{% endif %}