diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 10:07:15 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 10:07:37 +0200 |
| commit | 6aebb3ec513c0177a39c2eb8d4b741e90d6f53f4 (patch) | |
| tree | 3fb327d0b3fa9ffd67d493c7393cdf9a963bf8b9 /test/golden/grid-2027.typ | |
| parent | 66543815ae6cbf6e576a889c9291678744243953 (diff) | |
| download | colitur-6aebb3ec513c0177a39c2eb8d4b741e90d6f53f4.tar.gz colitur-6aebb3ec513c0177a39c2eb8d4b741e90d6f53f4.zip | |
feat(templates): ordo booklet and wall calendar in Typst
Adds templates/ef/ordo.typ (A5, one week per page, each day framed with
a colour swatch, real names, every fixed string through term.*) and
templates/ef/grid.typ (A4 landscape, one month per page, 7 columns,
colour-filled cells, Epistle/Gospel sigla), matching what ordo.tex and
grid.tex already do.
Typst resolves its own table of contents inside a single compile: no
pageref/aux-file dance, unlike pdflatex's own two-pass need for
ordo.tex. ordo.typ's TOC is one flat heading per week (Month . Week N)
rather than ordo.tex's own month-once/weeks-nested layout, since the
view model has no first-of-month flag for a template to test and
inventing one would be new engine state for a cosmetic grouping.
grid.typ deliberately diverges from grid.tex's own partial-fill
behaviour for a 5-week month: Typst's row-size list repeats its own
last entry for every remaining row, so a two-entry rows spec fills the
page completely regardless of week count, where LaTeX's fixed cellh
leaves a 5-week month's bottom sixth blank on purpose. Both divergences
are documented in the templates' own headers.
Two bugs found and fixed while building these against the real typst
0.14.2 binary: two stray hash characters in grid.typ's header comment
that were not actually inside a line-comment (would have been parsed
as Typst code, not prose); and two lines merging into one wherever they
were separated only by a bare newline (still the same soft-wrapped
paragraph in Typst, unlike LaTeX's own explicit paragraph break) --
fixed with a trailing backslash to force a real line break without
adding inter-paragraph spacing, verified against a full-year render
(zero typst warnings across all 365 days of 2027, in both templates).
Goldens (test/golden/ordo-2027.typ, test/golden/grid-2027.typ) were
generated through the harness's own View.of_days/Template.render_string
path, via a throwaway generator, NOT through the CLI: the CLI's default
language table differs from the harness's own English-chained-to-Latin
table, confirmed live (diffing CLI output against the harness's own
render showed exactly the expected language divergence and nothing
else) -- the same trap this project has hit before.
make check-templates now typesets both templates with the typst binary,
using the same SKIPPED-and-exit-0 shape the pdflatex/groff blocks
already use when their own tool is absent, verified in both directions:
absent (PATH without typst) skips loudly and exits 0, and a
deliberately corrupted template fails the target with a non-zero exit
and typst's own error text.
Diffstat (limited to 'test/golden/grid-2027.typ')
| -rw-r--r-- | test/golden/grid-2027.typ | 7832 |
1 files changed, 7832 insertions, 0 deletions
diff --git a/test/golden/grid-2027.typ b/test/golden/grid-2027.typ new file mode 100644 index 0000000..f6e35e5 --- /dev/null +++ b/test/golden/grid-2027.typ @@ -0,0 +1,7832 @@ +// colitur wall calendar -- A4 landscape, one month per page. Typst. flavour: typst +// Build: colitur table --year 2027 --template grid.typ > grid.typ && typst compile grid.typ +// ONE compile pass: this template has no table of contents and no +// cross-references (unlike ordo.typ), so there is nothing for a second pass +// to resolve even in principle -- unlike pdflatex's own two-pass need for +// grid.tex's sibling ordo.tex, though grid.tex itself already needed only +// one pass too. +// +// The grid must FILL the page, not sit in its top quarter. grid.tex's own +// header explains why it computes an explicit fixed row height by hand +// (\cellh) and why that leaves a 5-week month only 5/6 full rather than +// 6/6 -- LaTeX's tabular has no notion of "share out whatever is left". +// Typst's table/grid DOES: a row-size list shorter than the actual row +// count repeats its OWN LAST entry for every remaining row (verified live: +// a 5-row table given `rows: (auto, 1fr)` renders five equal 1fr rows, not +// one), so `rows: (auto, 1fr)` below fills the page COMPLETELY regardless +// of whether the month has 5 or 6 Sunday-started weeks, with no week count +// arithmetic in this file at all. This is a genuine, disclosed DIVERGENCE +// from grid.tex's own behaviour, not an oversight: LaTeX leaves a 5-week +// month's bottom sixth blank on purpose (documented there); this template +// instead stretches every month to fill the whole page every time, because +// Typst makes that the simpler option, not the harder one. +// +// Real names, not slugs: the observed day's own display name is a PLAIN +// resolved string (View.of_days), interpolated directly as a plain var +// below -- there is no dotted-la-with-slug-fallback idiom left to write +// (see ordo.typ's own header for the full reasoning; it applies here +// unchanged). +// +// The weekday header row comes from the view's top-level weekday_headings +// list (name/last objects), not a hard-coded Dom/Lun/Mar row: the engine +// rejects an EMPTY tag path -- a bare dot inside a section, on its own -- +// as a parse error, so the loop below names a field on each heading object +// rather than interpolating the section's own value directly, and a +// hard-coded row would not be localised anyway. +// +// No separator flag needed: grid.tex's own `last` field exists because a +// LaTeX tabular row needs its ampersand BETWEEN cells, never after the +// final one, and the engine has no "unless last" construct to lean on +// instead -- so that template renders the flag as data. Typst's own +// #table() takes a flat, comma-separated argument list and wraps it into +// rows itself, by column count, so the SAME rule applies to every cell, +// header row included, with no special case for the last one -- verified +// live that a trailing comma before a function call's closing parenthesis +// is accepted, not a syntax error. `last` is therefore simply unused here; +// left in the view model for grid.tex's own sake, not removed for this one. +// +// Sigla, compactly: each cell also carries the day's Epistle and Gospel +// references (view fields first/gospel), joined by a centred dot rather +// than repeating Ep./Ev. labels -- the same choice grid.tex and grid.ms +// already made, kept consistent rather than invented a second way. A +// #v(1fr) inside each cell's own content -- verified live to work the same +// way inside a table cell as inside any other block -- pushes the rank +// line and the sigla to the bottom of the cell, leaving the day number and +// name at the top, so the two short lines never collide with a long entry +// above them the way a single crammed line would. +#set page(paper: "a4", flipped: true, margin: 10mm, numbering: none) +#set text(size: 8pt) +#set par(justify: false) + +#let cgrid = ( + white: rgb("#FFFFFF"), red: rgb("#F8DCDC"), green: rgb("#DDEEDD"), + violet: rgb("#E6DAF0"), rose: rgb("#FADCE8"), black: rgb("#DCDCDC"), +) +#let cpad = luma(248) + + +#text(size: 20pt, weight: "bold")[January 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[The Octave Day of the Nativity] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Titus 2:11\-15 #sym.dot.c Luke 2:21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Titus 3:4\-7 #sym.dot.c Luke 2:15\-20] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[The Holy Name of Jesus] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Acts 4:8\-12 #sym.dot.c Luke 2:21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[Monday before Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Titus 2:11\-15 #sym.dot.c Luke 2:21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Tuesday before Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Titus 2:11\-15 #sym.dot.c Luke 2:21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[The Epiphany of Our Lord] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Isa 60:1\-6 #sym.dot.c Matt 2:1\-12] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Thursday after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Isa 60:1\-6 #sym.dot.c Matt 2:1\-12] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Friday after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Isa 60:1\-6 #sym.dot.c Matt 2:1\-12] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Titus 3:4\-7 #sym.dot.c Luke 2:15\-20] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[The Holy Family] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Col 3:12\-17 #sym.dot.c Luke 2:42\-52] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Monday of the 1st Week of the Time after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 12:1\-5 #sym.dot.c Luke 2:42\-52] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Tuesday of the 1st Week of the Time after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 12:1\-5 #sym.dot.c Luke 2:42\-52] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Commemoration of the Baptism of the Lord] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Isa 60:1\-6 #sym.dot.c John 1:29\-34] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[St. Hilary] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[St. Paul, the First Hermit] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Phil 3:7\-12 #sym.dot.c Matt 11:25\-30] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[St. Marcellus I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[2nd Sunday after Epiphany] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 12:6\-16 #sym.dot.c John 2:1\-11] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Monday of the 2nd Week of the Time after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 12:6\-16 #sym.dot.c John 2:1\-11] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[Tuesday of the 2nd Week of the Time after Epiphany] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 12:6\-16 #sym.dot.c John 2:1\-11] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Sts. Fabian & Sebastian] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Heb 11:33\-39 #sym.dot.c Luke 6:17\-23] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Agnes] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 51:1\-8; 51:12 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Sts. Vincent & Anastasius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 3:1\-8 #sym.dot.c Luke 21:9\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Raymond of PeƱafort] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Septuagesima Sunday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 9:24\-27; 10:1\-5 #sym.dot.c Matt 20:1\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[Conversion of St. Paul] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Acts 9:1\-22 #sym.dot.c Matt 19:27\-29.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[St. Polycarp] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 John 3:10\-16 #sym.dot.c Matt 10:26\-32.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[St. John Chrysostom] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[St. Peter Nolasco] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 4:9\-14 #sym.dot.c Luke 12:32\-34] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[St. Francis de Sales] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[St. Martina] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 51:1\-8; 51:12 #sym.dot.c Matt 25:1\-13.] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[Sexagesima Sunday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Cor. 11:19\-33; 12:1\-9 #sym.dot.c Luke 8:4\-15] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[February 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[St. Ignatius of Antioch] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 8:35\-39 #sym.dot.c John 12:24\-26] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Purification of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Mal 3:1\-4 #sym.dot.c Luke 2:22\-32] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Wednesday of the 2nd Week of Septuagesimatide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[2 Cor. 11:19\-33; 12:1\-9 #sym.dot.c Luke 8:4\-15] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Andrew Corsini] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Matt 25:14\-23] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[St. Agatha] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 1:26\-31 #sym.dot.c Matt 19:3\-12.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[St. Titus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Luke 10:1\-9] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Quinquagesima Sunday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 13:1\-13 #sym.dot.c Luke 18:31\-43] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[St. John of Matha] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[St. Cyril of Alexandria] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[Ash Wednesday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Joel 2:12\-19 #sym.dot.c Matt 6:16\-21] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Thursday after Ash Wednesday] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 38:1\-6 #sym.dot.c Matt 8:5\-13] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Friday after Ash Wednesday] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 58:1\-9 #sym.dot.c Matt 5:43\-48; 6:1\-4] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Saturday after Ash Wednesday] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 58:9\-14 #sym.dot.c Mark 6:47\-56] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[1st Sunday of Lent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[2 Cor. 6:1\-10 #sym.dot.c Matt 4:1\-11] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Monday of the 1st Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ezech 34:11\-16 #sym.dot.c Matt 25:31\-46] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Tuesday of the 1st Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 55:6\-11 #sym.dot.c Matt 21:10\-17] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Lenten Ember Wednesday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[3 Kgs. 19:3\-8 #sym.dot.c Matt 12:38\-50] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Thursday of the 1st Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ezech 18:1\-9 #sym.dot.c Matt 15:21\-28] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[Lenten Ember Friday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Ezech 18:20\-28 #sym.dot.c John 5:1\-15] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Lenten Ember Saturday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Thess. 5:14\-23 #sym.dot.c Matt 17:1\-9] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[2nd Sunday of Lent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Thess. 4:1\-7 #sym.dot.c Matt 17:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Chair of St. Peter] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet 1:1\-7 #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Tuesday of the 2nd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[3 Kings 17:8\-16 #sym.dot.c Matt 23:1\-12] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[St. Matthias] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Acts 1:15\-26 #sym.dot.c Matt 11:25\-30] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[Thursday of the 2nd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Jer 17:5\-10 #sym.dot.c Luke 16:19\-31] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Friday of the 2nd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Gen 37:6\-22 #sym.dot.c Matt 21:33\-46] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Saturday of the 2nd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Gen 27:6\-40 #sym.dot.c Luke 15:11\-32] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[3rd Sunday of Lent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Eph 5:1\-9 #sym.dot.c Luke 11:14\-28] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[March 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[Monday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[4 Kings 5:1\-15 #sym.dot.c Luke 4:23\-30] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Tuesday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[4 Kings 4:1\-7 #sym.dot.c Matt 18:15\-22] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Wednesday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ex 20:12\-24 #sym.dot.c Matt 15:1\-20] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[Thursday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Jer 7:1\-7 #sym.dot.c Luke 4:38\-44.] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Friday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Num 20:1, 3; 6\-13. #sym.dot.c John 4:5\-42] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Saturday of the 3rd Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Dan 13:1\-9, 15\-17, 19\-30, 33\-62. #sym.dot.c John 8:1\-11] + ], + + + + + + + table.cell(fill: cgrid.at("rose"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[4th Sunday of Lent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Gal 4:22\-31 #sym.dot.c John 6:1\-15] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Monday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[3 Kings 3:16\-28 #sym.dot.c John 2:13\-25] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Tuesday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ex 32:7\-14 #sym.dot.c John 7:14\-31] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[Wednesday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa. 1:16\-19 #sym.dot.c John 9:1\-38] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Thursday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[4 Kings 4:25\-38 #sym.dot.c Luke 7:11\-16] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Friday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[3 Kings 17:17\-24 #sym.dot.c John 11:1\-45] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Saturday of the 4th Week of Lent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 49:8\-15 #sym.dot.c John 8:12\-20] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[Passion Sunday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Heb 9:11\-15. #sym.dot.c John 8:46\-59.] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Monday of the 1st Week of Passion Week] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Jonas 3:1\-10 #sym.dot.c John 7:32\-39] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Tuesday of the 1st Week of Passion Week] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Dan 14:27, 28\-42 #sym.dot.c John 7:1\-13] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Wednesday of the 1st Week of Passion Week] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Lev 19:1\-2, 11\-19, 25 #sym.dot.c John 10:22\-38] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Thursday of the 1st Week of Passion Week] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Dan 3:25, 34\-45. #sym.dot.c Luke 7:36\-50] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. Joseph, Spouse of the Bl. Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Ecclus 45:1\-6 #sym.dot.c Matt 1:18\-21] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Saturday of the 1st Week of Passion Week] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Jer 18:18\-23 #sym.dot.c John 12:10\-36] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[Palm Sunday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Phil 2:5\-11 #sym.dot.c Matt. 26:36\-75; 27:1\-60.] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Monday of Holy Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Isa 50:5\-10 #sym.dot.c John 12:1\-9] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Tuesday of Holy Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Jer 11:18\-20 #sym.dot.c Mark 14:32\-72; 15, 1\-46] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Wednesday of Holy Week (Spy Wednesday)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Isa 53:1\-12 #sym.dot.c Luke 22:39\-71; 23:1\-53] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[Holy Thursday (Maundy Thursday)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Cor 11:20\-32 #sym.dot.c John 13:1\-15] + ], + + + + + table.cell(fill: cgrid.at("black"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Good Friday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Ex 12:1\-11 #sym.dot.c John 18:1\-40; 19:1\-42] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Holy Saturday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Col 3:1\-4 #sym.dot.c Matt 28:1\-7] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[Easter Sunday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Cor 5:7\-8 #sym.dot.c Mark 16:1\-7] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[Monday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 10:37\-43. #sym.dot.c Luke 24:13\-35] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[Tuesday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 13:16; 13:26\-33 #sym.dot.c Luke 24:36\-47] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[Wednesday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 3:13\-15; 3:17\-19 #sym.dot.c John 21:1\-14] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[April 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[Thursday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 8:26\-40 #sym.dot.c John 20:11\-18] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Friday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Pet 3:18\-22 #sym.dot.c Matt 28:16\-20] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Saturday of Easter Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Pet 2:1\-10 #sym.dot.c John 20:1\-9] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[Low Sunday (Sunday in Easter Octave)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 John 5:4\-10 #sym.dot.c John 20:19\-31] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Annunciation of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Isa 7:10\-15 #sym.dot.c Luke 1:26\-38] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Tuesday of the 2nd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 5:4\-10 #sym.dot.c John 20:19\-31] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Wednesday of the 2nd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 5:4\-10 #sym.dot.c John 20:19\-31] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Thursday of the 2nd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 5:4\-10 #sym.dot.c John 20:19\-31] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Friday of the 2nd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 5:4\-10 #sym.dot.c John 20:19\-31] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c John 19:25\-27] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[2nd Sunday after Easter] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet 2:21\-25 #sym.dot.c John 10:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Monday of the 3rd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:21\-25 #sym.dot.c John 10:11\-16] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[St. Hermenegild] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 10:10\-14 #sym.dot.c Luke 14:26\-33.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[St. Justin] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor 1:18\-25; 1:30; #sym.dot.c Luke 12:2\-8] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Thursday of the 3rd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:21\-25 #sym.dot.c John 10:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Friday of the 3rd Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:21\-25 #sym.dot.c John 10:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c John 19:25\-27] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[3rd Sunday after Easter] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet 2:11\-19 #sym.dot.c John 16:16\-22] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[Monday of the 4th Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:11\-19 #sym.dot.c John 16:16\-22] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Tuesday of the 4th Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:11\-19 #sym.dot.c John 16:16\-22] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Anselm] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Sts. Soter & Caius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Friday of the 4th Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 2:11\-19 #sym.dot.c John 16:16\-22] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[St. Fidelis of Sigmaringen] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 5:1\-5 #sym.dot.c John 15:1\-7] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[4th Sunday after Easter] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Jas 1:17\-21 #sym.dot.c John 16:5\-14] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Sts. Cletus & Marcellinus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[St. Peter Canisius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[St. Paul of the Cross] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor 1:17\-25. #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[St. Peter of Verona] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim. 2:8\-10; 3:10\-12. #sym.dot.c Matt 10:34\-42] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[St. Catherine of Siena] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[May 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[St. Joseph the Workman] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Col. 3:14\-15, 17, 23\-24 #sym.dot.c Matt 13:54\-58] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[5th Sunday after Easter] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Jas 1:22\-27 #sym.dot.c John 16:23\-30] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Rogation Monday] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Jas 1:22\-27 #sym.dot.c John 16:23\-30] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Monica] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Tim. 5:3\-10. #sym.dot.c Luke 7:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Vigil of the Ascension] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph. 4:7\-13. #sym.dot.c John 17:1\-11.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[The Ascension of Our Lord] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 1:1\-11 #sym.dot.c Mark 16:14\-20] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[St. Stanislaus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 5:1\-5 #sym.dot.c John 15:1\-7] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c John 19:25\-27] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Sunday after the Ascension] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet 4:7\-11. #sym.dot.c John 15:26\-27; 16:1\-4.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[St. Antoninus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Matt 25:14\-23] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Sts. Philip & James] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Wis. 5:1\-5 #sym.dot.c John 14:1\-13] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Sts. Nereus, Achilleus, Domitilla, & Pancras] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis. 5:1\-5 #sym.dot.c John 4:46\-53] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[St. Robert Bellarmine] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 7:7\-14. #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[Friday of the 7th Week of Eastertide] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet 4:7\-11. #sym.dot.c John 15:26\-27; 16:1\-4.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Vigil of Pentecost] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 19:1\-8. #sym.dot.c John 14:15\-21.] + ], + + + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Pentecost Sunday (Whitsunday)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 2:1\-11. #sym.dot.c John 14:23\-31.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Monday of Pentecost Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 10:34, 42\-48 #sym.dot.c John 3:16\-21] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Tuesday of Pentecost Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 8:14\-17. #sym.dot.c John 10:1\-10.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[Pentecost Ember Wednesday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 5:12\-16 #sym.dot.c John 6:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Thursday of Pentecost Week] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 8:5\-8 #sym.dot.c Luke 9:1\-6] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[Pentecost Ember Friday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Joel 2:23\-24; 26\-27 #sym.dot.c Luke 5:17\-26] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Pentecost Ember Saturday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rom 5:1\-5. #sym.dot.c Luke 4:38\-44.] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Trinity Sunday] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rom 11:33\-36. #sym.dot.c Matt 28:18\-20] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Monday of the 1st Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 4:8\-21 #sym.dot.c Luke 6:36\-42] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[St. Gregory VII] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[St. Philip Neri] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 7:7\-14. #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Corpus Christi] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Cor 11:23\-29 #sym.dot.c John 6:56\-59] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[St. Augustine of Canterbury] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Thess 2:2\-9 #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[St. Mary Magdalene de Pazzi] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[2nd Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 John 3:13\-18. #sym.dot.c Luke 14:16\-24.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[Queenship of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eccli 24:5; 14:7; 14:9\-11; 24:30\-31 #sym.dot.c Luke 1:26\-33] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[June 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[St. Angela Merici] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Wednesday of the 2nd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 3:13\-18. #sym.dot.c Luke 14:16\-24.] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Thursday of the 2nd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 John 3:13\-18. #sym.dot.c Luke 14:16\-24.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[The Sacred Heart of Jesus] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Eph 3:8\-12, 14\-19 #sym.dot.c John 19:31\-37] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[St. Boniface] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 44:1\-15 #sym.dot.c Matt 5:1\-12] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[3rd Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet. 5:6\-11 #sym.dot.c Luke 15:1\-10] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Monday of the 3rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet. 5:6\-11 #sym.dot.c Luke 15:1\-10] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Tuesday of the 3rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet. 5:6\-11 #sym.dot.c Luke 15:1\-10] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Wednesday of the 3rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Pet. 5:6\-11 #sym.dot.c Luke 15:1\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[St. Margaret of Scotland] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[St. Barnabas] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Acts 11:21\-26; 13:1\-3 #sym.dot.c Matt 10:16\-22] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[St. John of San Fecundo] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[4th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 8:18\-23 #sym.dot.c Luke 5:1\-11] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[St. Basil the Great] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Luke 14:26\-35] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Tuesday of the 4th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 8:18\-23 #sym.dot.c Luke 5:1\-11] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Wednesday of the 4th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 8:18\-23 #sym.dot.c Luke 5:1\-11] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[St. Gregory Barbarigo] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Matt 25:14\-23] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[St. Ephrem of Syria] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. Julia of Falconieri] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[5th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Pet 3:8\-15. #sym.dot.c Matt 5:20\-24.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Aloysius Gongzaga] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Matt 22:29\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[St. Paulinus of Nola] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor. 8:9\-15 #sym.dot.c Luke 12:32\-34] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Vigil of the Nativity of St. John the Baptist] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Jer 1:4\-10 #sym.dot.c Luke 1:5\-17] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Nativity of St. John the Baptist] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Isa 49:1\-3, 5\-7. #sym.dot.c Luke 1:57\-68] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[St. William] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 45:1\-6 #sym.dot.c Matt 19:27\-29.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Sts. John & Paul] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Eccli 44:10\-15 #sym.dot.c Luke 12:1\-8] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[6th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 6:3\-11. #sym.dot.c Mark 8:1\-9] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[Vigil of Sts. Peter & Paul] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Acts 3:1\-10 #sym.dot.c John 21:15\-19] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[Sts. Peter & Paul] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Acts 12:1\-11 #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[In Commemoratione Sancti Pauli Apostoli] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Gal 1:11\-20 #sym.dot.c Matt 10:16\-22] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[July 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[The Precious Blood of Our Lord Jesus Christ] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Heb 9:11\-15. #sym.dot.c John 19:30\-35] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Visitation of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Song 2:8\-14 #sym.dot.c Luke 1:39\-47] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[St. Irenaeus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim. 3:14\-17; 4:1\-5 #sym.dot.c Matt 10:28\-33] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[7th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 6:19\-23 #sym.dot.c Matt 7:15\-21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[St. Anthony Mary Zaccariah] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Tim. 4:8\-16 #sym.dot.c Mark 10:15\-21] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Tuesday of the 7th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 6:19\-23 #sym.dot.c Matt 7:15\-21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Sts. Cyril & Methodius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Heb 7:23\-27 #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[St. Elizabeth of Portugal] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Friday of the 7th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 6:19\-23 #sym.dot.c Matt 7:15\-21] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[Seven Holy Brothers and Sts. Rufina & Secunda] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 12:46\-50] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[8th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 8:12\-17 #sym.dot.c Luke 16:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[St. John Gualbert] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 45:1\-6 #sym.dot.c Matt 5:43\-48] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Tuesday of the 8th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 8:12\-17 #sym.dot.c Luke 16:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[St. Bonaventure] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[St. Henry the Emperor] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Friday of the 8th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Rom 8:12\-17 #sym.dot.c Luke 16:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[9th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 10:6\-13 #sym.dot.c Luke 19:41\-47] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. Vincent de Paul] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 4:9\-14 #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[St. Jerome Emiliani] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Isa 58:7\-11 #sym.dot.c Matt 19:13\-21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Laurence of Brindisi] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[St. Mary Magdalene] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Song 3:2\-5; 8:6\-7 #sym.dot.c Luke 7:36\-50] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Apollinaris] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet. 5:1\-11 #sym.dot.c Luke 22:24\-30] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[10th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 12:2\-11 #sym.dot.c Luke 18:9\-14] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[St. Anne, Mother of the Blessed Virgin] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Tuesday of the 10th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Cor. 12:2\-11 #sym.dot.c Luke 18:9\-14] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[Sts. Nazarius & Celsus, St. Victor I & St. Innocent I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 10:17\-20 #sym.dot.c Luke 21:9\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[St. Martha] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Luke 10:38\-42] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[Friday of the 10th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Cor. 12:2\-11 #sym.dot.c Luke 18:9\-14] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[St. Ignatius Loyola] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim. 2:8\-10; 3:10\-12. #sym.dot.c Luke 10:1\-9] + ], + + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[August 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[11th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 15:1\-10 #sym.dot.c Mark 7:31\-37] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[St. Alphonsus Liguori] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim. 2:1\-7 #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Tuesday of the 11th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Cor. 15:1\-10 #sym.dot.c Mark 7:31\-37] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Dominic] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim. 4:1\-8 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Dedication of the Basilica of St. Mary Major] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Transfiguration of Our Lord] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Pet. 1:16\-19 #sym.dot.c Matt 17:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[St. Cajetan] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Matt 6:24\-33] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[12th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Cor. 3:4\-9 #sym.dot.c Luke 10:23\-37] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Vigil of St. Lawrence] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 51:1\-8, 12 #sym.dot.c Matt 16:24\-27] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[St. Lawrence] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Cor. 9:6\-10 #sym.dot.c John 12:24\-26] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Wednesday of the 12th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[2 Cor. 3:4\-9 #sym.dot.c Luke 10:23\-37] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[St. Clare] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Friday of the 12th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[2 Cor. 3:4\-9 #sym.dot.c Luke 10:23\-37] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[Vigil of the Assumption] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Sir 24:23\-31 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Assumption of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Judith 13:22\-25; 15:10 #sym.dot.c Luke 1:41\-50] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[St. Joachim, Father of the Blessed Virgin] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Matt 1:1\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[St. Hyacinth] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Wednesday of the 13th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Gal 3:16\-22 #sym.dot.c Luke 17:11\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. John Eudes] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[St. Bernard of Clairvaux] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 39:6\-14 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Jane Frances de Chantal] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[14th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Gal 5:16\-24 #sym.dot.c Matt 6:24\-33] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Philip Benizi] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 4:9\-14 #sym.dot.c Luke 12:32\-34] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[St. Bartholomew] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 12:27\-31 #sym.dot.c Luke 6:12\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[St. Louis IX] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 10:10\-14 #sym.dot.c Luke 19:12\-26] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Thursday of the 14th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Gal 5:16\-24 #sym.dot.c Matt 6:24\-33] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[St. Joseph Calasance] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 10:10\-14 #sym.dot.c Matt 18:1\-5] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[St. Augustine] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[15th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Gal 5:25\-26; 6:1\-10 #sym.dot.c Luke 7:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[St. Rose of Lima] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[St. Raymond Nonnatus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[September 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[Wednesday of the 15th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Gal 5:25\-26; 6:1\-10 #sym.dot.c Luke 7:11\-16] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[St. Stephen of Hungary] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 19:12\-26] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[St. Pius X] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Thess. 2:2\-8 #sym.dot.c John 21:15\-17] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[16th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 3:13\-21 #sym.dot.c Luke 14:1\-11] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Monday of the 16th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 3:13\-21 #sym.dot.c Luke 14:1\-11] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Tuesday of the 16th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 3:13\-21 #sym.dot.c Luke 14:1\-11] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Nativity of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Prov 8:22\-35 #sym.dot.c Matt 1:1\-16] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Thursday of the 16th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 3:13\-21 #sym.dot.c Luke 14:1\-11] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[St. Nicholas of Tolentino] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 4:9\-14 #sym.dot.c Luke 12:32\-34] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[17th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 4:1\-6 #sym.dot.c Matt 22:34\-46] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[Monday of the 17th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 4:1\-6 #sym.dot.c Matt 22:34\-46] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[Exaltation of the Holy Cross] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Phil 2:5\-11 #sym.dot.c John 12:31\-36] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Seven Sorrows of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Judith 13:22; 13:23\-25 #sym.dot.c John 19:25\-27] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[Sts. Cornelius & Cyprian] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 3:1\-8 #sym.dot.c Luke 21:9\-19] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Friday of the 17th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 4:1\-6 #sym.dot.c Matt 22:34\-46] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[St. Joseph of Cupertino] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor 13:1\-8 #sym.dot.c Matt 22:1\-14] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[18th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 1:4\-8 #sym.dot.c Matt 9:1\-8] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Monday of the 18th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[1 Cor. 1:4\-8 #sym.dot.c Matt 9:1\-8] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Matthew] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Ezek 1:10\-14 #sym.dot.c Matt 9:9\-13] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[September Ember Wednesday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Esd. 8:1\-10 #sym.dot.c Mark 9:16\-28] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Linus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[September Ember Friday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Osee 14:2\-10 #sym.dot.c Luke 7:36\-50] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[September Ember Saturday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Heb 9:2\-12 #sym.dot.c Luke 13:6\-17] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[19th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 4:23\-28 #sym.dot.c Matt 22:1\-14] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Sts. Cosmas & Damian] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 5:16\-20 #sym.dot.c Luke 6:17\-23] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[St. Wenceslaus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Wis 10:10\-14 #sym.dot.c Matt 10:34\-42] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[Dedication of St. Michael the Archangel] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rev 1:1\-5 #sym.dot.c Matt 18:1\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[St. Jerome] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[October 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[Friday of the 19th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 4:23\-28 #sym.dot.c Matt 22:1\-14] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Holy Guardian Angels] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Exod 23:20\-23 #sym.dot.c Matt 18:1\-10] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[20th Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 5:15\-21 #sym.dot.c John 4:46\-53] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Francis of Assisi] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Gal 6:14\-18 #sym.dot.c Matt 11:25\-30] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Tuesday of the 20th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 5:15\-21 #sym.dot.c John 4:46\-53] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[St. Bruno] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[Our Lady of the Rosary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Prov 8:22\-24, 32\-35. #sym.dot.c Luke 1:26\-38] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[St. Bridget of Sweden] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Tim. 5:3\-10. #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[St. John Leonardi] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 4:1\-6; 4:15\-18 #sym.dot.c Luke 10:1\-9] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[21st Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 6:10\-17 #sym.dot.c Matt 18:23\-35] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[Maternity of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Sir 24:23\-31 #sym.dot.c Luke 2:43\-51] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[Tuesday of the 21st Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Eph 6:10\-17 #sym.dot.c Matt 18:23\-35] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[St. Edward] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[St. Callistus I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[St. Teresa of Avila] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[St. Hedwig] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[22nd Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Phil 1:6\-11 #sym.dot.c Matt 22:15\-21] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[St. Luke the Evangelist] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Cor. 8:16\-24 #sym.dot.c Luke 10:1\-9] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. Peter of Alcantara] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Phil 3:7\-12 #sym.dot.c Luke 12:32\-34] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[St. John Cantius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[James 2:12\-17 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[Thursday of the 22nd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 1:6\-11 #sym.dot.c Matt 22:15\-21] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Friday of the 22nd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 1:6\-11 #sym.dot.c Matt 22:15\-21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Anthony Mary Claret] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Heb 7:23\-27 #sym.dot.c Matt 24:42\-47] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[23rd Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 9:18\-26] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[Monday of the 23rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 9:18\-26] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Tuesday of the 23rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 9:18\-26] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Wednesday of the 23rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 9:18\-26] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[Sts. Simon & Jude] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph. 4:7\-13. #sym.dot.c John 15:17\-25] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[Friday of the 23rd Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 9:18\-26] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[Christ the King] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Col 1:12\-20. #sym.dot.c John 18:33\-37] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[November 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[All Saints] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Apoc 7:2\-12 #sym.dot.c Matt 5:1\-12] + ], + + + + + table.cell(fill: cgrid.at("black"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[Commemoration of All Souls] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Cor. 15:51\-57 #sym.dot.c John 5:25\-29] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[Wednesday of the 24th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Col 1:12\-20. #sym.dot.c John 18:33\-37] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Charles Borromeo] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Matt 25:14\-23] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[Friday of the 24th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Col 1:12\-20. #sym.dot.c John 18:33\-37] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[5th Sunday after Epiphany] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Col 3:12\-17 #sym.dot.c Matt 13:24\-30] + ], + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Monday of the 25th Week of the Time after Pentecost] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Col 3:12\-17 #sym.dot.c Matt 13:24\-30] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Dedication of the Archbasilica of Our Holy Savior] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rev 21:2\-5 #sym.dot.c Luke 19:1\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[St. Andrew Avellino] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 31:8\-11 #sym.dot.c Luke 12:35\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[St. Martin of Tours] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Luke 11:33\-36] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[St. Martin I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[St. Didacus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor 4:9\-14 #sym.dot.c Luke 12:32\-34] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[6th Sunday after Epiphany] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Thess 1:2\-10 #sym.dot.c Matt 13:31\-35] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[St. Albert the Great] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[St. Gertrude the Great] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[St. Gregory the Wonderworker] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 44:16\-27; 45:3\-20 #sym.dot.c Mark 11:22\-24] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Dedication of the Basilicas of Sts. Peter & Paul] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rev 21:2\-5 #sym.dot.c Luke 19:1\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[St. Elizabeth of Hungary] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Prov 31:10\-31 #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[St. Felix of Valois] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Cor. 4:9\-14 #sym.dot.c Luke 12:32\-34] + ], + + + + + + + table.cell(fill: cgrid.at("green"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[24th and Last Sunday after Pentecost] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Col 1:9\-14 #sym.dot.c Matt 24:15\-35] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[St. Cecilia] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 51:13\-17. #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[St. Clement I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Phil 3:17\-21; 4:1\-3 #sym.dot.c Matt 16:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[St. John of the Cross] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[St. Catherine of Alexandria] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 51:1\-8; 51:12 #sym.dot.c Matt 25:1\-13.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[St. Sylvester] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Ecclus 45:1\-6 #sym.dot.c Matt 19:27\-29.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[Our Lady's Saturday Office] + #v(1fr) + #text(size: 6.5pt)[4th Class] \ + #text(size: 6.5pt)[Ecclus 24:14\-16 #sym.dot.c Luke 11:27\-28] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[1st Sunday of Advent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rom 13:11\-14 #sym.dot.c Luke 21:25\-33] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[Monday of the 1st Week of Advent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 13:11\-14 #sym.dot.c Luke 21:25\-33] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[St. Andrew] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Rom 10:10\-18 #sym.dot.c Matt 4:18\-22] + ], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + +#text(size: 20pt, weight: "bold")[December 2027] +#v(2mm) +#table( + columns: (1fr,) * 7, + rows: (auto, 1fr), + stroke: 0.4pt + luma(150), + inset: 1.6mm, + align: left + top, + + table.cell(align: center + horizon)[#text(weight: "bold")[Sunday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Monday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Tuesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Wednesday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Thursday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Friday]], + + table.cell(align: center + horizon)[#text(weight: "bold")[Saturday]], + + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + + table.cell(fill: cpad)[], + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[1] #text(size: 7pt)[Wednesday of the 1st Week of Advent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 13:11\-14 #sym.dot.c Luke 21:25\-33] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[2] #text(size: 7pt)[St. Vivian] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Sir 51:13\-17. #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[3] #text(size: 7pt)[St. Francis Xavier] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 10:10\-18 #sym.dot.c Mark 16:15\-18] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[4] #text(size: 7pt)[St. Peter Chrysologus] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[5] #text(size: 7pt)[2nd Sunday of Advent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rom 15:4\-13 #sym.dot.c Matt 11:2\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[6] #text(size: 7pt)[St. Nicholas] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Heb 13:7\-17 #sym.dot.c Matt 25:14\-23] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[7] #text(size: 7pt)[St. Ambrose] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Tim 4:1\-8 #sym.dot.c Matt 5:13\-19] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[8] #text(size: 7pt)[Immaculate Conception of the Blessed Virgin Mary] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Prov 8:22\-35 #sym.dot.c Luke 1:26\-28] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[9] #text(size: 7pt)[Thursday of the 2nd Week of Advent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 15:4\-13 #sym.dot.c Matt 11:2\-10] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[10] #text(size: 7pt)[Friday of the 2nd Week of Advent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Rom 15:4\-13 #sym.dot.c Matt 11:2\-10] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[11] #text(size: 7pt)[St. Damasus I] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[1 Pet 5:1\-4; 5:10\-11. #sym.dot.c Matt 16:13\-19] + ], + + + + + + + table.cell(fill: cgrid.at("rose"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[12] #text(size: 7pt)[3rd Sunday of Advent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Phil 4:4\-7 #sym.dot.c John 1:19\-28] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[13] #text(size: 7pt)[St. Lucy] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor 10:17\-18; 11:1\-2 #sym.dot.c Matt 13:44\-52.] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[14] #text(size: 7pt)[Tuesday of the 3rd Week of Advent] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[Phil 4:4\-7 #sym.dot.c John 1:19\-28] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[15] #text(size: 7pt)[Advent Ember Wednesday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Isa 7:10\-15 #sym.dot.c Luke 1:26\-38] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[16] #text(size: 7pt)[St. Eusebius] + #v(1fr) + #text(size: 6.5pt)[3rd Class] \ + #text(size: 6.5pt)[2 Cor. 1:3\-7 #sym.dot.c Matt 16:24\-27.] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[17] #text(size: 7pt)[Advent Ember Friday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Isa 11:1\-5 #sym.dot.c Luke 1:39\-47] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[18] #text(size: 7pt)[Advent Ember Saturday] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[2 Thess 2:1\-8 #sym.dot.c Luke 3:1\-6] + ], + + + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[19] #text(size: 7pt)[4th Sunday of Advent] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[1 Cor. 4:1\-5 #sym.dot.c Luke 3:1\-6] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[20] #text(size: 7pt)[Monday of the 4th Week of Advent] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 4:1\-5 #sym.dot.c Luke 3:1\-6] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[21] #text(size: 7pt)[St. Thomas] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Eph 2:19\-22 #sym.dot.c John 20:24\-29] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[22] #text(size: 7pt)[Wednesday of the 4th Week of Advent] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 4:1\-5 #sym.dot.c Luke 3:1\-6] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[23] #text(size: 7pt)[Thursday of the 4th Week of Advent] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[1 Cor. 4:1\-5 #sym.dot.c Luke 3:1\-6] + ], + + + + + table.cell(fill: cgrid.at("violet"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[24] #text(size: 7pt)[Vigil of the Nativity (Christmas Eve)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Rom 1:1\-6 #sym.dot.c Matt 1:18\-21] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[25] #text(size: 7pt)[The Nativity of Our Lord (Christmas)] + #v(1fr) + #text(size: 6.5pt)[1st Class] \ + #text(size: 6.5pt)[Heb 1:1\-12 #sym.dot.c John 1:1\-14] + ], + + + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[26] #text(size: 7pt)[Sunday within the Octave of the Nativity] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Gal 4:1\-7 #sym.dot.c Luke 2:33\-40] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[27] #text(size: 7pt)[St. John the Evangelist] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Ecclus 15:1\-6 #sym.dot.c John 21:19\-24] + ], + + + + + table.cell(fill: cgrid.at("red"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[28] #text(size: 7pt)[Holy Innocents] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Apoc 14:1\-5 #sym.dot.c Matt 2:13\-18] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[29] #text(size: 7pt)[5th Day within the Octave of the Nativity] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Titus 3:4\-7 #sym.dot.c Luke 2:15\-20] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[30] #text(size: 7pt)[6th Day within the Octave of the Nativity] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Titus 3:4\-7 #sym.dot.c Luke 2:15\-20] + ], + + + + + table.cell(fill: cgrid.at("white"))[ + // One paragraph, a trailing backslash between the rank line and the + // sigla line rather than a bare newline: two markup lines joined only + // by a bare newline stay on ONE rendered line (still the same soft- + // wrapped paragraph) -- verified live, the first draft of this cell + // merged "III classis" straight into the citation. grid.tex's own + // header explains why the rank line and the sigla get their own line + // EACH rather than being crammed onto one -- the same reasoning + // applies here, so this keeps the two-line shape it settled on. + #set par(leading: 0.35em) + #text(weight: "bold")[31] #text(size: 7pt)[7th Day within the Octave of the Nativity] + #v(1fr) + #text(size: 6.5pt)[2nd Class] \ + #text(size: 6.5pt)[Titus 3:4\-7 #sym.dot.c Luke 2:15\-20] + ], + + + + + + table.cell(fill: cpad)[], + + + +) +#pagebreak(weak: true) + |
