/*
  Qazaqstan-Israel public stylesheet.

  One external file, because the Content-Security-Policy forbids inline style
  and inline script. Everything is written mobile-first: the narrow layout is
  the default and wider viewports only widen the measures and the grids.

  Reading, fragments, cards and search are complete without JavaScript, so no
  rule here hides content that only a script could restore.
*/

:root {
  --qi-bg: #ffffff;
  --qi-fg: #14181d;
  --qi-muted: #59616e;
  --qi-line: #dde2ea;
  --qi-surface: #f5f7fa;
  --qi-surface-2: #eef2f7;
  --qi-accent: #0a5ea8;
  --qi-accent-fg: #ffffff;
  --qi-ok: #1c6b45;
  --qi-ok-bg: #e8f5ee;
  --qi-warn: #8a5b00;
  --qi-warn-bg: #fdf3e0;
  --qi-bad: #9d2b22;
  --qi-bad-bg: #fbeceb;
  --qi-radius: 10px;
  --qi-measure: 68rem;
  --qi-font: var(--font-sans);
  --qi-serif: var(--font-serif);
  --qi-display: var(--font-display);
  --qi-mono: var(--font-mono);
}

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

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

body {
  margin: 0;
  background: var(--qi-bg);
  color: var(--qi-fg);
  font-family: var(--qi-font);
  font-size: 1rem;
  line-height: 1.6;
  font-synthesis: none;
}

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

h1,
h2,
h3 {
  line-height: 1.25;
  margin: 0 0 0.5rem;
}

a {
  color: var(--qi-accent);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--qi-accent);
  outline-offset: 2px;
}

.qi-skip {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--qi-accent);
  color: var(--qi-accent-fg);
  padding: 0.6rem 1rem;
  z-index: 50;
}

.qi-skip:focus {
  left: 0.5rem;
  top: 0.5rem;
}

/* ---------------------------------------------------------------- header */

.qi-header {
  border-bottom: 1px solid var(--qi-line);
  background: rgba(255, 253, 250, 0.96);
  box-shadow: 0 1px 0 rgba(10, 38, 45, 0.03);
  padding: 0.75rem 1rem 0.7rem;
}

.qi-header__topline {
  display: grid;
  grid-template-columns: minmax(11.5rem, 15rem) minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  max-width: var(--qi-measure);
  margin: 0 auto;
}

.qi-brand {
  display: grid;
  gap: 0.08rem;
  min-width: 0;
  text-decoration: none;
  color: inherit;
}

.qi-brand__name {
  color: var(--qi-fg);
  font-size: clamp(1.02rem, 1.25vw, 1.16rem);
  font-weight: 760;
  letter-spacing: -0.035em;
}

.qi-brand__tagline {
  color: var(--qi-muted);
  font-size: 0.72rem;
  font-weight: 500;
  line-height: 1.25;
}

.qi-locales__list {
  display: flex;
  list-style: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--qi-line);
  border-radius: 0.62rem;
  background: var(--qi-bg);
}

.qi-locales__link {
  display: inline-flex;
  min-height: 2.25rem;
  min-width: 2.45rem;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.55rem;
  border: 0;
  border-left: 1px solid var(--qi-line);
  border-radius: 0;
  background: transparent;
  color: var(--qi-accent);
  font-size: 0.8rem;
  font-weight: 720;
  line-height: 1.2;
  text-decoration: none;
}

.qi-locales__item:first-child .qi-locales__link {
  border-left: 0;
}

a.qi-locales__link:hover {
  background: var(--qi-surface-2);
}

.qi-locales__link--current {
  background: var(--qi-accent);
  color: var(--qi-accent-fg);
}

a.qi-locales__link--current:hover {
  background: var(--qi-accent);
}

/* A locale that exists in the product but does not publish this page. It is
   shown as unavailable on purpose: hiding it would look like a broken
   switcher, and linking it would produce a 404. */
.qi-locales__link--off {
  color: var(--qi-muted);
  background: var(--qi-bg);
  cursor: not-allowed;
}

.qi-locales__item--off {
  display: inline-block;
}

.qi-nav {
  min-width: 0;
}

.qi-nav__list {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.08rem 0.24rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-nav__list--tools {
  font-size: 0.9rem;
}

.qi-nav__link {
  border-radius: 0.35rem;
  color: var(--qi-fg);
  display: block;
  font-size: 0.84rem;
  font-weight: 680;
  padding: 0.34rem 0.42rem;
  text-decoration: none;
  white-space: nowrap;
}

.qi-nav__link:hover,
.qi-nav__link:focus-visible {
  background: var(--qi-surface);
  color: var(--qi-accent);
  text-decoration: none;
}

.qi-nav__list--tools .qi-nav__link {
  font-weight: 400;
  color: var(--qi-muted);
}

.qi-searchbar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
  max-width: var(--qi-measure);
  margin: 0.75rem auto 0;
}

.qi-searchbar__label {
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-searchbar__input {
  flex: 1 1 12rem;
  min-width: 0;
  padding: 0.45rem 0.6rem;
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  font: inherit;
  background: var(--qi-bg);
  color: inherit;
}

.qi-searchbar__button {
  padding: 0.45rem 0.9rem;
  border: 1px solid var(--qi-accent);
  border-radius: var(--qi-radius);
  background: var(--qi-accent);
  color: var(--qi-accent-fg);
  font: inherit;
  cursor: pointer;
}

.qi-searchbar--page {
  margin-bottom: 1.25rem;
}

.qi-header__utility {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, 29rem);
  align-items: center;
  gap: 1rem 1.5rem;
  max-width: var(--qi-measure);
  margin: 0.5rem auto 0;
  padding-top: 0.55rem;
  border-top: 1px solid var(--qi-line);
}

.qi-header__collections,
.qi-header__collection-list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.qi-header__collections {
  gap: 0.4rem 0.75rem;
}

