/* Canonical Evidence Architecture — evidence layer, lab stats, diagnostic tool */

.cea-evidence {
  margin: 2rem 0;
  padding: 1.25rem 1.5rem;
  border: 1px solid var(--card-border, #e2e8f0);
  border-radius: 16px;
  background: #f8fafc;
}
.cea-evidence__title {
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin: 0 0 1rem;
  color: #64748b;
}
.cea-evidence__dl {
  display: grid;
  gap: 0.75rem;
  margin: 0;
}
.cea-evidence__dl div {
  display: grid;
  grid-template-columns: minmax(8rem, 11rem) 1fr;
  gap: 0.5rem;
}
.cea-evidence__dl dt {
  font-size: 0.8rem;
  color: #64748b;
  font-weight: 600;
}
.cea-evidence__dl dd {
  margin: 0;
  font-size: 0.95rem;
}
.cea-evidence__links {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 1rem 0 0;
}
.cea-evidence__links a {
  font-weight: 600;
}

.cea-lab-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 1rem;
  margin: 1.5rem 0;
}
.cea-lab-stat {
  padding: 1rem 1.1rem;
  border-radius: 16px;
  background: rgba(7, 18, 31, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff;
}
.cea-lab-stat strong {
  display: block;
  font-size: 1.75rem;
  font-family: var(--font-display, Georgia, serif);
  font-weight: 600;
}
.cea-lab-stat span {
  font-size: 0.8rem;
  opacity: 0.8;
}

.cea-lab-wrap {
  background: #071625;
  padding: 2rem 0 1rem;
}
.cea-lab-stats {
  width: var(--home-hero-max, min(100% - 48px, 1100px));
  margin: 0 auto 1.25rem;
}

.cea-experiment {
  width: var(--home-hero-max, min(100% - 48px, 1100px));
  margin: 0 auto 2.5rem;
  padding: 1.25rem 1.5rem;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #fff;
  position: relative;
  z-index: 2;
}
.cea-experiment p { margin: 0.35rem 0; }
.cea-experiment a { color: #fff; font-weight: 600; }

.cea-diag-exam {
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--nrlc-border, #dbe3ea);
  border-radius: 20px;
  background: var(--nrlc-surface-blue, #f3f8fc);
}
.cea-diag-exam__intro {
  max-width: 48rem;
}
.cea-diag-form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: end;
  margin: 2rem 0 1rem;
}
.cea-diag-form label {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.85rem;
  flex: 1 1 16rem;
}
.cea-diag-form input {
  min-height: 3.25rem;
  padding: 0.8rem 1rem;
  border: 1px solid var(--nrlc-border-strong, #aebdca);
  border-radius: 8px;
  background: var(--nrlc-surface, #fff);
  color: inherit;
  font: inherit;
}
.cea-diag-form input:focus {
  outline: 3px solid rgba(37, 99, 235, 0.2);
  border-color: var(--nrlc-accent, #2563eb);
}
.cea-diag-scope,
.cea-diag-notes {
  max-width: 52rem;
  color: var(--nrlc-text-muted, #526171);
  font-size: 0.9rem;
}
.cea-diag-domain-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 2rem 0 0;
  padding: 0;
  border-top: 1px solid var(--nrlc-border, #dbe3ea);
  list-style: none;
}
.cea-diag-domain-list li {
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 1rem;
  padding: 1.5rem 1.25rem 1.5rem 0;
  border-bottom: 1px solid var(--nrlc-border, #dbe3ea);
}
.cea-diag-domain-list li:nth-child(odd) {
  margin-right: 1.5rem;
}
.cea-diag-domain-list__number {
  color: var(--nrlc-text-muted, #64748b);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
}
.cea-diag-domain-list h3 {
  margin: 0 0 0.35rem;
  font-size: 1.05rem;
}
.cea-diag-domain-list p {
  margin: 0;
  color: var(--nrlc-text-muted, #526171);
}
.cea-diag-results {
  border-top: 1px solid var(--nrlc-border, #dbe3ea);
}
.cea-diag-results__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
}
.cea-diag-result-meta {
  color: var(--nrlc-text-muted, #526171);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.85rem;
}
.cea-diag-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 2rem 0 1rem;
  overflow: hidden;
  border: 1px solid var(--nrlc-border, #dbe3ea);
  border-radius: 12px;
  background: var(--nrlc-border, #dbe3ea);
}
.cea-diag-summary__item {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
  padding: 1.25rem 1.5rem;
  background: var(--nrlc-surface, #fff);
}
.cea-diag-summary__item strong {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  line-height: 1;
}
.cea-diag-summary__item span {
  color: var(--nrlc-text-muted, #526171);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.cea-diag-summary__item--pass strong,
.cea-diag-badge--pass {
  color: #16734a;
}
.cea-diag-summary__item--review strong,
.cea-diag-badge--review {
  color: #8a5a00;
}
.cea-diag-summary__item--fail strong,
.cea-diag-badge--fail {
  color: #b42318;
}
.cea-diag-findings {
  margin-top: 2.5rem;
}
.cea-diag-findings__title {
  margin: 0 0 1rem;
  font-size: 1.25rem;
}
.cea-diag-finding {
  margin: 0 0 1rem;
  padding: 1.35rem 1.5rem;
  border: 1px solid var(--nrlc-border, #dbe3ea);
  border-left-width: 4px;
  border-radius: 8px;
  background: var(--nrlc-surface, #fff);
}
.cea-diag-finding--pass { border-left-color: #16734a; }
.cea-diag-finding--review { border-left-color: #b7791f; }
.cea-diag-finding--fail { border-left-color: #b42318; }
.cea-diag-finding__heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 1rem;
}
.cea-diag-finding__heading h3 {
  margin: 0.2rem 0 0;
  font-size: 1.1rem;
}
.cea-diag-finding__domain {
  margin: 0;
  color: var(--nrlc-text-muted, #526171);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.cea-diag-badge {
  flex: 0 0 auto;
  padding: 0.3rem 0.5rem;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}
.cea-diag-finding__summary {
  font-size: 1.05rem;
}
.cea-diag-finding h4 {
  margin: 1.25rem 0 0.35rem;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.cea-diag-evidence {
  margin: 0;
  border-top: 1px solid var(--nrlc-border, #dbe3ea);
}
.cea-diag-evidence__row {
  display: grid;
  grid-template-columns: minmax(9rem, 0.7fr) minmax(0, 2fr);
  gap: 1rem;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--nrlc-border, #dbe3ea);
}
.cea-diag-evidence dt {
  color: var(--nrlc-text-muted, #526171);
  font-size: 0.8rem;
  font-weight: 700;
}
.cea-diag-evidence dd {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  margin: 0;
}
.cea-diag-evidence__value {
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.8rem;
}
.cea-diag-evidence__source,
.cea-diag-method-link {
  flex: 0 0 auto;
  font-size: 0.8rem;
  font-weight: 700;
}
.cea-diag-method-link {
  display: inline-block;
  margin-top: 1rem;
}
.cea-diag-all-checks {
  margin-top: 2rem;
  border-top: 1px solid var(--nrlc-border, #dbe3ea);
}
.cea-diag-all-checks > summary {
  padding: 1rem 0;
  cursor: pointer;
  font-weight: 700;
}
.cea-diag-all-checks .cea-diag-finding {
  padding: 0.9rem 1rem;
}
.cea-diag-guide-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem 2rem;
  padding-left: 1.1rem;
}
.cea-diag-status[aria-live] {
  min-height: 1.5rem;
}
.cea-diag-form button:disabled {
  opacity: 0.6;
}

@media (max-width: 640px) {
  .cea-evidence__dl div {
    grid-template-columns: 1fr;
  }
  .cea-diag-domain-list,
  .cea-diag-guide-list {
    grid-template-columns: 1fr;
  }
  .cea-diag-domain-list li:nth-child(odd) {
    margin-right: 0;
  }
  .cea-diag-results__header {
    display: block;
  }
  .cea-diag-summary {
    grid-template-columns: 1fr;
  }
  .cea-diag-evidence__row {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
  .cea-diag-evidence dd {
    display: grid;
  }
}

/* Decision Traces — canonical method */

.nrlc-method {
  --method-line: var(--nrlc-border, #dbe3ea);
  --method-muted: var(--nrlc-text-muted, #526171);
}
.nrlc-method .section__content {
  max-width: 940px;
  margin-inline: auto;
}
.nrlc-method-hero {
  padding: clamp(2.25rem, 6vw, 5rem) 0 clamp(2rem, 5vw, 4rem);
  border-bottom: 1px solid var(--method-line);
}
.nrlc-method-hero h2 {
  max-width: 18ch;
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 600;
  letter-spacing: -0.04em;
  line-height: 1;
}
.nrlc-method-hero__lede {
  max-width: 46rem;
  margin: 0;
  color: var(--method-muted);
  font-size: clamp(1.15rem, 2.5vw, 1.5rem);
  line-height: 1.55;
}
.nrlc-method-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  margin-top: 2rem;
  color: var(--method-muted);
  font-size: 0.8rem;
}
.nrlc-method-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.25rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--method-line);
}
.nrlc-method-nav a {
  font-size: 0.85rem;
  font-weight: 700;
}
.nrlc-method-section {
  padding: clamp(2.5rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--method-line);
}
.nrlc-method-section > h2 {
  max-width: 24ch;
  margin: 0.5rem 0 1.25rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.nrlc-method-section > p,
.nrlc-method-section > ul {
  max-width: 48rem;
}
.nrlc-distinction-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: 2rem;
  overflow: hidden;
  border: 1px solid var(--method-line);
  border-radius: 12px;
  background: var(--method-line);
}
.nrlc-distinction-grid article {
  padding: clamp(1.25rem, 3vw, 2rem);
  background: var(--nrlc-surface, #fff);
}
.nrlc-distinction-grid article > span,
.nrlc-trace__marker {
  color: var(--method-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
}
.nrlc-distinction-grid h3 {
  margin: 0.5rem 0;
  font-size: 1.15rem;
}
.nrlc-distinction-grid p {
  margin: 0.4rem 0;
  color: var(--method-muted);
}
.nrlc-method-example {
  padding-top: 0.75rem;
  border-top: 1px solid var(--method-line);
  font-size: 0.88rem;
}
.nrlc-method-callout {
  margin-top: 1.5rem;
  padding: 1.25rem 1.5rem;
  border-left: 4px solid var(--nrlc-accent, #2563eb);
  background: var(--nrlc-surface-blue, #f3f8fc);
  font-weight: 600;
}
.nrlc-trace {
  margin: 2rem 0 0;
  padding: 0;
  list-style: none;
}
.nrlc-trace > li {
  position: relative;
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: 1.25rem;
  padding-bottom: 2.5rem;
}
.nrlc-trace > li:not(:last-child)::before {
  position: absolute;
  top: 1.5rem;
  bottom: 0.5rem;
  left: 1.1rem;
  width: 1px;
  background: var(--method-line);
  content: "";
}
.nrlc-trace__marker {
  position: relative;
  z-index: 1;
  align-self: start;
  width: 2.25rem;
  height: 2.25rem;
  padding-top: 0.7rem;
  border: 1px solid var(--method-line);
  border-radius: 50%;
  background: var(--nrlc-surface, #fff);
  text-align: center;
}
.nrlc-trace__content {
  padding: 0 0 1rem;
}
.nrlc-trace__label {
  margin: 0 0 0.35rem;
  color: var(--nrlc-accent, #2563eb);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.nrlc-trace__content h3 {
  max-width: 34ch;
  margin: 0 0 0.75rem;
  font-size: clamp(1.2rem, 2.5vw, 1.55rem);
  line-height: 1.25;
}
.nrlc-trace__content > p {
  max-width: 46rem;
}
.nrlc-trace-evidence {
  margin: 1.25rem 0;
  border-top: 1px solid var(--method-line);
}
.nrlc-trace-evidence div {
  display: grid;
  grid-template-columns: minmax(9rem, 0.7fr) minmax(0, 2fr);
  gap: 1rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--method-line);
}
.nrlc-trace-evidence dt {
  color: var(--method-muted);
  font-size: 0.82rem;
  font-weight: 700;
}
.nrlc-trace-evidence dd {
  min-width: 0;
  margin: 0;
}
.nrlc-trace-evidence code {
  overflow-wrap: anywhere;
}
.nrlc-method-procedure {
  max-width: 48rem;
  margin-top: 2rem;
  padding: 0;
  counter-reset: method-step;
  list-style: none;
}
.nrlc-method-procedure li {
  position: relative;
  padding: 1rem 0 1rem 3.5rem;
  border-top: 1px solid var(--method-line);
  counter-increment: method-step;
}
.nrlc-method-procedure li::before {
  position: absolute;
  top: 1rem;
  left: 0;
  color: var(--method-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.8rem;
  content: counter(method-step, decimal-leading-zero);
}
.nrlc-method-rule-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}
.nrlc-method-rule {
  padding: 1.25rem;
  border: 1px solid var(--method-line);
  border-top-width: 4px;
  border-radius: 8px;
}
.nrlc-method-rule > strong {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
}
.nrlc-method-rule p {
  margin-bottom: 0;
  color: var(--method-muted);
}
.nrlc-method-rule--pass { border-top-color: #16734a; }
.nrlc-method-rule--review { border-top-color: #b7791f; }
.nrlc-method-rule--fail { border-top-color: #b42318; }
.nrlc-method-record {
  max-width: 48rem;
  padding: 1.5rem;
  overflow-x: auto;
  border: 1px solid var(--method-line);
  border-radius: 8px;
  background: var(--nrlc-ink, #071625);
  color: #fff;
  font-size: 0.82rem;
  line-height: 1.7;
}
.nrlc-method-next {
  border-bottom: 0;
}

@media (max-width: 700px) {
  .nrlc-distinction-grid,
  .nrlc-method-rule-grid {
    grid-template-columns: 1fr;
  }
  .nrlc-trace > li {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: 0.75rem;
  }
  .nrlc-trace-evidence div {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }
}

/* Canonical services — evidence-led engagement pattern */

.nrlc-service-method {
  --service-line: var(--nrlc-border, #dbe3ea);
  --service-muted: var(--nrlc-text-muted, #526171);
}
.nrlc-service-method__intro {
  max-width: 52rem;
  padding: clamp(2.5rem, 6vw, 5rem) 0;
}
.nrlc-service-method__intro h2,
.nrlc-service-method__outputs h2,
.nrlc-service-method__methods h2,
.nrlc-service-method__cta h2 {
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.nrlc-service-method__chain {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--service-line);
  border-left: 1px solid var(--service-line);
}
.nrlc-service-method__chain article {
  position: relative;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-right: 1px solid var(--service-line);
  border-bottom: 1px solid var(--service-line);
}
.nrlc-service-method__step {
  display: block;
  margin-bottom: 2.5rem;
  color: var(--service-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}
.nrlc-service-method__chain h3 {
  max-width: 24ch;
  margin: 0.5rem 0 1rem;
  font-size: clamp(1.25rem, 2.5vw, 1.65rem);
  line-height: 1.2;
}
.nrlc-service-method__chain article > p:not(.nrlc-eyebrow) {
  color: var(--service-muted);
}
.nrlc-service-method__evidence {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--service-line);
  font-size: 0.88rem;
}
.nrlc-service-method__outputs,
.nrlc-service-method__methods,
.nrlc-service-method__cta {
  padding: clamp(2.75rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--service-line);
}
.nrlc-service-method__outputs {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(2rem, 6vw, 5rem);
}
.nrlc-service-method__outputs ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.nrlc-service-method__outputs li {
  padding: 0.9rem 0;
  border-top: 1px solid var(--service-line);
}
.nrlc-service-method__outputs li::before {
  margin-right: 0.75rem;
  color: var(--nrlc-accent, #2563eb);
  content: "—";
}
.nrlc-service-method__methods > h2 {
  max-width: 22ch;
}
.nrlc-service-method__links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}
.nrlc-service-method__links a {
  display: flex;
  min-height: 10rem;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.25rem;
  border: 1px solid var(--service-line);
  border-radius: 8px;
  color: inherit;
  text-decoration: none;
}
.nrlc-service-method__links a:hover {
  border-color: var(--nrlc-accent, #2563eb);
}
.nrlc-service-method__links span {
  color: var(--service-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}
.nrlc-service-method__cta {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  border-bottom: 0;
}
.nrlc-service-method__cta h2 {
  max-width: 22ch;
  margin-bottom: 0;
}
.nrlc-service-method__cta .nrlc-button {
  flex: 0 0 auto;
}

@media (max-width: 760px) {
  .nrlc-service-method__chain,
  .nrlc-service-method__outputs,
  .nrlc-service-method__links {
    grid-template-columns: 1fr;
  }
  .nrlc-service-method__cta {
    align-items: start;
    flex-direction: column;
  }
  .nrlc-service-method__links a {
    min-height: 0;
  }
}

/* Work — evidence-gated casework ledger */

.nrlc-casework {
  --case-line: var(--nrlc-border, #dbe3ea);
  --case-muted: var(--nrlc-text-muted, #526171);
}
.nrlc-casework__status {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(2rem, 8vw, 7rem);
  align-items: end;
  padding: clamp(2.5rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--case-line);
}
.nrlc-casework__status > div:first-child {
  max-width: 50rem;
}
.nrlc-casework__status h2,
.nrlc-casework__section > h2 {
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.nrlc-casework__count {
  min-width: 9rem;
  padding-left: 2rem;
  border-left: 1px solid var(--case-line);
}
.nrlc-casework__count strong,
.nrlc-casework__count span {
  display: block;
}
.nrlc-casework__count strong {
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(4rem, 9vw, 7rem);
  font-weight: 600;
  line-height: 0.8;
}
.nrlc-casework__count span {
  margin-top: 1rem;
  color: var(--case-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.nrlc-casework__notice {
  margin: clamp(2rem, 5vw, 4rem) 0 0;
  padding: 1.5rem;
  border-left: 4px solid var(--nrlc-accent, #2563eb);
  background: var(--nrlc-surface-blue, #f3f8fc);
}
.nrlc-casework__notice p:last-child {
  max-width: 58rem;
  margin-bottom: 0;
}
.nrlc-casework__section {
  padding: clamp(2.75rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--case-line);
}
.nrlc-casework__section > h2 {
  max-width: 24ch;
}
.nrlc-casework__chain {
  margin: 2rem 0 0;
  padding: 0;
  border-top: 1px solid var(--case-line);
  list-style: none;
}
.nrlc-casework__chain li {
  display: grid;
  grid-template-columns: 4rem minmax(10rem, 0.7fr) minmax(0, 1.3fr);
  gap: 1.5rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--case-line);
}
.nrlc-casework__chain li > span {
  color: var(--case-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}
.nrlc-casework__chain h3 {
  margin: 0;
  font-size: 1.05rem;
}
.nrlc-casework__chain p {
  margin: 0;
  color: var(--case-muted);
}
.nrlc-casework__chain li > div {
  display: contents;
}
.nrlc-casework__comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: 2rem;
  overflow: hidden;
  border: 1px solid var(--case-line);
  border-radius: 10px;
  background: var(--case-line);
}
.nrlc-casework__comparison article {
  padding: clamp(1.5rem, 4vw, 2.5rem);
  background: var(--nrlc-surface, #fff);
}
.nrlc-casework__comparison h3 {
  max-width: 26ch;
  margin: 0.5rem 0 1rem;
  font-size: clamp(1.2rem, 2.5vw, 1.55rem);
  line-height: 1.25;
}
.nrlc-casework__comparison article > p:not(.nrlc-eyebrow) {
  color: var(--case-muted);
}
.nrlc-casework__section .nrlc-method-record {
  margin-top: 2rem;
}

@media (max-width: 760px) {
  .nrlc-casework__status {
    grid-template-columns: 1fr;
  }
  .nrlc-casework__count {
    padding: 1.5rem 0 0;
    border-top: 1px solid var(--case-line);
    border-left: 0;
  }
  .nrlc-casework__chain li {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: 0.75rem;
  }
  .nrlc-casework__chain li > div {
    display: block;
  }
  .nrlc-casework__chain p {
    margin-top: 0.4rem;
  }
  .nrlc-casework__comparison {
    grid-template-columns: 1fr;
  }
}

/* People and organization — accountable trust records */

.nrlc-trust,
.nrlc-profile,
.nrlc-about {
  --trust-line: var(--nrlc-border, #dbe3ea);
  --trust-muted: var(--nrlc-text-muted, #526171);
}
.nrlc-trust__intro,
.nrlc-trust__rules,
.nrlc-profile > section,
.nrlc-about > section {
  padding: clamp(2.75rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--trust-line);
}
.nrlc-trust h2,
.nrlc-profile h2,
.nrlc-about h2 {
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.nrlc-trust__intro > *,
.nrlc-profile__boundary > *,
.nrlc-about__boundary > * {
  max-width: 58rem;
}
.nrlc-trust__people {
  border-top: 1px solid var(--trust-line);
}
.nrlc-trust__people > article {
  padding: clamp(2rem, 5vw, 4rem) 0;
  border-bottom: 1px solid var(--trust-line);
}
.nrlc-trust__person-header {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
}
.nrlc-trust__person-header > span {
  padding-top: 0.35rem;
  color: var(--trust-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.78rem;
}
.nrlc-trust__person-header h2 {
  margin-top: 0.4rem;
}
.nrlc-trust dl,
.nrlc-profile dl,
.nrlc-about dl {
  margin: 2rem 0;
  border-top: 1px solid var(--trust-line);
}
.nrlc-trust dl div,
.nrlc-profile dl div,
.nrlc-about dl div {
  display: grid;
  grid-template-columns: minmax(11rem, 0.65fr) minmax(0, 1.35fr);
  gap: 1.5rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--trust-line);
}
.nrlc-trust dt,
.nrlc-profile dt,
.nrlc-about dt {
  color: var(--trust-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.nrlc-trust dd,
.nrlc-profile dd,
.nrlc-about dd {
  margin: 0;
}
.nrlc-profile__header,
.nrlc-about__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(2rem, 6vw, 5rem);
  align-items: end;
  padding: clamp(3rem, 7vw, 6rem) 0;
  border-bottom: 1px solid var(--trust-line);
}
.nrlc-about__header {
  grid-template-columns: minmax(0, 58rem);
}
.nrlc-profile__header h1,
.nrlc-about__header h1 {
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(2.7rem, 7vw, 5.75rem);
  letter-spacing: -0.055em;
  line-height: 0.98;
}
.nrlc-profile__header img {
  width: 12.5rem;
  height: auto;
  border-radius: 8px;
  filter: grayscale(20%);
}
.nrlc-profile__role {
  color: var(--trust-muted);
  font-weight: 700;
}
.nrlc-profile__work-grid,
.nrlc-about__people {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 2rem;
  overflow: hidden;
  border: 1px solid var(--trust-line);
  border-radius: 10px;
  background: var(--trust-line);
}
.nrlc-about__people {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.nrlc-profile__work-grid article,
.nrlc-about__people article {
  padding: clamp(1.35rem, 3vw, 2rem);
  background: var(--nrlc-surface, #fff);
}
.nrlc-profile__work-grid h3,
.nrlc-about__people h3 {
  margin: 0 0 0.75rem;
  font-size: 1.2rem;
}
.nrlc-profile__signal,
.nrlc-profile__work-grid p,
.nrlc-about__people p {
  color: var(--trust-muted);
}
.nrlc-profile__boundary,
.nrlc-about__boundary {
  margin-top: clamp(2rem, 5vw, 4rem);
  padding-right: clamp(1.5rem, 5vw, 4rem) !important;
  padding-left: clamp(1.5rem, 5vw, 4rem) !important;
  border: 1px solid var(--trust-line);
  border-left: 4px solid var(--nrlc-accent, #2563eb);
  background: var(--nrlc-surface-blue, #f3f8fc);
}
.nrlc-profile__related {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  padding: 2rem 0;
}
.nrlc-about__sequence {
  margin: 2rem 0;
  padding: 0;
  border-top: 1px solid var(--trust-line);
  list-style: none;
  counter-reset: trust-step;
}
.nrlc-about__sequence li {
  display: grid;
  grid-template-columns: minmax(13rem, 0.7fr) minmax(0, 1.3fr);
  gap: 1.5rem;
  padding: 1.2rem 0 1.2rem 3.5rem;
  border-bottom: 1px solid var(--trust-line);
  counter-increment: trust-step;
}
.nrlc-about__sequence li::before {
  content: counter(trust-step, decimal-leading-zero);
  position: absolute;
  margin-left: -3.5rem;
  color: var(--trust-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.78rem;
}
.nrlc-about__sequence span {
  color: var(--trust-muted);
}

@media (max-width: 760px) {
  .nrlc-trust dl div,
  .nrlc-profile dl div,
  .nrlc-about dl div,
  .nrlc-about__sequence li {
    grid-template-columns: 1fr;
    gap: 0.4rem;
  }
  .nrlc-profile__header {
    grid-template-columns: 1fr;
  }
  .nrlc-profile__header img {
    grid-row: 1;
    width: 8rem;
  }
  .nrlc-profile__work-grid,
  .nrlc-about__people {
    grid-template-columns: 1fr;
  }
}

/* Methods — admitted methodology collection */

.nrlc-methods-collection {
  --collection-line: var(--nrlc-border, #dbe3ea);
  --collection-muted: var(--nrlc-text-muted, #526171);
}
.nrlc-methods-collection__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(2rem, 8vw, 7rem);
  align-items: end;
  padding: clamp(2.75rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__intro > div:first-child {
  max-width: 58rem;
}
.nrlc-methods-collection h2 {
  margin: 0.5rem 0 1rem;
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(1.8rem, 4vw, 3rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
}
.nrlc-methods-collection__count {
  min-width: 10rem;
  padding-left: 2rem;
  border-left: 1px solid var(--collection-line);
}
.nrlc-methods-collection__count strong,
.nrlc-methods-collection__count span {
  display: block;
}
.nrlc-methods-collection__count strong {
  font-family: var(--nrlc-font-display, Georgia, serif);
  font-size: clamp(4rem, 9vw, 7rem);
  font-weight: 600;
  line-height: 0.8;
}
.nrlc-methods-collection__count span {
  margin-top: 1rem;
  color: var(--collection-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.nrlc-methods-collection__system,
.nrlc-methods-collection__composition,
.nrlc-methods-collection__admission {
  padding: clamp(2.75rem, 6vw, 5rem) 0;
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__system > h2,
.nrlc-methods-collection__composition > h2,
.nrlc-methods-collection__composition > p:last-child,
.nrlc-methods-collection__admission > h2 {
  max-width: 58rem;
}
.nrlc-methods-collection__system ol {
  margin: 2rem 0 0;
  padding: 0;
  border-top: 1px solid var(--collection-line);
  list-style: none;
}
.nrlc-methods-collection__system li {
  display: grid;
  grid-template-columns: 4rem minmax(13rem, 0.7fr) minmax(0, 1.3fr);
  gap: 1.5rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__system li > span {
  color: var(--collection-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.78rem;
}
.nrlc-methods-collection__system li > div {
  display: contents;
}
.nrlc-methods-collection__system p {
  margin: 0;
  color: var(--collection-muted);
}
.nrlc-methods-collection__records {
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__method {
  padding: clamp(3rem, 7vw, 6rem) 0;
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__method:last-child {
  border-bottom: 0;
}
.nrlc-methods-collection__method header {
  display: grid;
  grid-template-columns: 6rem minmax(0, 1fr);
  gap: 1.5rem;
}
.nrlc-methods-collection__method header > span {
  padding-top: 0.4rem;
  color: var(--collection-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.72rem;
  letter-spacing: 0.07em;
}
.nrlc-methods-collection__method dl {
  margin: 2rem 0;
  border-top: 1px solid var(--collection-line);
}
.nrlc-methods-collection__method dl div {
  display: grid;
  grid-template-columns: minmax(11rem, 0.55fr) minmax(0, 1.45fr);
  gap: 1.5rem;
  padding: 1.1rem 0;
  border-bottom: 1px solid var(--collection-line);
}
.nrlc-methods-collection__method dt {
  color: var(--collection-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.nrlc-methods-collection__method dd {
  margin: 0;
}
.nrlc-methods-collection__flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 2rem 0;
  border: 1px solid var(--collection-line);
  border-radius: 8px;
  overflow: hidden;
}
.nrlc-methods-collection__flow span {
  position: relative;
  display: flex;
  min-height: 6rem;
  align-items: center;
  padding: 1rem 1.75rem 1rem 1rem;
  border-right: 1px solid var(--collection-line);
  font-size: 0.86rem;
  font-weight: 700;
}
.nrlc-methods-collection__flow span:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: 0.45rem;
  color: var(--collection-muted);
}
.nrlc-methods-collection__flow span:last-child {
  border-right: 0;
}

@media (max-width: 760px) {
  .nrlc-methods-collection__intro {
    grid-template-columns: 1fr;
  }
  .nrlc-methods-collection__count {
    padding: 1.5rem 0 0;
    border-top: 1px solid var(--collection-line);
    border-left: 0;
  }
  .nrlc-methods-collection__system li {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: 0.75rem;
  }
  .nrlc-methods-collection__system li > div {
    display: block;
  }
  .nrlc-methods-collection__system p {
    margin-top: 0.4rem;
  }
  .nrlc-methods-collection__method header {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .nrlc-methods-collection__method dl div {
    grid-template-columns: 1fr;
    gap: 0.4rem;
  }
  .nrlc-methods-collection__flow {
    grid-template-columns: 1fr;
  }
  .nrlc-methods-collection__flow span {
    min-height: auto;
    border-right: 0;
    border-bottom: 1px solid var(--collection-line);
  }
  .nrlc-methods-collection__flow span:not(:last-child)::after {
    content: "↓";
  }
  .nrlc-methods-collection__flow span:last-child {
    border-bottom: 0;
  }
}
