/* Ultrarunner Podcast Archive */
:root {
  --urp-ink: #1b1917;
  --urp-paper: #f7f4ee;
  --urp-muted: #6d665b;
  --urp-rule: #cfc8ba;
  --urp-accent: #8a6a1f;
  --urp-wash: #efeae0;
  --urp-ink-soft: #423d36;
  --urp-rule-hair: #e2dcd0;
  --urp-accent-deep: #5f480f;
  --urp-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "Hoefler Text", Georgia, "Times New Roman", serif;
  --urp-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --urp-measure: 34rem;
  --urp-page: 1180px;
  --urp-s1: 0.25rem;
  --urp-s2: 0.5rem;
  --urp-s3: 0.75rem;
  --urp-s4: 1rem;
  --urp-s5: 1.5rem;
  --urp-s6: 2rem;
  --urp-s7: 3rem;
  --urp-s8: 4.5rem;
  --urp-s9: 6.5rem;
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--urp-paper);
  color: var(--urp-ink);
  font-family: var(--urp-serif);
  font-size: 1.0625rem;
  line-height: 1.55;
  text-wrap: pretty;
  font-kerning: normal;
  font-variant-numeric: oldstyle-numeric;
}

img { max-width: 100%; height: auto; display: block; }

/* A link carries its affordance by default, not on hover: hover is not available to a
   touch or keyboard reader, so a hover-only underline means the link is undiscoverable
   for them. The default is a hairline in the rule colour — visible, quiet enough to run
   under a whole page of prose — and hover darkens and thickens it. */
a {
  color: var(--urp-ink);
  text-decoration: underline;
  text-decoration-color: var(--urp-rule);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
a:hover {
  color: var(--urp-accent-deep);
  text-decoration-color: var(--urp-accent);
  text-decoration-thickness: 2px;
}

/* Opted out: surfaces where the whole block is the target and the element already reads
   as one — a full-width row, a bordered nav cell, the wordmark, a small-caps label.
   Underlining these adds noise without adding information. */
.urp-chron__row,
.urp-index-strip a,
.urp-masthead__title a,
a.urp-label {
  text-decoration: none;
}
/* The chronological row is a full-width target; a rule across every one of them is
   noise. It gets its affordance on the headline instead, on hover and on focus. */
.urp-chron__row:hover .urp-chron__title,
.urp-chron__row:focus-visible .urp-chron__title {
  text-decoration: underline;
  text-decoration-color: var(--urp-accent);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

:focus-visible {
  outline: 2px solid var(--urp-accent);
  outline-offset: 3px;
}

.urp-skip {
  position: absolute; left: -9999px; top: 0;
  background: var(--urp-ink); color: var(--urp-paper);
  padding: var(--urp-s2) var(--urp-s4); z-index: 10;
}
.urp-skip:focus { left: var(--urp-s4); top: var(--urp-s2); }

.urp-wrap {
  max-width: var(--urp-page);
  margin: 0 auto;
  padding: 0 var(--urp-s5);
}

/* ---------- small-caps label, used for every piece of metadata ---------- */

.urp-label {
  margin: 0;
  font-family: var(--urp-serif);
  font-size: 0.75rem;
  font-variant-numeric: lining-nums;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--urp-muted);
}
.urp-label--ink { color: var(--urp-ink); }
a.urp-label:hover { color: var(--urp-accent-deep); }

/* ============================== masthead ============================== */

.urp-masthead {
  border-top: 4px solid var(--urp-ink);
  padding-top: var(--urp-s4);
}

.urp-masthead__top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--urp-s5);
  flex-wrap: wrap;
}

.urp-masthead__title {
  margin: 0;
  font-size: clamp(2rem, 5.2vw, 3.4rem);
  line-height: 0.98;
  letter-spacing: -0.02em;
  font-weight: 600;
}
.urp-masthead__title a { color: inherit; }
.urp-masthead__title em {
  font-style: normal;
  display: block;
  font-size: 0.3em;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--urp-muted);
  margin-bottom: 0.55em;
  font-variant-numeric: lining-nums;
}

