:root {
  --ink: #19232c;
  --ink-soft: #27303b;
  --paper: #eef2f4;
  --paper-strong: #fbfcfa;
  --rule: #b7c0c9;
  --violet: #6759d6;
  --violet-soft: #e8e6f6;
  --ochre: #d8a83a;
  --teal: #159b91;
  --coral: #f16d58;
  --coral-ink: #963426;
  --blue: #3776e8;
  --muted: #62706b;
  --shadow: rgba(25, 35, 44, .16);
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: Pretendard, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
  letter-spacing: -.026em;
  overflow-wrap: break-word;
  word-break: keep-all;
}

body :is(p, dd, li) {
  text-wrap: pretty;
}

body :is(h1, h2, h3, .method-status-grid strong, .layer-readout strong) {
  text-wrap: balance;
}

body::before {
  position: fixed;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(rgba(25, 35, 44, .028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(25, 35, 44, .028) 1px, transparent 1px);
  background-size: 72px 72px;
  content: "";
  pointer-events: none;
}

::selection {
  color: var(--ink);
  background: var(--ochre);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input {
  font: inherit;
}

button {
  color: inherit;
  cursor: pointer;
}

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

.shell {
  width: min(calc(100% - 42px), 1440px);
  margin-inline: auto;
}

.skip-link {
  position: fixed;
  z-index: 100;
  top: 10px;
  left: 10px;
  padding: 11px 14px;
  border: 1px solid var(--ink);
  color: var(--ink);
  background: #d8fa5b;
  font-size: 13px;
  font-weight: 900;
  transform: translateY(-160%);
}

.skip-link:focus {
  transform: translateY(0);
}

.masthead {
  display: grid;
  min-height: 86px;
  grid-template-columns: auto 1fr auto;
  gap: 38px;
  align-items: center;
  border-bottom: 1px solid var(--ink);
}

.news-arrival[hidden] {
  display: none;
}

.news-arrival {
  position: fixed;
  z-index: 90;
  top: 104px;
  right: max(21px, calc((100vw - 1440px) / 2));
  display: grid;
  width: min(390px, calc(100vw - 42px));
  min-height: 88px;
  grid-template-columns: 12px 1fr auto;
  align-items: stretch;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  box-shadow: 7px 7px 0 var(--violet);
}

.news-arrival > span {
  background: var(--ochre);
}

.news-arrival p {
  display: grid;
  align-content: center;
  margin: 0;
  padding: 15px 18px;
}

.news-arrival strong {
  font-size: 15px;
  line-height: 1.3;
}

.news-arrival button {
  min-width: 108px;
  padding: 12px 16px;
  border: 0;
  border-left: 1px solid var(--ink);
  background: var(--ink);
  color: var(--paper-strong);
  font-size: 12px;
  font-weight: 850;
}

.news-arrival button:hover {
  background: var(--violet);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.wordmark {
  position: relative;
  display: block;
  width: 52px;
  height: 44px;
}

.wordmark span {
  position: absolute;
  top: -4px;
  left: 0;
  font-size: 44px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.18em;
  transform-origin: 52% 55%;
}

.wordmark span:first-child {
  top: 1px;
  left: 5px;
  color: var(--violet);
}

.wordmark span:last-child {
  color: var(--ink);
}

.brand-en,
.domain-label {
  font: 850 10px/1 var(--mono);
  letter-spacing: .14em;
}

.primary-nav {
  display: flex;
  align-items: center;
  gap: 24px;
}

.primary-nav a {
  position: relative;
  padding-block: 8px;
  color: #46514d;
  font-size: 14px;
  font-weight: 780;
}

.primary-nav a[aria-current="page"] {
  color: var(--ink);
}

.primary-nav a[aria-current="page"]::after {
  position: absolute;
  right: 0;
  bottom: -15px;
  left: 0;
  height: 3px;
  background: var(--violet);
  content: "";
}

.domain-label {
  color: var(--muted);
  letter-spacing: .03em;
}

.scope-strip {
  border-bottom: 1px solid var(--rule);
  background: rgba(251, 252, 250, .46);
}

.scope-strip > div {
  display: flex;
  min-height: 37px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #4c5954;
  font-size: 12px;
}

.scope-strip span:last-child {
  font-size: 11px;
  font-weight: 760;
  line-height: 1.4;
  text-align: right;
}

.hero {
  display: grid;
  grid-template-columns: minmax(340px, .84fr) minmax(500px, 1.16fr);
  gap: clamp(36px, 5vw, 80px);
  padding-block: 48px 54px;
  border-bottom: 1px solid var(--ink);
}

.hero-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: space-between;
}

.eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 19px;
  color: var(--muted);
  font: 820 11px/1.2 var(--mono);
  letter-spacing: .06em;
}

.eyebrow::before {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ochre);
  box-shadow: 0 0 0 4px rgba(216, 168, 58, .24);
  content: "";
}

.eyebrow.coral::before {
  background: var(--coral);
  box-shadow: 0 0 0 4px rgba(241, 109, 88, .18);
}

.hero h1,
.event-lead h1,
.event-empty h1,
.inspect-page h1,
.contact-page h1,
.method-page > header h1 {
  margin: 0;
  font-size: clamp(48px, 5.2vw, 76px);
  font-weight: 950;
  line-height: .98;
  letter-spacing: -.078em;
}

.hero h1 span {
  position: relative;
  z-index: 0;
  white-space: nowrap;
}

.hero h1 span::after {
  position: absolute;
  z-index: -1;
  right: -4px;
  bottom: .04em;
  left: -4px;
  height: .18em;
  background: var(--ochre);
  content: "";
  transform: skewX(-9deg);
}

.hero-description {
  max-width: 470px;
  margin: 25px 0 0;
  color: #46534e;
  font-size: 17px;
  line-height: 1.66;
}

