/* The Default Report — series index and edition pages.
   Reuses the site's article typography (site.css .article-body, .article-toc,
   .mobile-toc); this file adds the report hero, tables and figures. */

/* Hero */
.dr-hero { padding: 64px 0 24px; }
@media (max-width: 800px) { .dr-hero { padding: 44px 0 16px; } }
.dr-hero .ink-eyebrow a { color: inherit; text-decoration: none; }
.dr-hero .ink-eyebrow a:hover { text-decoration: underline; text-underline-offset: 0.2em; }
.dr-hero__h1 {
  font-family: var(--ink-serif);
  font-size: clamp(40px, 6vw, 72px);
  line-height: 1.02;
  letter-spacing: -0.015em;
  font-weight: 400;
  margin: 16px 0 0;
  max-width: 16ch;
  text-wrap: balance;
}
.dr-hero__standfirst {
  margin: 22px 0 0;
  font-family: var(--ink-serif);
  font-style: italic;
  font-size: clamp(18px, 2.2vw, 22px);
  line-height: 1.4;
  color: var(--ink-carbon);
  max-width: 48ch;
}
.dr-hero__meta {
  margin-top: 28px;
  padding-top: 16px;
  border-top: 1px solid var(--ink-hairline);
  display: flex; flex-wrap: wrap; gap: 8px 28px;
  font-family: var(--ink-sans); font-size: 14px; color: var(--ink-fg-muted);
}
.dr-hero__meta b { color: var(--ink-carbon); font-weight: 500; }
.dr-hero + .dr-facts { margin-top: -4px; }

/* Lead figure: the edition's key chart, directly under the facts strip */
.dr-lead { padding: 40px 0 0; }
.dr-lead__inner { max-width: 760px; }
.dr-lead .dr-fig { margin: 0; border-top: 0; }
.dr-lead .dr-fig__head { padding-top: 0; }
.dr-lead .dr-fig__title { font-size: 24px; max-width: 44ch; }
.dr-lead .dr-fig__caption { font-size: 20px; max-width: 48ch; }
.dr-lead + .site-container .dr-shell { padding-top: 24px; }

/* Two-column shell: contents + body (no sidebar) */
.dr-shell {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: 64px;
  padding: 48px 0 96px;
  align-items: start;
}
@media (max-width: 960px) { .dr-shell { grid-template-columns: minmax(0, 1fr); gap: 0; padding-top: 24px; } .dr-shell .article-toc { display: none; } }
.dr-article { max-width: 68ch; }
.dr-article p { margin-bottom: 20px; }

/* Numbered takeaways (consecutive bold-led paragraphs) */
.dr-takeaways { list-style: none; padding: 0; margin: 8px 0 28px; counter-reset: take; border-top: 1px solid var(--ink-carbon); }
.dr-takeaways li { counter-increment: take; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; padding: 22px 0; border-bottom: 1px solid var(--ink-hairline); }
.dr-takeaways li::before { content: counter(take, decimal-leading-zero); font-family: var(--ink-serif); font-style: italic; font-size: 14px; color: var(--ink-fg-muted); padding-top: 5px; }
.dr-article .dr-takeaways h3 { margin: 0 0 8px; font-size: 22px; line-height: 1.25; }
.dr-article .dr-takeaways p { margin: 0; }

/* Highlighted table row (a bold first cell in the markdown) */
.dr-table__hot th, .dr-table__hot td { background: var(--ink-vellum); }
.dr-table__hot th { color: var(--ink-carbon) !important; padding-left: 14px; }
.dr-table__hot td:first-of-type { font-size: 24px !important; }
.dr-table__hot td:last-child { padding-right: 14px; }
.dr-table__pace { font-size: 20px !important; }
.dr-article p.lede { font-family: var(--ink-serif); font-size: 21px; line-height: 1.5; margin-bottom: 28px; }
.dr-article p.lede strong { font-style: italic; }
.dr-article strong { font-family: var(--ink-serif); font-weight: 400; font-size: 1.08em; }

