@font-face {
  font-family: "IBM Plex Sans";
  src: url("/assets/fonts/ibm-plex-sans-latin.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "IBM Plex Mono";
  src: url("/assets/fonts/ibm-plex-mono-latin-600.woff2") format("woff2");
  font-display: swap;
  font-weight: 600;
}

@font-face {
  font-family: "Source Serif 4";
  src: url("/assets/fonts/source-serif-4-latin-600.woff2") format("woff2");
  font-display: swap;
  font-weight: 600;
}

:root {
  --paper: #f2efe5;
  --paper-deep: #e5dfd0;
  --ink: #091d2d;
  --ink-soft: #17354a;
  --navy: #071825;
  --red: #b4232e;
  --red-dark: #7f1620;
  --blue: #1b5b83;
  --green: #2d6446;
  --rule: #8e887b;
  --white: #fffdf7;
  --focus: #ffd23f;
  --frame: min(1180px, calc(100% - 48px));
  --shadow: 8px 8px 0 rgb(9 29 45 / 18%);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body.fpp-page,
body.fpp-legacy-page,
body.advocacy-evidence-page {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "IBM Plex Sans", Arial, sans-serif;
  line-height: 1.55;
}

body.menu-open,
body.receipt-open {
  overflow: hidden;
}

img,
svg {
  max-width: 100%;
}

a {
  color: inherit;
}

button,
input,
select {
  font: inherit;
}

button,
a {
  touch-action: manipulation;
}

:focus-visible {
  outline: 4px solid var(--focus);
  outline-offset: 3px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 8px;
  left: 8px;
  padding: 10px 14px;
  color: var(--white);
  background: var(--red);
  transform: translateY(-160%);
}

.skip-link:focus {
  transform: none;
}

.independence-strip {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 7px max(24px, calc((100% - 1180px) / 2));
  color: #dbe6eb;
  background: var(--navy);
  border-bottom: 1px solid #426071;
  font: 600 0.68rem/1.3 "IBM Plex Mono", monospace;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.independence-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 18px;
}

.independence-strip a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

.fpp-header {
  position: sticky;
  z-index: 80;
  top: 0;
  color: var(--ink);
  background: rgb(242 239 229 / 96%);
  border-bottom: 2px solid var(--ink);
  backdrop-filter: blur(12px);
}

.fpp-header-inner {
  width: var(--frame);
  min-height: 76px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

.fpp-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}

.fpp-brand > strong {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  color: var(--white);
  background: var(--red);
  font: 600 1.08rem/1 "IBM Plex Mono", monospace;
}

.fpp-brand > span {
  max-width: 150px;
  font: 600 0.78rem/1.2 "IBM Plex Mono", monospace;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.fpp-nav {
  display: flex;
  align-items: stretch;
}

.fpp-nav a,
.menu-toggle,
.menu-close {
  display: grid;
  place-items: center;
  padding: 0 15px;
  border: 0;
  color: var(--ink);
  background: transparent;
  font: 600 0.69rem/1.2 "IBM Plex Mono", monospace;
  letter-spacing: 0.03em;
  text-decoration: none;
  text-transform: uppercase;
}

.fpp-nav a:hover {
  background: var(--paper-deep);
}

.fpp-nav .header-receipts {
  align-self: center;
  min-height: 44px;
  margin-left: 8px;
  color: var(--white);
  background: var(--red);
  border: 2px solid var(--red);
}

.fpp-nav .header-receipts:hover {
  color: var(--red);
  background: transparent;
}

.menu-toggle,
.menu-close {
  display: none;
  min-width: 44px;
  min-height: 44px;
}

.fpp-main,
.support-main {
  overflow: clip;
}

.fpp-page main [id] {
  scroll-margin-top: 96px;
}

.section-frame {
  width: var(--frame);
  margin: 0 auto;
}

.section-frame.narrow,
.support-section .narrow {
  max-width: 940px;
}

.hero,
.support-hero {
  position: relative;
  isolation: isolate;
  padding: clamp(64px, 9vw, 130px) 0;
  color: var(--ink);
  background:
    linear-gradient(90deg, transparent 0 54%, rgb(180 35 46 / 7%) 54% 54.4%, transparent 54.4%),
    repeating-linear-gradient(0deg, transparent 0 31px, rgb(9 29 45 / 4%) 31px 32px),
    var(--paper);
  border-bottom: 2px solid var(--ink);
}

.hero::after,
.support-hero::after {
  content: "PUBLIC RECORD / ANALYTICAL EXHIBIT";
  position: absolute;
  z-index: -1;
  right: max(24px, calc((100% - 1180px) / 2));
  bottom: 20px;
  color: rgb(9 29 45 / 19%);
  font: 600 0.7rem/1 "IBM Plex Mono", monospace;
  letter-spacing: 0.14em;
}

.hero-grid {
  width: var(--frame);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: clamp(48px, 8vw, 120px);
  align-items: center;
}

.section-eyebrow,
.receipt-trigger,
.source-link,
.verification-banner {
  font: 600 0.72rem/1.3 "IBM Plex Mono", monospace;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.section-eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 24px;
}

.section-eyebrow::before {
  content: "";
  width: 38px;
  border-top: 4px solid var(--red);
}

.hero h1,
.section h2,
.support-hero h1,
.support-section h2,
.closing-demand strong {
  margin: 0;
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-weight: 800;
  line-height: 0.94;
  letter-spacing: -0.055em;
  text-transform: uppercase;
}

.hero h1 {
  max-width: 820px;
  font-size: clamp(3.45rem, 8.2vw, 7.8rem);
}

.hero-subhead {
  margin: 18px 0 8px;
  color: var(--red);
  font: 600 clamp(1.4rem, 2.3vw, 2.2rem)/1.2 "Source Serif 4", Georgia, serif;
}

.hero-support {
  max-width: 690px;
  font-size: clamp(1.02rem, 1.6vw, 1.25rem);
}

.finding-stamp {
  position: relative;
  padding: 26px;
  background: var(--white);
  border: 3px solid var(--ink);
  box-shadow: var(--shadow);
  transform: rotate(1.25deg);
}

.finding-stamp::before {
  content: "CONTROLLED COPY";
  position: absolute;
  top: -14px;
  right: 18px;
  padding: 4px 8px;
  color: var(--white);
  background: var(--red);
  font: 600 0.65rem/1 "IBM Plex Mono", monospace;
}

.finding-stamp > span,
.finding-stamp li {
  font: 600 0.7rem/1.5 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.finding-stamp > strong {
  display: block;
  padding: 22px 0;
  font-size: 1.9rem;
  line-height: 1.04;
}

.finding-stamp ul {
  padding-left: 20px;
}

.button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.button,
.receipt-trigger,
.source-link {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border: 2px solid currentColor;
  border-radius: 0;
  cursor: pointer;
  text-decoration: none;
}

.button,
.receipt-trigger {
  font: 600 0.71rem/1.25 "IBM Plex Mono", monospace;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.button-primary,
.receipt-trigger {
  color: var(--white);
  background: var(--red);
  border-color: var(--red);
}

.button-primary:hover,
.receipt-trigger:hover {
  color: var(--red);
  background: transparent;
}

.button-secondary {
  color: var(--ink);
  background: transparent;
}

.button-light {
  color: var(--navy);
  background: var(--white);
}

.button-outline-light {
  color: var(--white);
  background: transparent;
}

.section,
.support-section {
  padding: clamp(64px, 8vw, 112px) 0;
  border-bottom: 2px solid var(--ink);
}

.section h2,
.support-section h2 {
  max-width: 1040px;
  margin-bottom: 30px;
  font-size: clamp(2.25rem, 5.8vw, 5.7rem);
}

.support-hero .section-frame {
  max-width: 1000px;
}

.support-hero h1 {
  max-width: 1050px;
  font-size: clamp(3rem, 7vw, 7rem);
}

.support-hero h1 span,
.support-section h2 span {
  color: var(--red);
}

.lead {
  max-width: 850px;
  font: 600 clamp(1.25rem, 2.4vw, 2rem)/1.25 "Source Serif 4", Georgia, serif;
}

.editorial-line,
.red-line {
  color: var(--red);
}

.blue-line {
  color: var(--blue);
}

.section-deep .blue-line {
  color: #76c8eb;
}

.green-line {
  color: var(--green);
}

.section-paper {
  background: var(--white);
}

.section-signal {
  background: #e8e2d4;
}

.section-ink,
.section-deep,
.section-challenge,
.closing-demand {
  color: var(--white);
  background: var(--navy);
}

.section-reset {
  color: var(--white);
  background: var(--red-dark);
}

.section-vop {
  background: #dce7e9;
}

.comparison-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 140px minmax(0, 1fr);
  margin: 42px 0 24px;
  border: 2px solid var(--ink);
  background: var(--white);
}

.comparison-form > article {
  min-width: 0;
  padding: clamp(20px, 3vw, 36px);
}

.comparison-form dl {
  margin: 24px 0;
}

.comparison-form dl > div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 0;
  border-bottom: 1px solid var(--rule);
}

.comparison-form dt,
.comparison-form dd {
  margin: 0;
}

.comparison-form dd {
  text-align: right;
  font: 600 0.72rem/1.3 "IBM Plex Mono", monospace;
}

.form-heading {
  min-height: 115px;
}

.form-heading h3,
.accountability-card h3 {
  font-size: clamp(1.35rem, 2.5vw, 2.25rem);
  line-height: 1;
}

.comparison-bridge {
  display: grid;
  place-content: center;
  gap: 18px;
  padding: 20px;
  color: var(--white);
  background: var(--red);
  text-align: center;
}

.comparison-bridge strong {
  font-size: 1.45rem;
  line-height: 1.05;
}

.comparison-bridge span,
.form-result {
  font: 600 0.68rem/1.5 "IBM Plex Mono", monospace;
}

.mandatory-caveat,
.verification-banner {
  max-width: 940px;
  padding: 15px 18px;
  border-left: 5px solid var(--red);
  background: rgb(255 255 255 / 56%);
}

.section-ink .mandatory-caveat,
.section-deep .mandatory-caveat,
.section-challenge .mandatory-caveat {
  color: var(--white);
  background: rgb(255 255 255 / 8%);
}

.metric-grid,
.strategy-board,
.vop-grid,
.logic-grid,
.feature-grid,
.accountability-grid,
.credit-grid {
  display: grid;
  gap: 22px;
}

.metric-grid {
  grid-template-columns: repeat(3, 1fr);
  margin: 42px 0 26px;
}

.metric {
  min-width: 0;
  padding: 26px;
  border: 2px solid var(--ink);
  background: var(--white);
  box-shadow: 5px 5px 0 rgb(9 29 45 / 13%);
}

.metric > strong {
  display: block;
  margin: 25px 0 10px;
  color: var(--red);
  font-size: clamp(3.2rem, 6vw, 5.4rem);
  line-height: 0.9;
}

.metric h3 {
  margin-bottom: 5px;
  font-size: 1rem;
}

.status-badge {
  width: fit-content;
  display: inline-flex;
  gap: 7px;
  align-items: center;
  padding: 5px 8px;
  color: var(--ink);
  background: #fff;
  border: 1px solid currentColor;
  font: 600 0.64rem/1.1 "IBM Plex Mono", monospace;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.status-proposed,
.status-assumption,
.status-forecast {
  color: var(--red-dark);
  background: #fff5ef;
}

.status-interpretation,
.status-editorial {
  color: var(--blue);
  background: #eef8fb;
}

.strategy-board {
  grid-template-columns: repeat(4, 1fr);
  margin: 38px 0;
}

.strategy-board > div {
  min-height: 230px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
  padding: 24px;
  border: 1px solid #657683;
  background: #102a3b;
}

.strategy-board > div > span,
.strategy-board small {
  font: 600 0.67rem/1.4 "IBM Plex Mono", monospace;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.strategy-board > div > strong {
  font-size: clamp(2.4rem, 4vw, 4.5rem);
  line-height: 0.92;
}

.strategy-takeaway,
.evidence-boundary,
.guardrail-panel,
.logic-analysis,
.assumption-record {
  display: grid;
  gap: 24px;
  padding: clamp(22px, 3vw, 38px);
  border: 2px solid currentColor;
}

.strategy-takeaway {
  grid-template-columns: 1fr 1fr;
}

.strategy-takeaway strong {
  color: #f1c94c;
  font-size: clamp(1.6rem, 3vw, 3rem);
  line-height: 1;
}

.editorial-illustration {
  margin: 48px 0 0;
  border: 2px solid var(--ink);
  background: var(--white);
}

.editorial-illustration img {
  width: 100%;
  display: block;
}

.editorial-illustration figcaption {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 14px;
  border-top: 1px solid var(--ink);
  font: 600 0.65rem/1.4 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.editorial-illustration figcaption span {
  color: var(--red);
}

.section-ink .editorial-illustration,
.section-deep .editorial-illustration {
  color: var(--ink);
}

.feature-grid {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.78fr);
  align-items: center;
}

.feature-grid-reverse > :first-child {
  order: 2;
}

.salary-timeline {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 32px 0;
  border: 2px solid currentColor;
}

.salary-timeline > div {
  min-height: 140px;
  padding: 22px;
  border-right: 1px solid currentColor;
}

.salary-timeline > div:last-child {
  border-right: 0;
}

.salary-timeline strong,
.status-equation strong,
.thought-result strong {
  display: block;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
}

.ethics-form,
.thought-experiment,
.accountability-card {
  padding: clamp(22px, 4vw, 42px);
  color: var(--ink);
  background: var(--white);
  border: 2px solid var(--ink);
  box-shadow: var(--shadow);
}

.ethics-form label,
.source-filters label {
  display: grid;
  gap: 8px;
  margin: 15px 0;
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
  letter-spacing: 0.05em;
}

.ethics-form input,
.source-filters input,
.source-filters select {
  width: 100%;
  min-height: 46px;
  padding: 9px 11px;
  color: var(--ink);
  background: var(--white);
  border: 2px solid var(--ink);
}

.thought-result,
.status-equation {
  margin-top: 22px;
  padding: 20px;
  border: 2px solid var(--red);
}

.vop-grid {
  grid-template-columns: repeat(3, 1fr);
  margin: 36px 0;
}

.vop-grid > article,
.logic-card {
  padding: 26px;
  background: rgb(255 255 255 / 68%);
  border: 2px solid var(--ink);
}

.vop-framework {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 2px solid var(--ink);
}

.vop-framework > div {
  padding: 22px;
  border-right: 1px solid var(--ink);
}

.vop-framework > div:last-child {
  border-right: 0;
}

.logic-grid {
  grid-template-columns: repeat(2, 1fr);
}

.logic-card {
  color: var(--ink);
  background: var(--white);
  box-shadow: 5px 5px 0 rgb(255 255 255 / 13%);
}

.logic-card > header {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 18px;
}

.logic-card > header span {
  color: var(--muted);
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
}

.logic-card h3 {
  margin: 16px 0 22px;
  font-size: clamp(1.4rem, 2.4vw, 2.3rem);
  line-height: 1;
  text-transform: uppercase;
}

.logic-card > span,
.logic-verdict,
.logic-analysis strong {
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.logic-card > a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  margin-top: 8px;
  padding-inline: 8px;
  color: var(--ink);
  background: var(--white);
  border: 1px solid currentColor;
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.logic-steps {
  margin: 0;
  padding: 0;
  list-style: none;
}

.logic-steps li {
  padding: 13px 0;
  border-top: 1px solid var(--rule);
}

.logic-steps > p {
  margin: 0;
  padding: 13px 0;
  border-top: 1px solid var(--rule);
}

.logic-verdict {
  margin-top: 18px;
  padding: 12px;
  color: var(--white);
  background: var(--red);
}

.logic-analysis {
  grid-template-columns: 1fr 1fr;
  margin-top: 22px;
}

.accountability-grid {
  grid-template-columns: 0.8fr 1.2fr;
  align-items: center;
}

.accountability-card > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.evidence-chip-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  padding: 0;
  list-style: none;
}

.evidence-chip-grid li {
  padding: 14px;
  border: 1px solid currentColor;
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.closing-demand {
  text-align: center;
}

.closing-demand p {
  max-width: 900px;
  margin: 28px auto;
  font: 600 clamp(1.35rem, 3vw, 2.8rem)/1.15 "Source Serif 4", Georgia, serif;
}

.closing-demand strong {
  display: block;
  color: #f1c94c;
  font-size: clamp(3.2rem, 8vw, 8rem);
}

.closing-demand small {
  display: block;
  max-width: 760px;
  margin: 24px auto 0;
  font: 600 0.68rem/1.5 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.claim-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 26px 0;
  font: 600 0.68rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.evidence-boundary {
  grid-template-columns: 1fr 1fr;
  margin: 24px 0;
  border-color: var(--rule);
}

.evidence-boundary p {
  margin-bottom: 0;
}

.guardrail-panel,
.guardrail-preview {
  margin: 24px 0;
  background: rgb(255 255 255 / 6%);
}

.guardrail-preview {
  padding: 20px;
  border-left: 5px solid #f1c94c;
}

.objection-preview details,
.objections-list details {
  border-top: 2px solid currentColor;
}

.objection-preview summary,
.objections-list summary {
  display: flex;
  justify-content: space-between;
  gap: 22px;
  padding: 20px 0;
  cursor: pointer;
}

.objection-preview summary span,
.objections-list summary span {
  flex: 0 0 auto;
  color: var(--red);
  font: 600 0.7rem/1.4 "IBM Plex Mono", monospace;
}

.objection-preview details > div,
.objection-body {
  max-width: 880px;
  padding: 0 0 26px;
}

.objection-disclosure {
  padding: 0;
  list-style: none;
}

.download-grid,
.asset-list,
.update-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 26px 0;
}

.download-grid a,
.asset-list a,
.update-list a {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 18px;
  border: 1px solid currentColor;
  text-decoration: none;
}

.download-grid a:hover,
.asset-list a:hover,
.update-list a:hover {
  color: var(--white);
  background: var(--red);
}

.download-grid span,
.asset-list span,
.update-list span {
  font: 600 0.67rem/1.4 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.source-filters {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 16px;
  margin-bottom: 22px;
}

.responsive-table {
  max-width: 100%;
  overflow-x: auto;
  border: 2px solid var(--ink);
}

.source-register {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
  background: var(--white);
}

.source-register caption {
  padding: 12px;
  text-align: left;
  font: 600 0.7rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.source-register th,
.source-register td {
  padding: 14px;
  border: 1px solid var(--rule);
  text-align: left;
  vertical-align: top;
}

.source-register td:first-child {
  min-width: 310px;
}

.source-register td:first-child span {
  display: block;
  margin-top: 6px;
  font-size: 0.82rem;
}

.claim-id-link,
.share-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 5px 8px;
  color: var(--ink);
  background: var(--white);
  border: 1px solid currentColor;
  cursor: pointer;
  font: 600 0.65rem/1 "IBM Plex Mono", monospace;
  text-align: center;
  text-decoration: none;
}

.receipt-share-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.logic-card-downloads {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.claim-id-link {
  min-width: 44px;
}

.source-stack a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding-block: 6px;
}

.thought-experiment button {
  min-width: 44px;
  min-height: 44px;
  margin-right: 8px;
  color: var(--white);
  background: var(--ink);
  border: 2px solid var(--ink);
  cursor: pointer;
  font: 600 0.7rem/1 "IBM Plex Mono", monospace;
}

.breadcrumbs a {
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 6px;
}

.empty-state + a {
  display: inline-flex;
  min-width: 44px;
  min-height: 44px;
  align-items: center;
}

.advocacy-evidence-page [role="tab"],
.advocacy-evidence-page button,
.advocacy-evidence-page a.advocacy-button,
.advocacy-evidence-page a[download] {
  min-height: 44px;
}

.credit-grid {
  grid-template-columns: repeat(2, 1fr);
}

.credit-card {
  overflow: hidden;
  border: 2px solid var(--ink);
  background: var(--white);
}

.credit-card > div {
  padding: 20px;
}

.credit-card > div > span {
  color: var(--red);
  font: 600 0.66rem/1 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.credit-card dl > div {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 12px;
  padding: 8px 0;
  border-top: 1px solid var(--rule);
}

.credit-card dt {
  font: 600 0.66rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.credit-card dd {
  margin: 0;
}

.correction-template {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border: 2px solid var(--ink);
}

.correction-template > * {
  padding: 13px;
  border: 1px solid var(--rule);
}

.empty-state {
  padding: 30px;
  border: 2px dashed currentColor;
}

.receipt-backdrop {
  position: fixed;
  z-index: 190;
  inset: 0;
  background: rgb(2 10 16 / 12%);
}

.receipt-drawer {
  position: fixed;
  z-index: 200;
  inset: 0 0 0 auto;
  width: min(480px, 42vw);
  overflow: auto;
  color: var(--ink);
  background: var(--paper);
  border-left: 4px solid var(--red);
  box-shadow: -15px 0 50px rgb(0 0 0 / 35%);
}

.receipt-drawer[hidden],
.receipt-backdrop[hidden] {
  display: none;
}

.receipt-drawer > header {
  position: sticky;
  z-index: 1;
  top: 0;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 22px;
  color: var(--white);
  background: var(--navy);
}

.receipt-drawer > header p {
  margin: 0 0 8px;
  font: 600 0.7rem/1 "IBM Plex Mono", monospace;
  letter-spacing: 0.08em;
}

.receipt-close {
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  color: var(--white);
  background: transparent;
  border: 2px solid currentColor;
  cursor: pointer;
  font-size: 1.8rem;
}

.receipt-body {
  padding: 26px;
}

.receipt-body h2 {
  margin-top: 0;
  font-size: clamp(2rem, 5vw, 3.7rem);
  line-height: 0.98;
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.receipt-body section {
  padding: 16px 0;
  border-top: 1px solid var(--rule);
}

.receipt-body section > strong {
  font: 600 0.68rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.receipt-drawer > footer {
  position: sticky;
  bottom: 0;
  display: flex;
  gap: 10px;
  padding: 16px 22px;
  background: var(--paper-deep);
  border-top: 2px solid var(--ink);
}

.receipt-drawer > footer a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px;
  border: 1px solid currentColor;
  font: 600 0.66rem/1.2 "IBM Plex Mono", monospace;
  text-decoration: none;
}

.copy-live {
  position: fixed;
  z-index: 300;
  right: 20px;
  bottom: 20px;
  padding: 10px 14px;
  color: var(--white);
  background: var(--green);
  opacity: 0;
  pointer-events: none;
}

.copy-live.is-visible {
  opacity: 1;
}

.fpp-footer {
  padding: 52px 0 0;
  color: #d8e0e5;
  background: #020b11;
}

.fpp-footer-grid,
.fpp-footer-close {
  width: var(--frame);
  margin: 0 auto;
}

.fpp-footer-grid {
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: 32px;
}

.fpp-footer-grid nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.fpp-footer-grid strong {
  color: var(--white);
  font: 600 0.72rem/1.4 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

.fpp-footer-grid p {
  max-width: 520px;
}

.fpp-footer-grid a {
  min-height: 44px;
  display: flex;
  align-items: center;
  color: #c8d8e1;
}

.fpp-footer-close {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-top: 42px;
  padding: 17px 0;
  border-top: 1px solid #3c4c56;
  font: 600 0.65rem/1.3 "IBM Plex Mono", monospace;
  text-transform: uppercase;
}

/* Existing analytical pages keep their evidence components while joining the new shell. */
body:not(.fpp-page) .fpp-header,
body:not(.fpp-page) .fpp-footer {
  font-family: "IBM Plex Sans", Arial, sans-serif;
}

@media (max-width: 940px) {
  :root {
    --frame: min(100% - 32px, 760px);
  }

  .independence-strip {
    padding-inline: 16px;
  }

  .independence-actions span {
    display: none;
  }

  .menu-toggle {
    display: block;
    padding: 0 8px;
    cursor: pointer;
  }

  .fpp-nav {
    position: fixed;
    z-index: 100;
    inset: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 70px 24px 24px;
    color: var(--white);
    background: var(--navy);
  }

  .fpp-nav.is-open {
    display: flex;
  }

  .fpp-nav a {
    min-height: 58px;
    justify-content: start;
    padding: 15px;
    color: var(--white);
    border-bottom: 1px solid #536572;
  }

  .fpp-nav .header-receipts {
    align-self: stretch;
    margin: 22px 0 0;
    justify-content: center;
  }

  .menu-close {
    position: absolute;
    top: 18px;
    right: 18px;
    display: block;
    min-height: 42px;
    color: var(--white);
    border: 1px solid currentColor;
  }

  .hero-grid,
  .feature-grid,
  .accountability-grid {
    grid-template-columns: 1fr;
  }

  .finding-stamp {
    max-width: 430px;
    transform: none;
  }

  .comparison-form {
    grid-template-columns: 1fr;
  }

  .comparison-bridge {
    min-height: 110px;
  }

  .metric-grid,
  .strategy-board,
  .vop-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .feature-grid-reverse > :first-child {
    order: initial;
  }

  .vop-framework {
    grid-template-columns: repeat(2, 1fr);
  }

  .vop-framework > div:nth-child(2) {
    border-right: 0;
  }

  .vop-framework > div:nth-child(-n + 2) {
    border-bottom: 1px solid var(--ink);
  }

  .source-filters {
    grid-template-columns: 1fr;
  }

  .fpp-footer-grid {
    grid-template-columns: 2fr 1fr 1fr;
  }

  .fpp-footer-grid > :first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  :root {
    --frame: calc(100% - 24px);
  }

  .independence-strip {
    align-items: flex-start;
    padding: 7px 12px;
    font-size: 0.57rem;
  }

  .independence-actions {
    gap: 8px;
  }

  .fpp-header-inner {
    min-height: 64px;
  }

  .fpp-brand > strong {
    width: 40px;
    height: 40px;
  }

  .fpp-brand > span {
    max-width: 120px;
    font-size: 0.65rem;
  }

  .hero,
  .support-hero {
    padding: 54px 0 68px;
  }

  .hero h1,
  .support-hero h1 {
    overflow-wrap: anywhere;
  }

  .section,
  .support-section {
    padding: 58px 0;
  }

  .section h2,
  .support-section h2 {
    letter-spacing: -0.045em;
  }

  .metric-grid,
  .strategy-board,
  .vop-grid,
  .logic-grid,
  .credit-grid,
  .download-grid,
  .asset-list,
  .update-list,
  .evidence-chip-grid,
  .strategy-takeaway,
  .evidence-boundary,
  .logic-analysis,
  .accountability-card > div {
    grid-template-columns: 1fr;
  }

  .metric,
  .strategy-board > div {
    min-height: 0;
  }

  .salary-timeline {
    grid-template-columns: 1fr;
  }

  .salary-timeline > div {
    border-right: 0;
    border-bottom: 1px solid currentColor;
  }

  .salary-timeline > div:last-child {
    border-bottom: 0;
  }

  .vop-framework,
  .correction-template {
    grid-template-columns: 1fr;
  }

  .vop-framework > div {
    border-right: 0;
    border-bottom: 1px solid var(--ink);
  }

  .vop-framework > div:last-child {
    border-bottom: 0;
  }

  .editorial-illustration figcaption,
  .fpp-footer-close {
    flex-direction: column;
  }

  .button-row,
  .button,
  .receipt-trigger,
  .source-link {
    width: 100%;
  }

  .fpp-footer-grid {
    grid-template-columns: 1fr 1fr;
  }

  .receipt-drawer > footer {
    flex-direction: column;
  }

  .receipt-drawer {
    inset: auto 0 0;
    width: 100%;
    height: min(86dvh, 780px);
    border-top: 4px solid var(--red);
    border-left: 0;
    box-shadow: 0 -15px 50px rgb(0 0 0 / 35%);
  }

  .receipt-share-menu {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

@media (forced-colors: active) {
  .status-badge,
  .receipt-trigger,
  .button,
  .finding-stamp,
  .logic-card {
    forced-color-adjust: auto;
    border: 2px solid CanvasText;
  }
}

@media print {
  .fpp-header,
  .menu-toggle,
  .receipt-drawer,
  .receipt-backdrop,
  .button-row,
  .receipt-trigger {
    display: none !important;
  }

  .independence-strip {
    color: #000;
    background: #fff;
    border: 1px solid #000;
  }

  .section,
  .support-section,
  .hero,
  .support-hero,
  .section-ink,
  .section-deep,
  .section-challenge,
  .closing-demand {
    color: #000 !important;
    background: #fff !important;
    break-inside: avoid;
  }

  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.75em;
  }
}

@import url('/assets/fonts/fonts.css');
:root{--paper:#fff;--paper-deep:#f0f3f5;--ink:#112434;--ink-soft:#365064;--navy:#101e2c;--red:#92542d;--red-dark:#6f3c20;--blue:#365f7d;--green:#365f57;--rule:#d6dfe5;--white:#fff;--focus:#c57e4b;--frame:min(1240px,calc(100% - 80px));--shadow:none;--copper:#b4774b;--copper-light:#d2a078;--muted:#647483;--sans:'IBM Plex Sans',Arial,sans-serif;--serif:'Source Serif 4',Georgia,serif}
html{scroll-behavior:smooth;scroll-padding-top:100px}body.fpp-page,body.fpp-legacy-page,body.advocacy-evidence-page{background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}body{margin:0}*{box-sizing:border-box}button,select,input{font:inherit}a{text-underline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%}svg{max-width:100%;height:auto}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}h1,h2,h3,p{overflow-wrap:break-word}.skip-link{background:var(--navy)}
.independence-strip{display:none}.fpp-header{background:rgba(255,255,255,.98);border-bottom:1px solid var(--rule);color:var(--ink);backdrop-filter:blur(14px)}.fpp-header-inner{min-height:88px;width:var(--frame);align-items:center}.fpp-brand{gap:16px}.fpp-brand>strong{background:none;color:var(--ink);border-right:1px solid var(--rule);width:auto;height:42px;padding-right:16px;font:600 1.55rem var(--serif)}.fpp-brand>span{max-width:190px;text-transform:none;font:600 1.05rem/1.25 var(--serif);letter-spacing:-.02em}.fpp-nav{gap:5px}.fpp-nav a,.menu-toggle,.menu-close{font:500 .9rem/1.25 var(--sans);text-transform:none;letter-spacing:0;padding:12px 13px;min-height:44px}.fpp-nav a:hover{background:#f0f3f5}.fpp-nav .header-receipts{background:var(--navy);border:1px solid var(--navy);color:#fff;font-weight:500;padding:12px 18px}.fpp-nav .header-receipts:hover{background:#253c50;color:#fff}.fpp-nav a[aria-current=page]{box-shadow:inset 0 -2px var(--copper)}
.j-frame{width:var(--frame);margin-inline:auto}.j-eyebrow{font:600 .8rem/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}.j-eyebrow .j-number{color:var(--copper);margin-right:18px}.j-hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}.j-hero-grid{display:grid;grid-template-columns:1.02fr 1fr;align-items:center;gap:36px;min-height:620px}.j-hero-copy{padding-block:70px}.j-hero .j-eyebrow{color:#c3ccd3}.j-hero h1{font:600 clamp(3rem,4.8vw,4.65rem)/1.07 var(--serif);letter-spacing:-.052em;max-width:630px;margin:0 0 26px}.j-hero h1 em{color:var(--copper-light);font-style:normal}.j-deck{font:400 1.12rem/1.8 var(--sans);max-width:495px;color:#c4ced7;margin:0 0 32px}.j-textlink{display:inline-flex;align-items:center;gap:28px;min-height:44px;font-size:.94rem;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}.j-textlink span{font-size:1.2rem;font-weight:400}.j-hero-art{margin:0;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}.j-hero-art img{width:100%;object-fit:contain;max-height:565px}.j-hero-art figcaption{position:absolute;bottom:26px;right:0;color:#9cabb6;font-size:.8rem}.j-issue{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #334453;color:#c0cbd3;padding:15px 0;font-size:.81rem;gap:15px}.j-issue a{color:#fff}.j-section{padding:100px 0;border-bottom:1px solid var(--rule)}.j-section h2{font:600 clamp(2.2rem,3.3vw,3.35rem)/1.13 var(--serif);letter-spacing:-.036em;margin:0 0 24px}.j-section h3{font:600 1.5rem/1.3 var(--serif);letter-spacing:-.02em;margin:0 0 14px}.j-section p{max-width:720px}.j-section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:end;margin-bottom:46px}.j-section-head h2{margin-bottom:0}.j-section-head>p{color:var(--muted);font-size:1.06rem;margin:0}.j-policy{padding-top:72px}.j-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-block:1px solid var(--rule)}.j-policy-item{padding:28px 27px 30px;border-right:1px solid var(--rule)}.j-policy-item:first-child{padding-left:0}.j-policy-item:last-child{padding-right:0;border-right:0}.j-policy-label{font-size:.88rem;color:var(--muted);margin:0 0 15px;min-height:46px}.j-policy-label strong{display:block;color:var(--ink);font-weight:600}.j-policy-value{font:600 clamp(3.5rem,5vw,5rem)/1 var(--serif);letter-spacing:-.06em;margin-bottom:24px}.j-policy-value small{font-size:.5em}.j-policy-item.military .j-policy-value{color:var(--red)}.j-policy-track{height:5px;width:100%;background:#e8edf1}.j-policy-track span{height:100%;display:block;background:var(--copper)}.j-policy-item.civilian .j-policy-track{background:var(--ink)}.j-policy-note{font-size:.875rem;color:var(--muted);margin:20px 0 0}.j-policy-note a{color:var(--ink)}.j-rationale{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:46px}.j-rationale>article+article{border-left:1px solid var(--rule);padding-left:40px}.j-rationale h3{font-size:1.35rem}.j-rationale p{color:var(--muted);font-size:1rem;margin:0}.j-rationale .j-small-label{font:600 .78rem var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;color:var(--red)}.j-cite{display:inline-block;font-size:.81rem;line-height:1.5;color:var(--muted);margin-top:14px}.j-comparison{background:#f1f4f6}.j-comparison .j-section-head{grid-template-columns:1fr .8fr;gap:90px}.j-comp-panel{border:1px solid #d0dbe3;background:#fff;box-shadow:0 18px 50px -35px #183a5566}.j-comp-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 30px;border-bottom:1px solid var(--rule)}.j-segments{display:flex;background:#eef2f4;padding:4px;border-radius:3px;gap:3px}.j-segments button{border:0;background:transparent;padding:9px 15px;font-size:.875rem;min-height:43px;color:#526778;white-space:normal}.j-segments button[aria-pressed=true]{background:var(--navy);color:#fff;box-shadow:0 2px 5px #14263220}.j-year-label{display:flex;align-items:center;gap:12px;font-size:.875rem}.j-year-label select{border:1px solid #bbc9d3;background:#fff;color:var(--ink);padding:10px 28px 10px 13px;min-height:44px;border-radius:2px}.j-comp-result{display:grid;grid-template-columns:.7fr 1.4fr;padding:45px 36px;gap:55px}.j-result-label{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 15px}.j-result-number{font:600 clamp(2.9rem,4.4vw,4.15rem)/1.1 var(--serif);letter-spacing:-.055em;margin:0 0 14px;color:var(--red)}.j-result-description{font-size:.94rem;color:var(--muted);margin:0;max-width:270px}.j-bars{padding:6px 0}.j-bar-row{margin-bottom:28px}.j-bar-meta{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:13px}.j-bar-meta strong{font:600 1.4rem var(--serif);white-space:nowrap}.j-bar-meta span{font-size:.93rem;line-height:1.45}.j-bar-meta small{display:block;color:var(--muted);font-size:.81rem}.j-bar-track{height:20px;background:#eef1f4}.j-bar-fill{height:100%;background:var(--ink-soft);transition:width .5s ease}.j-bar-row.military .j-bar-fill{background:var(--copper)}.j-bar-axis{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted);margin-top:-10px}.j-comp-basis{border-top:1px solid var(--rule);padding:22px 30px;background:#fbfcfd;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:start}.j-comp-basis p{font-size:.875rem;color:#526576;max-width:none;margin:0}.j-comp-basis a{font-size:.875rem;white-space:nowrap}.j-disclosure{border-top:1px solid var(--rule);font-size:.925rem;padding:0 30px}.j-disclosure summary{min-height:56px;padding:15px 0;cursor:pointer;font-weight:500}.j-disclosure[open]{padding-bottom:20px}.j-disclosure p{color:var(--muted);max-width:none}.j-components{width:100%;border-collapse:collapse;margin:12px 0 22px;font-size:.875rem}.j-components th,.j-components td{text-align:right;border-bottom:1px solid var(--rule);padding:10px 9px}.j-components th:first-child,.j-components td:first-child{text-align:left}.j-components thead th{font-weight:600;color:var(--muted)}.j-components tr:last-child{font-weight:600}.j-table-wrap{overflow-x:auto}.j-comp-under{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:24px}.j-comp-under p{margin:0;color:var(--muted);font-size:.875rem}.j-comp-under a{font-size:.9rem;white-space:nowrap}.j-trend-grid{display:grid;grid-template-columns:.63fr 1.37fr;gap:75px;align-items:start}.j-trend-copy p{color:var(--muted);font-size:1rem}.j-trend-number{font:600 4.7rem/1 var(--serif);letter-spacing:-.06em;color:var(--red);margin:30px 0 12px}.j-trend-caption{max-width:320px!important;margin:0 0 30px}.j-chart{margin:0}.j-chart-header{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-top:19px;font-size:.85rem;color:var(--muted);margin-bottom:18px}.j-chart-header strong{color:var(--ink);font-weight:500}.j-chart-key{display:flex;gap:22px;font-size:.85rem;flex-wrap:wrap}.j-key{display:inline-flex;gap:8px;align-items:center}.j-key:before{content:'';display:inline-block;width:23px;height:3px;background:var(--ink-soft)}.j-key.military:before{background:var(--copper)}.j-trend-svg{display:block;width:100%;overflow:visible}.j-trend-svg text{font-family:var(--sans);font-size:15px;fill:#5a7082}.j-trend-svg .line-label{font-weight:600;font-size:17px;fill:var(--ink)}.j-chart figcaption{font-size:.82rem;color:var(--muted);margin-top:18px;line-height:1.7}.j-continuity{background:var(--navy);color:#fff}.j-continuity-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center}.j-continuity figure{margin:0}.j-continuity img{width:100%;aspect-ratio:3/2;object-fit:contain}.j-continuity figcaption{font-size:.8rem;color:#9aabb7;margin-top:12px}.j-continuity .j-eyebrow{color:var(--copper-light)}.j-continuity p{color:#c0cbd4}.j-continuity h2{font-size:clamp(2.3rem,3.2vw,3.1rem)}.j-continuity .j-quiet-line{color:#fff;font:600 1.25rem/1.6 var(--serif);border-top:1px solid #405160;margin-top:27px;padding-top:25px}.j-questions{max-width:920px}.j-faq-row{border-top:1px solid var(--rule)}.j-faq-row:last-child{border-bottom:1px solid var(--rule)}.j-faq-row summary{cursor:pointer;list-style:none;padding:25px 40px 25px 0;font:600 1.18rem/1.5 var(--serif);position:relative}.j-faq-row summary::-webkit-details-marker{display:none}.j-faq-row summary:after{content:'+';position:absolute;right:5px;font:400 1.6rem var(--sans);top:19px;color:var(--red)}.j-faq-row[open] summary:after{content:'−'}.j-faq-row>div{padding-bottom:22px;color:var(--muted);max-width:800px}.j-faq-row>div p{margin:0 0 14px}.j-reading{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:40px}.j-reading a{text-decoration:none;border-top:1px solid var(--rule);padding-top:23px;display:block}.j-reading span{display:block;font-size:.81rem;color:var(--red);margin-bottom:10px}.j-reading h3{font-size:1.38rem}.j-reading p{color:var(--muted);font-size:.95rem}.j-reading a:hover h3{text-decoration:underline;text-underline-offset:5px}.j-close{padding:72px 0;background:#f0f3f5}.j-close-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.j-close h2{font:600 clamp(2rem,2.8vw,2.7rem)/1.3 var(--serif);letter-spacing:-.035em;max-width:680px;margin:0}.j-close a{white-space:nowrap}.fpp-footer{background:#fff;color:var(--ink);border-top:1px solid var(--rule);padding-top:54px}.fpp-footer-grid{width:var(--frame);grid-template-columns:2fr 1fr 1fr 1fr;gap:45px}.fpp-footer-grid>div>strong{font:600 1.2rem var(--serif)}.fpp-footer p{color:var(--muted);font-size:.87rem;max-width:370px}.fpp-footer nav strong{color:var(--ink);font:600 .9rem var(--sans);letter-spacing:0;text-transform:none}.fpp-footer nav a{font:400 .87rem/1.6 var(--sans);text-transform:none}.fpp-footer-close{width:var(--frame);border-top:1px solid var(--rule);font:400 .8rem var(--sans);color:var(--muted);padding-block:23px}
/* The same publication typography carries through the existing evidence tools. */
.support-hero{background:#f0f3f5;border-bottom:1px solid var(--rule);padding:75px 0}.support-hero:after{display:none}.support-hero h1{font:600 clamp(2.8rem,5vw,4.6rem)/1.12 var(--serif);text-transform:none;letter-spacing:-.04em;max-width:980px}.support-hero .lead{font-size:1.13rem;color:var(--muted);max-width:820px}.section-eyebrow{font:600 .8rem/1.4 var(--sans);letter-spacing:.12em}.section-eyebrow:before{height:1px;border-top:1px solid var(--copper);width:27px}.support-section{border-color:var(--rule);padding:60px 0}.support-section h2{font:600 clamp(1.8rem,3vw,2.8rem)/1.2 var(--serif);letter-spacing:-.025em;text-transform:none}.support-section h3{font:600 1.25rem/1.4 var(--serif);letter-spacing:-.015em;text-transform:none}.support-section p,.support-section li{font-size:1rem}.receipt-trigger,.source-link{font:500 .88rem var(--sans);letter-spacing:0;text-transform:none;box-shadow:none!important;min-height:40px}.status-badge{font-size:.76rem;letter-spacing:.02em;border-width:1px}.receipt-drawer{border-left:1px solid var(--rule);box-shadow:-15px 0 80px #0e223538;background:#fff}.receipt-drawer>header{background:var(--navy);color:#fff}.receipt-body h2{font:600 2rem/1.2 var(--serif);letter-spacing:-.025em}.receipt-body section>strong{font:600 .9rem var(--sans);letter-spacing:0;text-transform:none}.receipt-body p,.receipt-body li{font-size:.95rem}.receipt-drawer>footer a{font:500 .83rem var(--sans);letter-spacing:0}.receipt-close{color:inherit}.button,.btn,.action-link,.share-control{box-shadow:none;border-radius:2px;text-transform:none;font-family:var(--sans);letter-spacing:0}.logic-model,.objection-disclosure,.claim-card,.source-card{box-shadow:none!important;border-color:var(--rule)}.logic-verdict{font-size:1rem!important}.responsive-table th,.responsive-table td{font-size:.875rem}.advocacy-evidence-shell{width:var(--frame)}.advocacy-evidence-page-intro h1,.page-intro h1{font-family:var(--serif)!important;font-weight:600!important;text-transform:none!important;letter-spacing:-.04em!important}.advocacy-evidence-page-intro{background:#f0f3f5!important}.advocacy-independence,.advocacy-evidence-bridge{display:none}.j-support-article{max-width:840px;margin:auto}.j-support-article p{max-width:none}.j-policy-document{padding:26px 30px;background:#f0f3f5;border-left:3px solid var(--copper);margin-block:25px}.j-policy-document p{margin:0}.j-policy-document a{font-weight:500}.j-freshness{margin:0 0 25px;padding:17px 20px;border-left:2px solid var(--copper);background:#f2f5f7;color:var(--ink);font-size:.9rem}.j-freshness a{font-weight:500}.j-art-credit{max-width:360px;width:100%;margin-block:20px}.j-legacy-illustration{display:none}
@media(min-width:1200px){.j-hero-art{margin-right:-25px}}
@media(max-width:1100px){:root{--frame:min(1240px,calc(100% - 48px))}.fpp-brand>span{max-width:135px}.fpp-nav a{padding-inline:9px;font-size:.84rem}.j-hero-grid{min-height:565px}.j-hero h1{font-size:clamp(3rem,5.5vw,4.2rem)}.j-section-head,.j-comparison .j-section-head{gap:45px}.j-comp-result{gap:35px}.j-trend-grid{gap:40px}.j-continuity-grid{gap:45px}.j-policy-item{padding-inline:20px}}
@media(max-width:850px){.fpp-header-inner{min-height:74px}.fpp-brand>span{max-width:none}.menu-toggle{display:flex;align-items:center}.fpp-nav{display:none;position:fixed;top:0;right:0;width:min(380px,100vw);height:100dvh;flex-direction:column;align-items:stretch;padding:22px;background:#fff;box-shadow:-20px 0 60px #0a1d3340;z-index:90;gap:8px}.fpp-nav.is-open{display:flex}.fpp-nav a{font-size:1rem;display:block;padding:16px;min-height:52px}.fpp-nav .header-receipts{align-self:stretch;margin:15px 0 0}.menu-close{display:block;align-self:flex-end}.j-hero-grid{gap:15px;grid-template-columns:1.1fr .9fr;min-height:530px}.j-hero-copy{padding-block:55px}.j-hero h1{font-size:3.2rem}.j-hero-art figcaption{font-size:.75rem}.j-deck{font-size:1rem}.j-policy-grid{grid-template-columns:repeat(2,1fr)}.j-policy-item{padding:24px!important}.j-policy-item:nth-child(2){border-right:0}.j-policy-item:nth-child(-n+2){border-bottom:1px solid var(--rule)}.j-policy-label{min-height:0}.j-policy-value{font-size:4.2rem}.j-section{padding:70px 0}.j-section-head{display:block}.j-section-head>p{margin-top:22px;max-width:600px}.j-comp-toolbar{align-items:stretch;flex-direction:column;gap:15px;padding:20px}.j-segments button{flex:1}.j-year-label{justify-content:space-between}.j-comp-result{padding:30px 23px;gap:26px;grid-template-columns:.7fr 1.3fr}.j-comp-basis{padding:20px;grid-template-columns:1fr}.j-disclosure{padding-inline:20px}.j-trend-grid{display:block}.j-trend-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 45px;margin-bottom:25px}.j-trend-copy .j-eyebrow{grid-column:1/-1}.j-trend-copy h2{grid-row:2/5}.j-trend-number{margin:0 0 10px}.j-trend-caption{margin-bottom:20px}.j-trend-copy>p:last-child{grid-column:1/-1}.j-chart{max-width:none}.j-continuity-grid{gap:40px}.j-continuity-grid{grid-template-columns:.9fr 1.1fr}.j-continuity h2{font-size:2.25rem}.j-reading{gap:25px}.fpp-footer-grid{grid-template-columns:repeat(3,1fr);gap:30px}.fpp-footer-grid>div{grid-column:1/-1}.fpp-footer p{max-width:600px}.j-close-inner{display:block}.j-close a{margin-top:28px}.support-hero{padding-block:55px}}
@media(max-width:600px){:root{--frame:calc(100% - 40px)}.fpp-brand>span{font-size:.95rem;max-width:165px}.fpp-brand>strong{font-size:1.35rem;padding-right:12px}.fpp-brand{gap:12px}.j-hero-grid{display:block}.j-hero-copy{padding:48px 0 16px}.j-hero h1{font-size:clamp(2.75rem,10.7vw,3.7rem);max-width:470px;line-height:1.1}.j-hero .j-eyebrow{font-size:.74rem}.j-deck{margin-bottom:19px;font-size:1.03rem}.j-hero-art{margin:0 -15px;max-height:320px}.j-hero-art img{max-height:310px;object-fit:contain;width:100%}.j-hero-art figcaption{right:15px;bottom:6px;font-size:.75rem}.j-issue{font-size:.76rem;align-items:flex-start;margin-top:12px}.j-issue>span{max-width:55%}.j-section{padding:55px 0}.j-section h2{font-size:2.35rem}.j-section-head{margin-bottom:32px}.j-section-head>p{font-size:1rem}.j-policy-item{padding:21px 18px!important}.j-policy-value{font-size:3.8rem}.j-policy-label{font-size:.82rem;min-height:45px}.j-rationale{display:block;padding-top:32px}.j-rationale>article+article{border-left:0;border-top:1px solid var(--rule);padding:25px 0 0;margin-top:25px}.j-comp-toolbar{padding:16px}.j-segments{gap:1px}.j-segments button{padding:9px 7px;font-size:.82rem;min-height:50px;line-height:1.3}.j-comp-result{display:block;padding:25px 20px}.j-result-description{max-width:none;margin-bottom:30px}.j-result-number{font-size:3.65rem}.j-bar-meta strong{font-size:1.3rem}.j-bar-meta span{font-size:.86rem}.j-comp-basis{gap:12px;padding:18px 20px}.j-comp-under{display:block}.j-comp-under a{margin-top:12px;display:inline-flex}.j-components{font-size:.81rem}.j-components th,.j-components td{padding:9px 6px}.j-trend-copy{display:block}.j-trend-number{font-size:4.8rem;margin-top:25px}.j-trend-copy h2{margin-bottom:25px}.j-trend-copy>p:last-child{margin-top:30px}.j-chart-header{display:block}.j-chart-key{margin-top:12px}.j-trend-svg text{font-size:18px}.j-trend-svg .line-label{font-size:20px}.j-continuity-grid{display:flex;flex-direction:column-reverse;gap:20px;align-items:stretch}.j-continuity img{max-height:330px}.j-continuity figure{margin:0 -10px}.j-continuity figcaption{margin-left:10px}.j-reading{grid-template-columns:1fr;gap:15px;margin-top:25px}.j-reading h3{margin-bottom:7px}.j-reading p{margin-block:6px 13px}.j-faq-row summary{font-size:1.1rem}.j-close{padding-block:45px}.j-close h2{font-size:2rem}.fpp-footer-grid{gap:25px 16px}.fpp-footer-close{display:block;font-size:.76rem;line-height:1.7}.fpp-footer-close span{display:block}.support-hero h1{font-size:2.6rem}.support-section{padding-block:40px}.j-policy-document{padding:20px}.receipt-drawer{width:100vw;max-width:100vw}.j-trend-svg{min-width:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.j-bar-fill{transition:none}}
@media(max-width:600px){.j-trend-svg text{font-size:26px}.j-trend-svg .line-label{font-size:28px}.j-policy-label{font-size:.875rem}.j-hero .j-eyebrow{font-size:.75rem}}
@media(max-width:430px){.j-trend-svg text{font-size:30px}.j-trend-svg .line-label{font-size:34px}}
@media print{.fpp-header,.fpp-footer,.j-hero-art,.j-continuity figure,.j-segments,.j-year-label,.j-issue,.receipt-drawer,.receipt-backdrop{display:none!important}.j-section,.j-hero,.j-continuity{background:#fff!important;color:#000!important;padding:25px 0}.j-hero h1{font-size:36pt}.j-hero-grid,.j-trend-grid,.j-continuity-grid{display:block;min-height:0}.j-hero-copy{padding:0}.j-deck,.j-continuity p{color:#222}.j-comp-panel{break-inside:avoid}.j-frame{width:100%}.j-section h2{font-size:24pt}.j-policy-grid{grid-template-columns:repeat(4,1fr)}.j-policy-item{border-color:#999}.j-policy-track,.j-bar-fill{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* The allocation edition: severe typography, exact figures, indifferent procedure. */
:root{--ink:#101b25;--ink-soft:#425361;--navy:#0d1720;--red:#8e2b39;--red-dark:#70212c;--copper:#98394a;--copper-light:#dda8ae;--muted:#586775;--rule:#d4dce1;--focus:#b34152}
.fpp-header-inner{min-height:80px}.fpp-nav a{font-size:.875rem;padding-inline:10px}.j-eyebrow{font-size:.875rem;letter-spacing:.13em}.a-masthead{background:var(--navy);color:white}.a-edition{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #3d4851;padding:22px 0;font-size:.875rem;color:#b9c3cc}.a-edition span:last-child{text-align:right}.a-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;min-height:510px;padding:42px 0 58px}.a-zero{font:500 clamp(11rem,26vw,25rem)/.87 var(--sans);letter-spacing:-.08em;white-space:nowrap;margin:0 0 26px}.a-zero small{font-size:.42em;letter-spacing:-.08em;margin-left:4px}.a-zero-label{font-size:.94rem;color:#c4cdd4;max-width:300px;margin:0}.a-hero-copy h1{font:600 clamp(2.7rem,4.3vw,4.2rem)/1.07 var(--serif);letter-spacing:-.045em;margin:0 0 26px}.a-hero-copy h1 span{display:block}.a-hero-copy p{font-size:1.12rem;color:#bac6d0;max-width:470px}.a-hero-copy .a-decision{color:#fff;font-size:1rem;border-left:2px solid #c9808b;padding:2px 0 2px 22px;margin:30px 0}.a-hero-copy .j-textlink{font-size:1rem;margin-top:5px}.a-docket{display:flex;justify-content:space-between;gap:25px;padding:17px 0 20px;border-top:1px solid #3d4851;color:#b9c3cc;font-size:.875rem}.a-docket a{color:#fff}.a-docket strong{font-weight:500;color:white}
.a-section{padding:88px 0;border-bottom:1px solid var(--rule)}.a-section h2{font:600 clamp(2.3rem,3.7vw,3.6rem)/1.12 var(--serif);letter-spacing:-.04em;margin:0 0 26px}.a-section h3{font:600 1.4rem/1.3 var(--serif);letter-spacing:-.025em;margin:0 0 16px}.a-section p{font-size:1.04rem;line-height:1.8}.a-section .j-eyebrow{font-size:.875rem;line-height:1.5}.a-split{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center}.a-split>*{min-width:0}.a-split-copy>p{max-width:600px}.a-section .a-source,.a-source{font-size:.875rem;line-height:1.7;color:var(--muted)}.a-section .a-source a{color:inherit}.a-section .a-pull{font:600 clamp(1.4rem,2vw,1.75rem)/1.5 var(--serif);border-top:1px solid var(--rule);padding-top:24px;margin-top:28px;color:var(--ink)}.a-figure{margin:0}.a-figure img{width:100%;aspect-ratio:3/2;object-fit:cover}.a-figure figcaption{font-size:.8125rem;color:var(--muted);padding:14px 0 0;border-bottom:0}.a-quote{border-left:2px solid var(--red);padding:0 0 0 23px;margin:28px 0}.a-quote p{font:600 1.55rem/1.45 var(--serif);margin:0 0 12px}.a-quote cite{font:400 .875rem/1.5 var(--sans);color:var(--muted)}
.a-pay .j-section-head{margin-bottom:35px}.a-pay .j-policy-value{font-family:var(--sans);font-weight:500;letter-spacing:-.06em}.a-pay .j-policy-item.civilian{background:#edf0f2;padding-left:27px}.a-pay .j-policy-grid{border-top:0}.a-pay .j-policy-item.civilian .j-policy-track{background:var(--ink)}.a-pay .j-policy-label{font-size:.875rem}.a-raise-receipt{display:grid;grid-template-columns:1fr 1fr 1.05fr;gap:36px;border-bottom:1px solid var(--rule);padding:34px 0;margin:0 0 18px}.a-raise-receipt>div{border-right:1px solid var(--rule);padding-right:25px}.a-raise-receipt>div:last-child{border-right:0;padding:0}.a-raise-receipt strong{display:block;font:500 clamp(2.6rem,4vw,4rem)/1.12 var(--sans);letter-spacing:-.055em}.a-raise-receipt .a-military-raise{color:var(--red)}.a-raise-receipt p{font-size:.94rem;color:var(--muted);margin:9px 0 0}.a-raise-receipt span{display:block;font-size:.875rem;margin-bottom:12px}.a-raise-receipt .a-receipt-verdict{font:600 1.35rem/1.5 var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0}.a-pay .j-policy-note{max-width:950px;font-size:.875rem}
.a-invitation{background:#f3f5f6}.a-invitation .a-figure{align-self:start;margin-top:6px}.a-record{display:flex;justify-content:space-between;border-block:1px solid var(--rule);margin-top:24px;padding:14px 0;gap:20px;font:400 .875rem/1.5 var(--sans);color:var(--muted)}.a-record strong{font-weight:600;color:var(--ink)}.a-leadership{background:var(--navy);color:#fff}.a-leadership .j-eyebrow{color:#b3bfc9}.a-leadership p{color:#bdc8d1}.a-leadership .a-pull{color:white;border-color:#394955}.a-appointment{border:1px solid #42515d;padding:30px 34px;align-self:stretch}.a-appointment .a-document-label{font-size:.875rem;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid #42515d;padding-bottom:20px;margin:0 0 28px;color:#bfcbd4}.a-appointment dl{margin:0}.a-appointment dl>div{display:grid;grid-template-columns:1fr 1.25fr;gap:25px;padding:19px 0;border-bottom:1px solid #34424d}.a-appointment dt{font-size:.875rem;color:#aab9c5}.a-appointment dd{margin:0;font:500 1.04rem/1.55 var(--sans)}.a-appointment .a-determination{font:600 1.55rem/1.35 var(--serif);color:white;margin:30px 0 4px}.a-appointment .a-document-foot{font-size:.875rem;color:#aab9c5;margin:0}.a-contractors .a-pull{border-color:#b9c7d1}.a-contractors .a-invoice-thesis{font:600 clamp(1.5rem,2.2vw,2rem)/1.45 var(--serif);color:var(--ink)}.a-appropriation{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:30px 0;margin-top:28px;border-block:1px solid var(--rule)}.a-appropriation>div+div{border-left:1px solid var(--rule);padding-left:30px}.a-appropriation span{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:.8125rem;color:var(--muted);margin-bottom:10px}.a-appropriation strong{display:block;font:600 1.35rem/1.4 var(--serif)}.a-appropriation p{font-size:.94rem;margin:10px 0 0}
.a-loop{background:#edf1f3}.a-loop-head{display:grid;grid-template-columns:1.25fr .8fr;gap:80px;align-items:end;margin-bottom:32px}.a-loop-head p{margin:0;color:var(--muted)}.a-loop-head h2{margin-bottom:0}.a-loop-table{width:100%;border-collapse:collapse;table-layout:fixed}.a-loop-table thead th{font-size:.875rem;text-align:left;font-weight:500;color:var(--muted);padding:17px 22px;border-bottom:1px solid #aab8c3}.a-loop-table th:first-child{padding-left:0}.a-loop-table tbody th,.a-loop-table td{padding:23px 22px;border-bottom:1px solid #c5d0d8;text-align:left;vertical-align:top}.a-loop-table tbody th{font:400 1.03rem/1.6 var(--sans)}.a-loop-table td{font:600 1.25rem/1.5 var(--serif)}.a-loop-table td:last-child{width:20%;font:500 .875rem/1.5 var(--sans);text-align:right;color:var(--red);padding-right:0}.a-loop-table thead th:last-child{width:20%;text-align:right;padding-right:0}.a-loop-final{display:flex;justify-content:space-between;gap:25px;margin-top:26px;align-items:center}.a-loop-final p{font:600 1.3rem/1.45 var(--serif);margin:0}.a-loop-final a{font-size:.94rem}.a-comparison-title-note{font-size:1.12rem;margin-bottom:0}.a-close{background:var(--navy);color:white;padding:98px 0 85px}.a-close h2{font:600 clamp(2.5rem,5.3vw,5.2rem)/1.12 var(--serif);letter-spacing:-.045em;max-width:1000px;margin:0 0 35px}.a-close h2 span{color:#aebdc9}.a-close p{color:#b4c2cc;font-size:1.04rem}.a-close .j-eyebrow{color:#c5929b}.a-close-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;border-top:1px solid #3e4d58;padding-top:26px}.a-close-bottom p{margin:0;font:600 1.35rem/1.45 var(--serif);max-width:610px}.a-close-bottom a{color:white;white-space:nowrap}.a-brief-rule{border-left:2px solid var(--red);padding:8px 0 8px 25px;margin:32px 0}.a-brief-rule p{font:600 1.4rem/1.5 var(--serif);margin:0}.a-objection-line{display:block;color:var(--red);font:600 1.1rem/1.55 var(--serif);margin-top:16px}.support-main .a-section .j-frame{width:var(--frame)}.a-art-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.a-art-grid img{width:100%;aspect-ratio:3/2;object-fit:cover}.a-art-grid h2{font-size:1.6rem;margin-top:20px}.a-archive-note{font-size:.875rem;color:var(--muted)}
.a-experience{border-top:1px solid #b7c6d2;padding-top:32px;margin-top:40px}.a-experience-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:65px}.a-experience-grid h3{font:600 clamp(1.65rem,2.5vw,2.3rem)/1.3 var(--serif);letter-spacing:-.03em;margin:0}.a-experience-grid p{margin-top:0;font-size:1rem}.a-experience-grid .a-experience-verdict{color:var(--red);font:600 1.4rem/1.45 var(--serif);margin-top:22px}.a-experience-grid .a-source{font-size:.875rem;color:var(--muted)}.a-debt{margin-top:58px;padding-top:38px;border-top:1px solid #42515d}.a-debt-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:75px}.a-debt-grid h3{font:600 clamp(1.8rem,2.7vw,2.65rem)/1.2 var(--serif);margin:0}.a-debt-grid p:first-child{margin-top:0}.a-debt .a-debt-verdict{color:#fff;font:600 1.55rem/1.45 var(--serif);margin:25px 0}.a-debt .a-source{color:#a8b8c6;font-size:.875rem}.a-leadership>.j-frame>.a-debt:first-child{margin:0;padding:0;border:0}
@media(max-width:1100px){.a-hero-grid{gap:30px;min-height:480px}.a-zero{font-size:25vw}.a-split{gap:45px}.a-hero-copy h1{font-size:3.4rem}.a-loop-head{gap:45px}.fpp-brand>span{max-width:125px}.fpp-nav a{padding-inline:8px}.a-appointment{padding:25px}.a-raise-receipt{gap:25px}.a-debt-grid,.a-experience-grid{gap:40px}}
@media(max-width:850px){.fpp-brand>span{max-width:none}.fpp-nav a{font-size:1rem;padding:16px}.a-hero-grid{grid-template-columns:1fr 1fr;gap:30px;padding:45px 0}.a-zero{font-size:25vw}.a-hero-copy h1{font-size:2.8rem}.a-hero-copy p{font-size:1rem}.a-section{padding:65px 0}.a-split{grid-template-columns:1fr;gap:35px}.a-split-copy{max-width:680px}.a-figure{max-width:740px}.a-leadership .a-split{grid-template-columns:1fr 1fr;gap:30px}.a-appointment dl>div{display:block}.a-appointment dt{margin-bottom:8px}.a-raise-receipt{grid-template-columns:1fr 1fr}.a-raise-receipt>div:nth-child(2){border:0;padding-right:0}.a-raise-receipt>div:last-child{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:23px}.a-raise-receipt .a-receipt-verdict{max-width:640px}.a-loop-head{display:block}.a-loop-head>p{margin-top:20px;max-width:650px}.a-close{padding:70px 0}.a-close-bottom{align-items:start}}
@media(max-width:600px){.a-edition{font-size:.8125rem;padding-block:17px;gap:15px}.a-edition span:last-child{max-width:110px}.a-hero-grid{display:block;padding:30px 0 40px}.a-zero{font-size:clamp(9rem,55vw,17rem);margin-bottom:15px}.a-zero-label{font-size:.875rem;max-width:none}.a-hero-copy{border-top:1px solid #3d4851;margin-top:32px;padding-top:30px}.a-hero-copy h1{font-size:clamp(2.6rem,10vw,3.5rem);max-width:430px}.a-hero-copy h1 span{display:inline}.a-hero-copy .a-decision{margin-block:24px;padding-left:18px}.a-docket{display:block;font-size:.8125rem}.a-docket>span{display:block;margin-bottom:8px}.a-section{padding:52px 0}.a-section h2{font-size:2.35rem}.a-section .j-section-head{margin-bottom:26px}.a-section .j-eyebrow{font-size:.8125rem}.a-section p{font-size:1rem}.a-section .a-source{font-size:.875rem}.a-section .a-pull{font-size:1.4rem}.a-raise-receipt{gap:22px}.a-raise-receipt strong{font-size:2.75rem}.a-raise-receipt p{font-size:.875rem}.a-raise-receipt span{font-size:.8125rem}.a-raise-receipt .a-receipt-verdict{font-size:1.25rem}.a-record{display:block;font-size:.875rem}.a-record>span{display:block;margin-top:6px}.a-quote p{font-size:1.4rem}.a-leadership .a-split{display:block}.a-appointment{margin-top:34px;padding:25px}.a-appointment dl>div{display:grid;grid-template-columns:1fr 1.25fr;gap:18px}.a-appointment .a-document-label{font-size:.8125rem}.a-appointment .a-determination{font-size:1.45rem}.a-appropriation{gap:20px}.a-appropriation>div+div{padding-left:20px}.a-appropriation strong{font-size:1.2rem}.a-contractors .a-invoice-thesis{font-size:1.5rem}.a-loop-table{table-layout:auto}.a-loop-table thead{display:none}.a-loop-table tbody tr{display:grid;grid-template-columns:1fr auto;gap:0 14px;border-top:1px solid #b9c6cf;padding:19px 0}.a-loop-table tbody tr:last-child{border-bottom:1px solid #b9c6cf}.a-loop-table tbody th{padding:0;font-size:.94rem;border:0;grid-column:1/-1;color:var(--muted)}.a-loop-table td{padding:8px 0 0;border:0;font-size:1.2rem}.a-loop-table td:last-child{width:auto;font-size:.8125rem;max-width:85px;align-self:end}.a-loop-final{display:block}.a-loop-final p{font-size:1.2rem}.a-loop-final a{margin-top:22px}.a-close{padding:55px 0}.a-close h2{font-size:2.65rem;margin-bottom:30px}.a-close-bottom{display:block}.a-close-bottom p{font-size:1.25rem}.a-close-bottom a{margin-top:25px}.a-art-grid{grid-template-columns:1fr}.a-pay .j-policy-item.civilian{padding-left:18px}.j-result-number{color:var(--red)}.j-comp-under a{white-space:normal}.j-issue a{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.j-bar-fill{transition:none}}
@media(max-width:600px){.a-experience-grid,.a-debt-grid{display:block}.a-experience-grid h3,.a-debt-grid h3{margin-bottom:25px}.a-experience{margin-top:32px;padding-top:28px}.a-experience-grid .a-experience-verdict{font-size:1.3rem}.a-debt{margin-top:35px;padding-top:32px}.a-debt .a-debt-verdict{font-size:1.4rem}}

/* Editorial revision: varied article proportions and continuous prose. */
.a-hero-copy .a-decision{max-width:27rem;line-height:1.6}
.a-section h2,.j-comparison .j-section-head h2{text-wrap:balance}
.a-experience-grid{grid-template-columns:.7fr 1.6fr;gap:70px}
.a-experience-grid h3{max-width:15rem}
.e-invitation .a-split{grid-template-columns:1.25fr .9fr;align-items:start;gap:65px}
.e-invitation .a-figure{margin-top:45px}
.e-leadership .a-split{grid-template-columns:1.5fr .8fr;gap:85px;align-items:start}
.e-leadership .a-appointment{border:0;border-left:1px solid #42515d;padding:0 0 0 30px;align-self:auto;margin-top:42px}
.e-leadership .a-appointment dl>div{display:block;padding:14px 0}
.e-leadership .a-appointment dt{margin-bottom:5px}
.e-leadership .a-appointment .a-document-label{letter-spacing:.035em;text-transform:none;margin-bottom:8px;padding-bottom:15px}
.e-leadership .a-appointment .a-document-foot{margin-top:20px}
.e-leadership .a-debt{max-width:100%;margin-top:65px}
.e-leadership .a-debt-grid{grid-template-columns:.7fr 1.6fr;gap:70px}
.e-contractors .a-split{grid-template-columns:.9fr 1.25fr;gap:65px;align-items:start}
.e-contractors .a-figure{margin-top:45px}
.e-contractors .a-invoice-thesis{line-height:1.5;margin-block:25px}
.a-close h2{max-width:1050px;font-size:clamp(2.45rem,4vw,4rem);line-height:1.2;text-wrap:balance}
.a-close-bottom p{font:400 1.04rem/1.7 var(--sans);max-width:590px}
.e-about .support-hero{padding-bottom:45px}
.e-about .support-hero h1{max-width:800px;text-wrap:balance}
.e-about .lead{max-width:720px;line-height:1.65}
.e-about .support-section{padding-top:12px;padding-bottom:95px}
.e-about-disclosure{max-width:590px;font-size:1.05rem;line-height:1.8}
.e-about-links{display:flex;flex-wrap:wrap;gap:16px 30px;border-top:1px solid var(--rule);margin-top:40px;padding-top:25px;font-size:.94rem}
.support-main .j-support-article>h2{margin-top:2.4rem;text-wrap:balance}
.support-main .j-support-article>p{max-width:76ch}
@media(max-width:1000px){.e-invitation .a-split,.e-contractors .a-split{gap:40px}.e-leadership .a-split{gap:40px;grid-template-columns:1.3fr .85fr}.a-experience-grid,.e-leadership .a-debt-grid{gap:40px}}
@media(max-width:760px){.e-invitation .a-split,.e-contractors .a-split,.e-leadership .a-split,.a-experience-grid,.e-leadership .a-debt-grid{display:block}.e-invitation .a-figure,.e-contractors .a-figure{margin:0 0 30px}.e-invitation .a-figure{margin-top:35px}.e-leadership .a-appointment{margin-top:35px;padding:25px 0 0;border-left:0;border-top:1px solid #42515d}.e-leadership .a-appointment dl>div{display:grid;grid-template-columns:1fr 1.4fr;gap:20px}.a-experience-grid h3{max-width:none;margin-bottom:25px}.e-leadership .a-debt-grid h3{margin-bottom:25px}.e-about .support-section{padding-bottom:60px}}

/* Text contrast on the existing light explorer and footer backgrounds. */
.advocacy-evidence-page-intro h1{color:#101b25}
.advocacy-evidence-page-intro .advocacy-eyebrow,
.advocacy-evidence-page-intro > div > p:not(.advocacy-eyebrow){color:#425361}
.advocacy-evidence-page-intro .advocacy-button:not(.advocacy-button-primary){color:#101b25;border-color:#425361}
.advocacy-evidence-page-intro .advocacy-button:not(.advocacy-button-primary):hover,
.advocacy-evidence-page-intro .advocacy-button:not(.advocacy-button-primary):focus-visible{color:#101b25;border-color:#101b25}
.fpp-footer .fpp-footer-grid strong{color:#101b25}
.fpp-footer .fpp-footer-grid a,
.fpp-footer .fpp-footer-grid a:visited{color:#234d69}
.fpp-footer .fpp-footer-grid a:hover,
.fpp-footer .fpp-footer-grid a:focus-visible{color:#101b25}

/* The reading edition: one vocabulary for evidence, policy, and tools. */
:root{--fpp-paper:#f8f7f2;--fpp-dark:#13212b;--fpp-accent:#8e2b39;--fpp-line:#d6dcd9}
html{scroll-padding-top:105px}body{overflow-wrap:break-word}a,button,input,select,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a64655;outline-offset:5px}.fpp-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--fpp-line)}.fpp-header-inner{min-height:76px}.fpp-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.fpp-nav a{min-height:44px;display:flex;align-items:center}.fpp-brand strong{background:var(--fpp-dark);color:#fff}.fpp-brand span{max-width:none}.fpp-nav .header-receipts{background:var(--fpp-dark);color:white;padding:12px 16px;border:0}.fpp-nav .header-receipts:hover{background:#8e2b39;color:white}
.x-hero{background:var(--fpp-dark);color:#fff;padding:0 0 30px}.x-edition{display:flex;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #45515a;font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;color:#c8d1d6}.x-hero-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:75px;padding:64px 0 44px;align-items:start}.x-kicker{font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:#cf9ca4;margin:0 0 22px}.x-hero h1{font:600 clamp(2.65rem,4.8vw,4.7rem)/1.08 var(--serif);letter-spacing:-.045em;max-width:720px;margin:0 0 27px}.x-hero p.x-intro{color:#d3dce1;font-size:1.08rem;line-height:1.75;max-width:590px;margin:0 0 28px}.x-actions{display:flex;gap:12px;flex-wrap:wrap}.x-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 20px;background:#fff;color:#13212b;border:1px solid #fff;text-decoration:none;font-size:.9rem;font-weight:600;border-radius:2px;cursor:pointer}.x-button:hover{background:#e5eaeb;color:#13212b}.x-button.secondary{background:transparent;color:#fff;border-color:#6b7c85}.x-button.secondary:hover{background:#263842}.x-button.dark{background:var(--fpp-dark);color:white;border-color:var(--fpp-dark)}.x-button.dark:hover{background:var(--fpp-accent)}.x-button.light{border-color:#bbc5c8;background:white;color:#13212b}.x-hero-note{font-size:.8rem!important;color:#aebfc8;margin:23px 0 0;max-width:540px}.x-hero-note a{color:inherit;text-underline-offset:3px}.x-zero{font:500 clamp(8rem,17vw,16rem)/.82 var(--sans);letter-spacing:-.08em;white-space:nowrap;margin:7px 0 19px}.x-zero small{font-size:.43em;letter-spacing:-.06em}.x-number-label{font-size:.94rem;margin:0 0 22px;color:#d3dce1}.x-policy-side{display:grid;grid-template-columns:1fr 1fr;gap:23px;border-top:1px solid #45515a;padding-top:20px}.x-policy-side strong{display:block;font:500 1.8rem/1.2 var(--sans);color:#e5aab3;letter-spacing:-.03em}.x-policy-side span{font-size:.76rem;line-height:1.55;color:#c2cfd5;display:block;margin-top:8px}.x-policy-side a{color:inherit}.x-editorial{border-top:1px solid #45515a;padding:25px 0 0;display:grid;grid-template-columns:1fr 1.5fr;gap:65px}.x-editorial h2{font:600 1.6rem/1.3 var(--serif);letter-spacing:-.02em;margin:0}.x-editorial p{font-size:.94rem;color:#c2cfd5;line-height:1.65;margin:0}.x-routes{background:var(--fpp-paper);border-bottom:1px solid var(--fpp-line);padding:32px 0}.x-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.x-paths a{display:block;padding:0 27px;text-decoration:none;color:var(--fpp-dark);border-left:1px solid #c8d1d0}.x-paths a:first-child{padding-left:0;border:0}.x-paths span{font-size:.74rem;color:var(--fpp-accent);letter-spacing:.09em;text-transform:uppercase}.x-paths strong{display:block;font:600 1.2rem/1.35 var(--serif);margin:8px 0}.x-paths p{font-size:.88rem;line-height:1.6;color:#52626d;margin:0}.x-paths a:hover strong{text-decoration:underline;text-underline-offset:4px}
.x-verify{font-size:.78rem;padding:14px 0;color:#566775;display:flex;flex-wrap:wrap;gap:10px 25px;align-items:center;border-bottom:1px solid var(--fpp-line)}.x-verify a{color:inherit}.x-reader-head{padding:42px 0;border-bottom:1px solid var(--fpp-line);background:var(--fpp-paper)}.x-reader-head h1{font:600 clamp(2rem,4vw,3.4rem)/1.15 var(--serif);letter-spacing:-.035em;margin:0 0 20px}.x-reader-head .lead{font-size:1.07rem;line-height:1.8;max-width:850px;color:#4d616e;margin-bottom:0}.x-reader-head nav{font-size:.875rem;display:flex;gap:18px;flex-wrap:wrap;margin-top:23px}.x-section{padding:54px 0}.x-section h2{font:600 clamp(1.6rem,3vw,2.5rem)/1.25 var(--serif);letter-spacing:-.025em}.x-section p{line-height:1.8}.x-callout{background:#eef2f2;border-left:3px solid var(--fpp-accent);padding:22px 26px;margin:24px 0;font-size:.94rem;line-height:1.75}.x-callout strong{display:block;margin-bottom:6px}.x-table-wrap{overflow:auto;border:1px solid var(--fpp-line);border-radius:2px}.x-table{border-collapse:collapse;width:100%;font-size:.92rem;min-width:480px}.x-table caption{text-align:left;padding:18px 20px;font-weight:600;color:var(--fpp-dark)}.x-table th,.x-table td{text-align:right;padding:14px 18px;border-top:1px solid var(--fpp-line);font-variant-numeric:tabular-nums}.x-table th:first-child,.x-table td:first-child{text-align:left}.x-table thead{background:#f1f4f3;color:#445663}.x-table tbody tr:hover{background:#f9faf7}.x-comp-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:17px 24px;border-top:1px solid var(--rule);background:#f8faf9}.x-comp-tools button{border:1px solid #b8c6cc;background:white;color:#13212b;font:500 .85rem var(--sans);padding:10px 14px;min-height:44px;cursor:pointer}.x-comp-tools button:hover{background:#edf1f2}.x-comp-tools output{font-size:.8rem;color:#52626d}.j-comp-toolbar{gap:17px}.j-segments{flex-wrap:wrap}.j-segments button{min-height:44px}.j-year-label select{min-height:44px}.j-result-number{font-variant-numeric:tabular-nums}.j-comp-basis{grid-template-columns:1fr auto}.j-disclosure summary{min-height:56px}.j-components caption{font-size:.8rem;color:#52626d}.x-related{background:var(--fpp-paper);border-top:1px solid var(--fpp-line);padding:30px 0}.x-related .j-frame{display:flex;gap:16px 28px;flex-wrap:wrap;align-items:center;font-size:.85rem}.x-related strong{color:#13212b}.x-related a{color:#495e6b}.x-independence{font-size:.78rem!important;border-top:1px solid var(--fpp-line);padding-top:17px;margin-top:16px!important;line-height:1.6!important}.x-explorer-frame{width:100%;height:min(1100px,85vh);min-height:600px;border:1px solid var(--fpp-line);background:white;margin-top:25px}.x-explorer-frame[hidden]{display:none}.x-explorer-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.x-explorer-actions>p{font-size:.8rem;color:#52626d}.x-research-search{display:flex;flex-direction:column;gap:9px;font-size:.85rem;max-width:680px;margin:25px 0}.x-research-search input{font:400 1rem var(--sans);padding:15px 18px;background:white;border:1px solid #a5b6bd;border-radius:2px;min-height:48px}.x-library{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.x-library article{border:1px solid var(--fpp-line);padding:27px;background:white;display:flex;flex-direction:column}.x-library article[hidden]{display:none}.x-library h2{font-size:1.25rem;margin:0 0 12px}.x-library h2 a{color:var(--fpp-dark);text-decoration:none}.x-library h2 a:hover{text-decoration:underline}.x-library p{font-size:.9rem;color:#536672;line-height:1.7;margin:0}.x-library small{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--fpp-accent);margin-bottom:10px}.x-source-review{display:grid;grid-template-columns:1fr 1fr;gap:20px}.x-source-review article{border:1px solid var(--fpp-line);padding:22px}.x-source-review h3{font:600 1.15rem var(--serif);margin:0 0 12px}.x-source-review p{font-size:.88rem;line-height:1.7;margin:0 0 12px}.x-source-review a{font-size:.85rem}.a-figure img{height:auto}.fpp-footer{background:#fff}.j-bar-fill{transition:width .2s ease}.receipt-drawer[hidden],.receipt-backdrop[hidden]{display:none!important}
@media(max-width:950px){.x-hero-grid{gap:32px}.x-hero h1{font-size:3.2rem}.x-zero{font-size:20vw}.x-editorial{gap:35px}.x-policy-side{grid-template-columns:1fr}.fpp-brand span{max-width:125px}.x-paths a{padding-inline:18px}}
@media(max-width:700px){html{scroll-padding-top:85px}.fpp-header-inner{min-height:68px}.fpp-brand span{max-width:none}.x-hero-grid{grid-template-columns:1fr;padding:35px 0;gap:35px}.x-hero h1{font-size:clamp(2.2rem,8.7vw,3.4rem);max-width:600px;margin-bottom:22px}.x-hero p.x-intro{font-size:1rem}.x-policy{display:grid;grid-template-columns:.9fr 1fr;gap:20px;align-items:center;border-top:1px solid #45515a;padding-top:28px}.x-zero{font-size:27vw;margin:0 0 14px}.x-policy-side{border:0;padding:0;gap:20px}.x-number-label{font-size:.8rem;margin:0}.x-policy-side strong{font-size:1.65rem}.x-policy-side span{font-size:.74rem}.x-editorial{grid-template-columns:1fr;gap:16px;padding-top:25px}.x-editorial h2{font-size:1.35rem}.x-edition{font-size:.65rem;gap:12px;line-height:1.6}.x-edition span:last-child{text-align:right}.x-hero-note{font-size:.75rem!important}.x-routes{padding:25px 0}.x-paths{grid-template-columns:1fr;gap:22px}.x-paths a,.x-paths a:first-child{border:0;padding:0 0 20px;border-bottom:1px solid #c8d1d0}.x-paths a:last-child{border:0;padding-bottom:0}.x-paths strong{font-size:1.12rem}.x-paths p{font-size:.85rem}.x-reader-head{padding:30px 0}.x-reader-head .lead{font-size:1rem}.x-section{padding:35px 0}.x-library{grid-template-columns:1fr}.x-source-review{grid-template-columns:1fr}.j-comp-basis{display:block}.j-comp-basis a{display:inline-block;margin-top:12px}.x-comp-tools{padding:15px}.x-table th,.x-table td{padding:12px}.x-actions .x-button{font-size:.85rem;padding:12px 15px}.x-verify{font-size:.72rem;gap:8px 15px}.x-related .j-frame{align-items:start}.x-related strong{flex-basis:100%}.x-explorer-frame{min-height:650px}.fpp-nav .header-receipts{justify-content:center;margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.j-bar-fill{transition:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.fpp-header,.x-actions,.x-comp-tools,.x-related,.receipt-backdrop,.receipt-drawer{display:none!important}.x-hero{background:white;color:#13212b}.x-hero p,.x-hero-note,.x-number-label,.x-policy-side span{color:#13212b!important}.x-hero-grid{padding:20px 0}.a-leadership,.a-close{background:white;color:#13212b}.a-leadership p{color:#13212b}.x-zero{font-size:8rem}.x-hero h1{font-size:2.5rem}.x-library{display:block}.x-library article{break-inside:avoid}.x-explorer-frame{display:none}.j-components{break-inside:avoid}}

.x-kicker{color:#8e2b39}
.x-hero .x-kicker{color:#cf9ca4}
.a-leadership .j-number{color:#dda8ae}
