/*
 * Kashmir finished-product audit — Additional CSS, restrained revision
 * WordPress Twenty Twenty. Paste into Appearance > Customize > Additional CSS.
 * Every rule is scoped to .kfa-page.
 */

.kfa-page,
.kfa-page * {
  box-sizing: border-box;
}

.kfa-page {
  --kfa-bg: #11161b;
  --kfa-panel: #171d22;
  --kfa-panel-soft: #141a1f;
  --kfa-ink: #edf1f3;
  --kfa-muted: #aab3ba;
  --kfa-rule: #3a444c;
  --kfa-accent: #d8a56d;
  --kfa-accent-soft: #2b2118;
  background: transparent;
  color-scheme: dark;
  color: var(--kfa-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 1.8rem;
  line-height: 1.67;
}

.kfa-page > * {
  max-width: 72rem;
  margin-right: auto;
  margin-left: auto;
}

.kfa-page .kfa-wide {
  width: min(112rem, calc(100vw - 4rem));
  max-width: 112rem;
  margin-left: 50%;
  transform: translateX(-50%);
}

.kfa-page p,
.kfa-page li,
.kfa-page blockquote,
.kfa-page figcaption {
  font-family: inherit;
  letter-spacing: normal;
  overflow-wrap: anywhere;
}

.kfa-page a {
  color: var(--kfa-ink);
  text-decoration-color: var(--kfa-accent);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}

.kfa-page a:hover,
.kfa-page a:focus {
  color: #fff;
  text-decoration-thickness: 0.14em;
}

.kfa-page :focus-visible {
  outline: 0.25rem solid var(--kfa-accent);
  outline-offset: 0.3rem;
}

/* The normal reading column remains in Twenty Twenty's flow. */
.kfa-shell {
  width: 100%;
  max-width: 72rem;
  margin-right: auto;
  margin-left: auto;
}

.kfa-page .kfa-authorship-notice {
  position: relative;
  margin-top: 3rem;
  padding: clamp(2.2rem, 4vw, 3.4rem);
  border: 0.1rem solid #4b5863;
  border-left: 0.6rem solid #d8a56d;
  background: linear-gradient(115deg, rgba(99, 220, 181, 0.09), rgba(98, 193, 255, 0.04) 55%, transparent), var(--kfa-bg);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.42);
}

.kfa-page .kfa-authorship-notice h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(2.8rem, 4vw, 4.4rem);
}

.kfa-page .kfa-authorship-notice p {
  max-width: 92rem;
  margin: 0.8rem 0 0;
}

.kfa-kicker,
.kfa-card-label,
.kfa-locator,
.kfa-chip {
  font-weight: 750;
  letter-spacing: 0.085em;
  text-transform: uppercase;
}

.kfa-page .kfa-authorship-notice .kfa-kicker {
  margin: 0 0 1.2rem;

	color: #d8a56d;
  font-size: 1.35rem;
}

.kfa-toc {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 3rem;
}

.kfa-toc a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5rem;
  padding: 0.8rem;
  border: 0.1rem solid var(--kfa-rule);
  background: rgba(17, 22, 27, 0.96);
  color: var(--kfa-ink);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

.kfa-toc a:hover,
.kfa-toc a:focus {
  border-color: var(--kfa-accent);
  color: var(--kfa-accent);
}

.kfa-section {
  padding: 6.5rem 0;
  border-bottom: 0.1rem solid var(--kfa-rule);
  scroll-margin-top: 2rem;
}

.kfa-section-head {
  margin: 0 0 3.2rem;
}

.kfa-section-number {
  margin: 0 0 0.9rem;
  color: var(--kfa-accent);
  font-size: 1.28rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.kfa-page h2,
.kfa-page h3,
.kfa-page h4 {
  color: var(--kfa-ink);
  font-family: inherit;
  font-weight: 750;
  letter-spacing: -0.015em;
}

.kfa-page h2 {
  margin: 0 0 1.3rem;
  font-size: clamp(3rem, 4vw, 4.4rem);
  line-height: 1.14;
}

.kfa-page h3 {
  margin: 0 0 0.9rem;
  font-size: 2.15rem;
  line-height: 1.27;
}

.kfa-page h4 {
  margin: 0 0 0.7rem;
  font-size: 1.72rem;
  line-height: 1.35;
}

.kfa-section-intro {
  max-width: 76rem;
  margin: 0;
  color: var(--kfa-muted);
  font-size: 1.95rem;
}

.kfa-prose {
  width: 100%;
  max-width: none;
  margin: 0;
}

.kfa-prose > p:first-child {
  margin-top: 0;
}

.kfa-prose p {
  margin: 0 0 2rem;
}

.kfa-source-facts,
.kfa-stat-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 2.8rem 0 3.2rem;
  padding: 0;
  border-top: 0.1rem solid var(--kfa-rule);
}

.kfa-source-facts > div,
.kfa-stat-list > div {
  display: grid;
  align-items: baseline;
  gap: 1.2rem;
  min-width: 0;
  margin: 0;
  padding: 1.5rem 1.6rem 1.5rem 0;
  border-bottom: 0.1rem solid var(--kfa-rule);
}

.kfa-source-facts > div {
  grid-template-columns: 14rem minmax(0, 1fr);
}

.kfa-stat-list > div {
  grid-template-columns: 5rem minmax(0, 1fr);
}

.kfa-source-facts > div:nth-child(odd),
.kfa-stat-list > div:nth-child(odd) {
  margin-right: 1.8rem;
}

.kfa-source-facts dt,
.kfa-stat-list dt,
.kfa-source-facts dd,
.kfa-stat-list dd {
  margin: 0;
}

.kfa-source-facts dt,
.kfa-stat-list dt {
  color: var(--kfa-ink);
  font-size: 1.8rem;
  font-weight: 750;
  line-height: 1.25;
}

.kfa-source-facts dd,
.kfa-stat-list dd {
  color: var(--kfa-muted);
  font-size: 1.4rem;
  line-height: 1.45;
}

.kfa-stat-list dt {
  color: var(--kfa-accent);
  font-size: 2.4rem;
}

.kfa-grid-2,
.kfa-grid-3,
.kfa-grid-4,
.kfa-relation-grid,
.kfa-corrections,
.kfa-can-cannot,
.kfa-responsibility,
.kfa-demonstrates {
  display: grid;
  gap: 1.4rem;
  margin: 2.8rem 0;
}

.kfa-grid-2,
.kfa-relation-grid,
.kfa-corrections,
.kfa-can-cannot,
.kfa-responsibility,
.kfa-demonstrates {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

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

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

.kfa-grid-2 > *,
.kfa-grid-3 > *,
.kfa-grid-4 > *,
.kfa-relation-grid > *,
.kfa-corrections > *,
.kfa-can-cannot > *,
.kfa-responsibility > *,
.kfa-demonstrates > *,
.kfa-visible-open > *,
.kfa-annotation > * {
  min-width: 0;
}

.kfa-card,
.kfa-finding,
.kfa-relation,
.kfa-limit-panel,
.kfa-example,
.kfa-callout,
.kfa-test {
  margin: 0;
  padding: 2.1rem;
  border: 0.1rem solid var(--kfa-rule);
  background: var(--kfa-panel-soft);
}

.kfa-card p:last-child,
.kfa-finding p:last-child,
.kfa-relation p:last-child,
.kfa-limit-panel p:last-child,
.kfa-example p:last-child,
.kfa-callout p:last-child,
.kfa-test p:last-child {
  margin-bottom: 0;
}

.kfa-card-label,
.kfa-locator,
.kfa-chip {
  display: inline-block;
  color: var(--kfa-accent);
  font-size: 1.1rem;
  line-height: 1.35;
}

.kfa-quote {
  margin: 2.8rem 0;
  padding: 2.3rem 2.5rem;
  border: 0.1rem solid var(--kfa-rule);
  border-left: 0.35rem solid var(--kfa-accent);
  color: var(--kfa-ink);
  background: var(--kfa-panel-soft);
  font-family: inherit;
  font-size: clamp(1.9rem, 2.4vw, 2.3rem);
  font-style: normal;
  line-height: 1.55;
}

.kfa-quote p {
  margin: 0;
  font-family: inherit;
}

.kfa-quote footer {
  margin-top: 1.2rem;
  color: var(--kfa-muted);
  font-family: inherit;
  font-size: 1.25rem;
  font-style: normal;
}

.kfa-annotation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: -2.8rem 0 2.8rem;
  border: 0.1rem solid var(--kfa-rule);
  border-top: 0;
}

.kfa-annotation div {
  padding: 1.5rem;
  border-right: 0.1rem solid var(--kfa-rule);
  background: transparent;
}

.kfa-annotation div:last-child {
  border-right: 0;
}