.urp-masthead__standing {
  max-width: 22rem;
  font-size: 0.9375rem;
  color: var(--urp-ink-soft);
  margin: 0;
  padding-bottom: var(--urp-s1);
}

/* the running index strip: the site's structure, stated once, on every page */

.urp-index-strip {
  margin-top: var(--urp-s5);
  border-top: 1px solid var(--urp-ink);
  border-bottom: 1px solid var(--urp-ink);
}
.urp-index-strip ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  /* Every cell an equal track, whatever the nav item count — sizing the last one to its
     own content collapsed it around the word "About" and left the text with nothing
     between it and the page edge. */
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 0;
}
.urp-index-strip li {
  border-left: 1px solid var(--urp-rule-hair);
  padding: var(--urp-s3) var(--urp-s4);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* The first cell runs flush to the page margin so the strip starts on the same line as
   the wordmark above it and the body below. Every other cell is identical. */
.urp-index-strip li:first-child { border-left: 0; padding-left: 0; }
.urp-index-strip a { display: block; }
.urp-index-strip .urp-index-strip__name {
  display: block;
  font-size: 1rem;
  letter-spacing: 0.02em;
}
.urp-index-strip .urp-index-strip__count {
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--urp-muted);
  font-variant-numeric: lining-nums;
  margin-top: 0.15em;
}
.urp-index-strip [aria-current="page"] .urp-index-strip__name { color: var(--urp-accent-deep); }
.urp-index-strip [aria-current="page"] { box-shadow: inset 0 -3px 0 var(--urp-accent); }

/* ============================== lead item ============================== */

main { display: block; }

.urp-lead {
  margin: var(--urp-s7) 0 0;
  padding-bottom: var(--urp-s7);
  border-bottom: 3px double var(--urp-rule);
}

.urp-lead__figure { margin: 0 0 var(--urp-s5); }

.urp-lead__head {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: var(--urp-s5) var(--urp-s7);
  align-items: start;
}

.urp-lead__kicker {
  margin: 0 0 var(--urp-s2);
  grid-column: 1 / -1;
  border-bottom: 1px solid var(--urp-rule);
  padding-bottom: var(--urp-s2);
  margin-bottom: var(--urp-s2);
  display: flex;
  gap: var(--urp-s4);
  flex-wrap: wrap;
}

.urp-lead__title {
  margin: 0;
  font-size: clamp(2rem, 4.6vw, 3.1rem);
  line-height: 1.04;
  letter-spacing: -0.02em;
  font-weight: 600;
  text-wrap: balance;
}

.urp-lead__standfirst {
  margin: 0 0 var(--urp-s4);
  font-size: 1.25rem;
  line-height: 1.4;
  color: var(--urp-ink-soft);
}

.urp-lead__excerpt { margin: 0; }
.urp-lead__excerpt p { margin: 0 0 var(--urp-s4); }
.urp-lead__excerpt p:first-child::first-letter {
  float: left;
  font-size: 3.1em;
  line-height: 0.82;
  padding: 0.06em 0.1em 0 0;
  color: var(--urp-accent-deep);
}

.urp-more {
  display: inline-block;
  font-size: 0.8125rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--urp-accent);
  padding-bottom: 2px;
  color: var(--urp-accent-deep);
  font-variant-numeric: lining-nums;
}
.urp-more { text-decoration: none; }
.urp-more:hover { text-decoration: none; border-bottom-width: 2px; }

/* ============================== section heads ============================== */

.urp-section {
  margin-top: var(--urp-s8);
}

.urp-section__head {
  display: flex;
  align-items: baseline;
  gap: var(--urp-s4);
  border-bottom: 1px solid var(--urp-ink);
  padding-bottom: var(--urp-s2);
  margin-bottom: var(--urp-s5);
}
.urp-section__head h2 {
  margin: 0;
  font-size: 1.0625rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 600;
}
.urp-section__head .urp-section__note {
  margin: 0 0 0 auto;
  font-size: 0.8125rem;
  color: var(--urp-muted);
  text-align: right;
}

/* ---------- chronological list: date hangs in its own column ---------- */