/* Key facts strip under the hero */
.dr-facts { padding: 8px 0 0; }
.dr-facts__grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--ink-carbon); border-bottom: 1px solid var(--ink-carbon); }
@media (max-width: 800px) { .dr-facts__grid { grid-template-columns: 1fr; } }
.dr-facts__cell { padding: 22px 24px 22px 0; border-right: 1px solid var(--ink-hairline); margin-right: 24px; }
.dr-facts__cell:last-child { border-right: 0; margin-right: 0; }
@media (max-width: 800px) { .dr-facts__cell { border-right: 0; margin-right: 0; padding: 16px 0; } .dr-facts__cell + .dr-facts__cell { border-top: 1px solid var(--ink-hairline); } }
.dr-facts__value { font-family: var(--ink-serif); font-size: clamp(30px, 3.4vw, 40px); line-height: 1.05; letter-spacing: -0.015em; color: var(--ink-carbon); }
.dr-facts__label { font-family: var(--ink-sans); font-size: 13px; line-height: 1.45; color: var(--ink-fg-muted); margin-top: 10px; max-width: 30ch; }

/* Series navigation at the end of an edition */
.dr-series-nav { margin-top: 48px; padding-top: 20px; border-top: 1px solid var(--ink-carbon); display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; font-family: var(--ink-sans); font-size: 14px; }
.dr-article .dr-series-nav__all, .dr-series-nav__all { color: var(--ink-carbon); text-decoration: none; }
.dr-series-nav__all:hover { text-decoration: underline; text-underline-offset: 0.18em; }
.dr-series-nav__next { color: var(--ink-fg-quiet); }

/* Sections */
.dr-section { padding: 0 0 56px; }
.dr-section .ink-eyebrow { display: block; margin-bottom: 16px; }

/* Tables (document style, matches the eligibility table) */
.dr-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 24px 0 8px; }
.dr-table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid var(--ink-carbon);
  border-bottom: 1px solid var(--ink-carbon);
  font-family: var(--ink-sans);
}
.dr-table th, .dr-table td { padding: 13px 20px 13px 0; border-bottom: 1px solid var(--ink-hairline); vertical-align: top; text-align: left; }
.dr-table th:last-child, .dr-table td:last-child { padding-right: 0; }
.dr-table thead th {
  font-size: 11px; letter-spacing: var(--ink-track-caps); text-transform: uppercase;
  color: var(--ink-fg-muted); font-weight: 500;
}
.dr-table tbody th { font-family: var(--ink-sans); font-size: 15px; font-weight: 400; color: var(--ink-carbon); }
.dr-table tbody td { font-family: var(--ink-serif); font-size: 18px; line-height: 1.3; color: var(--ink-carbon); white-space: nowrap; }
.dr-table tbody td strong { font-weight: 400; }
.dr-table tbody tr:last-child th, .dr-table tbody tr:last-child td { border-bottom: 0; }
.dr-table--numbers tbody th { font-size: 14px; color: var(--ink-fg-muted); max-width: 32ch; }
.dr-table--numbers tbody td { font-size: 20px; }
.dr-table--numbers tbody td:last-child { color: var(--ink-fg-muted); font-size: 18px; }
.dr-table--numbers { margin-bottom: 8px; }
.dr-table--index { min-width: 600px; }
.dr-table--index tbody th { font-family: var(--ink-serif); font-size: 18px; }
.dr-table__ref th, .dr-table__ref td { color: var(--ink-fg-muted) !important; border-top: 1px solid var(--ink-hairline); }
.dr-table__ref th { font-style: italic; }
.dr-table__link { font-family: var(--ink-sans); font-size: 14px; color: var(--ink-carbon); text-decoration: underline; text-underline-offset: 0.18em; white-space: nowrap; }
.dr-table__note { font-family: var(--ink-sans); font-size: 13px; line-height: 1.5; color: var(--ink-fg-muted); margin: 12px 0 0; max-width: 70ch; }
@media (max-width: 640px) {
  .dr-table tbody td { font-size: 16px; }
  .dr-table--numbers tbody td { font-size: 17px; }
  .dr-table--numbers tbody th { white-space: normal; min-width: 180px; }
}

