{% comment %}
Section shell (ADR-057 Phase A, icvoss/django-brickwork#667): the shared
layout default for a marketing band. Outer full-bleed capable; inner on
the marketing measure + page gutter. Stops consumers inventing
site-owned `*-inner` rails.
Primary consumer API is the class pair (write the markup yourself):
…
…
This template is the same contract as an `{% extends %}` base: fill
`section_content`. Optional context `width` ("contained" default |
"bleed") and `band` ("plain" default | "tint") emit the ADR-057 §1a
modifier classes. Django `{% include %}` cannot wrap caller markup, so
do not include this file expecting to pass a body string; extend it or
author the classes directly.
Axes (ADR-057 §1a), CSS-only modifiers on the root:
width contained (default, no class) | bleed → bw-section--bleed
band plain (default, no class) | tint → bw-section--tint
Migration: existing marketing component roots that are NOT yet on this
shell keep working under `.bw-marketing__content > *` (unchanged rail).
A root that opts into `.bw-section` drops that legacy rail; put content
in `.bw-section__inner`. Section rhythm
(`.bw-marketing__content > * + *`) still applies to `.bw-section` roots.
Do not invent a site `bwui-*-inner` twin of this rail.
Proving migrations in this package: `_feature_grid.html` (contained),
`_case_list.html` (contained), `_methods.html` (contained, #675), and
`_cta_bleed.html` (bleed). Other marketing roots can adopt the same wrap
when they next need atmosphere past the legacy child rail.
States: none.
Accessibility: structural only; the caller owns headings inside the
inner. Covered when composed into marketing fixtures that already gate
feature-grid and CTA bleed bands.
Responsive: bleed escape is fluid at every width (100vw, capped); inner
measure + gutter match the marketing shell rail.
{% endcomment %}