.urp-chron { list-style: none; margin: 0; padding: 0; }
.urp-chron > li { border-bottom: 1px solid var(--urp-rule-hair); }
.urp-chron > li:last-child { border-bottom: 0; }

.urp-chron__row {
  display: grid;
  grid-template-columns: 7.5rem minmax(0, 1fr) 9rem;
  gap: var(--urp-s5);
  align-items: baseline;
  padding: var(--urp-s4) 0;
}
.urp-chron__date { font-variant-numeric: lining-nums; letter-spacing: 0.08em; font-size: 0.8125rem; color: var(--urp-muted); text-transform: uppercase; }
.urp-chron__title { margin: 0; font-size: 1.375rem; line-height: 1.22; font-weight: 600; letter-spacing: -0.01em; }
.urp-chron__sub { margin: var(--urp-s1) 0 0; color: var(--urp-ink-soft); font-size: 1rem; }
.urp-chron__section { text-align: right; }
.urp-chron__row:hover .urp-chron__title { color: var(--urp-accent-deep); }

/* ============================== category groups ============================== */

.urp-groups {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: var(--urp-s8);
  border-top: 3px double var(--urp-rule);
}

.urp-group {
  border-left: 1px solid var(--urp-rule-hair);
  padding: var(--urp-s5) var(--urp-s5) var(--urp-s6);
}
.urp-group:first-child { border-left: 0; padding-left: 0; }
.urp-group:last-child { padding-right: 0; }

.urp-group__head {
  display: block;
  border-bottom: 1px solid var(--urp-ink);
  padding-bottom: var(--urp-s2);
  margin-bottom: var(--urp-s4);
}
.urp-group__head h2 {
  margin: 0;
  font-size: 1.125rem;
  letter-spacing: 0.06em;
  font-weight: 600;
}
.urp-group__figure { margin: 0 0 var(--urp-s3); }
.urp-group ul { list-style: none; margin: 0; padding: 0; }
.urp-group li + li { border-top: 1px solid var(--urp-rule-hair); }
.urp-group li { padding: var(--urp-s3) 0; }
.urp-group li:first-child { padding-top: 0; }
.urp-group__title { margin: 0; font-size: 1.0625rem; line-height: 1.3; font-weight: 600; }
.urp-group__lead .urp-group__title { font-size: 1.25rem; }
.urp-group__meta { margin: var(--urp-s1) 0 0; }

/* ============================== photographs / placeholders ============================== */

figure { margin: 0; }

figcaption {
  margin-top: var(--urp-s2);
  font-size: 0.8125rem;
  line-height: 1.45;
  color: var(--urp-muted);
  border-top: 1px solid var(--urp-rule-hair);
  padding-top: var(--urp-s2);
}
figcaption b { font-weight: 600; color: var(--urp-ink-soft); }

/* photographs — warm, desaturated landscapes, cropped to the design's ratios */
.urp-shot {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  background-color: var(--urp-wash);
  border: 1px solid var(--urp-rule);
}
.urp-shot--wide { aspect-ratio: 21 / 8; }
.urp-shot--tall { aspect-ratio: 4 / 3; }
.urp-shot--mid  { aspect-ratio: 16 / 7; }

/* ============================== article ============================== */

.urp-article { margin-top: var(--urp-s7); }

.urp-article__head {
  display: grid;
  grid-template-columns: 9rem minmax(0, var(--urp-measure)) minmax(0, 1fr);
  gap: var(--urp-s6);
  padding-bottom: var(--urp-s6);
  border-bottom: 1px solid var(--urp-ink);
}

/* left rail: section, date, byline, reading time — marginalia, not chrome */
.urp-rail { grid-column: 1; }
.urp-rail dl { margin: 0; }
.urp-rail dt {
  font-size: 0.6875rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--urp-muted);
  margin-bottom: 2px;
}
.urp-rail dd {
  margin: 0 0 var(--urp-s4);
  font-size: 0.9375rem;
  line-height: 1.35;
  font-variant-numeric: lining-nums;
}