/* Figures */
.dr-fig { margin: 40px 0 44px; padding: 0; border-top: 1px solid var(--ink-carbon); }
.dr-fig__head { padding: 16px 0 10px; }
.dr-fig__num { font-family: var(--ink-serif); font-style: italic; font-size: 13px; color: var(--ink-fg-muted); }
.dr-article .dr-fig__title, .dr-fig__title { font-family: var(--ink-serif); font-size: 20px; line-height: 1.25; font-weight: 400; margin: 4px 0 4px; max-width: 40ch; }
.dr-article .dr-fig__sub, .dr-fig__sub { font-family: var(--ink-sans); font-size: 13px; line-height: 1.45; color: var(--ink-fg-muted); margin: 0 0 6px; max-width: 60ch; }
.dr-fig__legend { display: flex; flex-wrap: wrap; gap: 6px 20px; margin: 10px 0 2px; font-family: var(--ink-sans); font-size: 13px; color: var(--ink-carbon); }
.dr-fig__key { display: inline-flex; align-items: center; gap: 8px; }
.dr-fig__swatch { display: inline-block; width: 18px; height: 3px; background: #1B1A19; }
.dr-fig__swatch--comparison { background: #9CA6B8; }
.dr-fig__chart { overflow: hidden; }
.dr-fig__chart svg { display: block; width: 100%; height: auto; font-family: var(--ink-sans); }
.dr-fig__chart--narrow { display: none; }
@media (max-width: 640px) { .dr-fig__chart--wide { display: none; } .dr-fig__chart--narrow { display: block; } }
.dr-article .dr-fig__source, .dr-fig__source { font-family: var(--ink-sans); font-size: 12px; line-height: 1.45; color: var(--ink-fg-muted); margin: 10px 0 0; }
.dr-article .dr-fig__caption, .dr-fig__caption { font-family: var(--ink-serif); font-style: italic; font-size: 18px; line-height: 1.4; color: var(--ink-carbon); margin: 12px 0 0; padding-top: 12px; border-top: 1px solid var(--ink-hairline); max-width: 56ch; }
.dr-fig__missing { color: var(--ink-fg-muted); }

/* How we count */
.dr-method { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--ink-carbon); }
.dr-method h2 { font-size: 20px !important; margin: 0 0 12px !important; }
.dr-method p { font-size: 14px !important; line-height: 1.6 !important; color: var(--ink-fg-muted) !important; }

/* Edition list */
.dr-editions { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--ink-carbon); }
.dr-edition { border-bottom: 1px solid var(--ink-hairline); }
.dr-edition__link {
  display: grid; grid-template-columns: 72px minmax(0, 1fr) 32px; gap: 16px; align-items: start;
  padding: 24px 0; color: inherit; text-decoration: none;
}
a.dr-edition__link:hover .dr-edition__industry { text-decoration: underline; text-underline-offset: 0.15em; }
.dr-edition__num { font-family: var(--ink-serif); font-style: italic; font-size: 15px; color: var(--ink-fg-muted); padding-top: 4px; }
.dr-edition__body { display: flex; flex-direction: column; gap: 6px; }
.dr-edition__industry { font-family: var(--ink-serif); font-size: 24px; line-height: 1.2; color: var(--ink-carbon); }
.dr-edition__summary { font-family: var(--ink-sans); font-size: 15px; line-height: 1.55; color: var(--ink-carbon); max-width: 60ch; }
.dr-edition__date { font-family: var(--ink-sans); font-size: 13px; color: var(--ink-fg-muted); }
.dr-edition__arrow { font-family: var(--ink-sans); font-size: 18px; color: var(--ink-carbon); padding-top: 2px; }
.dr-edition--next .dr-edition__industry, .dr-edition--next .dr-edition__summary, .dr-edition--next .dr-edition__num { color: var(--ink-fg-quiet); }
@media (max-width: 600px) { .dr-edition__link { grid-template-columns: 56px minmax(0, 1fr); } .dr-edition__arrow { display: none; } }