.scope-note {
  max-width: 450px;
  margin: 22px 0 0;
  padding-left: 14px;
  border-left: 4px solid var(--violet);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.scope-note strong {
  color: var(--ink);
}

.hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin: 46px 0 18px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.hero-metrics div {
  min-width: 0;
  padding: 13px;
  background: var(--paper-strong);
}

.hero-metrics dt {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.hero-metrics dd {
  margin: 8px 0 4px;
  font: 900 23px/1 var(--mono);
}

.hero-metrics span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 750;
}

.text-action {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  font-size: 13px;
  font-weight: 900;
}

.text-action:hover {
  text-decoration: underline;
  text-decoration-color: var(--violet);
  text-decoration-thickness: 3px;
  text-underline-offset: 5px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.primary-action,
.secondary-action {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border: 1px solid var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.primary-action {
  color: var(--paper-strong);
  background: var(--ink);
}

.secondary-action {
  background: var(--paper-strong);
}

.primary-action:hover,
.primary-action:focus-visible {
  color: var(--ink);
  background: var(--ochre);
}

.secondary-action:hover,
.secondary-action:focus-visible {
  color: var(--paper-strong);
  background: var(--violet);
}

.layer-stage {
  position: relative;
  min-width: 0;
  min-height: 490px;
  padding: 24px 21px 22px;
}

.layer-stage::before {
  position: absolute;
  z-index: -1;
  inset: 0 2px 0 0;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  content: "";
}

.layer-stage::after {
  position: absolute;
  z-index: -2;
  inset: 17px -12px -12px 17px;
  border: 1px solid var(--violet);
  background: var(--violet-soft);
  content: "";
}

.tool-heading {
  display: flex;
  min-height: 30px;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  padding-inline: 5px;
  color: var(--muted);
  font-size: 12px;
}

.tool-heading strong {
  color: var(--ink);
  font-size: 13px;
}

.tool-heading span {
  font: 730 9px/1.3 var(--mono);
  letter-spacing: .05em;
  text-align: right;
}

.headline-stack {
  position: relative;
  min-height: var(--headline-stack-height, 340px);
  margin: 10px 10px 0;
}

.headline-sheet {
  position: absolute;
  z-index: var(--sheet-layer, 1);
  top: var(--sheet-top, 6px);
  left: var(--sheet-left, 7px);
  display: grid;
  width: min(94%, 650px);
  min-height: 112px;
  grid-template-columns: 52px 1fr;
  gap: 14px;
  align-items: start;
  padding: 17px 19px;
  border: 1px solid var(--ink);
  color: var(--ink);
  background: #f9faf7;
  box-shadow: 4px 4px 0 var(--shadow);
  text-align: left;
  transform: rotate(var(--sheet-rotation, -1.1deg));
}

button.headline-sheet::after {
  position: absolute;
  inset: -1px;
  border: 2px solid transparent;
  content: "";
  pointer-events: none;
}

.headline-sheet:nth-child(1) {
  z-index: 3;
  top: 6px;
  left: 7px;
  transform: rotate(-1.1deg);
}

.headline-sheet:nth-child(2) {
  z-index: 2;
  top: 111px;
  left: 25px;
  background: #f0efff;
  transform: rotate(.45deg);
}

.headline-sheet:nth-child(3) {
  z-index: 1;
  top: 216px;
  left: 2px;
  background: #f6f0df;
  transform: rotate(-.5deg);
}

.headline-sheet:nth-child(4n) {
  background: #e2f3f0;
}

.headline-sheet:nth-child(4n) .sheet-index {
  background: var(--teal);
}

.headline-sheet:nth-child(4n + 1):not(:first-child) {
  background: #f8e9e5;
}

.headline-sheet:nth-child(4n + 1):not(:first-child) .sheet-index {
  background: var(--coral);
}

button.headline-sheet[aria-pressed="true"] {
  z-index: 5;
  box-shadow: 9px 9px 0 rgba(103, 89, 214, .24);
}

button.headline-sheet[aria-pressed="true"]::after {
  border-color: var(--violet);
}

button.headline-sheet:nth-child(1)[aria-pressed="true"] {
  transform: translate(-8px, -6px) rotate(-1.35deg);
}

button.headline-sheet:nth-child(2)[aria-pressed="true"] {
  transform: translate(8px, -3px) rotate(.8deg);
}

button.headline-sheet:nth-child(3)[aria-pressed="true"] {
  transform: translate(-7px, 7px) rotate(-.8deg);
}

button.headline-sheet:nth-child(n + 4)[aria-pressed="true"] {
  transform: translate(-5px, -5px) rotate(var(--sheet-rotation, 0deg));
}

.sheet-index {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  color: var(--paper-strong);
  background: var(--ink);
  font: 900 15px/1 var(--mono);
}

.headline-sheet:nth-child(2) .sheet-index {
  background: var(--violet);
}

.headline-sheet:nth-child(3) .sheet-index {
  color: var(--ink);
  background: var(--ochre);
}

.sheet-copy {
  display: block;
  min-width: 0;
}

.sheet-copy small,
.sheet-copy strong,
.sheet-copy span {
  display: block;
}

.sheet-copy small {
  overflow: hidden;
  margin-bottom: 7px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sheet-copy .sheet-outlet {
  color: var(--ink);
  font-size: 13px;
  font-weight: 920;
  letter-spacing: -.03em;
}

.sheet-copy strong {
  display: -webkit-box;
  overflow: hidden;
  font-size: clamp(16px, 1.45vw, 20px);
  font-weight: 920;
  line-height: 1.22;
  letter-spacing: -.05em;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sheet-copy span {
  overflow: hidden;
  margin-top: 9px;
  color: var(--muted);
  font: 720 9px/1.3 var(--mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sheet-copy .sheet-time {
  margin-top: 8px;
  color: var(--muted);
  font-weight: 680;
}

.sheet-copy .sheet-action {
  margin-top: 5px;
  color: #4b5954;
  font-weight: 820;
}

.pending-sheet {
  cursor: default;
}

.layer-readout {
  position: absolute;
  z-index: 7;
  right: 1px;
  bottom: 14px;
  width: min(290px, 50%);
  min-height: 132px;
  padding: 16px;
  border: 1px solid var(--ink);
  color: var(--paper-strong);
  background: var(--ink);
  box-shadow: 5px 5px 0 rgba(216, 168, 58, .28);
}

.layer-readout small,
.layer-readout strong,
.layer-readout span {
  display: block;
}

.layer-readout small {
  margin-bottom: 8px;
  color: #f4c657;
  font: 800 10px/1 var(--mono);
  letter-spacing: .04em;
}

.layer-readout strong {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: -.04em;
}

.layer-readout span {
  margin-top: 8px;
  color: #c5ceca;
  font-size: 11px;
  line-height: 1.45;
}

.inspect-strip {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(480px, 1.28fr);
  gap: clamp(34px, 5vw, 76px);
  padding-block: 50px;
  border-bottom: 1px solid var(--ink);
}

.inspect-strip h2,
.section-heading h2,
.topography-copy h2,
.pending-section h2,
.method-cta h2,
.event-layer-section h2,
.event-evidence-grid h2,
.event-source-section h2,
.article-ledger h2 {
  margin: 0;
  font-size: clamp(33px, 4vw, 56px);
  font-weight: 940;
  line-height: 1;
  letter-spacing: -.075em;
}

.inspect-strip > div > p:last-child,
.topography-copy > div > p:last-child,
.pending-section > div > p,
.method-cta > p:not(.eyebrow) {
  max-width: 470px;
  margin: 19px 0 0;
  color: #4f5c57;
  font-size: 15px;
  line-height: 1.62;
}

.inspect-form {
  align-self: center;
}

.inspect-form label {
  display: block;
  margin-bottom: 9px;
  color: var(--muted);
  font: 800 10px/1 var(--mono);
  letter-spacing: .05em;
}

.inspect-form > div {
  display: grid;
  grid-template-columns: 1fr auto;
}

.inspect-form input {
  min-width: 0;
  height: 58px;
  padding-inline: 16px;
  border: 1px solid var(--ink);
  border-right: 0;
  border-radius: 0;
  color: var(--ink);
  background: var(--paper-strong);
  font-size: 16px;
  outline: 0;
}

.inspect-form input:focus {
  box-shadow: inset 0 -4px 0 var(--ochre);
}

.inspect-form input:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 2px;
}

.inspect-form button {
  min-width: 176px;
  min-height: 58px;
  padding-inline: 18px;
  border: 1px solid var(--ink);
  color: var(--paper-strong);
  background: var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.inspect-form button:hover {
  color: var(--ink);
  background: var(--ochre);
}

.inspect-result {
  display: grid;
  min-height: 57px;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 10px;
  padding: 10px 13px;
  border: 1px dashed var(--rule);
  color: #4f5c57;
  background: rgba(251, 252, 250, .55);
  font-size: 12px;
}

.inspect-result span {
  font: 800 9px/1.3 var(--mono);
  letter-spacing: .03em;
}

.inspect-result strong {
  min-width: 0;
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.inspect-result[data-state="matched_event"],
.inspect-result[data-state="legacy_pending"] {
  border-style: solid;
  border-color: var(--teal);
}

.inspect-result[data-state="naver_pending"] {
  border-style: solid;
  border-color: var(--ochre);
  box-shadow: inset 5px 0 0 var(--ochre);
}

.inspect-result[data-state="known_host_pending"] {
  border-style: solid;
  border-color: var(--ochre);
  box-shadow: inset 5px 0 0 var(--ochre);
}

.inspect-result[data-state="headline_group"] {
  border-style: solid;
  border-color: var(--violet);
  box-shadow: inset 5px 0 0 var(--violet);
}

.inspect-result[data-state="unsupported"],
.inspect-result[data-state="invalid_url"],
.inspect-result[data-state="load_error"] {
  border-style: solid;
  border-color: var(--coral);
}

.inspect-result a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.inspect-result-actions {
  display: flex;
  grid-column: 2;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: start;
}

.inspect-result-actions a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 8px 11px;
  border: 1px solid currentColor;
  color: var(--ink);
  background: var(--paper-strong);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
  text-decoration: none;
}

.inspect-result-actions a:hover,
.inspect-result-actions a:focus-visible {
  color: var(--paper-strong);
  background: var(--ink);
}

.news-headline-sheet:hover,
.news-headline-sheet:focus-visible,
.candidate-headline-link:hover,
.candidate-headline-link:focus-visible {
  z-index: 6;
  box-shadow: 9px 9px 0 rgba(103, 89, 214, .24);
}

.news-headline-sheet::after,
.candidate-headline-link::after {
  position: absolute;
  inset: -1px;
  border: 2px solid transparent;
  content: "";
  pointer-events: none;
}

.news-headline-sheet:hover::after,
.news-headline-sheet:focus-visible::after,
.candidate-headline-link:hover::after,
.candidate-headline-link:focus-visible::after {
  border-color: var(--violet);
}

.news-desk {
  padding-bottom: 68px;
  border-bottom: 1px solid var(--ink);
  scroll-margin-top: 18px;
}

.news-desk-heading {
  align-items: start;
}

.news-desk-grid {
  display: grid;
  grid-template-columns: minmax(260px, .62fr) minmax(560px, 1.38fr);
  grid-template-areas:
    "keywords search"
    "keywords results";
  border: 1px solid var(--ink);
  background: var(--ink);
  gap: 1px;
}

.keyword-rail {
  display: flex;
  min-width: 0;
  grid-area: keywords;
  flex-direction: column;
  padding: 25px;
  color: var(--paper-strong);
  background: var(--ink-soft);
}

.rail-label > span {
  display: block;
  margin-bottom: 18px;
  color: #b8c3bd;
  font: 760 9px/1.35 var(--mono);
  letter-spacing: .045em;
}

.rail-label > strong {
  display: block;
  font-size: clamp(25px, 2.2vw, 34px);
  font-weight: 930;
  line-height: 1.04;
  letter-spacing: -.065em;
}

.keyword-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 28px 0 20px;
  border: 1px solid #59645f;
  background: #59645f;
}

.keyword-list button {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 46px;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 9px 11px;
  border: 0;
  color: var(--paper-strong);
  background: var(--ink);
  text-align: left;
}

.keyword-list button:hover {
  color: var(--ink);
  background: var(--ochre);
}

.keyword-list button[aria-pressed="true"] {
  padding-left: 28px;
  color: var(--ink);
  background: var(--violet-soft);
  box-shadow: inset 0 0 0 2px var(--violet);
}

.keyword-list button[aria-pressed="true"]::before {
  position: absolute;
  left: 10px;
  content: "✓";
  font: 900 12px/1 var(--mono);
}

.keyword-list button span {
  overflow: hidden;
  font-size: 13px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.keyword-list button b {
  font: 780 10px/1 var(--mono);
}

.keyword-rail > p,
.keyword-empty {
  margin: 0;
  color: #bec8c3;
  font-size: 11px;
  line-height: 1.55;
}

.keyword-rail dl {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  margin: auto 0 0;
  padding-top: 28px;
}

.keyword-rail dl div {
  padding-top: 13px;
  border-top: 1px solid #59645f;
}

.keyword-rail dt {
  color: #aeb9b3;
  font-size: 10px;
  font-weight: 780;
}

.keyword-rail dd {
  margin: 7px 0 0;
  color: var(--paper-strong);
  font: 900 23px/1 var(--mono);
}

.news-search-panel,
.news-ledger-panel {
  min-width: 0;
  background: var(--paper-strong);
}

.news-search-panel {
  grid-area: search;
  padding: 25px;
  padding-bottom: 0;
}

.news-ledger-panel {
  grid-area: results;
  padding: 0 25px 25px;
  background: var(--paper-strong);
}

.title-search label {
  display: block;
  margin-bottom: 9px;
  color: var(--muted);
  font: 800 10px/1 var(--mono);
  letter-spacing: .05em;
}

.title-search > div {
  display: grid;
  grid-template-columns: 1fr auto;
}

.title-search input {
  min-width: 0;
  height: 56px;
  padding-inline: 15px;
  border: 1px solid var(--ink);
  border-right: 0;
  border-radius: 0;
  color: var(--ink);
  background: #fff;
  font-size: 16px;
  outline: 0;
}

.title-search input:focus-visible {
  position: relative;
  z-index: 1;
  box-shadow: inset 0 -4px 0 var(--ochre);
  outline: 3px solid var(--blue);
  outline-offset: 2px;
}

.title-search button {
  min-width: 105px;
  border: 1px solid var(--ink);
  color: var(--paper-strong);
  background: var(--violet);
  font-size: 13px;
  font-weight: 900;
}

.title-search button:hover {
  color: var(--ink);
  background: var(--ochre);
}

.news-ledger-meta {
  display: flex;
  min-height: 50px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 2px solid var(--ink);
}

.news-ledger-meta p {
  margin: 0;
  color: #4f5c57;
  font-size: 12px;
  font-weight: 760;
}

.news-ledger-meta > span {
  max-width: 45%;
  overflow: hidden;
  color: var(--muted);
  font: 730 8px/1 var(--mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.news-ledger {
  margin: 0;
  padding: 0;
  list-style: none;
}

.news-ledger > li {
  position: relative;
  display: grid;
  min-height: 91px;
  grid-template-columns: 52px 1fr;
  gap: 16px;
  align-items: start;
  padding: 16px 8px 16px 0;
  border-bottom: 1px solid var(--rule);
}

.news-ledger > li::after {
  position: absolute;
  z-index: -1;
  inset: 8px 0 8px 44px;
  background: transparent;
  content: "";
  transform: translate(0);
}

.news-ledger > li:has(a:hover)::after,
.news-ledger > li:has(a:focus-visible)::after {
  background: var(--violet-soft);
  transform: translate(5px, 3px);
}

.news-row-index {
  padding-top: 3px;
  color: var(--violet);
  font: 850 10px/1 var(--mono);
}

.news-ledger article {
  min-width: 0;
}

.news-ledger .news-outlet {
  margin: 0 0 7px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.025em;
}

.news-ledger .news-row-time {
  margin: 8px 0 0;
}

.news-ledger .news-time {
  display: block;
  color: var(--muted);
  font: 720 9px/1.2 var(--mono);
  letter-spacing: .02em;
}

.news-ledger h3 {
  margin: 0;
  font-size: clamp(16px, 1.4vw, 20px);
  font-weight: 880;
  line-height: 1.28;
  letter-spacing: -.045em;
}

.news-ledger h3 a:hover {
  text-decoration: underline;
  text-decoration-color: var(--violet);
  text-decoration-thickness: 3px;
  text-underline-offset: 4px;
}

.news-ledger[aria-busy="true"] {
  opacity: .48;
}

.news-empty h3 {
  color: var(--muted);
}

.noscript-note {
  margin: 16px 0 0;
  color: var(--coral-ink);
  font-size: 12px;
  font-weight: 800;
}

.analysis-gate {
  display: grid;
  grid-template-columns: minmax(290px, .72fr) minmax(520px, 1.28fr);
  gap: clamp(35px, 5vw, 76px);
  padding-block: 64px;
  border-bottom: 1px solid var(--ink);
}

.analysis-gate-copy h2,
.analysis-ready .section-heading h2 {
  margin: 0;
  font-size: clamp(34px, 4vw, 56px);
  font-weight: 940;
  line-height: 1;
  letter-spacing: -.075em;
}

.analysis-gate-copy > p:not(.eyebrow, .analysis-badge) {
  max-width: 480px;
  margin: 20px 0 0;
  color: #4f5c57;
  font-size: 14px;
  line-height: 1.65;
}

.analysis-badge {
  display: inline-grid;
  grid-template-columns: auto auto;
  margin: 25px 0 0;
  border: 1px solid var(--ink);
}

.analysis-badge strong,
.analysis-badge span {
  padding: 9px 12px;
  font-size: 11px;
}

.analysis-badge strong {
  color: var(--paper-strong);
  background: var(--ink);
}

.analysis-badge span {
  color: var(--ink);
  background: var(--coral);
  font-weight: 900;
}

.analysis-gates {
  margin: 0;
  padding: 0;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  list-style: none;
}

.analysis-gates li {
  display: grid;
  min-height: 103px;
  grid-template-columns: 48px 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 15px 18px;
  border-bottom: 1px solid var(--rule);
}

.analysis-gates li:last-child {
  border-bottom: 0;
}

.analysis-gates li > span {
  color: var(--violet);
  font: 900 11px/1 var(--mono);
}

.analysis-gates strong {
  font-size: 17px;
  font-weight: 900;
}

.analysis-gates p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}

.analysis-gates em {
  min-width: 74px;
  padding: 7px 9px;
  border: 1px solid var(--ink);
  color: var(--ink);
  background: #bfe9e3;
  font: normal 800 9px/1 var(--mono);
  text-align: center;
}

.analysis-gates li:last-child em {
  background: var(--violet-soft);
}

.analysis-actions {
  display: flex;
  grid-column: 2;
  gap: 24px;
  margin-top: -40px;
  padding-inline: 18px;
}

.analysis-gate.has-candidate > .layer-stage {
  grid-column: 1 / -1;
  width: min(100%, 1120px);
  margin: 4px auto 0;
}

.analysis-gate.has-candidate .analysis-actions {
  grid-column: 1 / -1;
  justify-content: flex-end;
  margin-top: -18px;
}

.analysis-actions a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding-block: 6px;
  font-size: 12px;
  font-weight: 900;
}

.analysis-actions a:hover {
  text-decoration: underline;
  text-decoration-color: var(--coral);
  text-decoration-thickness: 3px;
  text-underline-offset: 5px;
}

.analysis-ready {
  padding-bottom: 65px;
  border-bottom: 1px solid var(--ink);
}

.analysis-ready > .layer-stage,
.analysis-ready > .evidence-map {
  margin-block: 20px 35px;
}

.signals-section {
  padding-bottom: 62px;
  border-bottom: 1px solid var(--ink);
}

.section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 30px;
  padding-block: 58px 22px;
}

.section-heading > p {
  max-width: 430px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  text-align: right;
}

.signal-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr 1fr;
  border: 1px solid var(--ink);
  background: var(--ink);
  gap: 1px;
}

.signal-card {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  padding: 22px;
  color: var(--ink);
  background: var(--paper-strong);
}

.signal-card:nth-child(1),
.signal-card:nth-child(6) {
  color: var(--paper-strong);
  background: var(--ink-soft);
}

.signal-card:only-child {
  grid-column: 1 / -1;
}

@media (min-width: 1051px) {
  .signal-card:first-child:nth-last-child(2) {
    grid-column: span 2;
  }
}

.signal-card > p:first-child {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  color: var(--muted);
  font: 770 9px/1 var(--mono);
  letter-spacing: .04em;
}

.signal-card:nth-child(1) > p:first-child,
.signal-card:nth-child(6) > p:first-child {
  color: #b8c3bd;
}

.signal-card h3 {
  margin: 30px 0 12px;
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 920;
  line-height: 1.05;
  letter-spacing: -.06em;
}

.signal-card > p:nth-of-type(2) {
  margin: 0;
  color: #56635e;
  font-size: 13px;
  line-height: 1.55;
}

.signal-card:nth-child(1) > p:nth-of-type(2),
.signal-card:nth-child(6) > p:nth-of-type(2) {
  color: #c3ccc7;
}

.signal-card > a,
.signal-state {
  margin-top: auto;
  padding-top: 22px;
  color: inherit;
  font-size: 12px;
  font-weight: 900;
}

.signal-state {
  color: var(--muted);
  font: 750 9px/1.3 var(--mono);
}

.signal-card:nth-child(1) .signal-state,
.signal-card:nth-child(6) .signal-state {
  color: #c3ccc7;
}

.topography-section {
  display: grid;
  grid-template-columns: minmax(300px, .72fr) minmax(560px, 1.28fr);
  gap: clamp(34px, 5vw, 76px);
  padding-block: 66px;
  border-bottom: 1px solid var(--ink);
}

.topography-copy {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.topography-copy h2 span {
  position: relative;
  z-index: 0;
}

.topography-copy h2 span::after {
  position: absolute;
  z-index: -1;
  right: -3px;
  bottom: .02em;
  left: -3px;
  height: .15em;
  background: var(--violet);
  content: "";
  transform: rotate(-.7deg);
}

.topography-copy > dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin: 38px 0 0;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.topography-copy > dl div {
  min-width: 0;
  padding: 13px;
  background: var(--paper-strong);
}

.topography-copy dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}

.topography-copy dd {
  margin: 8px 0 4px;
  font: 900 23px/1 var(--mono);
}

.topography-copy dl span {
  color: var(--muted);
  font-size: 8px;
  font-weight: 750;
}

.evidence-map {
  min-width: 0;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  box-shadow: 12px 12px 0 var(--violet-soft);
}

.map-heading {
  display: flex;
  min-height: 51px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-inline: 18px;
  border-bottom: 1px solid var(--ink);
  font-size: 12px;
}

.map-heading span {
  overflow: hidden;
  color: var(--muted);
  font: 730 9px/1 var(--mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.map-empty {
  display: grid;
  min-height: 340px;
  grid-template-columns: auto 1fr minmax(220px, auto) 1fr auto;
  align-items: center;
  padding: 42px;
  background-image:
    linear-gradient(rgba(98, 112, 107, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(98, 112, 107, .1) 1px, transparent 1px);
  background-size: 36px 36px;
}

.empty-node {
  display: grid;
  min-width: 92px;
  min-height: 44px;
  place-items: center;
  border: 1px dashed var(--coral);
  color: #9a483c;
  background: rgba(251, 252, 250, .92);
  font-size: 11px;
  font-weight: 850;
}

.map-empty > i {
  height: 0;
  border-top: 1px dashed var(--coral);
}

.empty-message {
  padding: 19px;
  border: 1px solid var(--ink);
  background: rgba(251, 252, 250, .95);
  text-align: center;
}

.empty-message strong,
.empty-message small {
  display: block;
}

.empty-message strong {
  font-size: 16px;
}

.empty-message small {
  margin-top: 8px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
}

.map-grid {
  display: grid;
  min-height: 340px;
  align-content: center;
  gap: 12px;
  padding: 38px;
  background-image:
    linear-gradient(rgba(98, 112, 107, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(98, 112, 107, .1) 1px, transparent 1px);
  background-size: 36px 36px;
}

.map-row {
  position: relative;
  display: grid;
  grid-template-columns: 92px 1fr auto;
  gap: 15px;
  align-items: center;
  min-height: 56px;
  padding: 10px 14px;
  border: 1px solid var(--ink);
  background: rgba(251, 252, 250, .96);
  font-size: 11px;
}

.map-row::before {
  position: absolute;
  top: 50%;
  left: -26px;
  width: 25px;
  border-top: 2px solid var(--teal);
  content: "";
}

.map-row.similar_phrase::before,
.map-row.pending::before {
  border-top: 2px dashed var(--violet);
}

.map-row.pending::before {
  border-color: var(--coral);
}

.map-status {
  font: 800 9px/1 var(--mono);
}

.map-row.verified .map-status {
  color: #08736c;
}

.map-row.pending .map-status {
  color: #a13d31;
}

.map-row > span:last-child {
  color: var(--muted);
}

.map-legend {
  display: flex;
  min-height: 52px;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 19px;
  padding: 10px 18px;
  border-top: 1px solid var(--ink);
  color: var(--muted);
  font-size: 10px;
}

.map-legend em {
  margin-left: auto;
  color: var(--ink);
  font: 800 9px/1 var(--mono);
  font-style: normal;
}

.pending-section {
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(500px, 1.22fr);
  gap: clamp(34px, 6vw, 92px);
  padding-block: 65px;
  border-bottom: 1px solid var(--ink);
}

.pending-section .text-action {
  margin-top: 20px;
}

.pending-ledger {
  align-self: center;
  margin: 0;
  padding: 0;
  border: 1px solid var(--ink);
  list-style: none;
  background: #f2e6c3;
}

.pending-ledger li {
  display: grid;
  min-height: 86px;
  grid-template-columns: minmax(130px, .35fr) 1fr;
  gap: 22px;
  align-items: center;
  padding: 16px 19px;
  border-bottom: 1px solid var(--ink);
}

.pending-ledger li:last-child {
  border-bottom: 0;
}

.pending-ledger strong {
  font-size: 13px;
}

.pending-ledger span {
  color: #4d5954;
  font-size: 12px;
  line-height: 1.5;
}

.method-cta {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 32px;
  align-items: end;
  margin-block: 26px 0;
  padding: 31px;
  border: 1px solid var(--ink);
  color: var(--paper-strong);
  background: var(--violet);
}

.method-cta .eyebrow {
  position: absolute;
  top: 31px;
  left: 31px;
  color: #fff;
}

.method-cta h2 {
  margin-top: 30px;
}

.method-cta > p:not(.eyebrow) {
  color: #f0efff;
}

.method-cta > a {
  display: grid;
  min-width: 150px;
  min-height: 48px;
  place-items: center;
  border: 1px solid #fff;
  font-size: 13px;
  font-weight: 900;
}

.method-cta > a:hover {
  color: var(--ink);
  background: var(--ochre);
}

.footer {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: start;
  padding-block: 46px;
  color: var(--muted);
  font-size: 12px;
}

.footer p {
  margin: 0;
  line-height: 1.5;
}

.footer strong {
  color: var(--ink);
}

.footer nav {
  display: flex;
  gap: 17px;
}

.footer a:hover {
  color: var(--ink);
  text-decoration: underline;
}

.mobile-nav {
  display: none;
}

/* Shared interior pages */

.page-main {
  min-height: 65vh;
}

.sources-page {
  max-width: 1180px;
  margin-inline: auto;
  padding-block: 78px;
}

.sources-lead {
  display: grid;
  grid-template-columns: minmax(440px, 1.25fr) minmax(260px, .75fr);
  gap: clamp(50px, 9vw, 140px);
  align-items: end;
  padding-bottom: 58px;
  border-bottom: 1px solid var(--ink);
}

.sources-lead h1 {
  max-width: 780px;
  margin: 22px 0 0;
  font-size: clamp(62px, 8.2vw, 118px);
  font-weight: 950;
  line-height: .84;
  letter-spacing: -.09em;
}

.sources-lead > div:first-child > p:last-child {
  max-width: 610px;
  margin: 30px 0 0;
  color: #4f5c57;
  font-size: 17px;
  line-height: 1.68;
}

.sources-count {
  position: relative;
  min-height: 255px;
  padding: 24px;
  border: 1px solid var(--ink);
  background: var(--violet);
  box-shadow: 12px 12px 0 var(--ochre);
  color: #fff;
}

.sources-count::after {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, .8);
  border-radius: 50%;
  content: "";
}

.sources-count strong,
.sources-count span,
.sources-count small {
  display: block;
}

.sources-count strong {
  font: 900 clamp(88px, 10vw, 142px)/.74 var(--mono);
  letter-spacing: -.11em;
}

.sources-count span {
  margin-top: 25px;
  font-size: 20px;
  font-weight: 900;
}

.sources-count small {
  margin-top: 8px;
  font: 720 10px/1.3 var(--mono);
}

.sources-note {
  display: grid;
  grid-template-columns: .9fr repeat(3, 1fr);
  gap: 1px;
  margin-block: 38px 54px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.sources-note h2,
.sources-note p {
  min-height: 112px;
  margin: 0;
  padding: 20px;
  background: var(--paper-strong);
}

.sources-note h2 {
  font-size: 23px;
  line-height: 1.1;
  letter-spacing: -.06em;
}

.sources-note p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}

.sources-note strong {
  display: block;
  margin-bottom: 9px;
  color: var(--ink);
  font-size: 13px;
}

.source-directory {
  border-top: 2px solid var(--ink);
}

.source-group {
  display: grid;
  grid-template-columns: 145px 1fr;
  border-bottom: 1px solid var(--ink);
}

.source-group > header {
  position: relative;
  padding: 25px 20px;
  border-right: 1px solid var(--ink);
}

.source-group h2 {
  position: sticky;
  top: 24px;
  margin: 0;
  color: var(--violet);
  font: 900 56px/.9 var(--mono);
  letter-spacing: -.08em;
}

.source-group > header > span {
  display: block;
  margin-top: 12px;
  color: var(--muted);
  font: 760 10px/1 var(--mono);
}

.source-group ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}

.source-group li {
  display: grid;
  min-height: 105px;
  grid-template-columns: 45px 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 17px 18px;
  border-bottom: 1px solid var(--rule);
}

.source-group li:nth-child(odd) {
  border-right: 1px solid var(--ink);
}

.source-group li:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.source-group li:only-child,
.source-group li:nth-last-child(2):nth-child(even) {
  border-bottom: 0;
}

.source-number {
  color: var(--violet);
  font: 900 10px/1 var(--mono);
}

.source-group li > div {
  min-width: 0;
}

.source-group li strong,
.source-group li > div > span {
  display: block;
}

.source-group li strong {
  font-size: 18px;
  font-weight: 930;
  line-height: 1.15;
  letter-spacing: -.055em;
}

.source-group li > div > span {
  margin-top: 7px;
  overflow: hidden;
  color: var(--muted);
  font: 680 9px/1 var(--mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.source-group li > a {
  padding-block: 7px;
  border-bottom: 1px solid var(--ink);
  font-size: 10px;
  font-weight: 880;
  white-space: nowrap;
}

.source-group li > a:hover,
.source-group li > a:focus-visible {
  color: var(--violet);
  border-color: var(--violet);
}

.sources-correction {
  display: grid;
  grid-template-columns: 1fr 1.4fr auto;
  gap: 28px;
  align-items: center;
  margin-top: 44px;
  padding: 24px;
  border: 1px solid var(--ink);
  border-left: 12px solid var(--coral);
  background: var(--paper-strong);
}

.sources-correction p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}

.sources-correction a {
  font-size: 12px;
  font-weight: 900;
}

.sources-correction a:hover {
  color: var(--violet);
}

.news-page-lead {
  position: relative;
  padding-block: 64px 54px;
  border-bottom: 1px solid var(--ink);
}

.news-page-lead::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  width: min(34%, 380px);
  height: 7px;
  background: var(--violet);
  content: "";
}

.news-page-lead .hero-copy {
  display: grid;
  grid-template-columns: minmax(360px, .95fr) minmax(430px, 1.05fr);
  gap: clamp(38px, 7vw, 110px);
}

.news-page-lead h1 {
  margin: 0;
  font-size: clamp(48px, 5.2vw, 76px);
  font-weight: 950;
  line-height: .98;
  letter-spacing: -.078em;
}

.news-page-lead h1 span {
  position: relative;
  z-index: 0;
  white-space: nowrap;
}

.news-page-lead h1 span::after {
  position: absolute;
  z-index: -1;
  right: -4px;
  bottom: .04em;
  left: -4px;
  height: .18em;
  background: var(--ochre);
  content: "";
  transform: skewX(-9deg);
}

.news-page-body .news-desk {
  padding-bottom: 72px;
}

.inspect-page {
  display: grid;
  grid-template-columns: minmax(320px, .74fr) minmax(520px, 1.26fr);
  gap: clamp(42px, 7vw, 110px);
  padding-block: 82px;
}

.inspect-page > div > p:last-child {
  max-width: 500px;
  color: #4f5c57;
  font-size: 16px;
  line-height: 1.7;
}

.inspect-form.large {
  align-self: start;
  padding: 28px;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  box-shadow: 12px 12px 0 var(--violet-soft);
}

.inspect-contract {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(6, 1fr);
  gap: 1px;
  margin: 34px 0 0;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.inspect-contract div {
  padding: 18px;
  background: var(--paper-strong);
}

.inspect-contract dt {
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 900;
}

.inspect-contract dd {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.contact-page {
  display: grid;
  grid-template-columns: minmax(280px, .68fr) minmax(520px, 1.32fr);
  gap: clamp(48px, 7vw, 110px);
  padding-block: 82px;
}

.contact-page > header {
  align-self: start;
}

.contact-page > header > p:last-child {
  max-width: 470px;
  margin: 24px 0 0;
  color: #4f5c57;
  font-size: 16px;
  line-height: 1.7;
}

.contact-form,
.contact-unavailable {
  padding: 30px;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  box-shadow: 12px 12px 0 var(--violet-soft);
}

.contact-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px 18px;
}

.contact-form > label:not(.contact-consent, .contact-honey) {
  grid-column: 1 / -1;
  margin-top: 10px;
  color: var(--muted);
  font: 800 10px/1 var(--mono);
  letter-spacing: .04em;
}

.contact-form label > span {
  color: #7a8580;
  font-weight: 650;
}

.contact-form select,
.contact-form input:not([type="checkbox"]),
.contact-form textarea {
  width: 100%;
  min-width: 0;
  grid-column: 1 / -1;
  border: 1px solid var(--ink);
  border-radius: 0;
  color: var(--ink);
  background: #fff;
  font: inherit;
  outline: 0;
}

.contact-form select,
.contact-form input:not([type="checkbox"]) {
  height: 52px;
  padding-inline: 13px;
}

.contact-form textarea {
  min-height: 180px;
  padding: 13px;
  line-height: 1.55;
  resize: vertical;
}

.contact-form select:focus-visible,
.contact-form input:focus-visible,
.contact-form textarea:focus-visible,
.contact-form button:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 2px;
}

.contact-honey {
  display: none;
}

.contact-consent {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: auto 1fr;
  gap: 9px;
  align-items: start;
  margin-top: 10px;
  color: #4f5c57;
  font-size: 12px;
  line-height: 1.5;
}

.contact-consent input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--violet);
}

.contact-consent a {
  color: var(--ink);
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.contact-submit {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: center;
  margin-top: 12px;
}

.contact-submit button {
  min-width: 142px;
  min-height: 52px;
  border: 1px solid var(--ink);
  color: var(--paper-strong);
  background: var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.contact-submit button:hover:not(:disabled) {
  color: var(--ink);
  background: var(--ochre);
}

.contact-submit button:disabled {
  cursor: wait;
  opacity: .55;
}

.contact-status {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
  line-height: 1.45;
}

.contact-status[data-state="sent"] {
  color: #1d6c65;
}

.contact-status[data-state="error"] {
  color: #a53f34;
}

.contact-unavailable h2 {
  margin: 24px 0 12px;
  font-size: clamp(29px, 3.2vw, 44px);
  line-height: 1.05;
  letter-spacing: -.065em;
}

.contact-unavailable > p:last-child {
  color: var(--muted);
  line-height: 1.65;
}

.method-page {
  max-width: 1100px;
  margin-inline: auto;
  padding-block: 78px;
}

.method-page > header {
  max-width: 900px;
  padding-bottom: 56px;
}

.method-page > header > p:last-child {
  max-width: 650px;
  margin: 24px 0 0;
  color: #4f5c57;
  font-size: 18px;
  line-height: 1.65;
}

.method-status-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-bottom: 42px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.method-status-grid article {
  min-height: 210px;
  padding: 24px;
  background: var(--paper-strong);
}

.method-status-grid article:nth-child(2) {
  background: var(--violet-soft);
}

.method-status-grid article:nth-child(3) {
  background: #f2e6c3;
}

.method-status-grid span,
.method-example span {
  display: block;
  margin-bottom: 20px;
  color: var(--muted);
  font: 800 10px/1 var(--mono);
}

.method-status-grid strong {
  display: block;
  max-width: 240px;
  font-size: 23px;
  font-weight: 940;
  line-height: 1.06;
  letter-spacing: -.055em;
}

.method-status-grid p {
  margin: 35px 0 0;
  color: #4f5c57;
  font-size: 12px;
  line-height: 1.6;
}

.method-flow {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: 0 0 54px;
  padding: 0;
  border-block: 1px solid var(--ink);
  list-style: none;
}

.method-flow li {
  position: relative;
  min-height: 175px;
  padding: 22px 24px;
  border-right: 1px solid var(--ink);
}

.method-flow li:last-child {
  border-right: 0;
}

.method-flow li:not(:last-child)::after {
  position: absolute;
  z-index: 1;
  top: 21px;
  right: -11px;
  display: grid;
  width: 21px;
  height: 21px;
  place-items: center;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--ochre);
  content: "→";
  font: 900 10px/1 var(--mono);
}

.method-flow span {
  color: var(--violet);
  font: 900 11px/1 var(--mono);
}

.method-flow strong {
  display: block;
  margin-top: 25px;
  font-size: 18px;
  font-weight: 930;
}

.method-flow p {
  margin: 9px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}

.method-page > section {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 24px;
  padding-block: 27px;
  border-top: 1px solid var(--ink);
}

.method-number {
  font: 900 34px/1 var(--mono);
}

.method-page section h2 {
  margin: 0 0 10px;
  font-size: 23px;
  letter-spacing: -.06em;
}

.method-page section p {
  max-width: 780px;
  margin: 0;
  color: #4f5c57;
  font-size: 15px;
  line-height: 1.72;
}

.method-example {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 1px;
  max-width: 780px;
  margin-top: 20px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.method-example span,
.method-example strong {
  margin: 0;
  padding: 13px 15px;
  background: var(--paper-strong);
}

.method-example span {
  color: var(--muted);
  font-size: 9px;
}

.method-example strong {
  font-size: 12px;
}

.method-example strong:last-child {
  color: var(--coral-ink);
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

.method-page code {
  padding: 2px 5px;
  border: 1px solid var(--rule);
  background: var(--paper-strong);
  font: 720 12px/1 var(--mono);
}

.method-page > aside {
  margin-top: 32px;
  padding: 24px;
  border: 1px solid var(--ink);
  border-left: 12px solid var(--coral);
  background: #f2e6c3;
}

.method-page > aside strong {
  display: block;
  margin-bottom: 8px;
}

.method-page > aside p {
  margin: 0;
  color: #4d5954;
  line-height: 1.65;
}

/* Event */

.event-empty {
  max-width: 920px;
  margin-inline: auto;
  padding-block: 100px;
}

.event-empty > p:not(.eyebrow) {
  max-width: 580px;
  margin: 25px 0 0;
  color: #4f5c57;
  font-size: 17px;
  line-height: 1.7;
}

.event-empty-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 48px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.event-empty-grid span {
  padding: 20px;
  color: var(--muted);
  background: var(--paper-strong);
  font-size: 11px;
}

.event-empty-grid strong {
  display: block;
  margin-bottom: 12px;
  color: var(--ink);
  font-size: 13px;
}

.event-review .pending-ledger,
.event-review .snapshot-footer {
  margin-top: 24px;
}

.event-view {
  padding-block: 62px;
}

.event-lead {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 60px;
  align-items: end;
  padding-bottom: 54px;
  border-bottom: 1px solid var(--ink);
}

.event-lead h1 {
  max-width: 940px;
  margin-top: 16px;
}

.event-lead > div > p:last-child {
  max-width: 680px;
  margin: 24px 0 0;
  color: #4f5c57;
  font-size: 15px;
  line-height: 1.65;
}

.status-badge {
  display: inline-flex;
  min-height: 29px;
  align-items: center;
  padding-inline: 9px;
  border: 1px solid var(--ink);
  font: 800 10px/1 var(--mono);
}

.status-badge.ready {
  background: #bfe9e3;
}

.status-badge.insufficient_evidence,
.status-badge.needs_event_review {
  background: #f4c5bc;
}

.event-lead dl {
  display: grid;
  min-width: 360px;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin: 0;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.event-lead dl div {
  padding: 15px;
  background: var(--paper-strong);
}

.event-lead dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}

.event-lead dd {
  margin: 8px 0 0;
  font: 900 26px/1 var(--mono);
}

.event-lead dd.metric-word {
  font-family: inherit;
  font-size: 14px;
  line-height: 1.2;
}

.event-layer-section {
  display: grid;
  grid-template-columns: minmax(260px, .6fr) minmax(600px, 1.4fr);
  gap: 50px;
  padding-block: 50px;
  border-bottom: 1px solid var(--ink);
}

.event-layer-section .layer-stage {
  min-height: 490px;
}

.headline-comparison-section {
  padding-block: 62px;
  border-bottom: 1px solid var(--ink);
}

.headline-comparison-section > header {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 62px;
  align-items: end;
  margin-bottom: 28px;
}

.headline-comparison-section h2 {
  margin: 0;
  font-size: clamp(36px, 4.5vw, 68px);
  letter-spacing: -.08em;
  line-height: .98;
}

.headline-comparison-section > header > p {
  max-width: 680px;
  margin: 0 0 5px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.65;
}

.headline-comparison-grid {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 1px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.shared-term-panel,
.unique-term-panel {
  min-width: 0;
  padding: 27px;
}

.shared-term-panel {
  color: var(--paper-strong);
  background: var(--violet);
}

.shared-term-panel .eyebrow {
  color: #fff;
}

.unique-term-panel {
  background: var(--paper-strong);
}

.shared-term-panel ul,
.unique-term-panel ol,
.comparison-rules ul {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.shared-term-panel li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  min-height: 64px;
  border-top: 1px solid rgba(255, 255, 255, .5);
}

.shared-term-panel strong {
  font-size: 25px;
  letter-spacing: -.05em;
}

.shared-term-panel span {
  font: 760 10px/1.3 var(--mono);
}

.shared-term-panel .comparison-empty {
  grid-template-columns: 1fr;
  align-content: center;
}

.unique-term-panel li {
  display: grid;
  grid-template-columns: minmax(210px, .9fr) minmax(0, 1.1fr);
  gap: 24px;
  padding-block: 17px;
  border-top: 1px solid var(--rule);
}

.unique-term-panel strong,
.unique-term-panel small {
  display: block;
}

.unique-term-panel strong {
  margin-bottom: 7px;
  font-size: 16px;
}

.unique-term-panel small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.unique-term-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-content: start;
}

.unique-term-tags span,
.unique-term-tags em {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 5px 9px;
  border: 1px solid var(--ink);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25;
}

.unique-term-tags span {
  background: var(--ochre);
}

.unique-term-tags em {
  color: var(--muted);
  border-style: dashed;
  background: transparent;
}

.comparison-rules {
  margin-top: 14px;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
}

.comparison-rules summary {
  padding: 14px 16px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
}

.comparison-rules ul {
  margin: 0;
  padding: 0 18px 16px 34px;
  color: var(--muted);
  list-style: square;
  font-size: 12px;
  line-height: 1.6;
}

.event-evidence-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin-top: 56px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.evidence-block {
  min-height: 420px;
  padding: 31px;
  background: var(--paper-strong);
}

.evidence-block:nth-child(2) {
  color: var(--paper-strong);
  background: var(--violet);
}

.evidence-block:nth-child(2) .eyebrow {
  color: #fff;
}

.claim-list,
.source-list,
.event-hold ul,
.article-ledger ol {
  margin: 32px 0 0;
  padding: 0;
  list-style: none;
}

.claim-list li {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: center;
  min-height: 62px;
  border-top: 1px solid var(--rule);
}

.claim-list strong {
  font-size: 23px;
  letter-spacing: -.05em;
}

.claim-list span {
  color: var(--muted);
  font: 720 9px/1.4 var(--mono);
}

.emphasis-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin-top: 32px;
  background: var(--ink);
}

.emphasis-list article {
  display: flex;
  min-height: 150px;
  flex-direction: column;
  padding: 18px;
  color: var(--ink);
  background: var(--paper-strong);
}

.emphasis-list small {
  color: var(--muted);
  font: 760 9px/1 var(--mono);
}

.emphasis-list strong {
  margin-block: auto;
  font-size: 28px;
}

.emphasis-list span {
  color: var(--muted);
  font-size: 10px;
}

.inline-empty {
  margin-top: 32px;
  padding: 20px;
  border: 1px dashed #fff;
  line-height: 1.5;
}

.event-source-section {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 62px;
  padding-block: 62px;
  border-bottom: 1px solid var(--ink);
}

.source-list {
  border: 1px solid var(--ink);
  background: var(--paper-strong);
}

.source-list li {
  display: flex;
  min-height: 67px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 17px;
  border-bottom: 1px solid var(--ink);
}

.source-list li:last-child {
  border-bottom: 0;
}

.source-list li.verified {
  border-left: 8px solid var(--teal);
}

.source-list li.similar_phrase {
  border-left: 8px dashed var(--violet);
}

.source-list li.pending {
  border-left: 8px dashed var(--coral);
}

.source-list span {
  color: var(--muted);
  font: 720 9px/1 var(--mono);
}

.event-hold {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin-top: 56px;
  border: 1px solid var(--ink);
  background: var(--ink);
}

.event-hold > div {
  min-height: 280px;
  padding: 28px;
  background: #f2e6c3;
}

.event-hold > div:nth-child(2) {
  background: var(--paper-strong);
}

.event-hold h2 {
  margin: 0;
  font-size: 29px;
  letter-spacing: -.07em;
}

.event-hold li {
  margin-top: 10px;
  color: #4e5a55;
  line-height: 1.55;
}

.article-ledger {
  display: grid;
  grid-template-columns: .45fr 1.55fr;
  gap: 55px;
  padding-block: 64px 35px;
}

.article-ledger ol {
  margin-top: 0;
  border-top: 1px solid var(--ink);
}

.article-ledger li {
  display: grid;
  min-height: 104px;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  padding-block: 17px;
  border-bottom: 1px solid var(--ink);
}

.article-ledger small,
.article-ledger strong,
.article-ledger span {
  display: block;
}

.article-ledger small {
  margin-bottom: 6px;
  color: var(--muted);
  font: 730 9px/1 var(--mono);
}

.article-ledger strong {
  font-size: 17px;
  line-height: 1.4;
}

.article-ledger span {
  margin-top: 7px;
  color: var(--muted);
  font-size: 11px;
}

.article-ledger a {
  min-width: 98px;
  font-size: 12px;
  font-weight: 900;
  text-align: right;
}

.snapshot-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  padding: 17px;
  border: 1px solid var(--ink);
  background: var(--paper-strong);
  font: 720 9px/1.4 var(--mono);
}

.empty-row {
  padding: 18px;
  color: var(--muted);
  font-size: 12px;
}

/* 어제의 겹 */

.daily-page {
  max-width: 1260px;
  margin-inline: auto;
  padding-block: 42px 90px;
}

.daily-lead {
  display: grid;
  min-height: 280px;
  grid-template-columns: minmax(360px, .7fr) minmax(520px, 1.3fr);
  gap: clamp(42px, 6vw, 90px);
  align-items: end;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--ink);
}

.daily-lead h1 {
  margin: 16px 0 0;
  font-size: clamp(52px, 6vw, 86px);
  font-weight: 950;
  letter-spacing: -.09em;
  line-height: .91;
}

.daily-day-lead h1 {
  margin: 16px 0 0;
  font-size: clamp(58px, 7.4vw, 112px);
  font-weight: 950;
  letter-spacing: -.09em;
  line-height: .91;
}

.daily-lead > p:last-child,
.daily-day-lead > div > p:last-child {
  max-width: 520px;
  margin: 0 0 7px;
  color: #4f5c57;
  font-size: 17px;
  line-height: 1.72;
}

.daily-basis {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  padding: 23px 27px;
  border-bottom: 1px solid var(--ink);
  background: var(--violet-soft);
}

.daily-basis strong {
  font-size: 14px;
  font-weight: 920;
}

.daily-basis p {
  margin: 0;
  color: #4f5c57;
  font-size: 14px;
  line-height: 1.55;
}

.daily-feature {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 32px;
  margin: 38px 10px 48px 0;
  padding: clamp(30px, 5vw, 66px);
  border: 2px solid var(--ink);
  background: var(--paper-strong);
  box-shadow: 10px 10px 0 var(--violet-soft);
}

.daily-feature time {
  display: block;
  margin: 14px 0 20px;
  color: var(--muted);
  font: 780 12px/1.4 var(--mono);
}

.daily-feature h2 {
  max-width: 850px;
  margin: 0;
  font-size: clamp(34px, 5vw, 68px);
  font-weight: 950;
  letter-spacing: -.07em;
  line-height: 1.03;
}

.daily-feature > div > p:not(.eyebrow) {
  margin: 24px 0 0;
  color: var(--muted);
  font: 760 12px/1.5 var(--mono);
}

.daily-feature a {
  display: inline-flex;
  margin-top: 32px;
  padding-bottom: 7px;
  border-bottom: 3px solid var(--violet);
  font-size: 15px;
  font-weight: 920;
}

.daily-feature aside {
  align-self: stretch;
  padding-left: 28px;
  border-left: 1px solid var(--ink);
}

.daily-feature aside span,
.daily-feature aside p {
  color: var(--muted);
  font-size: 11px;
  font-weight: 780;
  line-height: 1.55;
}

.daily-feature aside strong {
  display: block;
  margin: 20px 0 12px;
  color: var(--violet);
  font: 950 clamp(64px, 8vw, 112px)/.8 var(--mono);
  letter-spacing: -.1em;
}

.daily-feature aside p {
  margin: 0;
}

.daily-archive-title {
  margin: 0;
  padding: 26px 22px 18px;
  border-bottom: 1px solid var(--ink);
  font-size: 15px;
  font-weight: 920;
}

.daily-archive {
  margin: 0;
  padding: 0;
  list-style: none;
}

.daily-archive li {
  border-bottom: 1px solid var(--ink);
}

.daily-archive a {
  display: grid;
  min-height: 210px;
  grid-template-columns: 190px minmax(0, 1fr) 100px;
  gap: 34px;
  align-items: center;
  padding: 28px 22px;
  transition: background-color .18s ease, padding-left .18s ease;
}

.daily-archive a:hover,
.daily-archive a:focus-visible {
  padding-left: 34px;
  background: var(--paper-strong);
}

.daily-archive time {
  color: var(--violet);
  font: 950 clamp(48px, 5.5vw, 82px)/.9 var(--mono);
  letter-spacing: -.09em;
}

.daily-archive p,
.daily-archive span {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 760;
}

.daily-archive h2 {
  max-width: 800px;
  margin: 12px 0;
  font-size: clamp(25px, 3vw, 42px);
  font-weight: 930;
  letter-spacing: -.055em;
  line-height: 1.12;
}

.daily-archive > li > a > strong {
  justify-self: end;
  font-size: 13px;
  font-weight: 900;
}

.daily-empty {
  min-height: 240px;
  padding: 62px 28px;
  border-bottom: 1px solid var(--ink);
  background: var(--paper-strong);
}

.daily-empty strong {
  font-size: clamp(24px, 3vw, 40px);
}

.daily-empty p {
  margin: 15px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.daily-day-lead {
  display: grid;
  min-height: 430px;
  grid-template-columns: minmax(230px, .45fr) minmax(580px, 1.55fr);
  gap: clamp(40px, 7vw, 110px);
  align-items: end;
  padding-bottom: 58px;
  border-bottom: 1px solid var(--ink);
}

.daily-day-lead > time {
  color: var(--violet);
  font: 950 clamp(80px, 12vw, 176px)/.76 var(--mono);
  letter-spacing: -.12em;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.daily-counts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 0;
  border-bottom: 1px solid var(--ink);
}

.daily-counts div {
  min-height: 132px;
  padding: 24px 27px;
  border-right: 1px solid var(--ink);
  background: var(--paper-strong);
}

.daily-counts div:last-child {
  border-right: 0;
}

.daily-counts dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 820;
}

.daily-counts dd {
  margin: 14px 0 0;
  font: 950 43px/1 var(--mono);
}

.daily-groups {
  border-top: 1px solid var(--ink);
}

.daily-group {
  border-bottom: 1px solid var(--ink);
  background: var(--paper-strong);
}

.daily-group.is-featured {
  border-top: 7px solid var(--violet);
}

.daily-group > header {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 200px;
  gap: 24px;
  align-items: start;
  padding: 38px 28px;
  border-bottom: 1px solid var(--rule);
}

.daily-group > header > span {
  color: var(--violet);
  font: 950 28px/1 var(--mono);
}

.daily-group header p {
  margin: 0 0 10px;
  color: var(--muted);
  font: 760 11px/1.4 var(--mono);
}

.daily-group h2 {
  margin: 0;
  font-size: clamp(27px, 3.5vw, 48px);
  font-weight: 940;
  letter-spacing: -.065em;
  line-height: 1.08;
}

.daily-group > header > strong {
  justify-self: end;
  padding: 8px 10px;
  border: 1px solid var(--ink);
  background: #f2e6c3;
  font-size: 10px;
  text-align: center;
}

.daily-group ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.daily-group li {
  display: grid;
  min-height: 78px;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  padding: 16px 28px;
  border-bottom: 1px solid var(--rule);
}

.daily-group li:last-child {
  border-bottom: 0;
}

.daily-group li > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.daily-group li a {
  font-size: 16px;
  font-weight: 850;
  line-height: 1.4;
}

.daily-group li a:hover {
  color: var(--violet);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.daily-back {
  display: inline-flex;
  margin-top: 34px;
  padding-block: 10px;
  font-size: 14px;
  font-weight: 900;
}

.daily-back:hover {
  text-decoration: underline;
  text-decoration-color: var(--ochre);
  text-decoration-thickness: 3px;
  text-underline-offset: 5px;
}

@media (max-width: 1050px) {
  .hero,
  .inspect-strip,
  .contact-page,
  .topography-section,
  .pending-section,
  .news-desk-grid,
  .analysis-gate,
  .inspect-page,
  .sources-lead,
  .event-layer-section,
  .event-source-section,
  .headline-comparison-section > header,
  .headline-comparison-grid {
    grid-template-columns: 1fr;
  }

  .hero-copy {
    min-height: 530px;
  }

  .news-page-lead .hero-copy {
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .layer-stage {
    max-width: 820px;
  }

  .news-desk-grid {
    grid-template-areas:
      "search"
      "keywords"
      "results";
  }

  .signal-grid {
    grid-template-columns: 1fr 1fr;
  }

  .analysis-actions {
    grid-column: 1;
    margin-top: 0;
    padding-inline: 0;
  }

  .method-cta {
    grid-template-columns: 1fr 1fr;
  }

  .method-cta > a {
    grid-column: 2;
  }

  .event-lead {
    grid-template-columns: 1fr;
  }

  .event-lead dl {
    max-width: 520px;
  }

  .inspect-contract {
    grid-template-columns: repeat(3, 1fr);
  }

  .sources-count {
    max-width: 420px;
  }

  .sources-note {
    grid-template-columns: 1fr 1fr;
  }

  .daily-lead {
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .daily-day-lead {
    grid-template-columns: 190px 1fr;
  }

  .daily-archive a {
    grid-template-columns: 150px minmax(0, 1fr) 80px;
  }
}

@media (max-width: 760px) {
  .shell {
    width: min(calc(100% - 28px), 620px);
  }

  body {
    padding-bottom: calc(66px + env(safe-area-inset-bottom));
  }

  body::before {
    background-size: 54px 54px;
  }

  .masthead {
    min-height: 70px;
    grid-template-columns: 1fr auto;
  }

  .news-arrival {
    top: auto;
    right: 14px;
    bottom: calc(82px + env(safe-area-inset-bottom));
    left: 14px;
    width: auto;
    min-height: 78px;
    grid-template-columns: 9px 1fr auto;
    box-shadow: 5px 5px 0 var(--violet);
  }

  .news-arrival p {
    padding: 12px;
  }

  .news-arrival button {
    min-width: 94px;
    padding-inline: 10px;
  }

  .brand-en,
  .primary-nav {
    display: none;
  }

  .domain-label {
    font-size: 9px;
  }

  .scope-strip > div {
    min-height: 42px;
  }

  .scope-strip span:last-child {
    display: none;
  }

  .hero {
    gap: 34px;
    padding-block: 40px 52px;
  }

  .hero-copy {
    min-height: 0;
  }

  .hero h1,
  .news-page-lead h1,
  .event-lead h1,
  .event-empty h1,
  .inspect-page h1,
  .method-page > header h1 {
    font-size: clamp(43px, 12vw, 62px);
    letter-spacing: -.066em;
  }

  .hero h1 span {
    white-space: normal;
  }

  .news-page-lead {
    padding-block: 42px 46px;
  }

  .news-page-lead h1 span {
    white-space: normal;
  }

  .hero-description {
    font-size: 16px;
  }

  .hero-metrics {
    margin-top: 32px;
  }

  .hero-metrics div {
    padding: 10px;
  }

  .hero-metrics dd {
    font-size: 20px;
  }

  .news-desk {
    padding-bottom: 49px;
  }

  .news-desk-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
      "search"
      "keywords"
      "results";
  }

  .keyword-rail {
    grid-area: keywords;
  }

  .news-search-panel,
  .news-ledger-panel {
    padding: 18px;
  }

  .news-search-panel {
    grid-area: search;
  }

  .news-ledger-panel {
    grid-area: results;
    padding-top: 0;
  }

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

  .title-search > div {
    grid-template-columns: 1fr;
  }

  .title-search input {
    border-right: 1px solid var(--ink);
    border-bottom: 0;
  }

  .title-search button {
    min-height: 48px;
  }

  .news-ledger-meta {
    display: block;
    padding-block: 13px;
  }

  .news-ledger-meta > span {
    display: block;
    max-width: 100%;
    margin-top: 7px;
  }

  .news-ledger > li {
    min-height: 98px;
    grid-template-columns: 40px 1fr;
    gap: 9px;
    padding-right: 0;
  }

  .news-ledger .news-outlet {
    margin-bottom: 5px;
    font-size: 12px;
  }

  .news-ledger h3 {
    font-size: 16px;
    line-height: 1.34;
  }

  .analysis-gate {
    gap: 30px;
    padding-block: 49px;
  }

  .analysis-gates li {
    grid-template-columns: 36px 1fr;
    gap: 10px;
  }

  .analysis-gates em {
    grid-column: 2;
    justify-self: start;
  }

  .analysis-actions {
    flex-wrap: wrap;
    margin-top: -12px;
  }

  .layer-stage {
    min-height: 530px;
    padding: 16px 13px;
  }

  .headline-stack {
    min-height: var(--headline-stack-height-small, 365px);
    margin-inline: 5px;
  }

  .headline-sheet {
    width: calc(100% - 7px);
    min-height: 101px;
    grid-template-columns: 40px 1fr;
    gap: 10px;
    padding: 13px;
  }

  .headline-sheet:nth-child(1) {
    left: 0;
  }

  .headline-sheet:nth-child(2) {
    top: 108px;
    left: 7px;
  }

  .headline-sheet:nth-child(3) {
    top: 210px;
    left: 0;
  }

  .headline-sheet:nth-child(n + 4) {
    top: var(--sheet-top);
    left: var(--sheet-left);
  }

  .sheet-index {
    width: 38px;
    height: 38px;
    font-size: 12px;
  }

  .sheet-copy small {
    margin-bottom: 4px;
    font-size: 9px;
  }

  .sheet-copy .sheet-outlet {
    font-size: 11px;
  }

  .sheet-copy strong {
    font-size: 14px;
  }

  .sheet-copy span {
    margin-top: 6px;
    font-size: 8px;
  }

  .sheet-copy .sheet-action {
    margin-top: 4px;
  }

  .layer-readout {
    right: 13px;
    bottom: 15px;
    left: 13px;
    width: auto;
    min-height: 143px;
  }

  .inspect-strip {
    padding-block: 45px;
  }

  .inspect-form > div {
    grid-template-columns: 1fr;
  }

  .inspect-form input {
    border-right: 1px solid var(--ink);
    border-bottom: 0;
  }

  .inspect-form button {
    min-height: 50px;
  }

  .inspect-result {
    grid-template-columns: 1fr;
  }

  .inspect-result-actions {
    display: grid;
    grid-column: 1;
    width: 100%;
    justify-content: stretch;
  }

  .inspect-result-actions a {
    width: 100%;
  }

  .section-heading {
    display: block;
    padding-block: 48px 18px;
  }

  .section-heading > p {
    margin-top: 13px;
    text-align: left;
  }

  .signal-grid {
    grid-template-columns: 1fr;
  }

  .signal-card {
    min-height: 222px;
  }

  .topography-section {
    gap: 30px;
    padding-block: 49px;
  }

  .topography-copy > dl div {
    padding: 10px;
  }

  .topography-copy dd {
    font-size: 20px;
  }

  .evidence-map {
    box-shadow: 8px 8px 0 var(--violet-soft);
  }

  .map-empty {
    min-height: 360px;
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 24px;
  }

  .map-empty > i {
    width: 0;
    height: 24px;
    justify-self: center;
    border-top: 0;
    border-left: 1px dashed var(--coral);
  }

  .map-legend em {
    width: 100%;
    margin-left: 0;
  }

  .map-row {
    grid-template-columns: 80px 1fr;
  }

  .map-row > span:last-child {
    grid-column: 2;
  }

  .pending-section {
    padding-block: 50px;
  }

  .pending-ledger li {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .method-cta {
    grid-template-columns: 1fr;
    padding: 24px;
  }

  .method-cta .eyebrow {
    top: 24px;
    left: 24px;
  }

  .method-cta > a {
    grid-column: auto;
  }

  .footer {
    grid-template-columns: 1fr;
    padding-block: 32px;
  }

  .footer nav {
    flex-wrap: wrap;
  }

  .sources-page {
    padding-block: 48px;
  }

  .sources-lead {
    gap: 38px;
    padding-bottom: 46px;
  }

  .sources-lead h1 {
    font-size: clamp(56px, 18vw, 84px);
  }

  .sources-count {
    min-height: 220px;
    box-shadow: 8px 8px 0 var(--ochre);
  }

  .sources-note {
    grid-template-columns: 1fr;
    margin-block: 32px 42px;
  }

  .sources-note h2,
  .sources-note p {
    min-height: 0;
  }

  .source-group {
    grid-template-columns: 62px 1fr;
  }

  .source-group > header {
    padding: 19px 10px;
  }

  .source-group h2 {
    top: 12px;
    font-size: 29px;
  }

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

  .source-group li {
    min-height: 96px;
    grid-template-columns: 36px 1fr;
    gap: 8px;
    padding: 14px 12px;
    border-right: 0 !important;
    border-bottom: 1px solid var(--rule) !important;
  }

  .source-group li:last-child {
    border-bottom: 0 !important;
  }

  .source-group li > a {
    grid-column: 2;
    justify-self: start;
  }

  .sources-correction {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .mobile-nav {
    position: fixed;
    z-index: 30;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    padding-bottom: env(safe-area-inset-bottom);
    border-top: 1px solid var(--ink);
    background: rgba(251, 252, 250, .96);
    backdrop-filter: blur(12px);
  }

  .mobile-nav a {
    display: grid;
    min-height: 64px;
    place-items: center;
    color: var(--muted);
    font-size: 10px;
    font-weight: 850;
  }

  .mobile-nav a[aria-current="page"] {
    color: var(--ink);
    background: #f2e6c3;
  }

  .inspect-page,
  .contact-page,
  .method-page {
    padding-block: 48px;
  }

  .contact-form,
  .contact-unavailable {
    padding: 20px;
    box-shadow: 7px 7px 0 var(--violet-soft);
  }

  .contact-submit {
    grid-template-columns: 1fr;
  }

  .contact-submit button {
    width: 100%;
  }

  .inspect-contract {
    grid-template-columns: 1fr;
  }

  .inspect-form.large {
    padding: 18px;
    box-shadow: 8px 8px 0 var(--violet-soft);
  }

  .method-page > section {
    grid-template-columns: 55px 1fr;
    gap: 12px;
  }

  .method-status-grid,
  .method-flow {
    grid-template-columns: 1fr;
  }

  .method-status-grid article {
    min-height: 170px;
  }

  .method-flow li {
    min-height: 130px;
    border-right: 0;
    border-bottom: 1px solid var(--ink);
  }

  .method-flow li:last-child {
    border-bottom: 0;
  }

  .method-flow li:not(:last-child)::after {
    top: auto;
    right: 18px;
    bottom: -11px;
    content: "↓";
  }

  .method-example {
    grid-template-columns: 1fr;
  }

  .method-number {
    font-size: 25px;
  }

  .daily-page {
    padding-block: 48px 68px;
  }

  .daily-lead,
  .daily-day-lead {
    display: block;
    min-height: 0;
    padding-bottom: 38px;
  }

  .daily-lead h1,
  .daily-day-lead h1 {
    font-size: clamp(48px, 15vw, 76px);
  }

  .daily-lead > p:last-child,
  .daily-day-lead > div > p:last-child {
    margin-top: 28px;
    font-size: 15px;
  }

  .daily-day-lead > time {
    display: block;
    margin-bottom: 34px;
    font-size: 74px;
    letter-spacing: -.11em;
    writing-mode: initial;
    transform: none;
  }

  .daily-basis {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 19px;
  }

  .daily-feature {
    grid-template-columns: 1fr;
    gap: 28px;
    margin-block: 34px 48px;
    padding: 26px 20px;
    box-shadow: 7px 7px 0 var(--violet-soft);
  }

  .daily-feature h2 {
    font-size: 34px;
  }

  .daily-feature aside {
    padding: 22px 0 0;
    border-top: 1px solid var(--ink);
    border-left: 0;
  }

  .daily-feature aside strong {
    font-size: 64px;
  }

  .daily-archive a {
    min-height: 190px;
    grid-template-columns: 1fr auto;
    gap: 18px;
    padding: 24px 8px;
  }

  .daily-archive a:hover,
  .daily-archive a:focus-visible {
    padding-left: 14px;
  }

  .daily-archive time {
    grid-column: 1 / -1;
    font-size: 50px;
  }

  .daily-archive h2 {
    font-size: 27px;
  }

  .daily-counts {
    grid-template-columns: 1fr;
  }

  .daily-counts div {
    min-height: 96px;
    border-right: 0;
    border-bottom: 1px solid var(--ink);
  }

  .daily-counts div:last-child {
    border-bottom: 0;
  }

  .daily-counts dd {
    font-size: 34px;
  }

  .daily-group > header {
    grid-template-columns: 48px 1fr;
    gap: 14px;
    padding: 27px 18px;
  }

  .daily-group > header > strong {
    grid-column: 2;
    justify-self: start;
  }

  .daily-group li {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 15px 18px;
  }

  .daily-group li a {
    font-size: 15px;
  }

  .event-empty {
    padding-block: 58px;
  }

  .event-empty-grid {
    grid-template-columns: 1fr;
  }

  .event-view {
    padding-block: 42px;
  }

  .event-lead {
    gap: 32px;
    padding-bottom: 42px;
  }

  .event-lead dl {
    min-width: 0;
  }

  .event-layer-section {
    padding-block: 45px;
  }

  .headline-comparison-section {
    padding-block: 45px;
  }

  .headline-comparison-section > header {
    gap: 20px;
  }

  .event-evidence-grid,
  .event-hold {
    grid-template-columns: 1fr;
    margin-top: 42px;
  }

  .evidence-block {
    min-height: 340px;
    padding: 23px;
  }

  .claim-list li {
    grid-template-columns: 1fr;
    padding-block: 13px;
  }

  .unique-term-panel li {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .emphasis-list {
    grid-template-columns: 1fr;
  }

  .event-source-section {
    padding-block: 46px;
  }

  .source-list li {
    align-items: start;
    flex-direction: column;
    justify-content: center;
  }

  .article-ledger {
    grid-template-columns: 1fr;
    gap: 20px;
    padding-block: 48px 28px;
  }

  .article-ledger li {
    grid-template-columns: 1fr;
    gap: 13px;
  }

  .article-ledger a {
    text-align: left;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .news-arrival:not([hidden]) {
    animation: news-arrival-enter .28s both cubic-bezier(.2, .75, .15, 1);
  }

  .brand-en {
    transition: color .25s ease;
  }

  .brand:is(:hover, :focus-visible) .wordmark span:first-child {
    animation: wordmark-violet-overlap .72s cubic-bezier(.2, .82, .2, 1);
  }

  .brand:is(:hover, :focus-visible) .wordmark span:last-child {
    animation: wordmark-ink-overlap .72s cubic-bezier(.2, .82, .2, 1);
  }

  .brand:is(:hover, :focus-visible) .brand-en {
    color: var(--violet);
  }

  button.headline-sheet {
    transition: transform .24s ease, box-shadow .24s ease;
  }

  .headline-sheet {
    animation: sheet-arrive .5s both cubic-bezier(.2, .75, .15, 1);
  }

  .headline-sheet:nth-child(2) {
    animation-delay: .08s;
  }

  .headline-sheet:nth-child(3) {
    animation-delay: .16s;
  }

  .headline-sheet:nth-child(4) {
    animation-delay: .24s;
  }

  .headline-sheet:nth-child(n + 5) {
    animation-delay: .32s;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  button,
  a,
  .headline-sheet {
    animation: none !important;
    transition: none !important;
  }
}

@keyframes news-arrival-enter {
  from {
    opacity: 0;
    translate: 0 12px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

@keyframes sheet-arrive {
  from {
    opacity: 0;
    translate: 0 16px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

@keyframes wordmark-violet-overlap {
  0%,
  100% {
    transform: translate(0, 0) rotate(0);
  }
  34% {
    transform: translate(-8px, 5px) rotate(-7deg);
  }
  64% {
    transform: translate(4px, -3px) rotate(3deg);
  }
  82% {
    transform: translate(-1px, 1px) rotate(-1deg);
  }
}

@keyframes wordmark-ink-overlap {
  0%,
  100% {
    transform: translate(0, 0) rotate(0);
  }
  34% {
    transform: translate(8px, -4px) rotate(6deg);
  }
  64% {
    transform: translate(-3px, 3px) rotate(-2deg);
  }
  82% {
    transform: translate(1px, -1px) rotate(1deg);
  }
}