.urp-article__title {
  margin: var(--urp-s1) 0 var(--urp-s4);
  font-size: clamp(2.1rem, 4.4vw, 3rem);
  line-height: 1.03;
  letter-spacing: -0.022em;
  font-weight: 600;
  text-wrap: balance;
}
.urp-article__kicker {
  margin: 0 0 var(--urp-s2);
  color: var(--urp-accent-deep);
  display: block;
}
.urp-article__standfirst {
  margin: 0;
  font-size: 1.3125rem;
  line-height: 1.42;
  color: var(--urp-ink-soft);
}

.urp-article__figure { margin: var(--urp-s6) 0 var(--urp-s7); }

.urp-prose {
  max-width: var(--urp-measure);
  margin-left: calc(9rem + var(--urp-s6));
  font-size: 1.125rem;
  line-height: 1.66;
}
.urp-prose > p { margin: 0 0 var(--urp-s5); }
.urp-prose > p:first-of-type::first-letter {
  float: left;
  font-size: 3.2em;
  line-height: 0.82;
  padding: 0.06em 0.09em 0 0;
  color: var(--urp-accent-deep);
}

.urp-prose h2 {
  margin: var(--urp-s7) 0 var(--urp-s4);
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: -0.01em;
  font-weight: 600;
  padding-top: var(--urp-s3);
  border-top: 1px solid var(--urp-rule);
}
.urp-prose h3 {
  margin: var(--urp-s6) 0 var(--urp-s3);
  font-size: 1.0625rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

.urp-prose ul, .urp-prose ol { margin: 0 0 var(--urp-s5); padding-left: var(--urp-s5); }
.urp-prose li { margin-bottom: var(--urp-s2); }
.urp-prose ul { list-style: none; padding-left: 0; }
.urp-prose ul > li { padding-left: var(--urp-s5); position: relative; }
.urp-prose ul > li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--urp-accent);
}
.urp-prose ol { list-style: decimal; }
.urp-prose ol > li::marker { color: var(--urp-accent-deep); font-variant-numeric: lining-nums; }

.urp-prose blockquote {
  margin: var(--urp-s6) 0;
  padding: 0 0 0 var(--urp-s5);
  border-left: 3px solid var(--urp-accent);
  font-size: 1.3125rem;
  line-height: 1.42;
  color: var(--urp-ink-soft);
}
.urp-prose blockquote p { margin: 0 0 var(--urp-s3); }
.urp-prose blockquote cite {
  display: block;
  font-style: normal;
  font-size: 0.8125rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--urp-muted);
}

.urp-prose figure { margin: var(--urp-s6) 0; }

.urp-prose a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: var(--urp-accent); }

/* data table */
.urp-prose table {
  width: 100%;
  border-collapse: collapse;
  margin: var(--urp-s6) 0;
  font-size: 0.9375rem;
  font-variant-numeric: lining-nums tabular-nums;
}
.urp-prose table caption {
  text-align: left;
  font-size: 0.6875rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--urp-muted);
  padding-bottom: var(--urp-s2);
}
.urp-prose table th, .urp-prose table td {
  text-align: left;
  padding: var(--urp-s2) var(--urp-s3) var(--urp-s2) 0;
  border-bottom: 1px solid var(--urp-rule-hair);
}
.urp-prose table thead th {
  border-bottom: 1px solid var(--urp-ink);
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--urp-muted);
  font-weight: 600;
}
.urp-prose table tbody th { font-weight: 600; }
.urp-prose table td.urp-num, .urp-prose table th.urp-num { text-align: right; padding-right: 0; }
.urp-prose table tbody tr:last-child td, .urp-prose table tbody tr:last-child th { border-bottom: 1px solid var(--urp-rule); }

.urp-article__end {
  max-width: var(--urp-measure);
  margin-left: calc(9rem + var(--urp-s6));
  margin-top: var(--urp-s7);
  padding-top: var(--urp-s3);
  border-top: 3px double var(--urp-rule);
}
.urp-article__end p { margin: 0; font-size: 0.9375rem; color: var(--urp-muted); }

/* elsewhere in the archive */
.urp-elsewhere { margin-top: var(--urp-s8); border-top: 4px solid var(--urp-ink); padding-top: var(--urp-s4); }
.urp-elsewhere ul {
  list-style: none; margin: 0; padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}
