/* Plain masthead ships nothing to draw, and header.mast has no other source
   of height (its title/subtitle sit absolutely positioned so they can float
   over a canvas). Without a canvas, let them sit in the flow instead. */
header.mast{ overflow: visible; }
.mast-type{
  position: static;
  padding: 2.6rem 0 1.8rem;
}
/* No seal is set for this project; an empty one would render as a bare
   colour swatch in the corner. */
.seal:empty{ display: none; }

/* A section's intro can carry a plain markdown table (the syllabus's
   reading list, for one) — the engine ships no table styling at all, and
   an archive page's masthead squeezes that same intro into its subtitle
   slot, so this is styled unscoped rather than tied to `.sec-note`. */
.sec-note:has(table){ max-width: none; }
.mast-type table{ margin-top: 1.2rem; }
table{
  width: 100%; border-collapse: collapse; margin: 0.6rem 0 0; font-size: .92rem;
  font-style: normal;
}
thead th{
  text-align: left; font-family: var(--mono); font-size: .62rem;
  letter-spacing: .1em; text-transform: uppercase; color: var(--grey);
  font-weight: 400; padding: 0 .9rem .6rem 0; border-bottom: 1px solid var(--grey-2);
}
tbody td{
  padding: .55rem .9rem .55rem 0; border-bottom: 1px solid var(--paper-3);
  vertical-align: baseline; color: var(--ink-2); font-size: 1rem;
}
tbody tr:last-child td{ border-bottom: 1px solid var(--grey-2); }
td:nth-child(3), th:nth-child(3){
  font-family: var(--mono); font-size: .72rem; letter-spacing: .02em;
  white-space: nowrap;
}

/* The syllabus's own intro carries the book table; the entries list right
   after it (the running notes) reads as unlabelled without this. Same
   small-caps treatment the engine already gives `.movement > h3`. The
   archive page pipes this same intro into the masthead's subtitle slot
   instead of `.sec-note` (see the table rule above), so style both. */
.sec-note h3, .mast-type h3{
  font-family: var(--mono); font-size: .66rem; letter-spacing: .14em;
  text-transform: uppercase; color: var(--grey); font-weight: 400;
  margin: 1.6rem 0 .8rem;
}