.kfa-annotation strong {
  display: block;
  color: var(--kfa-ink);
  font-size: 1.22rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.kfa-annotation span {
  display: block;
  margin-top: 0.4rem;
  color: var(--kfa-muted);
  font-size: 1.32rem;
  line-height: 1.45;
}

.kfa-caption,
.kfa-note {
  color: var(--kfa-muted);
  font-size: 1.35rem;
  line-height: 1.55;
}

.kfa-ribbon {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: stretch;
  gap: 0.8rem;
  margin: 2.8rem 0;
}

.kfa-ribbon-step {
  padding: 1.8rem;
  border: 0.1rem solid var(--kfa-rule);
  background: var(--kfa-panel-soft);
}

.kfa-ribbon-arrow {
  align-self: center;
  color: var(--kfa-muted);
  font-size: 2rem;
}

.kfa-method-list {
  margin: 2.8rem 0;
  border-top: 0.1rem solid var(--kfa-rule);
}

.kfa-method-entry {
  display: grid;
  grid-template-columns: 14rem minmax(0, 1fr);
  gap: 1.8rem;
  margin: 0;
  padding: 1.7rem 0;
  border-bottom: 0.1rem solid var(--kfa-rule);
}

.kfa-method-entry h3 {
  margin: 0;
  color: var(--kfa-accent);
  font-size: 1.65rem;
}

.kfa-method-entry p {
  margin: 0 0 0.6rem;
  font-size: 1.5rem;
  line-height: 1.48;
}

.kfa-method-entry p:last-child {
  margin-bottom: 0;
  color: var(--kfa-muted);
}

.kfa-finding-number {
  display: block;
  margin-bottom: 0.8rem;
  color: var(--kfa-accent);
  font-size: 1.25rem;
  font-weight: 850;
  letter-spacing: 0.08em;
}

.kfa-visible-open {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 2.8rem 0;
  border: 0.1rem solid var(--kfa-rule);
}

.kfa-visible-open > div {
  padding: 2.2rem;
  background: transparent;
}

.kfa-visible-open > div + div {
  border-left: 0.1rem solid var(--kfa-rule);
}

.kfa-page ul,
.kfa-page ol {
  margin: 1.1rem 0 0;
  padding-left: 2rem;
}

.kfa-page li {
  margin: 0 0 0.7rem;
}

.kfa-relation {
  min-height: 100%;
}

.kfa-relation h3 {
  margin: 0.7rem 0;
  font-size: 1.8rem;
}

.kfa-relation-count {
  float: right;
  color: var(--kfa-accent);
  font-size: 2.5rem;
  font-weight: 850;
  line-height: 1;
}

.kfa-relation p {
  color: var(--kfa-muted);
  font-size: 1.4rem;
  line-height: 1.5;
}

.kfa-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.5rem;
  margin: 2.2rem 0;
  padding: 1.3rem 0;
  border-top: 0.1rem solid var(--kfa-rule);
  border-bottom: 0.1rem solid var(--kfa-rule);
}

.kfa-legend span {
  color: var(--kfa-muted);
  font-size: 1.3rem;
}

.kfa-legend i {
  display: inline-block;
  width: 0.8rem;
  height: 0.8rem;
  margin-right: 0.5rem;
  border-radius: 50%;
  vertical-align: 0.08em;
}

