Three-page price list
Trade price list
Northline Field Instruments organizes a full trade range into a catalog that buyers can scan and use.
Highlighted features
Fixed six-column product tables
table-layout: fixed gives each six-column product table stable widths for SKU, item, unit, list price, trade price, and lead time.
Rows and notes kept intact
break-inside: avoid keeps product rows and specification notes from splitting at a page boundary.
Running footer with page counters
@page bottom margin boxes repeat the catalog identity and current/total page counters on every sheet.
How the layout works
The price list is divided into three intentional sheets. A break-before: page rule starts the continuation sections, while @page bottom margin boxes repeat the catalog identity and counter(page) / counter(pages) as readers turn pages.
Each fixed-layout product table has six columns for SKU, item, unit, list price, trade price, and lead time. Rows and specification notes use break-inside: avoid so their details stay together. That keeps the catalog readable and maintainable when prices change. A local instrument.svg anchors the cover design, and IBM Plex font files provide distinct text and numeric styles. The SVG and font licenses are included in the ZIP.
Generate the PDF
Extract the source ZIP, keep price-list.html, price-list.css, instrument.svg, and fonts/ together, and run from that directory.
precisionpdf price-list.html price-list.pdf
from precisionpdf import HTML
HTML(filename="price-list.html").write_pdf("price-list.pdf")