.urp-elsewhere li { border-left: 1px solid var(--urp-rule-hair); padding: var(--urp-s2) var(--urp-s5) var(--urp-s4); }
.urp-elsewhere li:first-child { border-left: 0; padding-left: 0; }
.urp-elsewhere li:last-child { padding-right: 0; }
.urp-elsewhere h3 { margin: var(--urp-s2) 0 0; font-size: 1.125rem; line-height: 1.28; font-weight: 600; }

/* ============================== category index ============================== */

.urp-category__head {
  margin-top: var(--urp-s7);
  padding-bottom: var(--urp-s6);
  border-bottom: 3px double var(--urp-rule);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: var(--urp-s5) var(--urp-s7);
  align-items: end;
}
.urp-category__title {
  margin: var(--urp-s2) 0 0;
  font-size: clamp(2.4rem, 6vw, 4rem);
  line-height: 0.98;
  letter-spacing: -0.025em;
  font-weight: 600;
}
.urp-category__intro { margin: 0; font-size: 1.125rem; line-height: 1.5; color: var(--urp-ink-soft); }

.urp-year { margin-top: var(--urp-s7); }
.urp-year__grid {
  display: grid;
  grid-template-columns: 9rem minmax(0, 1fr);
  gap: var(--urp-s6);
  border-top: 1px solid var(--urp-ink);
  padding-top: var(--urp-s4);
}
.urp-year__num {
  margin: 0;
  font-size: 1.5rem;
  font-variant-numeric: lining-nums;
  letter-spacing: 0.02em;
  font-weight: 600;
  position: sticky;
  top: var(--urp-s5);
  align-self: start;
}
.urp-year__count { display: block; margin-top: var(--urp-s1); }

.urp-archive-more {
  margin: var(--urp-s7) 0 0;
  padding-top: var(--urp-s3);
  border-top: 3px double var(--urp-rule);
}

/* ============================== footer ============================== */

.urp-foot {
  margin-top: var(--urp-s9);
  border-top: 4px solid var(--urp-ink);
  padding: var(--urp-s5) 0 var(--urp-s8);
}
.urp-foot__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr));
  gap: var(--urp-s6);
}
.urp-foot h2 { margin: 0 0 var(--urp-s3); font-size: 0.6875rem; letter-spacing: 0.13em; text-transform: uppercase; color: var(--urp-muted); font-weight: 600; }
.urp-foot ul { list-style: none; margin: 0; padding: 0; }
.urp-foot li { margin-bottom: var(--urp-s2); font-size: 0.9375rem; }
.urp-foot p { margin: 0 0 var(--urp-s3); font-size: 0.9375rem; color: var(--urp-ink-soft); max-width: 26rem; }
.urp-foot__colophon { font-size: 0.8125rem; color: var(--urp-muted); }

/* ============================== 860px ============================== */