.qi-header__utility-label {
  color: var(--qi-muted);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.qi-header__collection-list {
  gap: 0.15rem 0.7rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-header__collection-link {
  color: var(--qi-fg);
  font-size: 0.82rem;
  font-weight: 620;
  text-decoration: none;
}

.qi-header__collection-link:hover,
.qi-header__collection-link:focus-visible {
  color: var(--qi-accent);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.qi-header__search {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  flex-wrap: nowrap;
  gap: 0.38rem;
  margin: 0;
  max-width: none;
}

.qi-header__search .qi-searchbar__input {
  min-width: 0;
}

.qi-header__search .qi-searchbar__button {
  white-space: nowrap;
}

.qi-more {
  display: none;
}

@media (max-width: 899px) {
  .qi-header__topline {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.5rem;
  }

  .qi-header__topline > .qi-nav,
  .qi-header__utility {
    display: none;
  }

  .qi-more {
    display: block;
    max-width: var(--qi-measure);
    margin: 0.52rem auto 0;
  }

  .qi-more summary {
    align-items: center;
    color: var(--qi-fg);
    cursor: pointer;
    display: flex;
    font-size: 0.85rem;
    font-weight: 680;
    min-height: 2.1rem;
    width: fit-content;
  }

  .qi-more summary::before {
    color: var(--qi-accent);
    content: '+ ';
    padding-right: 0.45rem;
  }

  .qi-more[open] summary::before {
    content: '− ';
  }

  .qi-more summary:focus-visible {
    outline: 3px solid var(--qi-accent);
    outline-offset: 3px;
  }

  .qi-more__panel {
    display: grid;
    gap: 0.65rem;
    margin-top: 0.25rem;
    padding: 0.75rem;
    border: 1px solid var(--qi-line);
    border-radius: 0.62rem;
    background: var(--qi-paper);
  }

  .qi-more__sections,
  .qi-more__collections {
    display: flex;
    flex-wrap: wrap;
    gap: 0.12rem 0.35rem;
  }

  .qi-more .qi-nav__link {
    font-size: 0.84rem;
    padding: 0.32rem 0.42rem;
  }

  .qi-more .qi-searchbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.35rem;
    margin: 0;
    max-width: none;
  }

  .qi-more .qi-searchbar__input {
    min-width: 0;
  }
}

@media (max-width: 699px) {
  .qi-header {
    padding-block: 0.68rem 0.56rem;
  }

  .qi-header__topline {
    display: flex;
    justify-content: space-between;
  }

  .qi-brand__tagline {
    display: none;
  }

  .qi-brand__name {
    font-size: 1rem;
  }

  .qi-locales__link {
    min-height: 2rem;
    min-width: 2rem;
    padding-inline: 0.32rem;
    font-size: 0.74rem;
  }
}

/* ------------------------------------------------------------------ main */

.qi-main {
  max-width: var(--qi-measure);
  margin: 0 auto;
  padding: 1.25rem 1rem 2.5rem;
}

.qi-section {
  margin: 2rem 0 0;
}

.qi-section:first-child {
  margin-top: 0;
}

.qi-section__title {
  font-size: 1.25rem;
  border-bottom: 1px solid var(--qi-line);
  padding-bottom: 0.35rem;
}

.qi-section__lead {
  color: var(--qi-muted);
  margin-top: 0;
}

.qi-section__more {
  margin-top: 0.75rem;
}

.qi-page__head {
  margin-bottom: 1rem;
}

.qi-page__title {
  font-size: 1.6rem;
}

.qi-page__lead {
  font-size: 1.05rem;
  color: var(--qi-fg);
  margin-top: 0;
}

.qi-page__note {
  color: var(--qi-muted);
  font-size: 0.9rem;
}

.qi-empty {
  color: var(--qi-muted);
  font-style: italic;
  border: 1px dashed var(--qi-line);
  border-radius: var(--qi-radius);
  padding: 0.75rem;
  background: var(--qi-surface);
}

.qi-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  color: var(--qi-muted);
  font-size: 0.9rem;
  margin-bottom: 1rem;
}

.qi-link {
  text-underline-offset: 2px;
}

.qi-links {
  list-style: none;
  margin: 0.5rem 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1rem;
}

.qi-code {
  font-family: var(--qi-mono);
  font-size: 0.85rem;
  background: var(--qi-surface-2);
  border-radius: 4px;
  padding: 0.05rem 0.35rem;
  word-break: break-all;
}

/* --------------------------------------------------------------- notices */

.qi-notice {
  border-left: 4px solid var(--qi-accent);
  background: var(--qi-surface);
  padding: 0.6rem 0.8rem;
  border-radius: 0 var(--qi-radius) var(--qi-radius) 0;
  margin: 1rem 0;
}

.qi-notice--local {
  max-width: var(--qi-measure);
  margin: 0.75rem auto 0;
  font-size: 0.9rem;
}

.qi-notice--context {
  border-left-color: var(--qi-warn);
  background: var(--qi-warn-bg);
}

.qi-notice--ok {
  border-left-color: var(--qi-ok);
  background: var(--qi-ok-bg);
  color: var(--qi-ok);
}

.qi-notice--error {
  border-left-color: var(--qi-bad);
  background: var(--qi-bad-bg);
  color: var(--qi-bad);
}

.qi-notices {
  list-style: none;
  padding: 0;
}

/* -------------------------------------------------------------- hero/home */

.qi-hero {
  padding: 1.5rem 0 0.5rem;
  border-bottom: 1px solid var(--qi-line);
  margin-bottom: 1rem;
}

.qi-hero__title {
  font-size: 2rem;
}

.qi-hero__tagline {
  font-size: 1.1rem;
  color: var(--qi-muted);
  margin: 0 0 0.75rem;
}

.qi-hero__lead {
  max-width: 46rem;
}

.qi-cards {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  margin-top: 1.5rem;
}

.qi-card {
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  padding: 0.9rem 1rem;
  background: var(--qi-bg);
}

.qi-card__kind {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.72rem;
  color: var(--qi-muted);
  margin: 0 0 0.35rem;
}

.qi-card__title {
  font-size: 1.1rem;
  margin: 0 0 0.35rem;
}

.qi-card__link {
  text-decoration: none;
}

.qi-card__link:hover {
  text-decoration: underline;
}

.qi-card__summary {
  margin: 0.35rem 0 0;
  color: var(--qi-muted);
  font-size: 0.95rem;
}

.qi-card__locale,
.qi-card__flag {
  margin: 0.5rem 0 0;
  font-size: 0.82rem;
  color: var(--qi-warn);
}

.qi-tiles {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-tile {
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  background: var(--qi-surface);
}

.qi-tile__link {
  display: block;
  padding: 0.8rem 0.9rem;
  text-decoration: none;
  color: inherit;
}

.qi-tile__link:hover {
  background: var(--qi-surface-2);
}

.qi-tile__label {
  display: block;
  font-weight: 700;
}

.qi-tile__summary {
  display: block;
  color: var(--qi-muted);
  font-size: 0.9rem;
}

/* ----------------------------------------------------------------- lists */

.qi-list {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-list__item {
  padding: 0.6rem 0;
  border-bottom: 1px solid var(--qi-line);
}

.qi-list__item:last-child {
  border-bottom: 0;
}

.qi-list__link {
  font-weight: 600;
  text-decoration: none;
}

.qi-list__link:hover {
  text-decoration: underline;
}

.qi-list__meta {
  display: block;
  color: var(--qi-muted);
  font-size: 0.88rem;
}

/* --------------------------------------------------------------- article */

.qi-article__head {
  margin-bottom: 1rem;
}

.qi-article__kind {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.72rem;
  color: var(--qi-muted);
  margin: 0 0 0.35rem;
}

.qi-article__title {
  font-size: 1.75rem;
  overflow-wrap: anywhere;
}

.qi-article__lead {
  font-size: 1.1rem;
  color: var(--qi-muted);
}

.qi-article__dates {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  font-size: 0.88rem;
  color: var(--qi-muted);
}

.qi-body {
  margin-top: 1.25rem;
  max-width: 44rem;
  overflow-wrap: anywhere;
}

.qi-body p {
  margin: 0 0 1rem;
}

.qi-body h2,
.qi-body h3 {
  margin-top: 1.75rem;
}

.qi-body blockquote {
  margin: 1rem 0;
  padding: 0.5rem 1rem;
  border-left: 4px solid var(--qi-line);
  background: var(--qi-surface);
  color: var(--qi-fg);
}

.qi-body ul,
.qi-body ol {
  padding-inline-start: 1.4rem;
}

.qi-body table {
  border-collapse: collapse;
  width: 100%;
  margin: 1rem 0;
}

.qi-body table th:first-child:nth-last-child(2) {
  width: 40%;
}

.qi-table-scroll {
  max-width: 100%;
  overflow-x: auto;
}

.qi-body caption {
  text-align: start;
  color: var(--qi-muted);
  font-size: 0.9rem;
  padding-bottom: 0.35rem;
}

.qi-body th,
.qi-body td {
  border: 1px solid var(--qi-line);
  padding: 0.4rem 0.6rem;
  text-align: start;
}

.qi-body code {
  font-family: var(--qi-mono);
  font-size: 0.9em;
  background: var(--qi-surface-2);
  border-radius: 4px;
  padding: 0.05rem 0.3rem;
}

.qi-body a {
  word-break: break-word;
}

/* ----------------------------------------------------------- claims/blocks */

.qi-claims,
.qi-blocks {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-claim,
.qi-block {
  border-top: 1px solid var(--qi-line);
  padding: 0.75rem 0;
}

.qi-claim__text {
  margin: 0 0 0.35rem;
}

.qi-claim__meta {
  margin: 0;
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-claim__status {
  font-weight: 700;
}

.qi-claim__status--confirmed {
  color: var(--qi-ok);
}

.qi-claim__status--partial,
.qi-claim__status--unverified {
  color: var(--qi-warn);
}

.qi-claim__status--disputed,
.qi-claim__status--refuted {
  color: var(--qi-bad);
}

.qi-claim__note {
  margin: 0.35rem 0 0;
  font-size: 0.92rem;
}

.qi-block__link {
  font-weight: 600;
}

.qi-block__kind {
  margin: 0.15rem 0 0;
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-block__locale {
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* A closed-set record value printed in the record's own source language
   because no wording was decided for the reader's locale: the language is
   named next to the value instead of a translation being invented. */
.qi-value__lang {
  font-size: 0.78rem;
  font-style: italic;
  color: var(--qi-muted);
  white-space: nowrap;
}

/* --------------------------------------------------------------- sources */

.qi-sources,
.qi-source-group {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-source {
  border-left: 3px solid var(--qi-line);
  padding: 0.5rem 0 0.5rem 0.75rem;
  margin-bottom: 0.75rem;
}

.qi-source__title {
  margin: 0;
  font-weight: 600;
}

.qi-source__meta,
.qi-source__locator,
.qi-source__conditions {
  margin: 0.2rem 0 0;
  font-size: 0.85rem;
  color: var(--qi-muted);
}

/* ----------------------------------------------------------------- media */

.qi-media {
  margin: 1.25rem 0;
}

.qi-media__image,
.qi-figure__image {
  display: block;
  max-width: 100%;
  height: auto;
  max-height: 38rem;
  object-fit: contain;
  border-radius: var(--qi-radius);
  border: 1px solid var(--qi-line);
  background: var(--qi-surface);
}

.qi-media__caption {
  display: block;
  font-size: 0.9rem;
}

.qi-media__credit {
  display: block;
  font-size: 0.8rem;
  color: var(--qi-muted);
}

.qi-media__disclosure {
  font-size: 0.82rem;
  color: var(--qi-warn);
  background: var(--qi-warn-bg);
  border-radius: var(--qi-radius);
  padding: 0.3rem 0.5rem;
}

.qi-doc {
  display: inline-block;
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  background: var(--qi-surface);
  padding: 0.6rem 0.8rem;
  text-decoration: none;
}

.qi-doc__label {
  font-weight: 600;
}

.qi-figure {
  margin-top: 2rem;
}

.qi-figure__note {
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-method {
  border-top: 3px double var(--qi-line);
  padding-top: 1rem;
}

/* ----------------------------------------------------------- corrections */

.qi-corrections,
.qi-records {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-corrections__item {
  border-top: 1px solid var(--qi-line);
  padding: 0.6rem 0;
}

.qi-corrections__head {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  font-size: 0.85rem;
}

.qi-corrections__type {
  font-weight: 700;
}

.qi-corrections__status {
  color: var(--qi-muted);
}

.qi-corrections__summary {
  margin: 0.3rem 0 0;
}

.qi-corrections__meta {
  margin: 0.2rem 0 0;
  font-size: 0.82rem;
  color: var(--qi-muted);
}

/* A correction record is authored in one language. When the reader is on
   another locale the text keeps its own ``lang`` and is explained rather
   than silently presented as a translation. */
.qi-corrections__language,
.qi-record__language {
  margin: 0.25rem 0 0;
  font-size: 0.82rem;
  color: var(--qi-warn);
}

.qi-record {
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  padding: 0.9rem 1rem;
  margin-bottom: 1rem;
  background: var(--qi-bg);
}

.qi-record__status {
  display: inline-block;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-radius: 999px;
  padding: 0.15rem 0.6rem;
  background: var(--qi-surface-2);
  color: var(--qi-muted);
  margin: 0;
}

.qi-record__status--published,
.qi-record__status--completed,
.qi-record__status--active,
.qi-record__status--verified,
.qi-record__status--open,
.qi-record__status--rolling {
  background: var(--qi-ok-bg);
  color: var(--qi-ok);
}

.qi-record__status--propagating,
.qi-record__status--in-progress,
.qi-record__status--accepted,
.qi-record__status--requested,
.qi-record__status--unverified,
.qi-record__status--historical,
.qi-record__status--paused {
  background: var(--qi-warn-bg);
  color: var(--qi-warn);
}

.qi-record__status--restriction,
.qi-record__status--retraction,
.qi-record__status--takedown,
.qi-record__status--withdrawn,
.qi-record__status--closed,
.qi-record__status--rejected,
.qi-record__status--cancelled {
  background: var(--qi-bad-bg);
  color: var(--qi-bad);
}

.qi-record__title {
  font-size: 1.05rem;
  margin: 0.4rem 0 0.3rem;
  font-family: var(--qi-mono);
}

.qi-record__summary {
  margin: 0 0 0.5rem;
}

.qi-record__channels-title {
  margin: 0.75rem 0 0.25rem;
  font-size: 0.85rem;
  color: var(--qi-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.qi-record__channels {
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-record__channel {
  font-size: 0.9rem;
}

.qi-record__limit {
  margin: 0.75rem 0 0;
  font-size: 0.85rem;
  color: var(--qi-muted);
  border-top: 1px dashed var(--qi-line);
  padding-top: 0.5rem;
}

.qi-record__link {
  font-weight: 600;
}

/* ---------------------------------------------------------------- facts */

.qi-facts {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.2rem 1rem;
  margin: 1rem 0 0;
}

.qi-facts dt {
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--qi-muted);
  margin-top: 0.6rem;
}

.qi-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.qi-provenance {
  border-top: 1px solid var(--qi-line);
  padding-top: 0.5rem;
}

/* ---------------------------------------------------------------- share */

.qi-share .qi-article__head {
  border-bottom: 0;
  margin-bottom: 1.6rem;
  max-width: 48rem;
  padding-bottom: 0;
}

.qi-share .qi-article__title {
  font-size: clamp(2rem, 3vw, 2.65rem);
  line-height: 1.08;
}

.qi-share__body {
  font-size: 1.15rem;
}

.qi-share__body p {
  margin: 0 0 0.75rem;
}

.qi-share__body blockquote {
  margin: 1rem 0;
  padding: 0.5rem 1rem;
  border-left: 4px solid var(--qi-line);
  background: var(--qi-surface);
  color: var(--qi-fg);
}

.qi-share__body ul,
.qi-share__body ol {
  padding-inline-start: 1.4rem;
  margin: 0 0 0.75rem;
}

/* A citation is a reference number, not prose: keep it out of the line box
   so a long body does not reflow around it (R-10 / DIST-04). */
.qi-cite {
  font-size: 0.75em;
  line-height: 0;
  vertical-align: super;
  text-decoration: none;
  border-bottom: 1px dotted currentColor;
}

.qi-share__source,
.qi-share__address {
  margin: 0.35rem 0;
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}

.qi-share__workspace {
  align-items: start;
  display: grid;
  gap: 1.45rem;
  margin: 1.75rem 0 0;
}

.qi-share__card {
  display: block;
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  background: var(--qi-surface);
  height: auto;
  width: 100%;
}

.qi-share__caption {
  font-size: 0.85rem;
  color: var(--qi-muted);
  padding-top: 0.35rem;
}

.qi-share__actions {
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-share__actions-panel {
  border-left: 2px solid var(--qi-accent-warm);
  margin: 0;
  padding: 0.1rem 0 0.1rem 1rem;
}

.qi-share__actions-panel .qi-section__title {
  border-bottom: 0;
  font-family: var(--qi-display);
  font-size: 1.45rem;
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 0.55rem;
  padding: 0;
}

.qi-share__action {
  align-items: baseline;
  color: var(--qi-accent);
  display: flex;
  font-size: 0.94rem;
  font-weight: 650;
  gap: 0.5rem;
  justify-content: space-between;
  min-height: 2.4rem;
  padding: 0.45rem 0;
  text-decoration: none;
}

.qi-share__action::after {
  content: '→';
  flex: 0 0 auto;
}

.qi-share__action:hover,
.qi-share__action:focus-visible {
  color: var(--qi-fg);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.qi-share__workspace .qi-share__figure {
  margin: 0;
}

.qi-share > .qi-section:not(.qi-share__actions-panel),
.qi-share > .qi-section__more {
  max-width: 46rem;
}

@media (min-width: 1000px) {
  .qi-share__workspace {
    column-gap: 2.25rem;
    grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
  }
  .qi-share__workspace .qi-share__figure {
    grid-column: 1;
    grid-row: 1;
  }
  .qi-share__actions-panel {
    grid-column: 2;
    grid-row: 1;
  }
}

@media (max-width: 699px) {
  .qi-share .qi-article__head {
    margin-bottom: 1.35rem;
  }
  .qi-share .qi-article__title {
    font-size: clamp(1.95rem, 9vw, 2.35rem);
  }
  .qi-share__workspace {
    gap: 1.25rem;
    margin-top: 1.45rem;
  }
  .qi-share__actions-panel {
    padding-left: 0.85rem;
  }
}

.qi-share__text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: var(--qi-mono);
  font-size: 0.85rem;
  background: var(--qi-surface);
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  padding: 0.8rem;
  margin: 1rem 0 0;
}

/* ---------------------------------------------------------------- forms */

.qi-form {
  margin-top: 1rem;
  max-width: 40rem;
}

.qi-field {
  margin-bottom: 1rem;
}

.qi-field__label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.qi-field__input {
  display: block;
  width: 100%;
  padding: 0.5rem 0.6rem;
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  background: var(--qi-bg);
  color: inherit;
  font: inherit;
}

.qi-field__input--area {
  min-height: 9rem;
  resize: vertical;
}

.qi-field__note {
  margin: 0.25rem 0 0;
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-form__submit {
  padding: 0.55rem 1.2rem;
  border: 1px solid var(--qi-accent);
  border-radius: var(--qi-radius);
  background: var(--qi-accent);
  color: var(--qi-accent-fg);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

/* -------------------------------------------------------------- timeline */

.qi-timeline {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-timeline__item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.15rem;
  border-inline-start: 3px solid var(--qi-line);
  padding: 0.5rem 0 0.5rem 0.75rem;
  margin-bottom: 0.5rem;
}

.qi-timeline__date {
  font-weight: 700;
  font-size: 0.9rem;
}

.qi-timeline__precision,
.qi-timeline__summary {
  color: var(--qi-muted);
  font-size: 0.85rem;
}

.qi-timeline__title {
  font-weight: 600;
}

.qi-timeline__item > .qi-facts {
  grid-column: 1 / -1;
}

/* ------------------------------------------------------- terms/contacts */

.qi-terms,
.qi-contacts {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
}

.qi-term,
.qi-contact {
  border-top: 1px solid var(--qi-line);
  padding: 0.6rem 0;
}

.qi-term__key {
  font-weight: 700;
  margin: 0;
}

.qi-term__note,
.qi-term__flag {
  margin: 0.2rem 0 0;
  font-size: 0.88rem;
  color: var(--qi-muted);
}

.qi-term__flag {
  color: var(--qi-warn);
}

.qi-contact__kind {
  display: block;
  font-size: 0.82rem;
  color: var(--qi-muted);
}

.qi-contact__value {
  font-weight: 600;
  overflow-wrap: anywhere;
}

/* --------------------------------------------------------------- console */

.qi-console {
  font-size: 0.95rem;
}

.qi-console__head {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  align-items: baseline;
  justify-content: space-between;
  border-bottom: 2px solid var(--qi-line);
  padding-bottom: 0.5rem;
}

.qi-console__who {
  font-size: 0.85rem;
  color: var(--qi-muted);
}

.qi-console__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  list-style: none;
  margin: 0.75rem 0;
  padding: 0;
}

.qi-console__nav a {
  font-weight: 600;
}

.qi-console__grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 1rem;
}

.qi-console__block {
  border: 1px solid var(--qi-line);
  border-radius: var(--qi-radius);
  padding: 0.8rem 0.9rem;
  background: var(--qi-surface);
  min-width: 0;
}

/* Register tables need the whole console width: a console grid that carries
   one drops to a single column, and such a card scrolls inside itself instead
   of escaping its card or forcing the page into horizontal overflow. */
.qi-console__grid:has(.qi-table) {
  grid-template-columns: minmax(0, 1fr);
}

.qi-console__block:has(.qi-table) {
  overflow-x: auto;
}

.qi-console__block h2 {
  font-size: 1rem;
  margin: 0 0 0.5rem;
}

.qi-console__copy {
  max-height: 28rem;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  padding: 0.75rem;
  background: var(--qi-bg);
  border: 1px solid var(--qi-line);
  border-radius: 6px;
  font: inherit;
  line-height: 1.6;
}

.qi-console__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-console__list li {
  border-top: 1px solid var(--qi-line);
  padding: 0.35rem 0;
  font-size: 0.9rem;
}

.qi-console__list li:first-child {
  border-top: 0;
}

.qi-console__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0.5rem 0 0;
}

.qi-console__form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: flex-end;
  margin: 0.5rem 0 0;
}

.qi-console__form--stack {
  display: block;
}

.qi-console__field {
  display: block;
  font-size: 0.8rem;
  color: var(--qi-muted);
}

.qi-console__field input,
.qi-console__field select,
.qi-console__field textarea {
  display: block;
  min-width: 8rem;
  padding: 0.35rem 0.45rem;
  border: 1px solid var(--qi-line);
  border-radius: 6px;
  font: inherit;
  background: var(--qi-bg);
  color: inherit;
}

.qi-console__field--wide textarea,
.qi-console__field--wide input {
  width: 100%;
  min-width: 100%;
}

.qi-console__submit {
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--qi-accent);
  border-radius: 6px;
  background: var(--qi-accent);
  color: var(--qi-accent-fg);
  font: inherit;
  cursor: pointer;
}

.qi-console__hint {
  font-size: 0.82rem;
  color: var(--qi-muted);
  margin: 0.35rem 0 0;
}

.qi-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 0.75rem;
  font-size: 0.88rem;
}

.qi-table caption {
  text-align: start;
  color: var(--qi-muted);
  font-size: 0.85rem;
  padding-bottom: 0.35rem;
}

.qi-table th,
.qi-table td {
  border: 1px solid var(--qi-line);
  padding: 0.4rem 0.5rem;
  text-align: start;
  vertical-align: top;
  /* A register column keeps its own words intact: headers set a readable floor
     and ordinary words are not cut in half. Only a token that cannot fit at
     all is broken, and the card scrolls before the page does. */
  overflow-wrap: break-word;
}

.qi-table th {
  background: var(--qi-surface-2);
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.qi-badge {
  display: inline-block;
  border-radius: 999px;
  padding: 0.1rem 0.5rem;
  font-size: 0.78rem;
  font-weight: 700;
  background: var(--qi-surface-2);
  color: var(--qi-muted);
}

.qi-badge--ok {
  background: var(--qi-ok-bg);
  color: var(--qi-ok);
}

.qi-badge--warn {
  background: var(--qi-warn-bg);
  color: var(--qi-warn);
}

.qi-badge--bad {
  background: var(--qi-bad-bg);
  color: var(--qi-bad);
}

/* --------------------------------------------------------------- footer */

.qi-footer {
  background: #17313a;
  color: #e8efea;
  margin: 0;
  padding: 2.25rem max(1.25rem, calc((100vw - var(--qi-measure)) / 2)) 1.25rem;
}

.qi-footer__navigation {
  display: grid;
  gap: 1.5rem 3rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.qi-footer__title {
  color: #fff;
  font-size: .78rem;
  font-weight: 760;
  letter-spacing: .07em;
  margin: 0 0 .55rem;
  text-transform: uppercase;
}

.qi-footer__list {
  font-size: .9rem;
  line-height: 1.5;
  list-style: none;
  margin: 0;
  padding: 0;
}

.qi-footer__list li + li {
  margin-top: .25rem;
}

.qi-footer__list a,
.qi-footer__utility a {
  color: #bfd7d6;
  text-decoration: none;
}

.qi-footer__list a:hover,
.qi-footer__utility a:hover {
  color: #fff;
  text-decoration: underline;
}

.qi-footer a:focus-visible {
  border-radius: 2px;
  outline: 2px solid #e6bc63;
  outline-offset: 3px;
}

.qi-footer__meta {
  align-items: start;
  border-top: 1px solid rgba(232, 239, 234, .2);
  display: grid;
  gap: .65rem 2rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 2rem;
  padding-top: 1rem;
}

.qi-footer__note {
  color: #bfd7d6;
  font-size: .88rem;
  line-height: 1.45;
  margin: 0;
  white-space: pre-wrap;
}

.qi-footer__utility {
  display: flex;
  flex-wrap: wrap;
  font-size: .82rem;
  gap: .25rem 1rem;
  justify-content: flex-end;
}

/* ------------------------------------------------------------- wide view */

@media (min-width: 40rem) {
  .qi-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .qi-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }


  .qi-facts {
    grid-template-columns: minmax(9rem, 14rem) 1fr;
  }

  .qi-console__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .qi-timeline__item {
    grid-template-columns: 12rem 1fr;
  }
}

@media (min-width: 64rem) {
  .qi-cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .qi-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .qi-tiles--collections {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }


  .qi-header {
    padding-inline: 2rem;
  }

  .qi-main {
    padding-inline: 2rem;
  }
}

/* ------------------------------------------------------- right-to-left */
/* Off-screen but still reachable by assistive technology and by the
   `document.execCommand("copy")` fallback in qi.js. */
.qi-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

[dir="rtl"] .qi-notice {
  border-left: 0;
  border-right: 4px solid var(--qi-accent);
  border-radius: var(--qi-radius) 0 0 var(--qi-radius);
}

[dir="rtl"] .qi-source {
  border-left: 0;
  border-right: 3px solid var(--qi-line);
  padding: 0.5rem 0.75rem 0.5rem 0;
}

[dir="rtl"] .qi-body blockquote {
  border-left: 0;
  border-right: 4px solid var(--qi-line);
}

/* ------------------------------------------------------------- printing */

@media print {
  .qi-header,
  .qi-footer,
  .qi-skip,
  .qi-share__actions {
    display: none;
  }

  body {
    font-size: 11pt;
  }
}

/* Editorial home: a text-led composition; no unverified documentary slot. */
.qi-home-orientation {
  display: grid;
  gap: 2.5rem;
  margin: .75rem 0 3rem;
  padding: 2.5rem 0 2.75rem;
  border-block: 2px solid var(--qi-fg);
}
.qi-home-orientation__eyebrow {
  color: var(--qi-accent);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 1rem;
  text-transform: uppercase;
}
.qi-home-orientation__title {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: clamp(2.35rem, 4.2vw, 3.9rem);
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -0.014em);
  line-height: 1.04;
  margin: 0;
  max-width: 17ch;
}
.qi-home-orientation__summary {
  font-size: 1.12rem;
  line-height: 1.55;
  margin: 1.4rem 0 0;
  max-width: 39rem;
}
.qi-home-orientation__paths {
  border-top: 1px solid var(--qi-line);
}
.qi-home-orientation__path {
  color: inherit;
  display: block;
  padding: 1rem 0 1.05rem;
  text-decoration: none;
  border-bottom: 1px solid var(--qi-line);
}
.qi-home-orientation__path:hover .qi-home-orientation__path-title,
.qi-home-orientation__path:focus-visible .qi-home-orientation__path-title {
  color: var(--qi-accent);
  text-decoration: underline;
  text-underline-offset: .12em;
}
.qi-home-orientation__path--primary {
  border-left: 3px solid var(--qi-accent);
  padding-left: 1rem;
}
.qi-home-orientation__path-title,
.qi-home-orientation__path-summary,
.qi-home-orientation__path-action {
  display: block;
}
.qi-home-orientation__path-title {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: 1.45rem;
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -0.014em);
  line-height: 1.15;
}
.qi-home-orientation__path-summary {
  color: var(--qi-muted);
  font-size: .96rem;
  line-height: 1.45;
  margin-top: .35rem;
  max-width: 34rem;
}
.qi-home-orientation__path-action {
  color: var(--qi-accent);
  font-size: .9rem;
  font-weight: 700;
  margin-top: .65rem;
}
.qi-home-map {
  border-top: 3px solid var(--qi-fg);
  border-bottom: 1px solid var(--qi-line);
  display: grid;
  gap: 1.5rem;
  margin-top: .5rem;
  padding: 1.5rem 0 2rem;
}
.qi-home-map__eyebrow {
  color: var(--qi-accent);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 .95rem;
  text-transform: uppercase;
}
.qi-home-map__title {
  font-family: var(--qi-font);
  font-size: clamp(2.35rem, 4vw, 4rem);
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: .98;
  margin: 0;
  max-width: 15ch;
}
.qi-home-map__summary {
  font-size: 1.08rem;
  line-height: 1.55;
  margin: 1.35rem 0 0;
  max-width: 34rem;
}
.qi-home-map__action {
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .92rem;
  font-weight: 700;
  gap: .45rem;
  margin-top: 1.25rem;
  text-decoration: underline;
  text-decoration-offset: .15em;
}
.qi-home-map__action:hover { text-decoration-thickness: .14em; }
.qi-home-map__feature {
  align-self: start;
  border-left: 3px solid var(--qi-accent);
  margin: 0;
  padding: .15rem 0 .2rem 1.15rem;
}
.qi-home-map__feature-label {
  color: var(--qi-accent);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .1em;
  margin: 0 0 .65rem;
  text-transform: uppercase;
}
.qi-home-map__feature-title {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: clamp(1.55rem, 2.3vw, 2.15rem);
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -0.014em);
  line-height: 1.1;
  margin: 0;
}
.qi-home-map__feature-title a { color: inherit; text-decoration: none; }
.qi-home-map__feature-title a:hover,
.qi-home-map__feature-title a:focus-visible { color: var(--qi-accent); text-decoration: underline; text-underline-offset: .12em; }
.qi-home-map__feature-summary {
  color: var(--qi-muted);
  font-size: .98rem;
  line-height: 1.5;
  margin: .6rem 0 0;
}
.qi-home-map__feature-action {
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .9rem;
  font-weight: 700;
  gap: .4rem;
  margin-top: .85rem;
  text-decoration: underline;
  text-underline-offset: .14em;
}
.qi-home-map__timeline {
  border-top: 1px solid var(--qi-line);
  list-style: none;
  margin: 0;
  padding: 0;
}
.qi-home-map__item {
  border-bottom: 1px solid var(--qi-line);
  display: grid;
  gap: .85rem;
  grid-template-columns: minmax(4.7rem, .46fr) minmax(0, 1fr);
  padding: .9rem 0 1rem;
}
.qi-home-map__year {
  color: var(--qi-accent);
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: 1.55rem;
  line-height: 1.08;
  padding-top: .05rem;
}
.qi-home-map__story { color: inherit; text-decoration: none; }
.qi-home-map__story strong,
.qi-home-map__story span { display: block; }
.qi-home-map__story strong {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -0.014em);
  line-height: 1.12;
}
.qi-home-map__story span {
  color: var(--qi-muted);
  font-size: .9rem;
  line-height: 1.42;
  margin-top: .25rem;
}
.qi-home-map__story:hover strong,
.qi-home-map__story:focus-visible strong {
  color: var(--qi-accent);
  text-decoration: underline;
  text-decoration-offset: .13em;
}
.qi-home-theme {
  border-top: 2px solid var(--qi-fg);
  margin-top: 3.75rem;
  padding-top: 1.35rem;
}
.qi-home-theme__heading { max-width: 35rem; }
.qi-home-theme__eyebrow {
  color: var(--qi-accent);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  margin: 0 0 .75rem;
  text-transform: uppercase;
}
.qi-home-theme__title {
  font-family: var(--qi-font);
  font-size: clamp(2rem, 3vw, 3rem);
  font-weight: 700;
  letter-spacing: -.032em;
  line-height: 1.02;
  margin: 0;
}
.qi-home-theme__summary {
  color: var(--qi-muted);
  font-size: 1.02rem;
  line-height: 1.55;
  margin: .9rem 0 0;
}
.qi-home-theme__action {
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .92rem;
  font-weight: 700;
  gap: .45rem;
  margin-top: 1.2rem;
  text-decoration: underline;
  text-decoration-offset: .15em;
}
.qi-home-theme__action:hover { text-decoration-thickness: .14em; }
.qi-home-theme__lead,
.qi-home-theme__support,
.qi-home-theme__stories,
.qi-home-theme__culture-story { margin-top: 1.8rem; }
.qi-home-theme .qi-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}
.qi-home-theme .qi-card__kind {
  color: var(--qi-accent);
  font-size: .72rem;
  letter-spacing: .1em;
}
.qi-home-theme .qi-card__title {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: 1.45rem;
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -0.014em);
  line-height: 1.16;
}
.qi-home-theme .qi-card__summary { max-width: 38rem; }
.qi-home-theme__lead .qi-card__title { font-size: clamp(1.8rem, 2.6vw, 2.45rem); }
.qi-home-theme__lead .qi-media { margin: 0 0 .8rem; }
.qi-home-theme__lead .qi-media__image { width: 100%; }
.qi-home-theme__lead .qi-media__caption,
.qi-home-theme__lead .qi-media__credit { font-size: .76rem; }
.qi-home-theme__support {
  border-top: 1px solid var(--qi-line);
  display: grid;
  gap: 1.5rem;
  padding-top: 1.2rem;
}
.qi-home-theme__support .qi-card + .qi-card { border-top: 1px solid var(--qi-line); padding-top: 1.2rem; }
.qi-home-theme__stories { display: grid; gap: 1.8rem; }
.qi-home-theme__stories .qi-card { border-top: 1px solid var(--qi-line); padding-top: 1.15rem; }
.qi-home-theme__culture-story .qi-media { margin: 0 0 .85rem; }
.qi-home-theme__culture-story .qi-media__image { width: 100%; }
.qi-home-theme__culture-story .qi-media__caption,
.qi-home-theme__culture-story .qi-media__credit { font-size: .76rem; }
.qi-edition-line { font-size: .88rem; font-weight: 400; color: var(--qi-muted); margin: .25rem 0 1.4rem; }
.qi-front { border-block: 2px solid var(--qi-fg); padding: 1.5rem 0; display: grid; gap: 1.5rem; align-items: start; }
.qi-front__eyebrow { color: var(--qi-accent); font-size: .75rem; text-transform: uppercase; letter-spacing: .12em; margin: 0 0 1rem; }
.qi-front__lead { align-self: start; }
.qi-front__lead h2 { font-family: var(--qi-display); font-optical-sizing: auto; letter-spacing: var(--avds-type-display-tracking, -0.014em); font-weight: 400; font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.08; margin: 0 0 1.2rem; }
.qi-front a { color: inherit; text-decoration: none; }
.qi-front a:hover { text-decoration: underline; text-underline-offset: .12em; }
.qi-front a.qi-front__read { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1.5rem; color: var(--qi-accent); font-weight: 700; text-decoration: underline; text-underline-offset: .15em; }
.qi-front a.qi-front__read:hover { text-decoration-thickness: .14em; }
.qi-front__summary { max-width: 40rem; font-size: 1.1rem; line-height: 1.6; margin: 0; }
.qi-front__side { display: grid; gap: 1.2rem; }
.qi-front__side .qi-card { border: 0; border-top: 1px solid var(--qi-line); border-radius: 0; padding: 1rem 0 0; }
.qi-front__side .qi-card--illustrated .qi-media { margin: 0 0 .85rem; }
.qi-front__side .qi-card--illustrated .qi-media__image { width: 100%; }
.qi-front__side .qi-card--illustrated .qi-media__caption,
.qi-front__side .qi-card--illustrated .qi-media__credit { font-size: .76rem; }
.qi-front__side .qi-card__title { font-family: var(--qi-display); font-optical-sizing: auto; letter-spacing: var(--avds-type-display-tracking, -0.014em); font-size: 1.4rem; line-height: 1.2; font-weight: 400; }
.qi-shelf { margin-top: 2.5rem; }
.qi-home-index { margin-top: 2.75rem; border-bottom: 1px solid var(--qi-line); padding-bottom: .7rem; }
.qi-home-index__title { margin: 0; font-family: var(--qi-display); font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 400; line-height: 1.15; }
.qi-home-index__lead { color: var(--qi-muted); font-size: .92rem; margin: .45rem 0 0; max-width: 58rem; }
.qi-shelf .qi-section__title a { color: inherit; text-decoration: none; }
.qi-shelf .qi-section__lead { max-width: 52rem; font-size: .92rem; margin: .55rem 0 1.15rem; }
.qi-shelf .qi-card { border: 0; border-radius: 0; padding: 0; }
.qi-shelf .qi-card__title { font-family: var(--qi-display); font-optical-sizing: auto; letter-spacing: var(--avds-type-display-tracking, -0.014em); font-size: 1.35rem; font-weight: 400; }
.qi-shelf .qi-cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 2rem; }
.qi-shelf .qi-card__summary { max-width: 42rem; }
.qi-shelf .qi-card--illustrated .qi-media { margin-top: 0; }
@media (min-width: 700px) {
  .qi-home-theme__support { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
  .qi-home-theme__support .qi-card + .qi-card { border-left: 1px solid var(--qi-line); border-top: 0; padding-left: 2rem; padding-top: 0; }
  .qi-home-theme__stories { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
  .qi-home-theme__stories .qi-card + .qi-card { border-left: 1px solid var(--qi-line); padding-left: 2rem; }
  .qi-home-theme__stories .qi-card:nth-child(3) { border-left: 0; grid-column: 1 / -1; padding-left: 0; }
  .qi-home-theme--culture .qi-card--illustrated { align-items: center; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); }
  .qi-home-theme--culture .qi-card--illustrated .qi-media { margin: 0; }
  .qi-shelf .qi-card:only-child .qi-card__copy { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 2.5rem; }
  .qi-shelf .qi-card:only-child .qi-card__kind { grid-column: 1 / -1; }
  .qi-shelf .qi-card:only-child .qi-card__summary { grid-column: 2; grid-row: 2; margin-top: 0; }
  .qi-shelf .qi-card:only-child .qi-card__locale { grid-column: 1 / -1; }
  .qi-shelf .qi-card:only-child .qi-card__title { font-size: 1.8rem; }
  .qi-shelf .qi-card--illustrated:only-child { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 2.5rem; align-items: center; }
  .qi-shelf .qi-card--illustrated:only-child .qi-card__copy { display: block; }
  .qi-shelf .qi-card--illustrated .qi-media { margin: 0; }
}
@media (min-width: 1000px) {
  .qi-home-orientation { grid-template-columns: minmax(0, 1.15fr) minmax(20rem, .85fr); column-gap: 4.5rem; align-items: start; padding: 3.5rem 0; }
  .qi-home-orientation__paths { margin-top: .3rem; }
  .qi-home-map { grid-template-columns: minmax(0, 1.12fr) minmax(19rem, .88fr); column-gap: 4.5rem; padding: 2.5rem 0 2.25rem; }
  .qi-home-map__feature { margin-top: .35rem; }
  .qi-home-map__timeline { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: .5rem; }
  .qi-home-map__item { display: block; min-width: 0; padding: 1.1rem 1.25rem 0 0; }
  .qi-home-map__item + .qi-home-map__item { border-left: 1px solid var(--qi-line); padding-left: 1.25rem; }
  .qi-home-map__year { font-size: 1.65rem; }
  .qi-home-map__story strong { font-size: 1.2rem; }
  .qi-home-theme--relations { align-items: start; column-gap: 3.25rem; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr); }
  .qi-home-theme--relations .qi-home-theme__heading { grid-column: 1 / -1; margin-bottom: .15rem; }
  .qi-home-theme--relations .qi-home-theme__lead,
  .qi-home-theme--relations .qi-home-theme__support { margin-top: 0; }
  .qi-home-theme--relations .qi-home-theme__support { border-left: 1px solid var(--qi-line); border-top: 0; display: grid; gap: 1.5rem; grid-template-columns: 1fr; padding: 0 0 0 2rem; }
  .qi-home-theme--relations .qi-home-theme__support .qi-card + .qi-card { border-left: 0; border-top: 1px solid var(--qi-line); padding: 1.2rem 0 0; }
  .qi-home-theme--community { align-items: start; column-gap: 4rem; display: grid; grid-template-columns: minmax(15rem, .5fr) minmax(0, 1.5fr); }
  .qi-home-theme--community .qi-home-theme__stories { margin-top: 0; }
  .qi-home-theme--culture { align-items: center; column-gap: 4rem; display: grid; grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.35fr); }
  .qi-home-theme--culture .qi-home-theme__culture-story { margin-top: 0; }
  /* Give the lead its own horizontal band. The secondary cards then form a
     compact row beneath it instead of making the lead column inherit the
     side column's height and leaving a blank panel beside the index. */
  .qi-front { display: block; padding: 2rem 0 1.25rem; border-bottom: 0; }
  .qi-front__lead { max-width: 58rem; padding-bottom: 2rem; }
  .qi-front__lead h2 { max-width: 54rem; }
  .qi-front__side { border-left: 0; border-top: 1px solid var(--qi-line); padding: 1.5rem 0 0; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 2rem; }
  .qi-front__side .qi-card:first-child { border-top: 0; padding-top: 0; }
  .qi-home-index { margin-top: 1.5rem; }
}

/* Reader edition: a quiet reading column. */
.qi-article { max-width: 46rem; margin-inline: auto; }
.qi-article__title { font-family: var(--qi-display); font-optical-sizing: auto; letter-spacing: var(--avds-type-display-tracking, -0.014em); font-weight: 400; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.12; }
.qi-article__lead { font-size: 1.15rem; line-height: 1.55; }
.qi-article__author { font-size: .875rem; margin-bottom: .3rem; }
.qi-body { font-family: var(--qi-serif); font-optical-sizing: auto; font-size: 1.08rem; line-height: 1.75; }
.qi-body h2 { font-size: 1.5rem; line-height: 1.25; margin-top: 2rem; }
.qi-source { padding-block: .6rem; }
.qi-source__title { margin-bottom: .2rem; }
.qi-source__meta { font-size: .8rem; }
.qi-reading { max-width: 46rem; }
@media (min-width: 600px) and (max-width: 999px) { .qi-front__side { grid-template-columns: 1fr 1fr; gap: 2rem; } }
@media (max-width: 599px) {
 .qi-main { padding-top: 1.25rem; }
 .qi-home-orientation { gap: 2rem; margin-top: .25rem; padding: 2rem 0 2.25rem; }
 .qi-home-orientation__title { font-size: clamp(2.2rem, 11vw, 3.05rem); }
 .qi-home-orientation__summary { font-size: 1.04rem; }
 .qi-home-orientation__path-title { font-size: 1.3rem; }
 .qi-home-map { gap: 1.5rem; margin-top: 0; padding: 1.5rem 1rem 1.75rem; }
 .qi-home-map__title { font-size: clamp(2.15rem, 10vw, 3rem); }
 .qi-home-map__summary { font-size: 1rem; }
 .qi-home-map__item { gap: .65rem; grid-template-columns: 4.4rem minmax(0, 1fr); }
 .qi-home-map__year { font-size: 1.4rem; }
 .qi-home-map__story strong { font-size: 1.12rem; }
 .qi-edition-line { font-size: .85rem; line-height: 1.4; }
}

/* Public reader system: one shared surface for the home, collections,
   records and reading pages. Images remain documentary and are selected by
   the story, never used as interchangeable decoration. */
:root {
  --qi-bg: #f7f5ef;
  --qi-paper: #fffdfa;
  --qi-fg: #152831;
  --qi-muted: #52636a;
  --qi-line: #d3dcd7;
  --qi-surface: #e9efea;
  --qi-surface-2: #dde7e1;
  --qi-accent: #075d87;
  --qi-accent-warm: #9a4e3f;
  --qi-measure: 76rem;
  --qi-radius: 14px;
}
body {
  background:
    linear-gradient(90deg, transparent 0, transparent calc(50% - 38rem), rgba(14, 70, 76, .035) calc(50% - 38rem), rgba(14, 70, 76, .035) calc(50% - 37.92rem), transparent calc(50% - 37.92rem)),
    var(--qi-bg);
  color: var(--qi-fg);
}
.qi-main { max-width: var(--qi-measure); padding-block: 2.3rem 5rem; }
.qi-breadcrumb { color: var(--qi-muted); font-size: .82rem; margin-bottom: 1rem; }
.qi-page__head { background: var(--qi-paper); border: 1px solid var(--qi-line); border-top: 4px solid var(--qi-accent); border-radius: var(--qi-radius); box-shadow: 0 10px 24px rgba(12, 42, 48, .055); margin-bottom: 2rem; max-width: 58rem; padding: clamp(1.35rem, 3vw, 2.35rem); }
.qi-page__title, .qi-section__title, .qi-record__title, .qi-timeline__title { font-family: var(--qi-display); font-optical-sizing: auto; font-weight: 400; letter-spacing: var(--avds-type-display-tracking, -.014em); }
.qi-page__title { font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.06; }
.qi-page__lead { color: var(--qi-muted); font-size: 1.06rem; line-height: 1.58; margin-bottom: 0; max-width: 44rem; }
.qi-section { margin-top: 3.5rem; }
.qi-section__title { border-bottom: 1px solid var(--qi-line); font-size: clamp(1.55rem, 2.8vw, 2.2rem); line-height: 1.12; margin-bottom: 1.25rem; padding-bottom: .68rem; }
.qi-section__lead { color: var(--qi-muted); max-width: 48rem; }
.qi-cards { gap: 1.35rem; }
.qi-cards--editorial { grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr)); }
.qi-card { align-self: start; background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); box-shadow: 0 5px 16px rgba(12, 42, 48, .045); display: flex; flex-direction: column; overflow: hidden; padding: 0; transition: box-shadow .16s ease, transform .16s ease; }
.qi-card:hover { box-shadow: 0 12px 28px rgba(12, 42, 48, .11); transform: translateY(-2px); }
.qi-card .qi-media { margin: 0; }
.qi-card .qi-media__image { aspect-ratio: 3 / 2; display: block; object-fit: cover; width: 100%; }
.qi-card .qi-media__caption, .qi-card .qi-media__credit { background: var(--qi-paper); font-size: .69rem; margin: 0; padding: .45rem .9rem 0; }
.qi-card .qi-media__credit { padding-bottom: .55rem; }
.qi-card__copy { display: flex; flex: 1; flex-direction: column; padding: 1.1rem 1.15rem 1.2rem; }
.qi-card__kind, .qi-article__kind { color: var(--qi-accent); font-size: .7rem; font-weight: 760; letter-spacing: .105em; text-transform: uppercase; }
.qi-card__title { font-family: var(--qi-display); font-optical-sizing: auto; font-size: 1.45rem; font-weight: 400; letter-spacing: var(--avds-type-display-tracking, -.014em); line-height: 1.12; margin: .18rem 0 .62rem; }
.qi-card__link { color: var(--qi-fg); text-decoration: none; }
.qi-card__link:hover { color: var(--qi-accent); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .14em; }
.qi-card__summary { color: var(--qi-muted); font-size: .92rem; line-height: 1.52; margin-top: auto; }
.qi-card__locale { border-top: 1px solid var(--qi-line); color: var(--qi-muted); font-size: .75rem; margin-top: .85rem; padding-top: .65rem; }
.qi-list { border-top: 1px solid var(--qi-line); }
.qi-list__item { border-bottom: 1px solid var(--qi-line); padding: 1.15rem 1.1rem 1.15rem 1.35rem; position: relative; }
.qi-list__item::before { background: var(--qi-accent-warm); content: ''; height: 1.05rem; left: 0; position: absolute; top: 1.33rem; width: 3px; }
.qi-list__link { color: var(--qi-fg); font-family: var(--qi-display); font-size: 1.3rem; font-weight: 400; line-height: 1.18; }
.qi-list__meta { color: var(--qi-muted); line-height: 1.5; margin-top: .35rem; }
.qi-article { max-width: 49rem; }
.qi-article__head { border-bottom: 1px solid var(--qi-line); margin-bottom: 2.2rem; padding-bottom: 1.35rem; }
.qi-article__title { font-size: clamp(2.1rem, 3.35vw, 3rem); line-height: 1.08; margin-top: .38rem; }
.qi-article__lead { color: #3d5058; font-family: var(--qi-serif); font-size: 1.27rem; line-height: 1.5; max-width: 43rem; }
/* Standard evidence-led items continue directly into their prose.  The scoped
   marker keeps this calmer header independent of share and opportunity pages. */
.qi-item .qi-article__head { border-bottom: 0; margin-bottom: 1.7rem; padding-bottom: 0; }
.qi-item .qi-article__title { font-size: clamp(1.95rem, 2.7vw, 2.5rem); }
.qi-item .qi-article__lead { font-size: 1.2rem; line-height: 1.52; }
.qi-report-link { align-items: center; display: inline-flex; gap: .35em; }
.qi-report-link__icon { color: #a8afb0; flex: none; height: .85em; width: .85em; }
.qi-article__dates, .qi-article__author { color: var(--qi-muted); font-size: .8rem; }
.qi-article__media .qi-media { margin: 0 0 2.2rem; }
.qi-body { color: #26363c; font-size: 1.12rem; line-height: 1.78; }
.qi-body > p:first-child::first-letter { color: var(--qi-accent); float: left; font-family: var(--qi-display); font-size: 4.1em; font-weight: 400; line-height: .78; margin: .11em .1em 0 0; }
.qi-body h2, .qi-body h3 { color: var(--qi-fg); font-family: var(--qi-display); font-optical-sizing: auto; font-weight: 400; letter-spacing: var(--avds-type-display-tracking, -.014em); }
.qi-body h2 { border-top: 1px solid var(--qi-line); font-size: 1.9rem; padding-top: 1.55rem; }
.qi-article__head + .qi-body > h2:first-child { border-top: 0; margin-top: 0; padding-top: 0; }
.qi-body blockquote { border-left: 4px solid var(--qi-accent-warm); color: #394d55; font-family: var(--qi-serif); font-size: 1.2rem; }
/* `qi-list` is also the renderer's semantic hook for Markdown bullets.
   In an article it must remain a prose list, not inherit the ruled navigation
   component used by directories and indexes. */
.qi-body ul.qi-list,
.qi-share__body ul.qi-list {
  border-top: 0;
  list-style: disc;
  margin: 1rem 0;
  padding-inline-start: 1.4rem;
}
.qi-body ul.qi-list > li,
.qi-share__body ul.qi-list > li {
  margin: .35rem 0;
}
.qi-body .qi-cite + .qi-cite,
.qi-share__body .qi-cite + .qi-cite {
  margin-inline-start: .16em;
}
.qi-article > .qi-section { margin-top: 2.75rem; }
.qi-media { background: var(--qi-paper); border-radius: 10px; margin: 2.1rem 0; overflow: hidden; }
.qi-media__image { display: block; max-height: 42rem; object-fit: cover; width: 100%; }
.qi-media__caption { color: #33464d; font-size: .84rem; line-height: 1.4; padding: .72rem 1rem 0; }
.qi-media__credit { color: var(--qi-muted); font-size: .76rem; padding: .3rem 1rem .8rem; }
.qi-sources { border-top: 1px solid var(--qi-line); }
.qi-source { border-bottom: 1px solid var(--qi-line); padding: .95rem 0; }
.qi-source__title { font-family: var(--qi-serif); font-size: 1.04rem; }
.qi-source__meta, .qi-source__locator { color: var(--qi-muted); font-size: .8rem; line-height: 1.45; }
.qi-article .qi-source { margin-bottom: 0; padding: .55rem 0 .55rem .75rem; }
.qi-article .qi-source__title { line-height: 1.35; }
.qi-article .qi-source__links { display: flex; flex-wrap: wrap; gap: .25rem .9rem; list-style: none; margin: .4rem 0 0; padding: 0; }
.qi-article .qi-source__links li { font-size: .84rem; line-height: 1.5; min-width: 0; overflow-wrap: anywhere; }
.qi-article .qi-source__number { color: var(--qi-muted); font-variant-numeric: tabular-nums; }

/* Sources remain a directory, but their hierarchy comes from the relationship
   between material and use rather than a stack of repeated separator rules. */
.qi-sources-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 2.45rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-sources-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-sources--directory {
  border-top: 0;
  display: grid;
  gap: .8rem;
  margin-top: 0;
  max-width: 66rem;
}
.qi-sources--directory .qi-source-group {
  align-items: start;
  background: rgba(255, 253, 250, .7);
  border: 1px solid rgba(211, 220, 215, .78);
  border-radius: 10px;
  display: grid;
  gap: 1rem 1.35rem;
  grid-template-columns: minmax(0, 1.45fr) minmax(13rem, .78fr);
  margin: 0;
  padding: 1rem 1.15rem;
}
.qi-sources--directory .qi-source {
  border-bottom: 0;
  margin: 0;
  padding: 0;
}
.qi-sources--directory .qi-source__title {
  font-size: 1.12rem;
  line-height: 1.3;
}
.qi-sources--directory .qi-source__meta {
  margin-top: .32rem;
}

/* The source registry is grouped by the article each source backs, with a
   jump index at the top: a single flat list of several hundred cards is not a
   reading surface. */
.qi-sources-index {
  background: rgba(255, 253, 250, .7);
  border: 1px solid rgba(211, 220, 215, .78);
  border-radius: 10px;
  margin: 0 0 2.2rem;
  max-width: 66rem;
}

.qi-sources-index__title {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 1rem;
  font-weight: 700;
  justify-content: space-between;
  list-style: none;
  padding: 1rem 1.15rem;
}
.qi-sources-index__title::-webkit-details-marker { display: none; }
.qi-sources-index__title::after {
  border-bottom: 2px solid currentColor;
  border-right: 2px solid currentColor;
  content: "";
  height: .5rem;
  margin-left: 1rem;
  transform: rotate(45deg);
  width: .5rem;
}
.qi-sources-index[open] .qi-sources-index__title::after { transform: rotate(225deg); }
.qi-sources-index__title:focus-visible {
  outline: 2px solid var(--qi-accent);
  outline-offset: 2px;
}

.qi-sources-index__list {
  line-height: 1.5;
  margin: 0;
  padding: 0 1.15rem 1rem 2.35rem;
}

.qi-sources-index__item {
  break-inside: avoid;
  margin: 0 0 .3rem;
}

.qi-sources-index__count {
  color: var(--qi-muted);
  font-size: .82rem;
}

.qi-sources-group {
  margin: 0 0 2.4rem;
}

.qi-sources-group__title {
  font-family: var(--qi-serif);
  font-size: 1.35rem;
  line-height: 1.25;
  margin: 0 0 .9rem;
}

.qi-sources-group__title a {
  text-decoration: none;
}

@media (min-width: 62rem) {
  .qi-sources-index__list {
    columns: 2;
    column-gap: 1.8rem;
  }
}
.qi-notice { background: #f4efe4; border-left: 4px solid #b57b35; border-radius: 0 8px 8px 0; color: #4a4235; }
.qi-records { display: grid; gap: 1rem; }
.qi-record { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); box-shadow: 0 5px 16px rgba(12, 42, 48, .035); padding: clamp(1.1rem, 2.4vw, 1.65rem); }
.qi-record__title { font-size: 1.55rem; line-height: 1.12; }
.qi-record__summary { color: var(--qi-muted); line-height: 1.55; max-width: 46rem; }
.qi-facts { background: var(--qi-surface); border-radius: 9px; display: grid; gap: 0; grid-template-columns: minmax(8rem, .42fr) minmax(0, 1fr); margin-top: 1rem; overflow: hidden; }
.qi-facts dt, .qi-facts dd { border-bottom: 1px solid rgba(21, 40, 49, .11); margin: 0; padding: .72rem .85rem; }
.qi-facts dt { color: var(--qi-muted); font-size: .78rem; font-weight: 740; }
.qi-facts dd { color: var(--qi-fg); line-height: 1.45; }
.qi-timeline { border-left: 2px solid var(--qi-accent); display: grid; gap: 1.15rem; margin-left: .45rem; padding-left: 1.5rem; }
.qi-timeline__item { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: 10px; padding: 1rem 1.15rem; position: relative; }
.qi-timeline__item::before { background: var(--qi-accent-warm); border: 3px solid var(--qi-bg); border-radius: 50%; content: ''; height: .7rem; left: -1.98rem; position: absolute; top: 1.15rem; width: .7rem; }
.qi-timeline__date { color: var(--qi-accent); font-weight: 760; }
.qi-timeline__title { font-size: 1.3rem; line-height: 1.18; }
.qi-form, .qi-searchbar--page { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); box-shadow: 0 5px 16px rgba(12, 42, 48, .035); padding: 1.15rem; }
.qi-searchbar__input { background: #fff; border-color: #bac8c2; }
.qi-searchbar__button, .qi-form__submit { background: var(--qi-accent); border-color: var(--qi-accent); border-radius: 8px; color: #fff; font-weight: 700; }
.qi-empty { background: var(--qi-surface); border-radius: 10px; color: var(--qi-muted); padding: 1.1rem; }

/* Home has a distinct introductory composition, then uses the same cards and
   reading rhythm as every section. */
.qi-home-orientation { padding-block: clamp(2.1rem, 6vw, 5rem); }
.qi-home-orientation__title { font-size: clamp(2.9rem, 6.2vw, 5.4rem); line-height: .96; }
.qi-home-orientation__summary { color: #40525a; font-family: var(--qi-serif); font-size: clamp(1.12rem, 1.9vw, 1.38rem); line-height: 1.5; max-width: 41rem; }
.qi-home-orientation__path { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); box-shadow: 0 5px 16px rgba(12, 42, 48, .035); padding: 1.1rem 1.2rem; }
.qi-home-orientation__path--primary { background: #dce9e3; border-color: #c4d6ce; }
.qi-home-map { background: #18363f; border: 0; border-radius: var(--qi-radius); box-shadow: 0 14px 32px rgba(10, 38, 45, .16); color: #f7f2e8; margin-top: 1.5rem; padding: clamp(1.35rem, 3.6vw, 2.8rem); }
.qi-home-map__eyebrow, .qi-home-map__feature-label { color: #e6bc63; }
.qi-home-map__title { color: #fffaf0; font-size: clamp(2rem, 4vw, 3.45rem); }
.qi-home-map__summary, .qi-home-map__story span { color: #c6d6d1; }
.qi-home-map__action, .qi-home-map__feature-action { color: #e6bc63; }
.qi-home-map__feature { border-left-color: #e6bc63; }
.qi-home-map__feature-title a, .qi-home-map__story strong { color: #fffaf0; }
.qi-home-map__timeline { border-top-color: rgba(230, 188, 99, .42); }
.qi-home-map__item + .qi-home-map__item { border-left-color: rgba(230, 188, 99, .28); }
.qi-home-map__year { color: #e6bc63; }
.qi-home-theme { border-top: 3px solid var(--qi-fg); margin-top: 4.5rem; padding-top: 1.35rem; }
.qi-home-theme__title { font-family: var(--qi-display); font-optical-sizing: auto; font-size: clamp(2.1rem, 4vw, 3.25rem); font-weight: 400; letter-spacing: var(--avds-type-display-tracking, -.014em); }
.qi-home-theme .qi-card { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); padding: 0; }
.qi-home-theme .qi-card__title { font-size: 1.5rem; }
.qi-home-theme__support .qi-card + .qi-card, .qi-home-theme__stories .qi-card, .qi-home-theme--relations .qi-home-theme__support { border-color: var(--qi-line); }
.qi-shelf .qi-card { background: var(--qi-paper); border: 1px solid var(--qi-line); border-radius: var(--qi-radius); padding: 0; }
.qi-shelf .qi-card__title { font-size: 1.45rem; }
@media (max-width: 699px) {
  .qi-main { padding: 1.4rem 1rem 3.5rem; }
  .qi-page__head { border-radius: 10px; margin-bottom: 1.35rem; padding: 1.25rem; }
  .qi-page__title { font-size: clamp(2rem, 11vw, 3rem); }
  .qi-cards--editorial { grid-template-columns: 1fr; }
  .qi-card:hover { transform: none; }
  .qi-article__title { font-size: clamp(2rem, 9.6vw, 2.65rem); }
  .qi-article__lead { font-size: 1.12rem; }
  .qi-item .qi-article__head { margin-bottom: 1.45rem; }
  .qi-item .qi-article__title { font-size: clamp(1.85rem, 8.1vw, 2.2rem); }
  .qi-item .qi-article__lead { font-size: 1.08rem; }
  .qi-body { font-size: 1.04rem; line-height: 1.72; }
  .qi-body > p:first-child::first-letter { font-size: 3.5em; }
  .qi-facts { grid-template-columns: 1fr; }
  .qi-facts dt { border-bottom: 0; padding-bottom: .15rem; }
  .qi-facts dd { padding-top: .15rem; }
  .qi-home-map { border-radius: 10px; }
  .qi-home-theme { margin-top: 3.15rem; }
  .qi-home-theme .qi-card { border-radius: 10px; }
}

/* Reader-facing editorial system v4.
   Pages should read as one publication, not as a directory of isolated
   widgets: the home introduces a subject, collections form a stream and
   reference pages keep the same quiet typographic frame. */
.qi-collection-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  max-width: 50rem;
  padding: .25rem 0 0;
}
.qi-page__eyebrow,
.qi-kicker,
.qi-collection-feature__label {
  color: var(--qi-accent);
  font-size: .72rem;
  font-weight: 760;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.qi-collection-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
  max-width: 44rem;
}
.qi-collection-page__head .qi-page__lead { max-width: 42rem; }
.qi-collection-page__language-note { color: var(--qi-muted); font-size: .82rem; line-height: 1.5; margin: -1rem 0 1.5rem; }

/* The home answers what the edition is about before it starts listing work. */
.qi-home {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(18rem, .85fr);
  gap: clamp(1.5rem, 3vw, 3.75rem);
  padding: clamp(1.45rem, 3vw, 2.75rem) 0 2.3rem;
}
.qi-home__intro { align-self: start; max-width: 44rem; }
.qi-home > .qi-reading {
  border-left: 1px solid var(--qi-line);
  padding-left: clamp(1.25rem, 2.4vw, 2.25rem);
}
.qi-home__title {
  font-family: var(--qi-display);
  font-size: clamp(1.95rem, 2.7vw, 2.45rem);
  font-weight: 400;
  letter-spacing: -.028em;
  line-height: 1.02;
  margin: .3rem 0 .9rem;
}
.qi-home__summary {
  color: #40545c;
  font-family: var(--qi-serif);
  font-size: clamp(1.06rem, 1.35vw, 1.18rem);
  line-height: 1.55;
  margin-bottom: 1.15rem;
}
.qi-home__lead {
  align-self: stretch;
  background: #173943;
  color: #f7f3e9;
  display: flex;
  flex-direction: column;
  justify-content: end;
  min-height: 18.5rem;
  padding: clamp(1.25rem, 2.4vw, 2rem);
}
.qi-home__lead .qi-kicker { color: #e8bc60; }
.qi-home__lead h2 {
  font-family: var(--qi-display);
  font-size: clamp(1.8rem, 2.6vw, 2.4rem);
  font-weight: 400;
  letter-spacing: -.024em;
  line-height: 1.02;
  margin: .3rem 0 .8rem;
}
.qi-home__lead h2 a { color: #fffaf0; text-decoration: none; }
.qi-home__lead h2 a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .15em; }
.qi-home__lead-summary { color: #cbd9d7; font-family: var(--qi-serif); line-height: 1.5; margin: 0 0 1.2rem; }
.qi-home__lead .qi-link-arrow { color: #e8bc60; font-weight: 700; }
.qi-home__milestones {
  border-top: 1px solid var(--qi-line);
  display: grid;
  gap: 0;
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: clamp(1.4rem, 2.5vw, 2.25rem) 0 0;
  padding: 0;
}
.qi-home__milestones li { min-width: 0; padding: 1rem 1.25rem 0 0; }
.qi-home__milestones li + li { border-left: 1px solid var(--qi-line); padding-left: 1.25rem; }
.qi-home__milestones time { color: var(--qi-accent-warm); display: block; font-size: 1.35rem; font-weight: 760; letter-spacing: -.03em; }
.qi-home__milestones a { color: var(--qi-fg); display: grid; gap: .28rem; line-height: 1.38; text-decoration: none; }
.qi-home__milestones strong { font-family: var(--qi-serif); font-size: 1.03rem; }
.qi-home__milestones span { color: var(--qi-muted); font-size: .84rem; }
.qi-home__milestones a:hover strong { color: var(--qi-accent); text-decoration: underline; text-underline-offset: .14em; }
.qi-home--edition { display: block; max-width: 70rem; }
.qi-home__edition-note { color: var(--qi-muted); font-family: var(--qi-serif); font-size: 1.08rem; line-height: 1.55; max-width: 42rem; }

/* The home is a reading route: sections are distinguished by composition,
   surface and whitespace, never by a stack of compulsory horizontal rules. */
.qi-home-stream {
  align-items: start;
  border: 0;
  margin-top: clamp(2.6rem, 4.5vw, 4rem);
  padding: 0;
}
.qi-home-stream__header h2,
.qi-timeline-group__head h2 {
  font-family: var(--qi-display);
  font-size: clamp(1.55rem, 2.15vw, 2.05rem);
  font-weight: 400;
  letter-spacing: -.02em;
  line-height: 1.05;
  margin: .15rem 0 .72rem;
}
.qi-home-stream__header > p:not(.qi-kicker),
.qi-timeline-group__head > p:not(.qi-kicker) {
  color: var(--qi-muted);
  font-family: var(--qi-serif);
  line-height: 1.55;
  margin: 0 0 1rem;
}
.qi-home-stream__more,
.qi-home-card__action {
  align-items: center;
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .84rem;
  font-weight: 720;
  gap: .45rem;
  line-height: 1.2;
  text-decoration: none;
}
.qi-home-stream__more:hover,
.qi-home-card__action:hover { text-decoration: underline; text-underline-offset: .16em; }

.qi-home__entries {
  align-items: start;
  display: grid;
  gap: .7rem clamp(1rem, 2.3vw, 1.65rem);
  grid-column: 1 / -1;
  grid-template-columns: minmax(9.5rem, .3fr) minmax(0, 1fr);
  margin-top: .15rem;
}
.qi-home__entries-head h2 {
  font-family: var(--qi-display);
  font-size: clamp(1.25rem, 1.7vw, 1.52rem);
  font-weight: 400;
  letter-spacing: -.02em;
  line-height: 1.08;
  margin: .2rem 0 0;
}
.qi-home__entries-body { min-width: 0; }
.qi-home-paths {
  display: grid;
  gap: .65rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}
.qi-home-paths > li { display: flex; min-width: 0; }
.qi-home-path {
  background: rgba(255, 253, 250, .86);
  border: 1px solid rgba(21, 40, 49, .15);
  border-radius: .6rem;
  color: var(--qi-fg);
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: .32rem;
  min-height: 7rem;
  padding: .82rem .9rem .76rem;
  text-decoration: none;
  transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.qi-home-path:hover,
.qi-home-path:focus-visible {
  background: #fff;
  box-shadow: 0 .45rem 1rem rgba(12, 42, 48, .1);
  color: var(--qi-accent);
  transform: translateY(-2px);
}
.qi-home-path:focus-visible { outline: 2px solid var(--qi-accent); outline-offset: 2px; }
.qi-home-path__label {
  font-family: var(--qi-display);
  font-size: clamp(1.08rem, 1.48vw, 1.28rem);
  font-weight: 400;
  line-height: 1.08;
}
.qi-home-path__description {
  color: var(--qi-muted);
  font-family: var(--qi-serif);
  font-size: .84rem;
  line-height: 1.35;
}
.qi-home-path__action {
  align-items: center;
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .72rem;
  font-weight: 730;
  gap: .28rem;
  line-height: 1;
  margin-top: auto;
}
.qi-home-path--static { display: block; }

.qi-home-stream--section { border-radius: 1rem; }
.qi-home-stream--tone-1 { background: #edf3ef; padding: clamp(1.15rem, 3vw, 2rem); }
.qi-home-stream--tone-2 { background: #f8eee7; padding: clamp(1.15rem, 3vw, 2rem); }
.qi-home-stream--section .qi-home-stream__header {
  display: grid;
  gap: .35rem clamp(1.6rem, 4vw, 4.2rem);
  grid-template-columns: minmax(13.5rem, .48fr) minmax(0, 1.52fr);
  margin-bottom: clamp(1.25rem, 2.4vw, 1.75rem);
}
.qi-home-stream--section .qi-home-stream__header h2 {
  grid-column: 1;
  grid-row: 1 / span 2;
  margin: .05rem 0 0;
}
.qi-home-stream--section .qi-home-stream__header > p:not(.qi-kicker) {
  grid-column: 2;
  margin: 0;
  max-width: 48rem;
}
.qi-home-stream--section .qi-home-stream__more { grid-column: 2; justify-self: start; }
.qi-home-stream__body {
  align-items: start;
  display: grid;
  gap: clamp(1rem, 2.5vw, 2.25rem);
  grid-template-columns: minmax(0, 1.18fr) minmax(19rem, .82fr);
}
.qi-home-stream__lead-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.qi-home-stream .qi-card,
.qi-collection-feature .qi-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  transform: none;
}
.qi-home-stream .qi-card--illustrated,
.qi-collection-feature .qi-card--illustrated {
  background: var(--qi-paper);
  border: 1px solid rgba(21, 40, 49, .1);
  border-radius: var(--qi-radius);
  overflow: hidden;
}
.qi-home-stream .qi-card--illustrated .qi-media,
.qi-collection-feature .qi-card--illustrated .qi-media {
  background: transparent;
  border-radius: 0;
  margin: 0;
  overflow: hidden;
}
.qi-home-stream .qi-card--illustrated .qi-media__image,
.qi-collection-feature .qi-card--illustrated .qi-media__image {
  border: 0;
  border-radius: 0;
  display: block;
  height: 100%;
  max-height: none;
  object-fit: cover;
  width: 100%;
}
.qi-home-stream .qi-card__copy {
  background: var(--qi-paper);
  border: 1px solid rgba(21, 40, 49, .1);
  border-radius: .8rem;
  padding: 1rem 1.1rem 1.05rem;
}

.qi-collection-feature .qi-card__copy {
  padding: .9rem 1rem .35rem;
}
.qi-home-stream .qi-card--illustrated .qi-card__copy,
.qi-collection-feature .qi-card--illustrated .qi-card__copy {
  background: transparent;
  border: 0;
  border-radius: 0;
}
.qi-home-stream .qi-card__title,
.qi-collection-feature .qi-card__title {
  font-size: clamp(1.32rem, 1.85vw, 1.68rem);
  line-height: 1.1;
}
.qi-home-stream .qi-card__summary { font-size: .9rem; }
.qi-home-stream .qi-card__action {
  align-items: center;
  color: var(--qi-accent);
  display: inline-flex;
  font-size: .84rem;
  font-weight: 720;
  gap: .45rem;
  line-height: 1.2;
  margin-top: 1rem;
  text-decoration: none;
}
.qi-home-stream .qi-card__action:hover { text-decoration: underline; text-underline-offset: .16em; }
.qi-home-stream .qi-reading-list {
  border-left: 1px solid rgba(21, 40, 49, .18);
  display: grid;
  gap: 1rem;
  list-style: none;
  margin: 0;
  max-width: none;
  padding: .15rem 0 .15rem 1.1rem;
}
.qi-home-stream .qi-reading-list .qi-list__item {
  background: transparent;
  border: 0;
  border-radius: 0;
  min-height: 0;
  padding: .05rem 0 .1rem;
}
.qi-home-stream .qi-reading-list .qi-list__item::before {
  height: .72rem;
  left: -1.16rem;
  top: .23rem;
}
.qi-home-stream .qi-reading-list .qi-list__link {
  color: var(--qi-fg);
  font-size: clamp(1.05rem, 1.35vw, 1.2rem);
  line-height: 1.18;
  text-decoration: none;
}
.qi-home-stream .qi-reading-list .qi-list__link:hover {
  color: var(--qi-accent);
  text-decoration: underline;
  text-underline-offset: .14em;
}
.qi-home-stream .qi-reading-list .qi-list__meta {
  display: block;
  font-size: .82rem;
  line-height: 1.42;
  margin-top: .38rem;
}

/* A collection is a route into reading, with title links made explicit and
   enough space to scan without a divider after every entry. */
.qi-reading-list { border-top: 1px solid var(--qi-line); }
.qi-reading-list,
.qi-reading-stream { list-style: none; margin: 0; padding: 0; }
.qi-reading-list .qi-list__item { padding-right: 0; }
.qi-reading-list .qi-list__item::before { height: .75rem; top: 1.35rem; }
.qi-reading-list .qi-list__link,
.qi-reading-stream .qi-list__link { font-size: clamp(1.08rem, 1.6vw, 1.32rem); }
.qi-reading-stream {
  border: 0;
  display: grid;
  gap: .2rem;
}
.qi-reading-stream .qi-list__item {
  border-bottom: 0;
  padding: .9rem 1.15rem .9rem 1.25rem;
  transition: background-color .16s ease;
}
.qi-reading-stream .qi-list__item::before {
  height: .72rem;
  left: 0;
  top: 1.15rem;
}
.qi-reading-stream .qi-list__link::after {
  color: var(--qi-accent);
  content: ' →';
  font-family: var(--qi-sans);
  font-size: .8em;
  font-weight: 700;
  white-space: nowrap;
}
.qi-reading-stream .qi-list__item:hover { background: rgba(255, 255, 255, .58); }
.qi-reading-stream .qi-list__link:hover {
  color: var(--qi-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .14em;
}
.qi-footer__note { color: #bfd7d6; }
.qi-footer__note a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }

/* Collections are reading streams. Only their deliberate lead has a large
   documentary figure; the rest stays compact and scannable. */
.qi-collection-feature { border-bottom: 0; margin: 0 0 1.55rem; padding: 0; }
.qi-collection-feature > .qi-card { max-width: 50rem; }
.qi-collection-feature .qi-media { border-radius: 0; margin: .55rem 0 0; }
.qi-collection-feature .qi-card .qi-media__image { aspect-ratio: 16 / 8.5; }
.qi-reading-stream { max-width: 58rem; }
.qi-cards--opportunities {
  align-items: stretch;
  gap: 1.25rem;
  margin-top: 0;
  max-width: 74rem;
}
.qi-cards--opportunities .qi-card {
  border-radius: 0;
  box-shadow: none;
  height: 100%;
}
.qi-cards--opportunities .qi-card:hover {
  box-shadow: 0 8px 20px rgba(12, 42, 48, .08);
  transform: none;
}
.qi-cards--opportunities .qi-card__copy { padding: 1.35rem 1.5rem 1.5rem; }
.qi-cards--opportunities .qi-card__title { font-size: clamp(1.35rem, 2vw, 1.65rem); line-height: 1.18; }
.qi-cards--opportunities .qi-card__link::after {
  color: var(--qi-accent);
  content: ' →';
  font-family: var(--qi-sans);
  font-size: .8em;
  font-weight: 700;
  white-space: nowrap;
}
.qi-cards--opportunities .qi-card__summary { font-size: 1rem; line-height: 1.55; margin-top: .3rem; }
@media (min-width: 62rem) {
  .qi-cards--opportunities { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.qi-reading-stream--understand {
  border-top: 1px solid var(--qi-line);
  gap: 0;
  max-width: 74rem;
}
.qi-reading-stream.qi-reading-stream--understand .qi-list__item {
  border-bottom: 1px solid var(--qi-line);
  padding: 1.25rem .9rem 1.25rem 1.4rem;
}
.qi-reading-stream--understand .qi-list__item::before {
  height: 1rem;
  top: 1.52rem;
}
.qi-reading-stream--understand .qi-list__link {
  font-size: clamp(1.25rem, 1.8vw, 1.65rem);
  line-height: 1.16;
}
.qi-reading-stream--understand .qi-list__meta {
  font-size: .94rem;
  line-height: 1.52;
}
@media (min-width: 62rem) {
  .qi-reading-stream--section.qi-reading-stream--understand {
    column-count: initial;
    display: grid;
    grid-template-columns: 1fr;
  }
  .qi-reading-stream--understand .qi-list__item {
    align-items: start;
    column-gap: clamp(1.5rem, 3vw, 2.8rem);
    display: grid;
    grid-template-columns: minmax(0, .52fr) minmax(0, .48fr);
  }
  .qi-reading-stream--understand .qi-list__meta { margin-top: .08rem; }
  .qi-reading-stream--understand .qi-card__locale { grid-column: 2; }
}
.qi-collection-feature--cooperation {
  background: #e7efeb;
  border-left: .28rem solid var(--qi-accent);
  border-radius: 0 .8rem .8rem 0;
  margin: .2rem 0 1.5rem;
  max-width: 74rem;
  padding: clamp(1.2rem, 2.4vw, 2rem) clamp(1.25rem, 3vw, 2.7rem);
}
.qi-collection-feature--cooperation .qi-card { max-width: 53rem; }
.qi-collection-feature--cooperation .qi-card__copy { padding: .7rem 0 0; }
.qi-collection-feature--cooperation .qi-card__title {
  font-size: clamp(1.7rem, 2.7vw, 2.5rem);
  line-height: 1.08;
}
.qi-collection-feature--cooperation .qi-card__summary {
  font-family: var(--qi-serif);
  font-size: clamp(1.04rem, 1.35vw, 1.18rem);
  line-height: 1.5;
}
.qi-collection-feature--cooperation .qi-card__action {
  color: var(--qi-accent);
  display: inline-block;
  font-size: .86rem;
  font-weight: 700;
  margin-top: .8rem;
}
.qi-collection-feature--people {
  max-width: 74rem;
  margin: .2rem 0 2rem;
}
.qi-collection-feature--photo > .qi-card--illustrated,
.qi-collection-feature--people > .qi-card--illustrated {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  max-width: none;
}
.qi-collection-feature--people .qi-media__image {
  aspect-ratio: 4 / 3;
  object-position: center 48%;
}
.qi-collection-feature--photo .qi-card__copy,
.qi-collection-feature--people .qi-card__copy {
  align-self: center;
  padding: clamp(1.2rem, 3vw, 2.6rem);
}
.qi-collection-feature--people .qi-card__title {
  font-size: clamp(1.65rem, 2.6vw, 2.5rem);
  line-height: 1.08;
}
.qi-collection-feature--people .qi-card__summary {
  font-family: var(--qi-serif);
  font-size: clamp(1rem, 1.3vw, 1.18rem);
  line-height: 1.5;
}
.qi-collection-feature--people .qi-card__action {
  color: var(--qi-accent);
  display: inline-block;
  font-size: .86rem;
  font-weight: 700;
  margin-top: .8rem;
}
@media (max-width: 48rem) {
  .qi-collection-feature--photo > .qi-card--illustrated,
  .qi-collection-feature--people > .qi-card--illustrated { display: block; }
  .qi-collection-feature--people .qi-media__image { aspect-ratio: 16 / 10; }
}
.qi-collection-feature--history {
  margin: .2rem 0 2.1rem;
  max-width: 74rem;
}
.qi-collection-feature--history > .qi-card {
  background: #173943;
  border-radius: var(--qi-radius);
  color: #fffdfa;
  max-width: 59rem;
}
.qi-collection-feature--history .qi-card__copy {
  padding: clamp(1.35rem, 3vw, 2.6rem);
}
.qi-collection-feature--history .qi-card__kind { color: #b9d5ce; }
.qi-collection-feature--history .qi-card__title {
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  line-height: 1.08;
  max-width: 27ch;
}
.qi-collection-feature--history .qi-card__link { color: #fffdfa; }
.qi-collection-feature--history .qi-card__link:hover { color: #f6d48b; }
.qi-collection-feature--history .qi-card__summary {
  color: #e3e9e2;
  font-family: var(--qi-serif);
  font-size: clamp(1.02rem, 1.5vw, 1.22rem);
  line-height: 1.52;
  max-width: 45rem;
}
.qi-collection-feature--history .qi-card__action {
  color: #f6d48b;
  display: inline-block;
  font-size: .86rem;
  font-weight: 700;
  margin-top: 1.05rem;
}
.qi-collection-feature--today {
  margin: .2rem 0 2rem;
  max-width: 74rem;
}
.qi-collection-feature--today .qi-collection-feature__pair {
  align-items: start;
  display: grid;
  gap: clamp(1rem, 2vw, 1.5rem);
  grid-template-columns: 1fr;
}
.qi-collection-feature--today .qi-card { align-self: start; max-width: none; }
.qi-collection-feature--today .qi-card--illustrated {
  display: grid;
  grid-template-columns: minmax(0, .62fr) minmax(0, 1.38fr);
}
.qi-collection-feature--today .qi-card--illustrated .qi-card__copy { align-self: center; }
.qi-collection-feature--today .qi-card:first-child {
  background: var(--qi-surface);
  border-left: .28rem solid var(--qi-accent-warm);
  border-radius: 0 var(--qi-radius) var(--qi-radius) 0;
}
.qi-collection-feature--today .qi-card__copy {
  padding: clamp(1.15rem, 2.3vw, 1.8rem);
}
.qi-collection-feature--today .qi-card:first-child .qi-card__copy { justify-content: start; }
.qi-collection-feature--today .qi-card:first-child .qi-card__summary { margin-top: 0; }
.qi-collection-feature--today .qi-card:first-child .qi-card__title {
  font-size: clamp(1.65rem, 2.5vw, 2.35rem);
  line-height: 1.08;
}
.qi-collection-feature--today .qi-card__summary {
  font-family: var(--qi-serif);
  font-size: clamp(1rem, 1.24vw, 1.13rem);
  line-height: 1.5;
}
.qi-collection-feature--today .qi-card__action {
  color: var(--qi-accent);
  display: inline-block;
  font-size: .86rem;
  font-weight: 700;
  margin-top: .9rem;
}
@media (max-width: 48rem) {
  .qi-collection-feature--today .qi-card--illustrated { display: block; }
}

/* Time is a sequence, not a stack of floating boxes. */
.qi-timeline-group { margin-top: 3.5rem; max-width: 60rem; }
.qi-timeline-group + .qi-timeline-group { border-top: 1px solid var(--qi-line); padding-top: 2.75rem; }
.qi-timeline-group__head { max-width: 45rem; margin-bottom: 1.5rem; }
.qi-timeline { border-left: 1px solid var(--qi-accent); gap: 0; margin-left: .55rem; padding-left: clamp(1.15rem, 3vw, 2.2rem); }
.qi-timeline__item { background: transparent; border: 0; border-bottom: 1px solid var(--qi-line); border-radius: 0; display: grid; gap: 1.5rem; grid-template-columns: minmax(7rem, .3fr) minmax(0, 1fr); padding: 1.35rem 0; }
.qi-timeline__item::before { border: 2px solid var(--qi-bg); height: .55rem; left: -1.93rem; top: 1.62rem; width: .55rem; }
.qi-timeline__date { font-size: .95rem; letter-spacing: .01em; }
.qi-timeline__title { font-size: clamp(1.45rem, 2.4vw, 1.85rem); margin: -.1rem 0 .4rem; }
.qi-timeline__summary { color: var(--qi-muted); font-family: var(--qi-serif); line-height: 1.5; margin: 0; }
.qi-timeline__precision { color: var(--qi-muted); font-size: .76rem; margin: .7rem 0 0; }
.qi-timeline__reading { margin: .85rem 0 0; }
.qi-timeline .qi-facts { background: transparent; border-radius: 0; grid-template-columns: minmax(7rem, .35fr) minmax(0, 1fr); margin-top: .9rem; }
.qi-timeline .qi-facts dt,
.qi-timeline .qi-facts dd { border-color: var(--qi-line); padding: .45rem 0; }

/* The page introduction frames the sequence without competing with it. */
.qi-timeline-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 2.65rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-timeline-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
  max-width: 42rem;
}
.qi-timeline-page__head .qi-page__lead { max-width: 42rem; }

/* Utility and reference pages retain hierarchy without a catalogue-card look. */
.qi-record,
.qi-form,
.qi-searchbar--page { background: transparent; border: 0; border-radius: 0; box-shadow: none; padding: 0; }
.qi-record { border-bottom: 1px solid var(--qi-line); padding: 0 0 1.35rem; }
.qi-record__title { font-size: clamp(1.45rem, 2.4vw, 1.9rem); }
.qi-records { gap: 1.4rem; max-width: 60rem; }
.qi-searchbar--page { border-bottom: 1px solid var(--qi-line); padding-bottom: 1.2rem; }
.qi-empty { background: transparent; border-left: 3px solid var(--qi-accent-warm); border-radius: 0; padding: .35rem 0 .35rem 1rem; }
.qi-article > .qi-section { max-width: 49rem; }
.qi-article__media .qi-media { border-radius: 0; }
.qi-media { border-radius: 0; }

@media (min-width: 700px) and (max-width: 1040px) {
  .qi-home { gap: 2rem; }
  .qi-home-stream--section .qi-home-stream__header { column-gap: 2rem; }
  .qi-home-stream__body { gap: 1.6rem; grid-template-columns: minmax(0, 1.1fr) minmax(16rem, .9fr); }
}
@media (max-width: 699px) {
  .qi-header { position: relative; }
  .qi-main { padding-top: 1.25rem; }
  .qi-collection-page__head { margin-bottom: 1.45rem; padding-top: .3rem; }
  .qi-collection-page__head .qi-page__title { font-size: clamp(2rem, 9.4vw, 2.35rem); }
  .qi-timeline-page__head { margin-bottom: 2.15rem; padding-top: .3rem; }
  .qi-timeline-page__head .qi-page__title { font-size: clamp(2rem, 9.4vw, 2.35rem); }
  .qi-reading-stream { gap: .1rem; }
  .qi-reading-stream .qi-list__item { padding: .82rem .85rem .82rem 1.05rem; }
  .qi-home { display: block; padding: 1.15rem 0 2rem; }
  .qi-home > .qi-reading { border-left: 0; margin-top: 1.1rem; padding-left: 0; }
  .qi-home__title { font-size: clamp(1.82rem, 7.2vw, 2.08rem); }
  .qi-home__lead { min-height: 16rem; margin-top: 1.5rem; padding: 1.2rem; }
  .qi-home__lead h2 { font-size: clamp(1.7rem, 7vw, 2.15rem); }
  .qi-home__milestones { display: block; margin-top: 1.4rem; }
  .qi-home__milestones li { border-bottom: 1px solid var(--qi-line); display: grid; gap: .55rem; grid-template-columns: 4.8rem minmax(0, 1fr); padding: .85rem 0; }
  .qi-home__milestones li + li { border-left: 0; padding-left: 0; }
  .qi-home__milestones time { font-size: 1.1rem; }
  .qi-home-stream { display: block; margin-top: 2.5rem; padding: 0; }
  .qi-home-stream--tone-1,
  .qi-home-stream--tone-2 { padding: 1.1rem; }
  .qi-home-stream--section .qi-home-stream__header { display: block; margin-bottom: 1.2rem; }
  .qi-home-stream__body { display: block; }
  .qi-home-paths { grid-template-columns: 1fr; }
  .qi-home-path { min-height: 0; }
  .qi-home-stream .qi-home-stream__lead-card { margin-bottom: .85rem; }
  .qi-home-stream .qi-card { margin-bottom: 0; }
  .qi-home-stream .qi-card__title { font-size: 1.42rem; }
  .qi-collection-feature { margin-bottom: 1.1rem; padding-bottom: 1.1rem; }
  .qi-timeline-group { margin-top: 2.5rem; }
  .qi-timeline__item { display: block; padding: 1.1rem 0; }
  .qi-timeline__date { display: block; margin-bottom: .55rem; }
  .qi-timeline__item::before { left: -1.62rem; top: 1.38rem; }
  .qi-timeline .qi-facts { grid-template-columns: 1fr; }
  .qi-timeline .qi-facts dt { border-bottom: 0; padding-bottom: .05rem; }
  .qi-timeline .qi-facts dd { padding-top: .05rem; }
}

/* Home first-frame recovery. The edition starts with one route into the
   corpus instead of three competing introductions and a promotional panel. */

.qi-home--first-frame {
  align-items: start;
  column-gap: clamp(1.5rem, 3vw, 3rem);
  grid-template-columns: minmax(0, 1.08fr) minmax(18rem, .92fr);
  row-gap: 1.2rem;
  padding: clamp(1.3rem, 2.4vw, 2rem) 0 1.55rem;
}
.qi-home__intro--first-frame { max-width: 39rem; padding-top: .25rem; }
.qi-home--first-frame .qi-home__title {
  font-size: clamp(1.82rem, 2.25vw, 2.25rem);
  line-height: 1.06;
  margin-bottom: .8rem;
  max-width: 18ch;
}
.qi-home--first-frame .qi-home__summary--first-frame {
  margin: .85rem 0 0;
  max-width: 36rem;
}
.qi-home__lead--first-frame {
  align-self: start;
  background: #173943;
  border: 0;
  border-radius: .95rem;
  color: #fffdfa;
  display: block;
  min-height: 0;
  padding: clamp(1rem, 2.2vw, 1.55rem) clamp(1.05rem, 2.3vw, 1.65rem);
}
/* Compact Abai feature; the photograph does not determine the hero height. */
.qi-home__lead--illustrated {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(8rem, .65fr);
  align-items: center;
  gap: 1.1rem;
}
.qi-home__feature-copy { min-width: 0; }
.qi-home__feature-photo { margin: 0; }
.qi-home__feature-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  border-radius: .5rem;
}
@media (min-width: 700px) and (max-width: 1100px) {
  .qi-home--first-frame.qi-home--illustrated { grid-template-columns: minmax(0, 1fr); }
  .qi-home__lead--illustrated { grid-template-columns: minmax(0, 1fr) minmax(10rem, 15rem); }
}
@media (max-width: 699px) {
  .qi-home__lead--illustrated { grid-template-columns: minmax(0, 1fr); }
}
.qi-home__lead--first-frame .qi-kicker { color: #b9d5ce; margin: 0 0 .58rem; }
.qi-home__lead-context {
  color: #d2e0dc;
  font-family: var(--qi-serif);
  font-size: .95rem;
  line-height: 1.42;
  margin: 0 0 1rem;
}
.qi-home__lead--first-frame h2 {
  font-size: clamp(1.5rem, 2vw, 1.92rem);
  line-height: 1.06;
  margin: 0 0 .65rem;
}
.qi-home__lead--first-frame h2 a { color: #fffdfa; }
.qi-home__lead--first-frame .qi-home__lead-summary {
  color: #e1ebe7;
  margin-bottom: 1rem;
}
.qi-home__lead--first-frame .qi-link-arrow { color: #b9d5ce; }
.qi-home__context {
  color: var(--qi-muted);
  font-family: var(--qi-serif);
  font-size: .96rem;
  grid-column: 1 / -1;
  line-height: 1.5;
  margin: .35rem 0 0;
  max-width: 54rem;
  padding: 0;
}

/* The stream now gives the feature a full reading column. A solitary feature
   can use that width as one horizontal card at tablet sizes and above. */
@media (min-width: 700px) {
  .qi-home-stream--solo .qi-home-stream__body { grid-template-columns: minmax(0, 1fr); }
  .qi-home-stream--solo .qi-home-stream__lead-card .qi-card--illustrated {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(13rem, .74fr) minmax(0, 1.26fr);
  }
  .qi-home-stream--solo .qi-home-stream__lead-card .qi-card--illustrated .qi-media { height: 100%; }
  .qi-home-stream--solo .qi-home-stream__lead-card .qi-card--illustrated .qi-card__copy {
    padding: 1rem 1.1rem 1.05rem;
  }
}
@media (min-width: 1041px) {
  .qi-home-stream--paired .qi-home-stream__lead-card .qi-card--illustrated {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(14rem, .78fr) minmax(0, 1.22fr);
  }
  .qi-home-stream--paired .qi-home-stream__lead-card .qi-card--illustrated .qi-media { height: 100%; }
  .qi-home-stream--paired .qi-home-stream__lead-card .qi-card--illustrated .qi-card__copy {
    padding: 1rem 1.1rem 1.05rem;
  }
}

/* Photo credits and crop notes sit below the image. Let preview figures grow
   to include them instead of clipping them to the image track. */
.qi-card .qi-media--preview {
  height: auto;
  overflow: visible;
}
.qi-home-stream .qi-card--illustrated .qi-media--preview,
.qi-collection-feature .qi-card--illustrated .qi-media--preview {
  height: auto;
  overflow: visible;
}
.qi-home-stream .qi-card--illustrated .qi-media--preview .qi-media__image,
.qi-collection-feature .qi-card--illustrated .qi-media--preview .qi-media__image {
  height: auto;
  max-height: none;
}
@media (min-width: 700px) {
  .qi-home-stream--solo .qi-home-stream__lead-card .qi-card--illustrated .qi-media--preview,
  .qi-home-stream--paired .qi-home-stream__lead-card .qi-card--illustrated .qi-media--preview {
    height: auto;
    overflow: visible;
  }
}

@media (max-width: 699px) {
  .qi-home--first-frame { padding-bottom: 1.3rem; }
  .qi-home--first-frame .qi-home__title {
    font-size: clamp(1.82rem, 7.2vw, 2.08rem);
    max-width: 18ch;
  }
  .qi-home__lead--first-frame { margin-top: 1.1rem; padding: 1rem 1.05rem; }
  .qi-home__lead--first-frame h2 { font-size: clamp(1.58rem, 6.7vw, 1.98rem); }
  .qi-home__entries { display: block; margin-top: 1.25rem; }
  .qi-home__entries-head { margin-bottom: .7rem; }
  .qi-home__entries-head h2 { font-size: 1.35rem; }
  .qi-home-paths--first-frame { gap: .55rem; }
  .qi-home-paths--first-frame .qi-home-path { min-height: 0; padding: .8rem .85rem; }
  .qi-home__context { margin-top: 1.2rem; }
}

@media (max-width: 699px) {
  .qi-sources-page__head { margin-bottom: 1.8rem; padding-top: .3rem; }
  .qi-sources-page__head .qi-page__title { font-size: clamp(2rem, 9.4vw, 2.35rem); }
  .qi-sources--directory { gap: .65rem; }
  .qi-sources--directory .qi-source-group {
    gap: .7rem;
    grid-template-columns: 1fr;
    padding: .95rem;
  }
}


/* A short term register works best as a compact glossary: the reader scans
   concepts rather than moving through an undifferentiated ruled ledger. */
.qi-terms-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 2.25rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}

.qi-terms-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}

.qi-terms--glossary {
  display: grid;
  gap: .9rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 0;
  max-width: 62rem;
}

.qi-terms--glossary .qi-term {
  background: var(--qi-paper);
  border: 1px solid rgba(211, 220, 215, .78);
  border-left: 2px solid var(--qi-accent-warm);
  border-radius: 8px;
  min-height: 8rem;
  padding: 1.15rem 1.25rem;
}

.qi-terms--glossary .qi-term__key {
  color: var(--qi-fg);
  font-family: var(--qi-display);
  font-size: 1.38rem;
  font-weight: 400;
  line-height: 1.18;
}

.qi-terms--glossary .qi-term__note {
  font-size: .96rem;
  line-height: 1.55;
  margin-top: .55rem;
}

@media (max-width: 699px) {
  .qi-terms-page__head {
    margin-bottom: 1.7rem;
    padding-top: .3rem;
  }

  .qi-terms-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }

  .qi-terms--glossary {
    gap: .65rem;
    grid-template-columns: 1fr;
  }

  .qi-terms--glossary .qi-term {
    min-height: 0;
    padding: 1rem;
  }
}


/* The organizations register has two reference profiles, not a long-form record
   stream. The compact grid uses the available reading width while keeping public
   URLs and the verification date in the same place. */
.qi-organizations-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 2.15rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-organizations-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-organizations-records {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr));
  max-width: 60rem;
}
.qi-organization-record {
  background: var(--qi-paper);
  border: 1px solid rgba(211, 220, 215, .82);
  border-bottom: 1px solid rgba(211, 220, 215, .82);
  border-radius: 8px;
  overflow: hidden;
  padding: 0 1.2rem 1.15rem;
}
.qi-organization-record__head {
  background: #f2eee6;
  border-top: 3px solid var(--qi-accent-warm);
  margin: 0 -1.2rem;
  padding: 1rem 1.2rem .85rem;
}
.qi-organization-record .qi-record__title {
  font-size: clamp(1.4rem, 2.3vw, 1.75rem);
  line-height: 1.12;
  margin: 0 0 .55rem;
}
.qi-organization-record .qi-record__summary {
  font-family: var(--qi-serif);
  font-size: .94rem;
  line-height: 1.52;
  margin-top: 1rem;
}
.qi-organization-record .qi-facts {
  background: transparent;
  border-top: 1px solid var(--qi-line);
  border-radius: 0;
  grid-template-columns: minmax(5.9rem, .37fr) minmax(0, 1fr);
  margin-top: 1.1rem;
}
.qi-organization-record .qi-facts dt,
.qi-organization-record .qi-facts dd {
  border-color: var(--qi-line);
  padding: .5rem 0;
}
.qi-organization-record .qi-facts dd { font-size: .9rem; }
@media (max-width: 699px) {
  .qi-organizations-page__head { margin-bottom: 1.65rem; padding-top: .3rem; }
  .qi-organizations-page__head .qi-page__title { font-size: clamp(2rem, 9.4vw, 2.35rem); }
  .qi-organizations-records { gap: .8rem; }
  .qi-organization-record { padding: 0 1rem 1rem; }
  .qi-organization-record__head { margin: 0 -1rem; padding: .9rem 1rem .8rem; }
  .qi-organization-record .qi-facts { grid-template-columns: 1fr; }
  .qi-organization-record .qi-facts dt { padding-bottom: .08rem; }
  .qi-organization-record .qi-facts dd { padding-top: .08rem; }
}

/* The navigation stays dense without reducing the tap targets on narrow screens. */
@media (max-width: 43.6875rem) {
  .qi-footer {
    padding: 1.8rem 1rem 1.15rem;
  }

  .qi-footer__navigation {
    gap: 1.4rem 1.25rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .qi-footer__block--reference {
    grid-column: 1 / -1;
  }

  .qi-footer__meta {
    gap: .8rem;
    grid-template-columns: 1fr;
    margin-top: 1.6rem;
  }

  .qi-footer__note,
  .qi-footer__utility {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
  }

  .qi-footer__utility {
    justify-content: flex-start;
  }
}

@media (max-width: 22.4375rem) {
  .qi-footer__navigation {
    grid-template-columns: 1fr;
  }

  .qi-footer__block--reference {
    grid-column: auto;
  }
}

/* Search is a reader task: one clear query control and a short route into each
   matching item. Its hierarchy should come from type and title, never from a
   stack of framed modules or separator rules. */
.qi-search-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.35rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-search-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-search-page__form {
  align-items: center;
  border-bottom: 0;
  display: grid;
  gap: .55rem .65rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
  margin: 0 0 2.75rem;
  max-width: 48rem;
  padding: 0;
}
.qi-search-page__form .qi-searchbar__label {
  color: var(--qi-muted);
  font-size: .84rem;
  white-space: nowrap;
}
.qi-search-page__form .qi-searchbar__input {
  min-height: 2.7rem;
  padding: .55rem .75rem;
}
.qi-search-page__form .qi-searchbar__button {
  min-height: 2.7rem;
  padding-inline: 1rem;
}
.qi-search-summary {
  color: var(--qi-muted);
  font-size: .94rem;
  margin: 0 0 1.6rem;
}
.qi-search-group {
  display: grid;
  gap: 1.2rem 2.1rem;
  grid-template-columns: minmax(7rem, .28fr) minmax(0, 1fr);
  margin: 0;
  max-width: 58rem;
}
.qi-search-group + .qi-search-group { margin-top: 2.35rem; }
.qi-search-group__title {
  border-bottom: 0;
  color: var(--qi-muted);
  font-size: clamp(1.24rem, 2vw, 1.55rem);
  line-height: 1.1;
  margin: .08rem 0 0;
  padding: 0;
}
.qi-search-results {
  border-top: 0;
  display: grid;
  gap: .48rem;
  margin: 0;
}
.qi-search-results .qi-search-result {
  border-bottom: 0;
  min-height: 0;
  padding: .2rem 0 .55rem 1rem;
}
.qi-search-results .qi-search-result::before {
  height: .68rem;
  left: 0;
  top: .53rem;
  width: 2px;
}
.qi-search-results .qi-list__link {
  font-size: clamp(1.08rem, 1.55vw, 1.26rem);
  line-height: 1.18;
}
.qi-search-results .qi-list__meta {
  font-size: .86rem;
  line-height: 1.44;
  margin-top: .3rem;
  max-width: 46rem;
}
@media (max-width: 699px) {
  .qi-search-page__head { margin-bottom: 1.15rem; padding-top: .3rem; }
  .qi-search-page__head .qi-page__title { font-size: clamp(2rem, 9.4vw, 2.35rem); }
  .qi-search-page__form {
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 2rem;
  }
  .qi-search-page__form > .qi-searchbar__label {
    grid-column: 1 / -1;
    grid-row: 1;
  }
  .qi-search-page__form > .qi-searchbar__input { grid-column: 1; grid-row: 2; }
  .qi-search-page__form > .qi-searchbar__button { grid-column: 2; grid-row: 2; }
  .qi-search-group { display: block; }
  .qi-search-group + .qi-search-group { margin-top: 2rem; }
  .qi-search-group__title { margin-bottom: .8rem; }
  .qi-search-results .qi-search-result { padding-left: .9rem; }
}

/* The projects register currently holds one verified case. Its presentation
   gives that case a clear task: the reason to read sits beside the factual
   record, instead of leaving a generic catalogue card in a wide empty field. */
.qi-projects-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 2.2rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-projects-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-projects-records {
  max-width: 74rem;
}
.qi-project-record {
  align-items: start;
  background: rgba(255, 253, 250, .68);
  border: 1px solid rgba(211, 220, 215, .82);
  border-bottom: 1px solid rgba(211, 220, 215, .82);
  border-left: 3px solid var(--qi-accent);
  border-radius: 8px;
  display: grid;
  gap: 1.35rem 2.25rem;
  grid-template-columns: minmax(0, .45fr) minmax(0, .55fr);
  padding: clamp(1.15rem, 2.5vw, 1.65rem);
}
.qi-project-record__overview {
  min-width: 0;
}
.qi-project-record .qi-record__status {
  margin: 0;
}
.qi-project-record .qi-record__title {
  font-size: clamp(1.55rem, 2.5vw, 1.95rem);
  line-height: 1.1;
  margin: .55rem 0 .5rem;
}
.qi-project-record .qi-record__title .qi-value__source,
.qi-project-record .qi-record__title .qi-value__lang { display: block; }
.qi-project-record .qi-record__title .qi-value__lang {
  line-height: 1.3;
  margin-top: .3rem;
  white-space: normal;
}
.qi-project-record .qi-record__summary {
  color: var(--qi-fg);
  font-family: var(--qi-serif);
  font-size: .98rem;
  line-height: 1.55;
  margin: 0;
}
.qi-project-record__reading {
  font-size: .87rem;
  font-weight: 650;
  line-height: 1.42;
  margin: 1.15rem 0 0;
}
.qi-project-record__reading a::after {
  color: var(--qi-accent);
  content: ' →';
}
.qi-project-record__reading span {
  color: var(--qi-muted);
  font-weight: 400;
}
.qi-project-record .qi-facts {
  background: transparent;
  border-radius: 0;
  grid-template-columns: minmax(6.3rem, .32fr) minmax(0, 1fr);
  margin: 0;
}
.qi-project-record .qi-facts dt,
.qi-project-record .qi-facts dd {
  border-color: var(--qi-line);
  padding: .54rem 0;
}
.qi-project-record .qi-facts dd {
  font-size: .93rem;
}
.qi-projects-records + .qi-section__more {
  margin-top: 1.75rem;
}
@media (max-width: 699px) {
  .qi-projects-page__head {
    margin-bottom: 1.65rem;
    padding-top: .3rem;
  }
  .qi-projects-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-project-record {
    display: block;
    padding: 1rem;
  }
  .qi-project-record .qi-facts {
    grid-template-columns: 1fr;
    margin-top: 1.2rem;
  }
  .qi-project-record .qi-facts dt { padding-bottom: .08rem; }
  .qi-project-record .qi-facts dd { padding-top: .08rem; }
}

/* A correction is a durable public editorial record. The compact, bounded
   treatment keeps its date, explanation and the corrected material together
   without turning this one-entry log into a generic catalogue. */
.qi-corrections-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.7rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-corrections-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-corrections-records {
  margin-top: 0;
  max-width: 48rem;
}
.qi-correction-record {
  background: rgba(255, 253, 250, .72);
  border: 1px solid rgba(211, 220, 215, .82);
  border-bottom: 1px solid rgba(211, 220, 215, .82);
  border-left: 3px solid var(--qi-accent-warm);
  border-radius: 8px;
  margin-bottom: 0;
  padding: clamp(1.05rem, 2.5vw, 1.45rem);
}
.qi-correction-record .qi-record__title {
  font-size: clamp(1.35rem, 2.25vw, 1.7rem);
  line-height: 1.13;
  margin: 0 0 .65rem;
}
.qi-correction-record .qi-record__summary {
  color: var(--qi-fg);
  font-family: var(--qi-serif);
  font-size: 1rem;
  line-height: 1.55;
  margin: 0;
  max-width: 42rem;
}
.qi-correction-record .qi-record__summary + .qi-record__language,
.qi-correction-record .qi-record__summary + p:not(.qi-record__language) {
  margin-top: 1rem;
}
.qi-correction-record .qi-link {
  font-size: .88rem;
  font-weight: 650;
}
.qi-correction-record .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
.qi-corrections-page__links {
  font-size: .88rem;
  margin-top: 1.05rem;
  max-width: 48rem;
}
@media (max-width: 699px) {
  .qi-corrections-page__head {
    margin-bottom: 1.35rem;
    padding-top: .3rem;
  }
  .qi-corrections-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-correction-record {
    padding: 1rem;
  }
}

/* The project statement is a sustained piece of reading. Its headings orient
   the reader beside the text on wider screens, then return to the natural
   single-column sequence on a phone; no ruled card or divider competes with
   the argument. */
.qi-about-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.55rem;
  max-width: 60rem;
  padding: 0;
}
.qi-about-page__head > h1 {
  font-family: var(--qi-display);
  font-optical-sizing: auto;
  font-size: clamp(1.78rem, 2.35vw, 2.25rem);
  font-weight: 400;
  letter-spacing: var(--avds-type-display-tracking, -.014em);
  line-height: 1.1;
}
.qi-about-section {
  align-items: start;
  display: grid;
  gap: 1rem clamp(1.5rem, 3vw, 2.5rem);
  grid-template-columns: minmax(9.5rem, .38fr) minmax(0, 1fr);
  margin-top: 2rem;
  max-width: 60rem;
}
.qi-about-section .qi-section__title {
  border: 0;
  font-size: clamp(1.18rem, 1.6vw, 1.4rem);
  line-height: 1.16;
  margin: .1rem 0 0;
  padding: 0;
}
.qi-about-section__copy {
  color: #26363c;
  font-family: var(--qi-serif);
  font-size: 1rem;
  line-height: 1.56;
  max-width: 46rem;
}
.qi-about-section__copy > :first-child { margin-top: 0; }
.qi-about-section__copy > :last-child { margin-bottom: 0; }
.qi-about-page__links {
  display: flex;
  flex-wrap: wrap;
  font-size: .88rem;
  gap: .55rem 1.1rem;
  margin-top: 2rem;
  max-width: 60rem;
}
.qi-about-page__links .qi-link { white-space: nowrap; }
@media (max-width: 699px) {
  .qi-about-page__head {
    margin-bottom: 1.25rem;
    padding-top: .2rem;
  }
  .qi-about-page__head > h1 { font-size: clamp(1.72rem, 7.8vw, 2.05rem); }
  .qi-about-section {
    display: block;
    margin-top: 1.8rem;
  }
  .qi-about-section .qi-section__title {
    font-size: clamp(1.28rem, 6.2vw, 1.5rem);
    margin-bottom: .65rem;
  }
  .qi-about-section__copy {
    font-size: 1rem;
    line-height: 1.55;
  }
  .qi-about-page__links { margin-top: 1.85rem; }
}

/* An empty opportunities list is a current availability result. It needs a
   clear, compact reading position, not the visual weight of a product card. */
.qi-opportunities-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.65rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-opportunities-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-opportunities-empty {
  background: rgba(235, 243, 239, .72);
  border: 0;
  border-left: 2px solid var(--qi-accent-warm);
  border-radius: 0 6px 6px 0;
  color: var(--qi-fg);
  font-family: var(--qi-serif);
  font-size: 1rem;
  line-height: 1.52;
  margin: 0;
  max-width: 48rem;
  padding: 1rem 1.1rem;
}
/* The empty register still owes the reader a way forward: it points at the
   section page, which carries the editorial material about programmes. */
.qi-opportunities-empty__next {
  margin-top: .95rem;
  max-width: 48rem;
}
.qi-opportunities-empty__next .qi-link {
  border-left: 2px solid var(--qi-accent-warm);
  display: inline-block;
  font-size: .94rem;
  font-weight: 650;
  padding: .3rem 0 .3rem .8rem;
}
.qi-opportunities-empty__next .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
@media (max-width: 699px) {
  .qi-opportunities-page__head {
    margin-bottom: 1.25rem;
    padding-top: .3rem;
  }
  .qi-opportunities-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-opportunities-empty {
    font-size: .98rem;
    padding: .9rem 1rem;
  }
}

/* Privacy and correction messages are a reader service. The page keeps each
   policy question beside its answer and reserves the longer action area for
   the form, rather than using a generic page card and repeated rules. */
.qi-privacy-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.55rem;
  max-width: 60rem;
  padding: 0;
}
.qi-privacy-page__head .qi-page__title {
  font-size: clamp(1.78rem, 2.35vw, 2.25rem);
  line-height: 1.1;
}
.qi-privacy-section {
  align-items: start;
  display: grid;
  gap: 1rem clamp(1.5rem, 3vw, 2.5rem);
  grid-template-columns: minmax(9.5rem, .38fr) minmax(0, 1fr);
  margin-top: 2rem;
  max-width: 60rem;
}
.qi-privacy-section .qi-section__title {
  border: 0;
  font-size: clamp(1.18rem, 1.6vw, 1.4rem);
  line-height: 1.16;
  margin: .1rem 0 0;
  padding: 0;
}
.qi-privacy-section__copy {
  color: #26363c;
  font-family: var(--qi-serif);
  font-size: 1rem;
  line-height: 1.56;
  max-width: 46rem;
}
.qi-privacy-section__copy > :first-child { margin-top: 0; }
.qi-privacy-section__copy > :last-child { margin-bottom: 0; }
.qi-privacy-section .qi-page__note {
  color: var(--qi-muted);
  font-family: var(--qi-sans);
  font-size: .86rem;
  line-height: 1.48;
  margin-top: 1rem;
}
.qi-privacy-section--form { margin-top: 2.35rem; }
.qi-privacy-section--form .qi-form {
  margin-top: 1.45rem;
  max-width: 40rem;
}
.qi-privacy-section--form .qi-field__label,
.qi-privacy-section--form .qi-form__submit { font-family: var(--qi-sans); }
.qi-privacy-page__links {
  font-size: .88rem;
  margin-top: 2rem;
  max-width: 60rem;
}
@media (max-width: 699px) {
  .qi-privacy-page__head {
    margin-bottom: 1.25rem;
    padding-top: .2rem;
  }
  .qi-privacy-page__head .qi-page__title { font-size: clamp(1.72rem, 7.8vw, 2.05rem); }
  .qi-privacy-section {
    display: block;
    margin-top: 1.8rem;
  }
  .qi-privacy-section .qi-section__title {
    font-size: clamp(1.28rem, 6.2vw, 1.5rem);
    margin-bottom: .65rem;
  }
  .qi-privacy-section__copy {
    font-size: 1rem;
    line-height: 1.55;
  }
  .qi-privacy-section--form { margin-top: 2.15rem; }
  .qi-privacy-page__links { margin-top: 1.85rem; }
}


/* A missing address is a short recovery state. The reader needs a direct way
   back to published material, not a large framed product card. */
.qi-error-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.55rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-error-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-error-page__links {
  display: grid;
  gap: .45rem 1.3rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  max-width: 48rem;
  padding: 0;
}
.qi-error-page__links li { margin: 0; }
.qi-error-page__links .qi-link {
  border-left: 2px solid var(--qi-accent-warm);
  display: block;
  font-size: .94rem;
  font-weight: 650;
  padding: .3rem 0 .3rem .8rem;
}
.qi-error-page__links .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
@media (max-width: 699px) {
  .qi-error-page__head {
    margin-bottom: 1.25rem;
    padding-top: .3rem;
  }
  .qi-error-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-error-page__links {
    gap: .3rem;
    grid-template-columns: 1fr;
  }
}


/* An unpublished language is a recovery state: name what is available and put
   the real language choices together, without a framed generic error card. */
.qi-locale-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.55rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-locale-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-locale-page__section {
  margin-top: 0;
  max-width: 48rem;
}
.qi-locale-page__section .qi-section__title {
  border: 0;
  font-size: clamp(1.35rem, 2.1vw, 1.65rem);
  line-height: 1.15;
  margin: 0 0 .8rem;
  padding: 0;
}
.qi-locale-page__links {
  display: grid;
  gap: .45rem 1.3rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}
.qi-locale-page__links li { margin: 0; }
.qi-locale-page__links .qi-link {
  border-left: 2px solid var(--qi-accent-warm);
  display: block;
  font-size: .94rem;
  font-weight: 650;
  padding: .3rem 0 .3rem .8rem;
}
.qi-locale-page__links .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
.qi-locale-page__home {
  font-size: .88rem;
  margin-top: 1.1rem;
  max-width: 48rem;
}
@media (max-width: 699px) {
  .qi-locale-page__head {
    margin-bottom: 1.25rem;
    padding-top: .3rem;
  }
  .qi-locale-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-locale-page__section .qi-section__title {
    font-size: clamp(1.45rem, 7.2vw, 1.7rem);
  }
  .qi-locale-page__links {
    gap: .3rem;
    grid-template-columns: 1fr;
  }
}


/* A material can be published in another reader language. Keep the current
   language context, then make the verified alternate edition the clear next
   step rather than showing a generic product card and duplicate home links. */
.qi-notice-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.35rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-notice-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-notice-page__links {
  display: grid;
  gap: .45rem 1.3rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  list-style: none;
  margin: 0;
  max-width: 48rem;
  padding: 0;
}
.qi-notice-page__links li { margin: 0; }
.qi-notice-page__links .qi-link {
  border-left: 2px solid var(--qi-accent-warm);
  display: block;
  font-size: .94rem;
  font-weight: 650;
  padding: .3rem 0 .3rem .8rem;
}
.qi-notice-page__links .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
@media (max-width: 699px) {
  .qi-notice-page__head {
    margin-bottom: 1.25rem;
    padding-top: .3rem;
  }
  .qi-notice-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-notice-page__links { gap: .3rem; }
}

/* A withdrawn share fragment is a compact recovery state. It retains its HTTP
   boundary and routes readers to the correction log without presenting a
   generic framed product card. */
.qi-share-closed-page__head {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 1.35rem;
  max-width: 48rem;
  padding: .25rem 0 0;
}
.qi-share-closed-page__head .qi-page__title {
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  line-height: 1.05;
}
.qi-share-closed-page__links {
  display: grid;
  gap: .45rem 1.3rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  margin: 0;
  max-width: 48rem;
  padding: 0;
}
.qi-share-closed-page__links li { margin: 0; }
.qi-share-closed-page__links .qi-link {
  border-left: 2px solid var(--qi-accent-warm);
  display: block;
  font-size: .94rem;
  font-weight: 650;
  padding: .3rem 0 .3rem .8rem;
}
.qi-share-closed-page__links .qi-link::after {
  color: var(--qi-accent);
  content: ' →';
}
@media (max-width: 699px) {
  .qi-share-closed-page__head {
    margin-bottom: 1.25rem;
    padding-top: .3rem;
  }
  .qi-share-closed-page__head .qi-page__title {
    font-size: clamp(2rem, 9.4vw, 2.35rem);
  }
  .qi-share-closed-page__links { gap: .3rem; }
}

/* Home editorial flow.
   Each subject is one reading unit: orientation at the left, its lead and
   supporting items beside it. The colour changes identify only a deliberate
   thematic group. */
.qi-home--first-frame {
  column-gap: clamp(2rem, 4vw, 4rem);
  row-gap: 1.15rem;
  padding: clamp(1.45rem, 2.6vw, 2.15rem) 0 1.7rem;
}

.qi-home--first-frame .qi-home__title {
  font-size: clamp(2.8rem, 4.4vw, 4.15rem);
  line-height: .98;
  margin: 0 0 1rem;
  max-width: 14ch;
}

.qi-home__descriptor {
  color: var(--qi-fg);
  font-family: var(--qi-display);
  font-size: clamp(1.3rem, 1.9vw, 1.8rem);
  line-height: 1.18;
  margin: 0;
  max-width: 24ch;
}

.qi-home__entries {
  align-items: stretch;
  background: #edf3ef;
  border-radius: .85rem;
  gap: .85rem clamp(1rem, 2.2vw, 1.55rem);
  margin-top: .25rem;
  padding: .95rem 1rem;
}

.qi-home__entries-head {
  align-self: start;
  padding-top: .08rem;
}

.qi-home-paths {
  gap: .55rem;
}

.qi-home-path {
  background: rgba(255, 253, 250, .92);
  border-color: rgba(21, 40, 49, .1);
  border-radius: .55rem;
  min-height: 6.55rem;
  padding: .76rem .82rem .7rem;
}

.qi-home-path__label {
  font-size: clamp(1.02rem, 1.32vw, 1.18rem);
}

.qi-home-path__description {
  font-size: .8rem;
  line-height: 1.32;
}

.qi-home-path__action {
  font-size: .7rem;
}

.qi-home-stream {
  margin-top: clamp(2.35rem, 4vw, 3.45rem);
}

.qi-home-stream__frame {
  align-items: start;
  display: grid;
  gap: clamp(1.35rem, 3vw, 2.8rem);
  grid-template-columns: minmax(11.75rem, .36fr) minmax(0, 1.64fr);
}

.qi-home-stream--section .qi-home-stream__header {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
}

.qi-home-stream--section .qi-home-stream__header h2 {
  grid-column: auto;
  grid-row: auto;
  margin: .05rem 0 .6rem;
}

.qi-home-stream--section .qi-home-stream__header > p:not(.qi-kicker) {
  grid-column: auto;
  margin: 0 0 .75rem;
  max-width: none;
}

.qi-home-stream--section .qi-home-stream__more {
  grid-column: auto;
  justify-self: auto;
}

.qi-home-stream--tone-1,
.qi-home-stream--tone-2 {
  border-radius: .85rem;
  padding: clamp(1.05rem, 2.25vw, 1.45rem);
}

.qi-home-stream__body {
  gap: clamp(.9rem, 2.15vw, 1.55rem);
  grid-template-columns: minmax(0, 1.18fr) minmax(15.5rem, .82fr);
}

.qi-home-stream .qi-card--illustrated {
  align-items: stretch;
  border-radius: .72rem;
}

.qi-home-stream .qi-card__copy {
  border-radius: .72rem;
  padding: .9rem 1rem .95rem;
}

.qi-home-stream .qi-card--illustrated .qi-card__copy {
  padding: .9rem 1rem .95rem;
}

.qi-home-stream .qi-card__title {
  font-size: clamp(1.18rem, 1.52vw, 1.45rem);
}

.qi-home-stream .qi-card__summary {
  font-size: .84rem;
  line-height: 1.42;
}

.qi-home-stream .qi-card__action {
  font-size: .76rem;
  margin-top: .75rem;
}

.qi-home-stream .qi-reading-list {
  border-left: 0;
  gap: .65rem;
  padding: 0;
}

.qi-home-stream .qi-reading-list .qi-list__item {
  border-left: 2px solid #d78c79;
  padding: .06rem 0 .08rem .75rem;
}

.qi-home-stream .qi-reading-list .qi-list__item::before {
  display: none;
}

.qi-home-stream .qi-reading-list .qi-list__link {
  font-size: clamp(.98rem, 1.18vw, 1.1rem);
  line-height: 1.18;
}

.qi-home-stream .qi-reading-list .qi-list__meta {
  font-size: .76rem;
  line-height: 1.38;
  margin-top: .28rem;
}

@media (min-width: 1041px) {
  .qi-home-stream--paired .qi-home-stream__lead-card .qi-card--illustrated {
    grid-template-columns: minmax(11.5rem, .7fr) minmax(0, 1.3fr);
  }

  .qi-home-stream--solo .qi-home-stream__lead-card .qi-card--illustrated {
    grid-template-columns: minmax(13rem, .62fr) minmax(0, 1.38fr);
  }
}

@media (min-width: 700px) and (max-width: 1040px) {
  .qi-home-stream__frame {
    display: block;
  }

  .qi-home-stream--section .qi-home-stream__header {
    align-items: start;
    column-gap: 1.4rem;
    display: grid;
    grid-template-columns: minmax(12rem, .42fr) minmax(0, 1.58fr);
    margin-bottom: 1rem;
  }

  .qi-home-stream--section .qi-home-stream__header h2 {
    grid-row: 1 / span 2;
  }

  .qi-home-stream--section .qi-home-stream__header > p:not(.qi-kicker) {
    margin: 0;
  }

  .qi-home-stream--section .qi-home-stream__more {
    grid-column: 2;
    margin-top: .45rem;
  }

  .qi-home-stream__body {
    grid-template-columns: minmax(0, 1.1fr) minmax(14rem, .9fr);
  }
}

@media (max-width: 699px) {
  .qi-home--first-frame {
    padding-bottom: 1.25rem;
  }

  .qi-home__entries {
    display: block;
    margin-top: 1.1rem;
    padding: .9rem;
  }

  .qi-home__entries-head {
    margin-bottom: .65rem;
  }

  .qi-home-paths {
    gap: .5rem;
  }

  .qi-home-path {
    min-height: 0;
    padding: .75rem .8rem;
  }

  .qi-home-stream {
    margin-top: 2rem;
  }

  .qi-home-stream__frame {
    display: block;
  }

  .qi-home-stream--tone-1,
  .qi-home-stream--tone-2 {
    padding: 1rem;
  }

  .qi-home-stream--section .qi-home-stream__header {
    display: block;
    margin-bottom: 1rem;
  }

  .qi-home-stream--section .qi-home-stream__header > p:not(.qi-kicker) {
    margin-bottom: .7rem;
  }

  .qi-home-stream .qi-home-stream__lead-card {
    margin-bottom: .7rem;
  }

  .qi-home-stream .qi-reading-list {
    gap: .6rem;
  }
}

/* Long indexes should use the page width to make scanning easier. Collections
   retain their deliberate single reading stream; section indexes and source
   directories turn into balanced desktop columns without adding decoration. */
@media (min-width: 62rem) {
  .qi-reading-stream--section {
    column-count: 2;
    column-gap: 2.5rem;
    display: block;
    max-width: 74rem;
  }

  .qi-reading-stream--section .qi-list__item {
    break-inside: avoid;
    min-width: 0;
  }

  .qi-sources--directory {
    column-count: 2;
    column-gap: 1rem;
    display: block;
    max-width: none;
  }

  .qi-sources--directory .qi-source-group {
    break-inside: avoid;
    display: block;
    margin-bottom: .8rem;
    min-width: 0;
  }

  .qi-search-page__head,
  .qi-search-page__form {
    max-width: 60rem;
  }

  .qi-search-group {
    grid-template-columns: minmax(8.5rem, .22fr) minmax(0, 1fr);
    max-width: 68rem;
  }
}

/* Item pages: hierarchy comes from typography and whitespace, not oversized initials or repeated rules. */
.qi-item .qi-body > p:first-child::first-letter {
  font-size: 2.75em;
  line-height: .83;
  margin: .13em .1em 0 0;
}

.qi-item .qi-body h2 {
  border-top: 0;
  font-size: 1.7rem;
  margin-top: 2.25rem;
  padding-top: 0;
}

.qi-item .qi-article > .qi-section {
  margin-top: 2.15rem;
}

@media (max-width: 699px) {
  .qi-item .qi-body > p:first-child::first-letter {
    font-size: 2.45em;
  }

  .qi-item .qi-body h2 {
    font-size: 1.5rem;
    margin-top: 2rem;
  }
}

/* Related items belong to the same reading column as the body, not to the wider page grid. */
.qi-item-related {
  margin-inline: auto;
  max-width: 49rem;
}

/* Section headings already supply the divider above their content. */
.qi-item .qi-section__title + .qi-sources,
.qi-item-related .qi-section__title + .qi-reading-list { border-top: 0; }
.qi-item .qi-section__title + .qi-blocks > .qi-block:first-child { border-top: 0; }

/* The opening initial is decorative. It must not split a number, so the
   renderer marks a paragraph that opens with a digit and the initial stands
   down to ordinary text there. This selector is scoped to the item page so it
   outranks the reading-rhythm rule above. */
.qi-item .qi-body > p.qi-lede-plain::first-letter,
.qi-body > p.qi-lede-plain::first-letter {
  color: inherit;
  float: none;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
}

/* A page shorter than the viewport -- a closed fragment, a 404, an empty
   catalogue -- used to leave the dark footer floating above a band of the
   page colour. The page box now fills the viewport and the reading column
   takes the free space, so the footer always closes the page. */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

.qi-main {
  flex: 1 0 auto;
  width: 100%;
}

/* Article navigation stays compact until the reader opens it. */
.qi-contents { border-block: 1px solid var(--qi-line); margin: 1.5rem 0 2rem; padding: .8rem 0; }
.qi-contents summary { cursor: pointer; font-weight: 600; }
.qi-contents ol { padding-left: 1.4rem; margin: .9rem 0 .2rem; }
.qi-contents li { margin: .45rem 0; line-height: 1.45; }
.qi-body h2[id], .qi-body h3[id] { scroll-margin-top: 6rem; }
.qi-topic-links { display: flex; flex-wrap: wrap; gap: .6rem 1.3rem; margin: 1.2rem 0; }
.qi-reading-path + .qi-reading-path { margin-top: 2.5rem; }
