{% extends "brickwork_marketing/shell/marketing.html" %} {% comment %} A product landing page. COPY THIS FILE into your project and edit it. It is not on the template loader path, so you cannot extend it (ADR-056). THIS IS THE PAGE THAT MOTIVATED ADR-056. Before 2.0.0 brickwork shipped a landing page you extended and fed a flat context bag: heading, lede, cta_heading, logo_cloud_heading, features_heading, and so on. That inverted ownership of your own landing page (a pin bump could reorder your sections) and forced prefix soup, because one page cannot use "heading" for six sections. Here instead every section carries its own content, scoped to its own include. There is no page-level bag, no prefix soup, and reordering, dropping, or duplicating a section is editing this file, which is yours. What your view must supply: nothing at all for the copy. Two sections take lists, which a Django template cannot build inline, so they come from context: features [{icon, heading, body, url?}] logos the logo cloud's items Everything else below is typed straight into the template. States: the auth-aware header actions branch on request.user.is_authenticated (a signed-in vs signed-out header state); every composed component's own states (hero, logo cloud, feature grid, stat band, testimonial, CTA) are unchanged, see each component's own header. Accessibility: inherits shell/marketing.html's skip link and header/footer landmarks; the composed hero renders the page's own