.kfa-dot-source,
.kfa-dot-finding { background: #94a2ac; }
.kfa-dot-method { background: var(--kfa-accent); }
.kfa-dot-human { background: #aab3ba; }

.kfa-graph {
  margin: 3.4rem 0;
  padding: 0;
  border: 0.1rem solid var(--kfa-rule);
  background: #0f1418;
}

.kfa-graph img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
}

.kfa-graph picture {
  display: block;
}

.kfa-graph figcaption {
  padding: 1.4rem 1.6rem 1.5rem;
  border-top: 0.1rem solid var(--kfa-rule);
  color: var(--kfa-muted);
  font-size: 1.3rem;
  line-height: 1.55;
}

.kfa-graph figcaption strong {
  color: var(--kfa-ink);
}

.kfa-chip {
  padding: 0.3rem 0.65rem;
  border: 0.1rem solid var(--kfa-rule);
  color: var(--kfa-muted);
}

.kfa-nonexample {
  margin: 3.4rem 0;
  padding: 2.4rem;
  border: 0.1rem solid var(--kfa-rule);
  border-left: 0.35rem solid var(--kfa-muted);
  background: var(--kfa-panel-soft);
}

.kfa-nonexample blockquote {
  margin: 1.6rem 0;
  padding: 0;
  border: 0;
  color: var(--kfa-ink);
  font-family: inherit;
  font-size: 1.9rem;
  font-style: normal;
  line-height: 1.58;
}

.kfa-correction-number {
  color: var(--kfa-accent);
  font-size: 1.25rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.kfa-test strong {
  color: var(--kfa-accent);
}

.kfa-disposition {
  margin: 3.4rem 0;
  padding: 2.5rem;
  border: 0.1rem solid var(--kfa-rule);
  border-left: 0.35rem solid var(--kfa-accent);
  background: var(--kfa-panel-soft);
}

.kfa-disposition h3 {
  color: var(--kfa-ink);
}

.kfa-sources {
  padding: 6rem 0 1rem;
}

.kfa-sources li {
  margin-bottom: 1.1rem;
  color: var(--kfa-muted);
}

.kfa-colophon {
  margin-top: 3.5rem;
  padding-top: 2.2rem;
  border-top: 0.1rem solid var(--kfa-rule);
  color: var(--kfa-muted);
  font-size: 1.35rem;
}

@media (max-width: 900px) {
  .kfa-page .kfa-wide {
    width: min(100%, calc(100vw - 3rem));
  }

  .kfa-grid-3,
  .kfa-relation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .kfa-ribbon {
    grid-template-columns: 1fr;
  }

  .kfa-ribbon-arrow {
    justify-self: center;
    transform: rotate(90deg);
  }
}

@media (max-width: 620px) {
  .kfa-page {
    font-size: 1.7rem;
  }

  .kfa-page .kfa-wide {
    width: 100%;
    margin-left: auto;
    transform: none;
  }

  .kfa-section,
  .kfa-sources {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }

  .kfa-source-facts,
  .kfa-stat-list,
  .kfa-grid-2,
  .kfa-grid-3,
  .kfa-grid-4,
  .kfa-relation-grid,
  .kfa-corrections,
  .kfa-can-cannot,
  .kfa-responsibility,
  .kfa-demonstrates,
  .kfa-visible-open,
  .kfa-annotation {
    grid-template-columns: 1fr;
  }

  .kfa-source-facts > div,
  .kfa-stat-list > div {
    grid-template-columns: 1fr;
    gap: 0.35rem;
    margin-right: 0;
    padding-right: 0;
  }

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

  .kfa-visible-open > div + div,
  .kfa-annotation div {
    border-top: 0.1rem solid var(--kfa-rule);
    border-right: 0;
    border-left: 0;
  }

  .kfa-annotation div:first-child {
    border-top: 0;
  }

  .kfa-method-entry {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .kfa-quote,
  .kfa-card,
  .kfa-finding,
  .kfa-relation,
  .kfa-limit-panel,
  .kfa-example,
  .kfa-callout,
  .kfa-test,
  .kfa-nonexample,
  .kfa-disposition {
    padding: 1.8rem;
  }
}

@media print {
  .kfa-page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible;
    color: #111;
    background: #fff;
    font-size: 11pt;
  }

  .kfa-page *,
  .kfa-page h2,
  .kfa-page h3,
  .kfa-page h4,
  .kfa-page p,
  .kfa-page li,
  .kfa-page span,
  .kfa-page strong {
    color: #111 !important;
    background: transparent !important;
  }

  .kfa-toc {
    display: none;
  }

  .kfa-page .kfa-wide {
    width: 100%;
    max-width: none;
    margin-left: 0;
    transform: none;
  }

  .kfa-authorship-notice,
  .kfa-section,
  .kfa-card,
  .kfa-finding,
  .kfa-relation,
  .kfa-limit-panel,
  .kfa-example,
  .kfa-callout,
  .kfa-quote,
  .kfa-nonexample,
  .kfa-disposition,
  .kfa-graph {
    border-color: #777 !important;
    break-inside: avoid;
  }

  .kfa-graph img {
    filter: grayscale(100%);
  }

  .kfa-section {
    padding: 2.5rem 0;
  }
}

/* =========================================================
   LEGACY KMA EXTENSION
   Retained for compatibility with any page using both
   .frc-afa-page and .kma-page. Shared FRC foundations are
   defined once in the current FRC system below.
   ========================================================= */

.kma-page .kma-color-key {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 0.8rem;
}

.kma-page .kma-color-key span {
  padding: 0.65rem 0.8rem;
  border-bottom: 0.3rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.1rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}

.kma-page .kma-color-key .kma-key--source { border-color: var(--frc-input); }
.kma-page .kma-color-key .kma-key--method { border-color: var(--frc-machinery); }
.kma-page .kma-color-key .kma-key--output { border-color: var(--frc-output); }
.kma-page .kma-color-key .kma-key--human { border-color: var(--frc-human); }
.kma-page .kma-color-key .kma-key--limit { border-color: #7d8993; }

/* Kashmir-specific argumentative visuals */
.kma-page .kma-opening { padding-top: 0.4rem; }

.kma-page .kma-thesis {
  display: grid;
  grid-template-columns: minmax(13rem, 0.35fr) minmax(24rem, 1.65fr);
  gap: 2rem;
  align-items: center;
  margin: 2.6rem 0 0;
  padding: 2rem 2.2rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.6rem solid var(--frc-output);
  background: linear-gradient(90deg, rgba(99, 220, 181, 0.08), var(--frc-paper));
}

.kma-page .kma-thesis span,
.kma-page .kma-bottom-line small {
  color: var(--frc-muted);
  font-size: 1.15rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.kma-page .kma-thesis strong { font-size: 2rem; line-height: 1.4; }
.kma-page .kma-card--source { border-top: 0.5rem solid var(--frc-input); }
.kma-page .kma-card--human { border-top: 0.5rem solid var(--frc-human); }
.kma-page .kma-card--output { border-top: 0.5rem solid var(--frc-output); }
.kma-page .kma-question--source { border-left-color: var(--frc-input); }

.kma-page .kma-voice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.kma-page .kma-voice {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-voice--source { border-top: 0.5rem solid var(--frc-input); }
.kma-page .kma-voice--actor { border-top: 0.5rem solid #8ba9bf; }
.kma-page .kma-voice--audit { border-top: 0.5rem solid var(--frc-machinery); }
.kma-page .kma-voice small { display: block; margin-bottom: 1rem; color: var(--frc-muted); font-size: 1.1rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.kma-page .kma-voice strong { display: block; font-size: 1.75rem; line-height: 1.4; }
.kma-page .kma-voice span { display: block; margin-top: 1rem; color: var(--frc-muted); font-size: 1.3rem; }

.kma-page .kma-before-after {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0 3rem;
}

.kma-page .kma-before-after article {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-before { border-top: 0.5rem solid #7d8993 !important; }
.kma-page .kma-source-reading { border-top: 0.5rem solid var(--frc-input) !important; }
.kma-page .kma-after { border-top: 0.5rem solid var(--frc-output) !important; }
.kma-page .kma-before-after small,
.kma-page .kma-cluster small,
.kma-page .kma-visibility small,
.kma-page .kma-bottom-line small { display: block; margin-bottom: 0.8rem; }
.kma-page .kma-before-after small,
.kma-page .kma-cluster small,
.kma-page .kma-visibility small { color: var(--frc-muted); font-size: 1.1rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.kma-page .kma-before-after strong { display: block; min-height: 6.5rem; font-size: 1.75rem; line-height: 1.35; }
.kma-page .kma-before-after p { margin-bottom: 0; color: var(--frc-muted); font-size: 1.4rem; }

.kma-page .kma-cluster {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0 1rem;
}

.kma-page .kma-cluster article {
  min-width: 0;
  padding: 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.5rem solid var(--frc-machinery);
  background: var(--frc-paper);
}

.kma-page .kma-cluster strong { display: block; font-size: 1.65rem; line-height: 1.4; }

.kma-page .kma-cluster-rule {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 1.5rem;
  align-items: center;
  margin: 0 0 3rem;
  padding: 1.6rem 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
  text-align: center;
}

.kma-page .kma-cluster-rule strong { color: var(--frc-human); font-size: 3rem; line-height: 1; }
.kma-page .kma-cluster-rule span { font-size: 1.5rem; font-weight: 700; }
.kma-page .kma-finding--source { border-top-color: var(--frc-input); }
.kma-page .kma-finding--machinery { border-top-color: var(--frc-machinery); }
.kma-page .kma-finding--output { border-top-color: var(--frc-output); }

.kma-page .kma-restatement {
  margin: 2.4rem 0 3rem;
  padding: clamp(2rem, 3vw, 3rem);
  border: 0.1rem solid var(--frc-rule);
  border-top: 0.6rem solid var(--frc-output);
  background: linear-gradient(180deg, rgba(99, 220, 181, 0.07), var(--frc-paper) 12rem);
  box-shadow: var(--frc-shadow);
}

.kma-page .kma-restatement p:not(.frc-kicker) { font-size: 1.9rem; line-height: 1.65; }

.kma-page .kma-visibility {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.kma-page .kma-visibility article {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-visible { border-top: 0.5rem solid var(--frc-output) !important; }
.kma-page .kma-partial { border-top: 0.5rem solid var(--frc-machinery) !important; }
.kma-page .kma-unknown { border-top: 0.5rem solid #7d8993 !important; }
.kma-page .kma-visibility strong { display: block; font-size: 1.65rem; line-height: 1.4; }
.kma-page .kma-visibility p { margin-bottom: 0; color: var(--frc-muted); font-size: 1.4rem; }

.kma-page .kma-limits { margin-top: 5.2rem; padding-top: 2.2rem; border-top: 0.5rem solid var(--frc-rule); }
.kma-page .kma-limits h2 { margin-top: 0; }

.kma-page .kma-bottom-line {
  margin: 3rem 0;
  padding: 2.4rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.6rem solid var(--frc-human);
  background: linear-gradient(90deg, rgba(225, 165, 243, 0.08), var(--frc-paper));
}

.kma-page .kma-bottom-line strong { display: block; margin-top: 0.8rem; font-size: 2.2rem; line-height: 1.4; }

.kma-page .kma-source-links {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 0.1rem solid var(--frc-rule);
}

@media (max-width: 760px) {
  .kma-page .kma-color-key {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kma-page .kma-voice-grid,
  .kma-page .kma-before-after,
  .kma-page .kma-cluster,
  .kma-page .kma-visibility {
    grid-template-columns: 1fr;
  }

  .kma-page .kma-thesis {
    grid-template-columns: 1fr;
    gap: 0.6rem;
  }

  .kma-page .kma-before-after strong {
    min-height: 0;
  }
}

@media (max-width: 460px) {
  .kma-page .kma-color-key {
    grid-template-columns: 1fr;
  }

  .kma-page .kma-cluster-rule {
    grid-template-columns: 1fr;
    gap: 0.6rem;
  }
}

@media print {
  .frc-afa-page .kma-restatement {
    box-shadow: none;
  }

  .frc-afa-page .kma-voice,
  .frc-afa-page .kma-before-after article,
  .frc-afa-page .kma-cluster article,
  .frc-afa-page .kma-visibility article {
    break-inside: avoid;
  }
}

/* =========================================================
   THE PARCHED GARDEN OF FORKING PATHS — CURRENT FRC SYSTEM
   Every rule is scoped to .frc-afa-page.
   ========================================================= */

.frc-afa-page {
  --frc-ink: #eef3f7;
  --frc-muted: #aeb9c2;
  --frc-rule: #35404a;
  --frc-paper: #11161b;
  --frc-mist: #171e24;
  --frc-input: #62c1ff;
  --frc-machinery: #ffb675;
  --frc-output: #63dcb5;
  --frc-human: #e1a5f3;
  --frc-shadow: 0 16px 42px rgba(0, 0, 0, 0.42);
  background: transparent;
  color-scheme: dark;
  color: var(--frc-ink);
  font-size: 1.8rem;
  line-height: 1.65;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.frc-afa-page,
.frc-afa-page * {
  box-sizing: border-box;
}

.frc-afa-page > * {
  max-width: 72rem;
  min-width: 0;
  margin-left: auto;
  margin-right: auto;
}

.frc-afa-page .frc-wide {
  width: min(112rem, calc(100vw - 4rem));
  max-width: 112rem;
  margin-left: 50%;
  transform: translateX(-50%);
}

.frc-afa-page h2,
.frc-afa-page h3,
.frc-afa-page h4 {
  color: var(--frc-ink);
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.frc-afa-page h2 {
  margin-top: 5.2rem;
  margin-bottom: 1.6rem;
  font-size: clamp(3.2rem, 4.5vw, 5.2rem);
}

.frc-afa-page h3 {
  margin-top: 2.8rem;
  margin-bottom: 1.1rem;
  font-size: clamp(2.4rem, 3vw, 3.4rem);
}

.frc-afa-page h4 {
  margin-top: 1.8rem;
  margin-bottom: 0.8rem;
  font-size: 2rem;
}

.frc-afa-page p,
.frc-afa-page li,
.frc-afa-page td,
.frc-afa-page th {
  color: var(--frc-ink);
}

.frc-afa-page a {
  color: var(--frc-ink);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.15em;
}

.frc-afa-page a:focus-visible,
.frc-afa-page summary:focus-visible {
  outline: 0.3rem solid var(--frc-ink);
  outline-offset: 0.3rem;
}

.frc-afa-page [id] {
  scroll-margin-top: 8rem;
}

.frc-afa-page .frc-kicker {
  margin: 0 0 1.2rem;
  color: var(--frc-muted);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.frc-afa-page .frc-deck {
  max-width: 78rem;
  margin: 0;
  color: var(--frc-muted);
  font-size: clamp(2rem, 2.4vw, 2.8rem);
  line-height: 1.45;
}

.frc-afa-page .frc-authorship-notice {
  position: relative;
  margin-top: 3rem;
  padding: clamp(1.6rem, 2.5vw, 2.4rem);
  border: 0.1rem solid #4b5863;
  border-left: 0.6rem solid var(--frc-rule);
  background: var(--frc-paper);
  box-shadow: var(--frc-shadow);
  font-size: 1.45rem;
  line-height: 1.55;
}

.frc-afa-page .frc-authorship-notice h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(2rem, 2.5vw, 2.8rem);
}

.frc-afa-page .frc-authorship-notice p {
  max-width: 92rem;
  margin: 0.8rem 0 0;
}

.frc-afa-page .frc-authorship-notice .frc-kicker { color: var(--frc-muted); font-size: 1.15rem; }

.frc-afa-page .frc-pipeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
  margin: 2.5rem 0;
}

.frc-afa-page .frc-pipeline-step {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 15rem;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  color: var(--frc-ink);
  text-decoration: none;
}

.frc-afa-page .frc-pipeline-step::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -1.9rem;
  z-index: 2;
  color: var(--frc-muted);
  font-size: 2rem;
  transform: translateY(-50%);
}

.frc-afa-page .frc-pipeline-step:last-child::after { display: none; }
.frc-afa-page .frc-pipeline-step--input { border-top: 0.5rem solid var(--frc-input); }
.frc-afa-page .frc-pipeline-step--machinery { border-top: 0.5rem solid var(--frc-machinery); }
.frc-afa-page .frc-pipeline-step--output { border-top: 0.5rem solid var(--frc-output); }
.frc-afa-page .frc-pipeline-step small { color: var(--frc-muted); font-size: 1.2rem; font-weight: 750; letter-spacing: 0.1em; text-transform: uppercase; }
.frc-afa-page .frc-pipeline-step strong { margin: 1rem 0 0.6rem; font-size: 2rem; line-height: 1.2; }
.frc-afa-page .frc-pipeline-step span { color: var(--frc-muted); font-size: 1.4rem; }
.frc-afa-page .frc-pipeline-step:hover { border-right-color: var(--frc-muted); border-bottom-color: var(--frc-muted); border-left-color: var(--frc-muted); }

.frc-afa-page .frc-lens-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: 2.4rem 0 3rem;
}

.frc-afa-page .frc-lens-pair > div {
  padding: 1.5rem 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-lens-pair > div { border-left: 0.5rem solid var(--frc-rule); }
.frc-afa-page .frc-lens-pair small { display: block; margin-bottom: 0.5rem; color: var(--frc-muted); font-size: 1.15rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.frc-afa-page .frc-lens-pair strong { display: block; line-height: 1.35; }

.frc-afa-page .frc-phase-section > h2 {
  padding-top: 1.4rem;
  border-top: 0.5rem solid var(--frc-rule);
}

.frc-afa-page .frc-phase-section--input > h2 { border-top-color: var(--frc-input); }
.frc-afa-page .frc-phase-section--machinery > h2 { border-top-color: var(--frc-machinery); }
.frc-afa-page .frc-phase-section--output > h2 { border-top-color: var(--frc-output); }

.frc-afa-page .frc-stage-gate {
  display: grid;
  grid-template-columns: minmax(14rem, 0.45fr) minmax(20rem, 0.8fr) minmax(24rem, 1.4fr);
  gap: 1.5rem;
  align-items: center;
  margin: 3rem 0;
  padding: 1.8rem 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-stage-gate--input { border-left: 0.6rem solid var(--frc-input); }
.frc-afa-page .frc-stage-gate--machinery { border-left: 0.6rem solid var(--frc-machinery); }
.frc-afa-page .frc-stage-gate--output { border-left: 0.6rem solid var(--frc-output); }
.frc-afa-page .frc-stage-gate small { color: var(--frc-muted); font-size: 1.15rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.frc-afa-page .frc-stage-gate strong { font-size: 1.8rem; line-height: 1.25; }
.frc-afa-page .frc-stage-gate span { color: var(--frc-muted); font-size: 1.4rem; }

.frc-afa-page .frc-provisional-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.frc-afa-page .frc-provisional-grid article {
  padding: 1.6rem 1.8rem;
  border: 0.1rem dashed #65727d;
  background: #13191e;
}

.frc-afa-page .frc-provisional-grid small { display: block; margin-bottom: 0.6rem; color: var(--frc-muted); font-size: 1.2rem; }
.frc-afa-page .frc-provisional-grid strong { display: block; line-height: 1.3; }
.frc-afa-page .frc-process-record { margin-top: 5.2rem; padding-top: 0.5rem; border-top: 0.1rem dashed #65727d; }

.frc-afa-page .frc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 2rem;
  margin: 2.4rem 0 0;
  padding-top: 2rem;
  border-top: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.4rem;
}

.frc-afa-page .frc-role-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin: 2.4rem 0 0;
}

.frc-afa-page .frc-role {
  display: inline-flex;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.4rem 0.9rem;
  border: 0.1rem solid currentColor;
  border-radius: 999px;
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.frc-afa-page .frc-role--human { color: var(--frc-human); background: #261a2b; }
.frc-afa-page .frc-role--llm,
.frc-afa-page .frc-role--source,
.frc-afa-page .frc-role--formal { color: var(--frc-muted); background: var(--frc-paper); }

.frc-afa-page .frc-guide,
.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-grid-3,
.frc-afa-page .frc-grid-4,
.frc-afa-page .frc-actor-grid,
.frc-afa-page .frc-finding-grid {
  display: grid;
  gap: 1.6rem;
}

.frc-afa-page .frc-guide > *,
.frc-afa-page .frc-grid-2 > *,
.frc-afa-page .frc-grid-3 > *,
.frc-afa-page .frc-grid-4 > *,
.frc-afa-page .frc-actor-grid > *,
.frc-afa-page .frc-finding-grid > *,
.frc-afa-page .frc-pipeline > *,
.frc-afa-page .frc-lens-pair > *,
.frc-afa-page .frc-provisional-grid > *,
.frc-afa-page .frc-stage-gate > * {
  min-width: 0;
}

.frc-afa-page .frc-guide,
.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-finding-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.frc-afa-page .frc-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.frc-afa-page .frc-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.frc-afa-page .frc-actor-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.frc-afa-page .frc-card,
.frc-afa-page .frc-track,
.frc-afa-page .frc-question,
.frc-afa-page .frc-option,
.frc-afa-page .frc-force,
.frc-afa-page .frc-pairing,
.frc-afa-page .frc-finding,
.frc-afa-page .frc-indicator {
  margin: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-card > :first-child,
.frc-afa-page .frc-track > :first-child,
.frc-afa-page .frc-question > :first-child,
.frc-afa-page .frc-option > :first-child,
.frc-afa-page .frc-force > :first-child,
.frc-afa-page .frc-pairing > :first-child,
.frc-afa-page .frc-finding > :first-child,
.frc-afa-page .frc-indicator > :first-child { margin-top: 0; }

.frc-afa-page .frc-card > :last-child,
.frc-afa-page .frc-track > :last-child,
.frc-afa-page .frc-question > :last-child,
.frc-afa-page .frc-option > :last-child,
.frc-afa-page .frc-force > :last-child,
.frc-afa-page .frc-pairing > :last-child,
.frc-afa-page .frc-finding > :last-child,
.frc-afa-page .frc-indicator > :last-child { margin-bottom: 0; }

.frc-afa-page .frc-track--case,
.frc-afa-page .frc-track--method { border-top: 0.5rem solid var(--frc-rule); }

.frc-afa-page .frc-section-intro {
  max-width: 76rem;
  color: var(--frc-muted);
  font-size: 2rem;
}

.frc-afa-page .frc-stage-nav {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 3rem;
}

.frc-afa-page .frc-stage-nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5rem;
  padding: 0.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: rgba(17, 22, 27, 0.96);
  color: var(--frc-ink);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

.frc-afa-page .frc-stage-nav a:hover { border-color: var(--frc-muted); color: var(--frc-ink); }

.frc-afa-page .frc-prompt {
  margin: 2rem 0;
  padding: 2rem 2.2rem;
  border-left: 0.5rem solid var(--frc-human);
  background: #211824;
  font-size: 1.7rem;
}

.frc-afa-page .frc-prompt::before {
  content: "Analyst instruction";
  display: block;
  margin-bottom: 0.8rem;
  color: var(--frc-human);
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.frc-afa-page .frc-decision {
  margin: 1.6rem 0 0;
  padding: 1.3rem 1.5rem;
  border: 0.1rem solid #62456b;
  background: #17131a;
  font-size: 1.5rem;
}

.frc-afa-page .frc-decision strong { color: var(--frc-human); }

.frc-afa-page .frc-zoom {
  position: relative;
  margin: 3rem 0;
  padding-left: 4.2rem;
}

.frc-afa-page .frc-zoom::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  bottom: 1.5rem;
  left: 1.3rem;
  width: 0.3rem;
  background: var(--frc-rule);
}

.frc-afa-page .frc-zoom-step {
  position: relative;
  margin: 0 0 1rem;
  padding: 1.5rem 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-zoom-step::before {
  content: "";
  position: absolute;
  top: 2.1rem;
  left: -3.6rem;
  width: 1.4rem;
  height: 1.4rem;
  border: 0.3rem solid var(--frc-paper);
  border-radius: 50%;
  background: var(--frc-muted);
  box-shadow: 0 0 0 0.1rem var(--frc-rule);
}

.frc-afa-page .frc-zoom-step:last-child::before { background: var(--frc-muted); box-shadow: 0 0 0 0.1rem var(--frc-rule); }

.frc-afa-page .frc-zoom-step--focus::before {
  top: 1.8rem;
  left: -3.9rem;
  width: 2rem;
  height: 2rem;
  border: 0.4rem solid var(--frc-paper);
  background: var(--frc-ink);
  box-shadow: 0 0 0 0.2rem var(--frc-ink);
}

.frc-afa-page .frc-focus-label {
  display: inline-block;
  margin-left: 0.6rem;
  padding: 0.2rem 0.5rem;
  border: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.05rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  vertical-align: 0.15em;
}

.frc-afa-page .frc-actor {
  position: relative;
  padding: 1.6rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-actor h4 { margin-top: 0; }
.frc-afa-page .frc-actor p { margin-bottom: 0; font-size: 1.45rem; }
.frc-afa-page .frc-actor small { display: block; margin-bottom: 0.8rem; color: var(--frc-muted); }

.frc-afa-page .frc-authority-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin: 2.5rem 0;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-authority-strip div { padding: 1.3rem; border-right: 0.1rem solid var(--frc-rule); background: var(--frc-mist); font-size: 1.35rem; }
.frc-afa-page .frc-authority-strip div:last-child { border-right: 0; }
.frc-afa-page .frc-authority-strip strong { display: block; margin-bottom: 0.4rem; }

.frc-afa-page .frc-infographic {
  display: block;
  width: 100%;
  height: auto;
  margin: 2rem auto;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  box-shadow: var(--frc-shadow);
}

.frc-afa-page .frc-stat {
  padding: 1.7rem;
  border-top: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}
.frc-afa-page .frc-stat strong { display: block; font-size: 2.5rem; line-height: 1.1; }
.frc-afa-page .frc-stat span { display: block; margin-top: 0.5rem; color: var(--frc-muted); font-size: 1.35rem; }

.frc-afa-page .frc-method-strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 2.5rem 0;
  counter-reset: method;
}

.frc-afa-page .frc-method-strip li {
  position: relative;
  min-height: 12rem;
  margin: 0;
  padding: 4.2rem 1rem 1rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  font-size: 1.25rem;
  line-height: 1.35;
  list-style: none;
  counter-increment: method;
}

.frc-afa-page .frc-method-strip li::before {
  content: counter(method, decimal-leading-zero);
  position: absolute;
  top: 0.9rem;
  left: 1rem;
  color: var(--frc-machinery);
  font-size: 1.6rem;
  font-weight: 800;
}

.frc-afa-page .frc-option { position: relative; }
.frc-afa-page .frc-option--selected { border: 0.2rem solid var(--frc-human); background: #211824; }
.frc-afa-page .frc-option--selected::after {
  content: "Selected by analyst";
  position: absolute;
  top: 1rem;
  right: 1rem;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  background: var(--frc-human);
  color: #0b0d0f;
  font-size: 1.05rem;
  font-weight: 750;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.frc-afa-page .frc-option h4 { padding-right: 11rem; }
.frc-afa-page .frc-force,
.frc-afa-page .frc-force[data-role="secondary"] { border-top: 0.1rem solid var(--frc-rule); }
.frc-afa-page .frc-force p { font-size: 1.45rem; }

.frc-afa-page .frc-rating {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.3rem;
  padding-top: 1rem;
  border-top: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.2rem;
  font-weight: 700;
}

.frc-afa-page .frc-pairing--chosen { border: 0.2rem solid var(--frc-human); box-shadow: var(--frc-shadow); }
.frc-afa-page .frc-pairing h4 { margin-top: 0; }
.frc-afa-page .frc-pairing ul { margin-bottom: 0; padding-left: 2rem; }

.frc-afa-page .frc-axis {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: 2rem 0;
}

.frc-afa-page .frc-axis > div {
  padding: 1.6rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-axis strong { display: block; margin-bottom: 0.5rem; }

.frc-afa-page .frc-matrix-wrap {
  display: grid;
  grid-template-columns: 3.8rem minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 1rem;
  margin: 3rem 0;
}

.frc-afa-page .frc-matrix-y {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.frc-afa-page .frc-matrix-x {
  grid-column: 2;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
}

.frc-afa-page .frc-matrix {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-world {
  min-height: 24rem;
  padding: clamp(1.7rem, 3vw, 3rem);
  border-right: 0.1rem solid var(--frc-rule);
  border-bottom: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-world:nth-child(2n) { border-right: 0; }
.frc-afa-page .frc-world:nth-last-child(-n+2) { border-bottom: 0; }
.frc-afa-page .frc-world { background: var(--frc-paper); }
.frc-afa-page .frc-world small { color: var(--frc-muted); font-weight: 700; }
.frc-afa-page .frc-world h3 { margin: 0.6rem 0 1rem; font-size: clamp(2.1rem, 2.7vw, 3rem); }
.frc-afa-page .frc-world p { margin-bottom: 0; font-size: 1.55rem; }

.frc-afa-page details {
  margin: 1.3rem 0;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page summary {
  position: relative;
  padding: 1.6rem 5rem 1.6rem 1.8rem;
  color: var(--frc-ink);
  font-weight: 750;
  cursor: pointer;
}

.frc-afa-page summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 1.8rem;
  color: var(--frc-muted);
  font-size: 2.4rem;
  transform: translateY(-50%);
}

.frc-afa-page details[open] summary::after { content: "–"; }
.frc-afa-page details[open] summary { border-bottom: 0.1rem solid var(--frc-rule); }
.frc-afa-page .frc-details-body { padding: 0.8rem 2rem 2rem; }

.frc-afa-page .frc-path {
  display: grid;
  grid-template-columns: 11rem minmax(0, 1fr);
  gap: 1.4rem;
  margin: 1.3rem 0;
  padding-bottom: 1.3rem;
  border-bottom: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-path:last-child { border-bottom: 0; }
.frc-afa-page .frc-path time { color: var(--frc-muted); font-size: 1.35rem; font-weight: 750; }
.frc-afa-page .frc-path p { margin: 0; font-size: 1.5rem; }

.frc-afa-page .frc-ledger {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.45rem;
}

.frc-afa-page .frc-ledger th,
.frc-afa-page .frc-ledger td {
  padding: 1.2rem;
  border: 0.1rem solid var(--frc-rule);
  vertical-align: top;
  text-align: left;
  overflow-wrap: anywhere;
}

.frc-afa-page .frc-ledger th { background: #26313a; color: var(--frc-ink); }
.frc-afa-page .frc-ledger tbody tr:nth-child(even) { background: var(--frc-mist); }

.frc-afa-page .frc-scroll {
  overflow-x: auto;
  margin: 2rem 0;
  -webkit-overflow-scrolling: touch;
}

.frc-afa-page .frc-question { border-left: 0.4rem solid var(--frc-human); }
.frc-afa-page .frc-question strong { display: block; margin-bottom: 0.6rem; }

.frc-afa-page .frc-causal {
  margin: 3rem 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-causal svg { display: block; width: 100%; height: auto; }
.frc-afa-page .frc-causal .node rect { fill: #11161b; stroke: #6f8798; stroke-width: 1.5; }
.frc-afa-page .frc-causal .node text { fill: var(--frc-ink); font-size: 12px; font-weight: 650; }
.frc-afa-page .frc-causal .edge { fill: none; stroke: #8ca4b5; stroke-width: 1.5; marker-end: url(#frc-arrow); }
.frc-afa-page .frc-causal .stage { fill: var(--frc-muted); font-size: 10px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }

.frc-afa-page .frc-limit {
  margin: 2rem 0;
  padding: 1.8rem;
  border: 0.1rem dashed var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-finding {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 1rem;
  border-top: 0.5rem solid var(--frc-machinery);
}

.frc-afa-page .frc-finding h4 { margin: 0; }
.frc-afa-page .frc-triptych { display: grid; gap: 0.8rem; }
.frc-afa-page .frc-triptych div { padding: 1rem; background: var(--frc-mist); font-size: 1.4rem; }
.frc-afa-page .frc-triptych strong { display: block; margin-bottom: 0.35rem; color: var(--frc-muted); font-size: 1.1rem; letter-spacing: 0.07em; text-transform: uppercase; }

.frc-afa-page .frc-counterpath {
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  margin: 2rem 0;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-counterpath > div { padding: 2rem; }
.frc-afa-page .frc-counterpath > div:first-child { background: var(--frc-paper); }
.frc-afa-page .frc-counterpath > div:last-child { background: var(--frc-mist); }
.frc-afa-page .frc-counterpath h4 { margin-top: 0; }

.frc-afa-page .frc-big-number {
  display: block;
  color: var(--frc-machinery);
  font-size: clamp(4rem, 6vw, 7rem);
  font-weight: 800;
  line-height: 1;
}

.frc-afa-page .frc-bar-row {
  display: grid;
  grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 2fr) 4rem;
  gap: 1rem;
  align-items: center;
  margin: 0.8rem 0;
  font-size: 1.35rem;
}

.frc-afa-page .frc-bar { height: 1.2rem; background: #35404a; }
.frc-afa-page .frc-bar span { display: block; height: 100%; background: var(--frc-machinery); }

.frc-afa-page .frc-indicator,
.frc-afa-page .frc-indicator--coalition { border-top: 0.4rem solid var(--frc-output); }
.frc-afa-page .frc-indicator code { color: var(--frc-muted); font-size: 1.2rem; }

.frc-afa-page .frc-can-cannot {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  overflow: hidden;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-can-cannot > div { padding: 2rem; }
.frc-afa-page .frc-can-cannot > div:first-child { background: var(--frc-paper); }
.frc-afa-page .frc-can-cannot > div:last-child { background: var(--frc-mist); }
.frc-afa-page .frc-can-cannot h3 { margin-top: 0; }

.frc-afa-page .frc-materials {
  margin-top: 3.8rem;
  padding: 3rem;
  border-top: 0.6rem solid var(--frc-ink);
  background: var(--frc-mist);
}

.frc-afa-page .frc-materials ul { margin-bottom: 0; }

.frc-afa-page .frc-note {
  color: var(--frc-muted);
  font-size: 1.4rem;
}

/* Keep wide panels inside the post column on touch-first devices, including
   tablets whose landscape viewport is wider than the numeric tablet cutoff. */
@media (hover: none), (pointer: coarse) {
  .frc-afa-page .frc-wide {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    transform: none;
  }
}

@media (max-width: 1200px) {
  .frc-afa-page .frc-wide {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    transform: none;
  }
  .frc-afa-page .frc-grid-3,
  .frc-afa-page .frc-grid-4,
  .frc-afa-page .frc-actor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .frc-afa-page .frc-stage-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .frc-afa-page .frc-method-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .frc-afa-page .frc-authority-strip { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-authority-strip div { border-bottom: 0.1rem solid var(--frc-rule); }
  .frc-afa-page .frc-stage-gate { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-stage-gate span { grid-column: 1 / -1; }
}

@media (max-width: 782px) {
  .frc-afa-page { font-size: 1.7rem; }
  .frc-afa-page h2 { margin-top: 3.8rem; margin-bottom: 1.2rem; }
  .frc-afa-page h3 { margin-top: 2.2rem; margin-bottom: 0.8rem; }
  .frc-afa-page h4 { margin-top: 1.5rem; }
  .frc-afa-page .frc-phase-section > h2 { padding-top: 1rem; }
  .frc-afa-page .frc-process-record { margin-top: 3.8rem; }
  .frc-afa-page .frc-guide,
  .frc-afa-page .frc-pipeline,
  .frc-afa-page .frc-lens-pair,
  .frc-afa-page .frc-provisional-grid,
  .frc-afa-page .frc-stage-gate,
  .frc-afa-page .frc-grid-2,
  .frc-afa-page .frc-grid-3,
  .frc-afa-page .frc-grid-4,
  .frc-afa-page .frc-actor-grid,
  .frc-afa-page .frc-finding-grid,
  .frc-afa-page .frc-axis,
  .frc-afa-page .frc-counterpath,
  .frc-afa-page .frc-can-cannot { grid-template-columns: 1fr; }
  .frc-afa-page .frc-stage-nav { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-pipeline-step { min-height: 0; }
  .frc-afa-page .frc-pipeline-step::after { top: auto; right: 1.5rem; bottom: -2rem; transform: rotate(90deg); }
  .frc-afa-page .frc-stage-gate span { grid-column: auto; }
  .frc-afa-page .frc-method-strip { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-method-strip li { min-height: 9rem; }
  .frc-afa-page .frc-authority-strip { grid-template-columns: 1fr; }
  .frc-afa-page .frc-authority-strip div { border-right: 0; }
  .frc-afa-page .frc-matrix-wrap { grid-template-columns: 1fr; grid-template-rows: auto; }
  .frc-afa-page .frc-matrix-y { writing-mode: horizontal-tb; transform: none; }
  .frc-afa-page .frc-matrix-x { grid-column: 1; }
  .frc-afa-page .frc-matrix { grid-template-columns: 1fr; }
  .frc-afa-page .frc-world { min-height: 0; border-right: 0; border-bottom: 0.1rem solid var(--frc-rule) !important; }
  .frc-afa-page .frc-world:last-child { border-bottom: 0 !important; }
  .frc-afa-page .frc-path { grid-template-columns: 1fr; gap: 0.3rem; }
  .frc-afa-page .frc-bar-row { grid-template-columns: 1fr 3rem; }
  .frc-afa-page .frc-bar-row .frc-bar { grid-column: 1 / -1; grid-row: 2; }
  .frc-afa-page .frc-option--selected::after { position: static; margin-bottom: 1rem; }
  .frc-afa-page .frc-option h4 { padding-right: 0; }
}

@media (max-width: 700px) {
  .frc-afa-page .frc-scroll {
    overflow-x: visible;
  }

  .frc-afa-page .frc-ledger,
  .frc-afa-page .frc-ledger tbody,
  .frc-afa-page .frc-ledger tr,
  .frc-afa-page .frc-ledger td {
    display: block;
    width: 100%;
  }

  .frc-afa-page .frc-ledger thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .frc-afa-page .frc-ledger tr {
    margin: 0 0 1.2rem;
    border: 0.1rem solid var(--frc-rule);
    background: var(--frc-paper);
  }

  .frc-afa-page .frc-ledger tbody tr:nth-child(even) {
    background: var(--frc-mist);
  }

  .frc-afa-page .frc-ledger td {
    display: grid;
    grid-template-columns: minmax(9rem, 0.7fr) minmax(0, 1.3fr);
    gap: 1rem;
    padding: 1rem;
    border: 0;
    border-bottom: 0.1rem solid var(--frc-rule);
  }

  .frc-afa-page .frc-ledger td:last-child {
    border-bottom: 0;
  }

  .frc-afa-page .frc-ledger td::before {
    content: attr(data-label);
    color: var(--frc-muted);
    font-size: 1.15rem;
    font-weight: 750;
    letter-spacing: 0.05em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  .frc-afa-page .frc-details-body.frc-scroll {
    padding-right: 1.2rem;
    padding-left: 1.2rem;
  }
}

@media (max-width: 430px) {
  .frc-afa-page .frc-ledger td {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

@media print {
  .frc-afa-page {
    --frc-ink: #000;
    --frc-muted: #333;
    --frc-rule: #aaa;
    --frc-paper: #fff;
    --frc-mist: #fff;
    --frc-input: #000;
    --frc-machinery: #000;
    --frc-output: #000;
    --frc-human: #000;
    color-scheme: light;
    color: #000;
    font-size: 11pt;
  }
  .frc-afa-page .frc-wide { width: 100%; max-width: none; margin-left: 0; transform: none; }
  .frc-afa-page .frc-stage-nav { display: none; }
  .frc-afa-page .frc-authorship-notice,
  .frc-afa-page .frc-card,
  .frc-afa-page .frc-track,
  .frc-afa-page details,
  .frc-afa-page .frc-causal { box-shadow: none; break-inside: avoid; }
  .frc-afa-page details:not([open]) > *:not(summary) { display: block !important; }
  .frc-afa-page summary::after { display: none; }
  .frc-afa-page .frc-ledger thead { display: table-header-group; }
  .frc-afa-page .frc-ledger { display: table; }
  .frc-afa-page .frc-ledger tbody { display: table-row-group; }
  .frc-afa-page .frc-ledger tr { display: table-row; }
  .frc-afa-page .frc-ledger th,
  .frc-afa-page .frc-ledger td { display: table-cell; }
  .frc-afa-page .frc-ledger td::before { content: none; }
  .frc-afa-page h2,
  .frc-afa-page h3,
  .frc-afa-page h4 { break-after: avoid; }
  .frc-afa-page a { color: #000; text-decoration: underline; }
  .frc-afa-page .frc-authorship-notice,
  .frc-afa-page .frc-pipeline-step,
  .frc-afa-page .frc-lens-pair > div,
  .frc-afa-page .frc-stage-gate,
  .frc-afa-page .frc-provisional-grid article,
  .frc-afa-page .frc-role,
  .frc-afa-page .frc-stage-nav a,
  .frc-afa-page .frc-prompt,
  .frc-afa-page .frc-decision,
  .frc-afa-page .frc-world,
  .frc-afa-page .frc-can-cannot > div,
  .frc-afa-page .frc-ledger th { background: #fff !important; color: #000 !important; }
  .frc-afa-page .frc-option--selected::after { background: #000; color: #fff; }
  .frc-afa-page .frc-causal .node rect { fill: #fff; stroke: #000; }
  .frc-afa-page .frc-causal .node text,
  .frc-afa-page .frc-causal .stage { fill: #000; }
  .frc-afa-page .frc-causal .edge { stroke: #000; }
  .frc-afa-page .frc-causal marker path { fill: #000 !important; }
}

/* v0.10: box-centering only. Preserve declared widths and all component
   styling; provide full-width positioning containers so wide boxes can be
   centred without offsets or transforms. */
@media screen and (min-width: 783px) {
  .frc-afa-page > section:not(.frc-materials) {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 72rem) minmax(0, 1fr);
  }

  .frc-afa-page > section:not(.frc-materials) > :not(.frc-wide) {
    grid-column: 2;
  }

  .frc-afa-page > section:not(.frc-materials) > .frc-wide {
    grid-column: 1 / -1;
  }
}

.frc-afa-page > .frc-wide,
.frc-afa-page > section:not(.frc-materials) > .frc-wide {
  margin-left: auto;
  margin-right: auto;
  transform: none;
}

/* Behaviour-preserving declarations inherited from the superseded
   FRC foundation. They are stated once here so the current system no
   longer depends on an earlier duplicate stylesheet. */
.frc-afa-page .frc-stage-nav a:nth-child(1) {
  border-top: 0.4rem solid var(--frc-input);
}

.frc-afa-page .frc-stage-nav a:nth-child(2),
.frc-afa-page .frc-stage-nav a:nth-child(3) {
  border-top: 0.4rem solid var(--frc-machinery);
}

.frc-afa-page .frc-stage-nav a:nth-child(4) {
  border-top: 0.4rem solid var(--frc-output);
}

.frc-afa-page .frc-stage-nav a:nth-child(5) {
  border-top: 0.4rem solid var(--frc-rule);
}

.frc-afa-page .frc-card,
.frc-afa-page .frc-question,
.frc-afa-page .frc-finding,
.frc-afa-page .frc-method-strip li {
  min-width: 0;
}

.frc-afa-page .frc-prompt {
  position: relative;
  border: 0.1rem solid var(--frc-rule);
  font-style: normal;
}

.frc-afa-page .frc-prompt::before {
  position: absolute;
  top: 0.3rem;
  left: 1.4rem;
  line-height: 1;
}

.frc-afa-page .frc-prompt cite {
  display: block;
  margin-top: 1rem;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-style: normal;
}

.frc-afa-page .frc-decision {
  border-left: 0.5rem solid var(--frc-human);
}

.frc-afa-page .frc-limit {
  border-left: 0.5rem solid #7d8993;
}

.frc-afa-page .frc-note {
  line-height: 1.55;
}

.frc-afa-page .frc-method-strip {
  padding: 0;
  list-style: none;
}

.frc-afa-page .frc-method-strip li {
  border-top: 0.4rem solid var(--frc-machinery);
}

.frc-afa-page .frc-method-strip li::before {
  letter-spacing: 0.08em;
}

.frc-afa-page .frc-method-strip strong {
  display: block;
  margin-bottom: 0.7rem;
  line-height: 1.25;
}

.frc-afa-page .frc-method-strip span {
  display: block;
  color: var(--frc-muted);
  font-size: 1.35rem;
  line-height: 1.45;
}

/* =========================================================
   TARQEQ GLOBAL SHELL — LUNAR NEUTRAL PALETTE
   Twenty Twenty theme
   ========================================================= */

/* ---------------------------------------------------------
   1. FOUNDATIONAL COLOURS
   --------------------------------------------------------- */

body,
body.custom-background,
#site-content {
	background-color: #000000 !important;
	color: #f0eee8;
}


/* ---------------------------------------------------------
   2. SITE HEADER AND FOOTER
   --------------------------------------------------------- */

#site-header,
#site-footer,
.footer-nav-widgets-wrapper {
	background-color: #181817 !important;
	color: #f0eee8 !important;
}

#site-header a,
#site-header .primary-menu a,
#site-header .toggle,
#site-header .toggle-text {
	color: #f0eee8 !important;
}

#site-header .primary-menu a:hover,
#site-header .primary-menu a:focus,
#site-header .primary-menu .current_page_item > a,
#site-header .primary-menu .current-menu-item > a {
	color: #ffffff !important;
	text-decoration: underline;
	text-decoration-color: #817f79;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}


/* ---------------------------------------------------------
   3. LOGO
   Removes the residual red cast while retaining the mark.
   --------------------------------------------------------- */

#site-header .custom-logo {
	filter: grayscale(1) brightness(2);
	opacity: 0.82;
}


/* ---------------------------------------------------------
   4. PAGE AND PUBLICATION TITLE FIELD
   --------------------------------------------------------- */

.singular .entry-header {
	background-color: #242321 !important;
	color: #f0eee8 !important;
}

.singular .entry-header .entry-title,
.singular .entry-header .entry-title a {
	color: #f0eee8 !important;
}

.singular .entry-header .entry-categories,
.singular .entry-header .entry-categories a,
.singular .entry-header .post-meta,
.singular .entry-header .post-meta a,
.singular .entry-header .intro-text {
	color: #c4c1b9 !important;
}




/* Featured images remain assigned in WordPress for metadata and link
   previews, but are not rendered as generic hero images on posts. */
.single-post .featured-media {
  display: none !important;
}

/* Preserve mobile spacing; reduce only the expansive desktop title field. */
@media (min-width: 700px) {
  .singular .entry-header {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
}


/* Category and tag archives are restrained publication catalogues. */
body.category .archive-header,
body.tag .archive-header {
  background-color: #242321 !important;
  color: #f0eee8 !important;
}

body.category .archive-title,
body.category .archive-subtitle,
body.tag .archive-title,
body.tag .archive-subtitle {
  color: #f0eee8 !important;
}

body.category #site-content > article .featured-media,
body.tag #site-content > article .featured-media {
  display: none !important;
}

body.category #site-content > article .entry-title,
body.category #site-content > article .entry-title a,
body.tag #site-content > article .entry-title,
body.tag #site-content > article .entry-title a {
  color: #f0eee8 !important;
}

body.category #site-content > article .entry-categories,
body.category #site-content > article .entry-categories a,
body.category #site-content > article .post-meta,
body.category #site-content > article .post-meta a,
body.tag #site-content > article .entry-categories,
body.tag #site-content > article .entry-categories a,
body.tag #site-content > article .post-meta,
body.tag #site-content > article .post-meta a {
  color: #c4c1b9 !important;
}

body.category #site-content > article,
body.tag #site-content > article {
  width: calc(100% - 4rem);
  max-width: 100rem;
  margin-right: auto;
  margin-left: auto;
  padding: 5rem 0;
  border-bottom: 0.1rem solid #3a3935;
}

body.category #site-content > article:last-of-type,
body.tag #site-content > article:last-of-type {
  border-bottom: 0;
}

body.category #site-content > article .entry-header,
body.tag #site-content > article .entry-header {
  text-align: left !important;
}

body.category #site-content > article .entry-header-inner,
body.tag #site-content > article .entry-header-inner,
body.category #site-content > article .post-inner,
body.tag #site-content > article .post-inner,
body.category #site-content > article .entry-content,
body.tag #site-content > article .entry-content {
  width: 100%;
  max-width: none;
}

body.category #site-content > article .entry-title,
body.tag #site-content > article .entry-title {
  font-size: clamp(3rem, 4vw, 4.4rem);
  line-height: 1.15;
}

body.category #site-content > article .entry-categories,
body.tag #site-content > article .entry-categories {
  margin-bottom: 1.2rem;
}

/* A category label inside its own category archive is tautological.
   Tag archives retain category labels because they can mix product types. */
body.category #site-content > article .entry-categories {
  display: none !important;
}

body.category #site-content > article .post-meta,
body.tag #site-content > article .post-meta {
  justify-content: flex-start;
}

body.category #site-content > article .post-inner,
body.tag #site-content > article .post-inner {
  padding-top: 2rem;
}

body.category #site-content > article .entry-content,
body.tag #site-content > article .entry-content {
  margin: 0;
  font-size: 1.9rem;
  line-height: 1.55;
}

body.tag #site-content > article > .section-inner,
body.category #site-content > .post-separator,
body.tag #site-content > .post-separator {
  display: none;
}

/* Reciprocal taxonomy: category archives show subject tags, while tag
   archives retain the publication category shown above each title. */
body.category #site-content > article > .section-inner {
  display: block !important;
  width: 100%;
  max-width: none;
  margin-top: 1.6rem;
}

body.category #site-content > article > .section-inner .post-meta-wrapper {
  margin: 0;
}

body.category #site-content > article > .section-inner .post-meta {
  justify-content: flex-start;
  color: #c4c1b9;
  font-size: 1.4rem;
}

body.category #site-content > article > .section-inner .post-tags {
  margin: 0;
}

body.category #site-content > article > .section-inner .post-tags .meta-icon {
  display: none;
}

body.category #site-content > article > .section-inner .post-tags a {
  color: #c4c1b9 !important;
  text-decoration-color: #817f79;
}

body.category #site-content > article > .section-inner .post-tags a:hover,
body.category #site-content > article > .section-inner .post-tags a:focus {
  color: #ffffff !important;
  text-decoration-color: #ffffff;
}

@media (min-width: 700px) {
  body.category .archive-header,
  body.tag .archive-header {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
}

/* ---------------------------------------------------------
   5. ORDINARY CONTENT
   Experiment interiors are deliberately excluded.
   --------------------------------------------------------- */

article:not(.category-experiments) .entry-content {
	color: #f0eee8;
}

article:not(.category-experiments) .entry-content h1,
article:not(.category-experiments) .entry-content h2,
article:not(.category-experiments) .entry-content h3,
article:not(.category-experiments) .entry-content h4,
article:not(.category-experiments) .entry-content h5,
article:not(.category-experiments) .entry-content h6,
article:not(.category-experiments) .entry-content p,
article:not(.category-experiments) .entry-content li,
article:not(.category-experiments) .entry-content dt,
article:not(.category-experiments) .entry-content dd {
	color: #f0eee8;
}


/* ---------------------------------------------------------
   6. SECONDARY TEXT
   Lighter and warmer than the former muddy grey.
   --------------------------------------------------------- */

.wp-block-latest-posts__post-excerpt,
article:not(.category-experiments) figcaption,
article:not(.category-experiments) .wp-block-image figcaption,
article:not(.category-experiments) .wp-block-gallery figcaption,
article:not(.category-experiments) .wp-block-quote cite,
article:not(.category-experiments) .wp-block-pullquote cite {
	color: #c4c1b9 !important;
}


/* ---------------------------------------------------------
   7. LINKS
   Links are distinguished by underlining rather than hue.
   --------------------------------------------------------- */

article:not(.category-experiments) .entry-content a {
	color: #f0eee8;
	text-decoration-color: #817f79;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

article:not(.category-experiments) .entry-content a:hover,
article:not(.category-experiments) .entry-content a:focus {
	color: #ffffff;
	text-decoration-color: #ffffff;
}


/* ---------------------------------------------------------
   8. LANDING-PAGE EMPHASIS
   No coloured text and no false hyperlink underline.
   --------------------------------------------------------- */

article:not(.category-experiments) .entry-content mark {
	background: transparent;
	color: #ffffff;
	border: 0;
	text-decoration: none;
}


/* ---------------------------------------------------------
   9. CONTACT AND SECONDARY PANELS
   --------------------------------------------------------- */

article:not(.category-experiments) .has-secondary-background-color {
	background-color: #1d1d1b !important;
	color: #f0eee8 !important;
}

article:not(.category-experiments)
	.has-secondary-background-color a {
	color: #f0eee8 !important;
	text-decoration-color: #817f79;
}


/* ---------------------------------------------------------
   10. SOCIAL ICONS
   Removes the bright platform-colour interruption.
   --------------------------------------------------------- */

article:not(.category-experiments) .wp-social-link {
	background-color: #3a3935 !important;
	color: #f0eee8 !important;
}

article:not(.category-experiments) .wp-social-link:hover,
article:not(.category-experiments) .wp-social-link:focus {
	background-color: #4a4944 !important;
	color: #ffffff !important;
}


/* ---------------------------------------------------------
   11. RULES, SEPARATORS AND BORDERS
   --------------------------------------------------------- */

article:not(.category-experiments) hr,
article:not(.category-experiments) .wp-block-separator {
	border-color: #3a3935 !important;
	color: #3a3935 !important;
	opacity: 1;
}

article:not(.category-experiments) blockquote {
	border-color: #3a3935 !important;
}


/* ---------------------------------------------------------
   12. BUTTONS IN ORDINARY CONTENT
   Neutral rather than accent-coloured.
   --------------------------------------------------------- */

article:not(.category-experiments) .wp-block-button__link,
article:not(.category-experiments) button,
article:not(.category-experiments) input[type="button"],
article:not(.category-experiments) input[type="submit"] {
	background-color: #f0eee8 !important;
	border-color: #f0eee8 !important;
	color: #000000 !important;
}

article:not(.category-experiments) .wp-block-button__link:hover,
article:not(.category-experiments) .wp-block-button__link:focus,
article:not(.category-experiments) button:hover,
article:not(.category-experiments) button:focus,
article:not(.category-experiments) input[type="button"]:hover,
article:not(.category-experiments) input[type="button"]:focus,
article:not(.category-experiments) input[type="submit"]:hover,
article:not(.category-experiments) input[type="submit"]:focus {
	background-color: #ffffff !important;
	border-color: #ffffff !important;
	color: #000000 !important;
}




/* Remove WordPress/Jetpack's appended subscription promotion as one unit,
   including its heading, explanatory copy, form and button. */
.entry-content > .wp-block-group:has(.wp-block-jetpack-subscriptions) {
  display: none !important;
}

/* ---------------------------------------------------------
   13. POST TAGS AND PREVIOUS/NEXT NAVIGATION
   These sit outside the main entry-content container.
   --------------------------------------------------------- */

.post-tags a,
.pagination-single a,
.pagination .nav-links a {
	color: #f0eee8 !important;
	text-decoration-color: #817f79;
}

.post-tags a:hover,
.post-tags a:focus,
.pagination-single a:hover,
.pagination-single a:focus,
.pagination .nav-links a:hover,
.pagination .nav-links a:focus {
	color: #ffffff !important;
	text-decoration-color: #ffffff;
}


/* ---------------------------------------------------------
   14. FOOTER TEXT AND LINKS
   --------------------------------------------------------- */

#site-footer,
#site-footer a,
.footer-nav-widgets-wrapper,
.footer-nav-widgets-wrapper a {
	color: #c4c1b9 !important;
}

#site-footer a:hover,
#site-footer a:focus,
.footer-nav-widgets-wrapper a:hover,
.footer-nav-widgets-wrapper a:focus {
	color: #ffffff !important;
	text-decoration-color: #ffffff;
}


/* ---------------------------------------------------------
   15. MOBILE NAVIGATION
   --------------------------------------------------------- */

.menu-modal-inner {
	background-color: #181817 !important;
	color: #f0eee8 !important;
}

.modal-menu a,
.menu-modal .toggle,
.menu-modal .toggle-text,
.menu-bottom,
.menu-bottom a {
	color: #f0eee8 !important;
}

.modal-menu li {
	border-color: #3a3935 !important;
}


/* ---------------------------------------------------------
   16. KEYBOARD FOCUS
   Visible without introducing another colour.
   --------------------------------------------------------- */

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
	outline-color: #c4c1b9;
}