@media (max-width: 860px) {
  body { font-size: 1.0625rem; }

  .urp-masthead__standing { display: none; }

  .urp-index-strip ul { grid-auto-flow: row; grid-template-columns: repeat(2, 1fr); }
  /* "29 interviews · 2011–2020" tracked at 0.1em lands within a pixel of the cell on a
     390px screen and wraps on anything narrower. Tighten the tracking rather than let
     the counts wrap to two lines on some cells and not others. */
  .urp-index-strip .urp-index-strip__count { letter-spacing: 0.05em; }
  .urp-index-strip li { border-left: 1px solid var(--urp-rule-hair); border-top: 1px solid var(--urp-rule-hair); padding: var(--urp-s3) var(--urp-s3); }
  .urp-index-strip li:nth-child(1), .urp-index-strip li:nth-child(2) { border-top: 0; }
  .urp-index-strip li:nth-child(odd) { border-left: 0; padding-left: 0; }
  .urp-index-strip li:last-child { grid-column: 1 / -1; text-align: left; border-left: 0; padding-left: 0; }

  .urp-lead__head { grid-template-columns: 1fr; gap: var(--urp-s4); }
  .urp-lead__excerpt { margin-top: var(--urp-s2); }

  .urp-chron__row { grid-template-columns: 1fr; gap: var(--urp-s2); padding: var(--urp-s4) 0; }
  .urp-chron__section { text-align: left; }

  .urp-groups { grid-template-columns: 1fr; }
  .urp-group { border-left: 0; border-top: 1px solid var(--urp-rule); padding: var(--urp-s5) 0 var(--urp-s5); }
  .urp-group:first-child { border-top: 0; }

  .urp-article__head { grid-template-columns: 1fr; gap: var(--urp-s4); padding-bottom: var(--urp-s5); }
  .urp-rail dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--urp-s5); }
  .urp-rail dd { margin-bottom: var(--urp-s3); }
  .urp-prose, .urp-article__end { margin-left: 0; }

  .urp-elsewhere ul { grid-template-columns: 1fr; }
  .urp-elsewhere li { border-left: 0; border-top: 1px solid var(--urp-rule-hair); padding: var(--urp-s3) 0; }
  .urp-elsewhere li:first-child { border-top: 0; }

  .urp-category__head { grid-template-columns: 1fr; }
  .urp-year__grid { grid-template-columns: 1fr; gap: var(--urp-s3); }
  .urp-year__num { position: static; }

  .urp-foot__grid { grid-template-columns: 1fr; gap: var(--urp-s5); }
}

/* ============================== print ============================== */

@media print {
  :root { --paper: #fff; }
  .urp-index-strip, .urp-foot ul, .urp-skip { display: none; }
  a { text-decoration: none; }
  .urp-shot { display: none; }
}

/* ====================== additions beyond the design ====================== */
/* Markdown emits bare tables; a wide one must scroll inside its own box rather
   than push the page sideways. */
.urp-table-wrap { overflow-x: auto; margin: var(--urp-s6) 0; }
.urp-table-wrap > table { margin: 0; }

/* The navigation module that surfaces current work on a handful of archive pages.
   A rule and a label, not a card: it should read as a cross-reference. */
.urp-promo {
  max-width: var(--urp-measure);
  margin: var(--urp-s7) 0 var(--urp-s6) calc(9rem + var(--urp-s6));
  padding-top: var(--urp-s3);
  border-top: 1px solid var(--urp-rule);
}
.urp-promo__kicker {
  margin: 0 0 var(--urp-s2);
  font-family: var(--urp-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--urp-muted);
}
.urp-promo__body { margin: 0; font-size: 1.0625rem; line-height: 1.5; }
.urp-promo__body a { text-decoration-color: var(--urp-accent); }

/* A section index's standing note is not an article opening: no rail to align to, and a
   drop cap on three lines of housekeeping reads as a mistake. */
.urp-body--index .urp-prose { margin-left: 0; }
.urp-body--index .urp-prose > p:first-of-type::first-letter {
  float: none; font-size: inherit; line-height: inherit; padding: 0; color: inherit;
}

/* Support pages (about, privacy, terms, 404) have no rail to sit beside; without this
   the headline drops into the rail's column and sits 9rem narrower than every other. */
.urp-article--plain .urp-article__head { grid-template-columns: minmax(0, var(--urp-measure)) minmax(0, 1fr); }
.urp-article--plain .urp-prose,
.urp-article--plain .urp-promo,
.urp-article--plain .urp-article__end { margin-left: 0; }

@media (max-width: 860px) {
  .urp-promo { margin-left: 0; }
}

/* A standing item: an evergreen piece kept on the front page after it has stopped being
   the newest thing. Set smaller than the lead so it reads as a second-order slot. */
.urp-standing__body { max-width: 62ch; }
.urp-standing__title {
  margin: 0 0 var(--urp-s2);
  font-size: 1.5rem;
  line-height: 1.12;
  letter-spacing: -0.014em;
  font-weight: 600;
  text-wrap: balance;
}
.urp-standing__excerpt { margin-top: var(--urp-s3); font-size: 1.0625rem; }
.urp-standing__excerpt p { margin: 0 0 var(--urp-s3); }
