/*
 * Thought.global — Three worlds, one universe: NewsDesk (the observatory window), Research (the
 * expedition) and Debates (the chamber of ideas). Scoped to body.thx-page / main.thx; loaded only on
 * those routes. The homepage and the Living Universe pages are the design authority: their night
 * bands, parchment, gold thread, display face and Brain glyph vocabulary are reused here as copied
 * values (never their files).
 */

@font-face {
	font-family: "Thought Display";
	src: url("../../home/assets/fonts/fraunces-latin-var.woff2") format("woff2");
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body.thx-page {
	--thx-night-0: #060a15; --thx-night-1: #0b1426; --thx-night-2: #121d36;
	--thx-plum-0: #170f20; --thx-plum-1: #241a33; --thx-plum-2: #2a1d3a;
	--thx-lilac: #b9a7da; --thx-gold: #c9a35e; --thx-gold-hi: #e3c58c; --thx-gold-ink: #7a5a20; --thx-gold-deep: #b8893e;
	--thx-parch: #f4efe4; --thx-parch-2: #ece4d4; --thx-paper: #fffdf8; --thx-dawn: #f3e6dc;
	--thx-ink: #1d1a26; --thx-ink-2: #4a4453; --thx-ink-3: #676070; --thx-rule: #ddd3c0;
	--thx-bone: #f1ede4; --thx-bone-2: #d2cbbb; --thx-bone-3: #a6aec0; --thx-moon: #f3ead2;
	--thx-conflict: #d4726d; --thx-tension: #a189cf; --thx-support: #6f9bd6; --thx-convergence: #5fb489; --thx-leaves: #dcab7c;
	--thx-peach: #f0b98f; --thx-lantern: #f0c46a;
	--thx-s0: #c9a35e; --thx-s1: #a189cf; --thx-s2: #4f9d9a; --thx-s3: #c97a74; --thx-s4: #6f9bd6; --thx-s5: #7fae6b;
	--thx-display: "Thought Display", "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
	--thx-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--thx-ease: cubic-bezier(.2, .7, .2, 1);
	--thx-gutter: clamp(18px, 4vw, 48px);
	background: var(--thx-parch);
}

/* ---------- the shared nav, in night (same markup, links and behaviour) ---------- */
body.thx-page.flavor-thought .sh-thought-nav { background: rgba(6, 10, 21, .92); color: var(--thx-bone); border-bottom: 1px solid rgba(241, 237, 228, .08); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
body.thx-page.flavor-thought .sh-thought-nav a,
body.thx-page.flavor-thought .sh-thought-nav-links > li > a,
body.thx-page.flavor-thought .sh-thought-nav-group-link,
body.thx-page.flavor-thought .sh-thought-nav-group-toggle,
body.thx-page.flavor-thought .sh-thought-nav-group-label { color: var(--thx-bone) !important; }
body.thx-page.flavor-thought .sh-thought-nav-brand { font-family: var(--thx-display) !important; font-weight: 450; }
body.thx-page.flavor-thought .sh-thought-nav-links a:hover,
body.thx-page.flavor-thought .sh-thought-nav-links a:focus,
body.thx-page.flavor-thought .sh-thought-nav-group-link:hover,
body.thx-page.flavor-thought .sh-thought-nav-group-toggle:hover,
body.thx-page.flavor-thought .sh-thought-nav-group.is-open .sh-thought-nav-group-toggle { background: rgba(241, 237, 228, .09); }
body.thx-page.flavor-thought .sh-thought-nav-links > li > a[aria-current="page"],
body.thx-page.flavor-thought .sh-thought-nav-group.is-current > .sh-thought-nav-split { background: rgba(241, 237, 228, .1); box-shadow: inset 0 -2px 0 var(--thx-gold); }
body.thx-page.flavor-thought .sh-thought-nav-menu a,
body.thx-page.flavor-thought .sh-thought-nav-menu a strong { color: var(--thought-ink, #191918) !important; }
body.thx-page.flavor-thought .sh-thought-nav-search input { background: rgba(241, 237, 228, .06) !important; border-color: rgba(241, 237, 228, .24) !important; color: var(--thx-bone) !important; }
body.thx-page.flavor-thought .sh-thought-nav-search input::placeholder { color: var(--thx-bone-3); }
body.thx-page.flavor-thought .sh-thought-nav-search button { background: var(--thx-gold) !important; border-color: var(--thx-gold) !important; color: var(--thx-night-0) !important; }
body.thx-page.flavor-thought .sh-thought-nav.is-enhanced .sh-thought-nav-toggle { background: rgba(241, 237, 228, .06); border-color: rgba(241, 237, 228, .3); color: var(--thx-bone); }
body.thx-page.flavor-thought .sh-thought-nav :focus-visible { outline: 2px solid var(--thx-gold-hi) !important; outline-offset: 2px; }
@media (max-width: 1023px) {
	body.thx-page.flavor-thought .sh-thought-nav-menu { background: transparent; }
	body.thx-page.flavor-thought .sh-thought-nav-menu a, body.thx-page.flavor-thought .sh-thought-nav-menu a strong { color: var(--thx-bone) !important; }
	body.thx-page.flavor-thought .sh-thought-nav-menu a span { color: var(--thx-bone-3) !important; }
	/* thought-profile.css gives each menu link a light card at this width; on the night bar it must be night too (bone on it reads 15:1). */
	body.thx-page.flavor-thought .sh-thought-nav-menu a { background: rgba(241, 237, 228, .06) !important; box-shadow: inset 0 0 0 1px rgba(241, 237, 228, .1); }
	body.thx-page.flavor-thought .sh-thought-nav-menu a:hover, body.thx-page.flavor-thought .sh-thought-nav-menu a:focus-visible { background: rgba(241, 237, 228, .11) !important; }
	body.thx-page.flavor-thought .sh-thought-nav-menu a[aria-current="page"] { background: rgba(241, 237, 228, .12) !important; box-shadow: inset 3px 0 0 #c9a35e, inset 0 0 0 1px rgba(241, 237, 228, .12); }
}

/* ---------- foundation ---------- */
/* ai/ai-styles.css caps main#content at 1200px / 92vw site-wide; these pages are full-bleed. */
body.thx-page main#content.thx { width: auto; max-width: none; margin: 0; padding: 0; }
.thx:focus { outline: none; }
.thx { display: block; overflow-x: clip; color: var(--thx-ink); background: var(--thx-parch); font: 400 17px/1.6 var(--thx-sans); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.thx *, .thx *::before, .thx *::after { box-sizing: border-box; }
.thx img { max-width: 100%; }
.thx a { color: inherit; }
.thx :focus-visible { outline: 2px solid var(--thx-gold-hi) !important; outline-offset: 3px; border-radius: 6px; }
.thx .thx-sec--paper :focus-visible, .thx .thx-sec--parch :focus-visible, .thx .thx-sec--dawn :focus-visible, .thx .thx-sec--map :focus-visible,
.thx .thx-story :focus-visible, .thx .thx-exchange :focus-visible, .thx .thx-outcomes :focus-visible, .thx .thx-ch--map :focus-visible, .thx .thx-ch--archive :focus-visible, .thx .thx-ch--paper :focus-visible, .thx .thx-ch--dawn :focus-visible, .thx .thx-additive :focus-visible { outline-color: var(--thx-ink) !important; }
.thx .thx-wrap { width: min(1200px, 100% - 2 * var(--thx-gutter)); margin-inline: auto; }
.thx [id] { scroll-margin-top: 84px; }
.thx h1, .thx h2, .thx h3 { margin: 0; font-family: var(--thx-display); font-weight: 420; font-variation-settings: "SOFT" 50, "WONK" 0, "opsz" 96; letter-spacing: -.012em; text-wrap: balance; color: inherit; text-transform: none; }
.thx h2 { font-size: clamp(1.95rem, 1.2rem + 2.3vw, 3.1rem); line-height: 1.05; }
.thx h3 { font-size: clamp(1.12rem, 1rem + .45vw, 1.4rem); line-height: 1.22; font-variation-settings: "SOFT" 30, "opsz" 36; }
.thx p { margin: 0; }
.thx ul, .thx ol { margin: 0; padding: 0; list-style: none; }
.thx li { margin: 0; }
.thx .thx-eyebrow { display: inline-flex; align-items: center; gap: .55em; margin: 0 0 14px; font: 700 12.5px/1.25 var(--thx-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--thx-gold-ink); }
.thx .thx-mini-eyebrow { display: block; margin: 0 0 10px; color: var(--thx-gold-ink); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .14em; text-transform: uppercase; }
.thx .thx-lead { max-width: 62ch; margin-top: 14px; font-size: clamp(1.03rem, .98rem + .28vw, 1.16rem); line-height: 1.62; color: var(--thx-ink-2); }
.thx .thx-meta { color: var(--thx-ink-3); font: 600 12.5px/1.45 var(--thx-sans); letter-spacing: .02em; }
.thx .thx-meta time { font: inherit; }
.thx .thx-empty { padding: 34px; text-align: center; color: var(--thx-ink-2); border: 1px dashed var(--thx-rule); border-radius: 18px; }
.thx .thx-empty-line { color: var(--thx-ink-3); font-style: italic; }
.thx .thx-link { color: var(--thx-ink-2); font: 600 14px var(--thx-sans); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(122, 90, 32, .45); }
.thx .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.thx .thx-glyph { width: 1.2em; height: 1.2em; flex: none; fill: currentColor; }
.thx .thx-glyph .sh-brain-glyph__ring, .thx .thx-glyph .ring, .thx .thx-glyph .stroke, .thx .thx-glyph .thx-g-ring { fill: none; stroke: currentColor; stroke-width: 1.6; }
.thx .thx-glyph .sh-brain-glyph__open, .thx .thx-glyph .thx-g-open { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-dasharray: 4.2 3.6; }
.thx .thx-glyph .sh-brain-glyph__cut, .thx .thx-glyph .thx-g-cut { fill: none; stroke: var(--thx-cut, var(--thx-parch)); stroke-width: 1.6; stroke-linecap: round; }
.thx .thx-glyph--question circle { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-dasharray: 4.2 3.6; }
.thx .thx-glyph--debate path, .thx .thx-glyph--probe path, .thx .thx-glyph--probe circle, .thx .thx-glyph--state rect, .thx .thx-glyph--state path { fill: none; stroke: currentColor; stroke-width: 1.6; }

/* Buttons */
.thx .thx-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.thx .thx-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 50px; margin: 0; padding: 0 24px; border-radius: 999px; border: 1.5px solid transparent; font: 650 15px/1 var(--thx-sans); text-decoration: none; white-space: nowrap; cursor: pointer; transition: transform .18s var(--thx-ease), background-color .18s var(--thx-ease), border-color .18s var(--thx-ease), color .18s var(--thx-ease); }
.thx .thx-btn:hover { transform: translateY(-2px); }
.thx .thx-btn--sm { min-height: 44px; padding: 0 18px; font-size: 14px; }
.thx .thx-btn--moon, .thx .thx-btn--moon:focus { background: var(--thx-moon); color: var(--thx-night-1); }
.thx .thx-btn--moon:hover { background: #fff7e2; color: var(--thx-night-1); }
.thx .thx-btn--line, .thx .thx-btn--line:focus { border-color: rgba(241, 237, 228, .42); color: var(--thx-bone); background: rgba(241, 237, 228, .04); }
.thx .thx-btn--line:hover { border-color: var(--thx-bone); background: rgba(241, 237, 228, .1); color: var(--thx-bone); }
.thx .thx-btn--ink, .thx .thx-btn--ink:focus { background: var(--thx-ink); color: var(--thx-parch); }
.thx .thx-btn--ink:hover { background: #2c2838; color: var(--thx-parch); }
.thx .thx-btn--paper, .thx .thx-btn--paper:focus { border-color: #bdb2a0; color: var(--thx-ink); background: transparent; }

/* ---------- the hero and the Thought Sky ---------- */
.thx .thx-hero { position: relative; isolation: isolate; overflow: hidden; color: var(--thx-bone); background: var(--thx-night-0); padding: clamp(72px, 8vw, 112px) 0 clamp(170px, 16vw, 210px); }
.thx .thx-hero--news-desk, .thx .thx-hero--research-single, .thx .thx-hero--debate { padding: clamp(28px, 4vw, 44px) 0 clamp(130px, 12vw, 170px); }
.thx .thx-hero--debates { background: var(--thx-plum-0); }
.thx .thx-sky { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; }
.thx .thx-hero-in { position: relative; }
.thx .thx-hero-copy { max-width: 700px; }
.thx .thx-hero .thx-eyebrow { color: var(--thx-gold); }
.thx .thx-hero h1 { font-size: clamp(2.4rem, 1.15rem + 4.1vw, 4.7rem); line-height: 1.02; font-weight: 380; font-variation-settings: "SOFT" 70, "WONK" 0, "opsz" 144; letter-spacing: -.022em; color: var(--thx-bone); }
.thx .thx-hero--news-desk h1, .thx .thx-hero--research-single h1, .thx .thx-hero--debate h1 { font-size: clamp(2.05rem, 1.1rem + 3vw, 3.7rem); line-height: 1.06; }
.thx .thx-hero h1 em { font-style: normal; font-weight: 400; font-variation-settings: "SOFT" 100, "WONK" 1, "opsz" 144; color: var(--thx-gold-hi); }
.thx .thx-hero .thx-lead { color: #d7d0c1; }
.thx .thx-note { display: flex; gap: 9px; align-items: flex-start; max-width: 62ch; margin-top: 22px; color: var(--thx-bone-3); font-size: 13.5px; line-height: 1.55; }
.thx .thx-note .thx-glyph { width: 15px; height: 15px; margin-top: 2px; color: var(--thx-gold); }
.thx .thx-note--seed { padding: 10px 14px; border: 1px dashed rgba(227, 197, 140, .5); border-radius: 12px; color: var(--thx-bone-2); background: rgba(6, 10, 21, .35); }
.thx .thx-record { display: flex; flex-wrap: wrap; gap: 8px 26px; margin-top: 24px; padding-top: 14px; border-top: 1px solid rgba(241, 237, 228, .14); color: var(--thx-bone-2); font-size: 14.5px; }
.thx .thx-record b { font: 500 20px/1 var(--thx-display); color: var(--thx-bone); font-variant-numeric: lining-nums tabular-nums; }
.thx .thx-sec--paper .thx-record, .thx .thx-sec--parch .thx-record { color: var(--thx-ink-2); border-color: var(--thx-rule); }
.thx .thx-sec--paper .thx-record b, .thx .thx-sec--parch .thx-record b { color: var(--thx-ink); }
.thx .thx-sky-toggle { position: absolute; top: 16px; right: var(--thx-gutter); z-index: 3; display: inline-flex; align-items: center; gap: 8px; min-height: 36px; margin: 0; padding: 0 14px 0 12px; border: 1px solid rgba(241, 237, 228, .28); border-radius: 999px; background: rgba(6, 10, 21, .5); color: var(--thx-bone-2); font: 650 12.5px/1 var(--thx-sans); letter-spacing: .02em; cursor: pointer; }
.thx .thx-sky-toggle:hover, .thx .thx-sky-toggle:focus { background: rgba(6, 10, 21, .72); border-color: rgba(241, 237, 228, .5); color: var(--thx-bone); }
.thx .thx-sky-toggle-ic { position: relative; width: 10px; height: 11px; }
.thx .thx-sky-toggle-ic::before, .thx .thx-sky-toggle-ic::after { content: ""; position: absolute; top: 0; width: 3px; height: 11px; border-radius: 1px; background: currentColor; }
.thx .thx-sky-toggle-ic::before { left: 0; } .thx .thx-sky-toggle-ic::after { right: 0; }
.thx .thx-sky-toggle[data-state="paused"] .thx-sky-toggle-ic::before { left: 1px; width: 0; height: 0; border-radius: 0; background: none; border-left: 9px solid currentColor; border-top: 5.5px solid transparent; border-bottom: 5.5px solid transparent; }
.thx .thx-sky-toggle[data-state="paused"] .thx-sky-toggle-ic::after { display: none; }
.thx .thx-sky-toggle[hidden], html:not(.thx-js) .thx .thx-sky-toggle { display: none; }
.thx .thx-crumbs { margin-bottom: clamp(22px, 3vw, 36px); }
.thx .thx-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px 10px; color: var(--thx-bone-3); font: 600 12.5px/1.3 var(--thx-sans); letter-spacing: .04em; }
.thx .thx-crumbs li + li::before { content: "/"; margin-right: 10px; color: rgba(166, 174, 192, .5); }
.thx .thx-crumbs a { color: var(--thx-bone-2); text-decoration: none; }
.thx .thx-crumbs a:hover { color: var(--thx-bone); text-decoration: underline; text-underline-offset: 3px; }
.thx .thx-crumbs [aria-current] { display: inline-block; max-width: 46ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; vertical-align: bottom; }
/* the edge each world grows into its first reading section from */
.thx .thx-edge { position: absolute; left: 0; right: 0; bottom: -1px; z-index: 1; display: block; width: 100%; height: clamp(26px, 4vw, 58px); pointer-events: none; }
.thx .thx-edge path { fill: var(--thx-parch); }
.thx-page--news .thx .thx-edge path, .thx-page--news-desk .thx .thx-edge path { fill: var(--thx-paper); }

/* Sky marks */
.thx .thx-sky .thx-moon circle:last-child { opacity: .95; }
/* NewsDesk: the Earth's limb, its cities and signals; the window */
.thx .thx-sky .thx-limb { fill: none; stroke-width: 2.4; }
.thx .thx-sky .thx-earth-grid path { fill: none; stroke: rgba(201, 163, 94, .14); stroke-width: 1; }
.thx .thx-sky .thx-city-glow { fill: var(--thx-peach); opacity: .22; }
.thx .thx-sky .thx-city-dot { fill: #ffe8bf; }
.thx .thx-sky .thx-signal-line { fill: none; stroke: var(--thx-gold); stroke-opacity: .42; stroke-width: 1.1; stroke-dasharray: .012 .014; }
.thx .thx-sky .thx-signal-pulse { fill: none; stroke: #ffe3b4; stroke-width: 2; stroke-linecap: round; stroke-dasharray: .04 1.2; stroke-dashoffset: .04; opacity: 0; }
.thx .thx-sky .thx-signal-star { fill: #fff3cf; }
.thx .thx-sky .thx-arch { fill: none; stroke: rgba(201, 163, 94, .5); stroke-width: 1.4; }
.thx .thx-sky .thx-arch--out { stroke: rgba(201, 163, 94, .26); stroke-width: 1; }
.thx .thx-sky .thx-arch--fine { stroke: rgba(201, 163, 94, .16); stroke-width: 1; }
.thx .thx-sky .thx-keystone { fill: rgba(201, 163, 94, .4); }
.thx .thx-sky .thx-arm-ring { fill: none; stroke: rgba(227, 197, 140, .6); stroke-width: 1.2; }
.thx .thx-sky .thx-arm-core { fill: var(--thx-gold-hi); }
.thx .thx-sky .thx-arm-stand { fill: none; stroke: rgba(227, 197, 140, .45); stroke-width: 1.4; }
/* Research: ridges, the telescope, the chart, the trail and its lantern */
.thx .thx-sky .thx-grat { fill: none; stroke: rgba(201, 163, 94, .13); stroke-width: 1; stroke-dasharray: 3 7; }
.thx .thx-sky .thx-grat--axis { stroke-dasharray: none; stroke: rgba(201, 163, 94, .09); }
.thx .thx-sky .thx-quest { color: var(--thx-moon); }
.thx .thx-sky .thx-quest g circle { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-dasharray: 4.2 3.6; }
.thx .thx-sky .thx-quest-core { fill: #fff3cf; }
.thx .thx-sky .thx-sight { fill: none; stroke: rgba(227, 197, 140, .35); stroke-width: 1; stroke-dasharray: 2 6; }
.thx .thx-sky .thx-tube { fill: none; stroke: #b8893e; stroke-width: 6; stroke-linecap: round; }
.thx .thx-sky .thx-tube--eye { stroke-width: 3.6; stroke: #8a6a35; }
.thx .thx-sky .thx-pivot { fill: var(--thx-gold-hi); }
.thx .thx-sky .thx-lens { fill: #fff3cf; }
.thx .thx-sky .thx-tripod { fill: none; stroke: #8a6a35; stroke-width: 1.8; stroke-linecap: round; }
.thx .thx-sky .thx-trail { fill: none; stroke: var(--thx-gold); stroke-opacity: .7; stroke-width: 1.5; stroke-dasharray: .006 .01; }
.thx .thx-sky .thx-way--station { fill: var(--thx-night-1); stroke: var(--thx-gold-hi); stroke-width: 1.4; }
.thx .thx-sky .thx-way--find { fill: none; stroke: var(--thx-gold-hi); stroke-width: 1.6; stroke-linecap: round; }
.thx .thx-sky .thx-lan { fill: #1a2a46; stroke: var(--thx-gold); stroke-width: 1; }
.thx .thx-sky .thx-lan-flame { fill: #ffd98a; }
.thx .thx-sky .thx-lan-ring { fill: none; stroke: var(--thx-gold); stroke-width: 1; }
/* Debates: the arcade, the floor, the threads, the seats and the question */
.thx .thx-sky .thx-arcade { position: absolute; }
.thx .thx-sky .thx-arcade-body { fill: rgba(8, 4, 14, .55); fill-rule: evenodd; }
.thx .thx-sky .thx-floor-ring { fill: none; stroke: rgba(201, 163, 94, .32); stroke-width: 1.2; }
.thx .thx-sky .thx-floor-ring--in { stroke-opacity: .5; stroke-dasharray: 3 6; }
.thx .thx-sky .thx-floor-ring--core { stroke: rgba(227, 197, 140, .55); }
.thx .thx-sky .thx-thread { fill: none; stroke: var(--thx-gold); stroke-opacity: .6; stroke-width: 1.2; }
.thx .thx-sky .thx-seat-ring { fill: none; stroke: var(--thx-gold); stroke-width: 1.6; }
.thx .thx-sky .thx-seat image { filter: saturate(.85); }
.thx .thx-sky .thx-seat-halo { opacity: .5; }
.thx .thx-sky .thx-seat-dot { fill: var(--thx-gold-hi); }
.thx .thx-sky .thx-core { color: var(--thx-gold-hi); }
.thx .thx-sky .thx-core path { fill: none; stroke: currentColor; stroke-width: 1.4; }
/* Hero art shrinks toward its own corner and retires before it can reach the copy. */
.thx .thx-sky .thx-window, .thx .thx-sky .thx-chart, .thx .thx-sky .thx-chamber-sky { transform-origin: 100% 0; }
.thx .thx-sky .thx-questsvg { transform-origin: 100% 100%; }
@media (max-width: 1240px) { .thx .thx-sky .thx-window, .thx .thx-sky .thx-chart, .thx .thx-sky .thx-chamber-sky, .thx .thx-sky .thx-questsvg { transform: scale(.78); } }
@media (max-width: 1100px) { .thx .thx-sky .thx-window, .thx .thx-sky .thx-chart, .thx .thx-sky .thx-chamber-sky { transform: translate(40px, 0) scale(.6); opacity: .55; } .thx .thx-sky .thx-questsvg { display: none; } }
@media (max-width: 900px) { .thx .thx-sky .thx-window, .thx .thx-sky .thx-chart, .thx .thx-sky .thx-chamber-sky, .thx .thx-sky .thx-scope { display: none; } .thx .thx-sky .thx-signals { opacity: .55; } }

/* ---------- sections on the golden thread ---------- */
.thx .thx-sec { position: relative; padding: clamp(64px, 8vw, 104px) 0; }
.thx .thx-sec--paper { background: var(--thx-parch); color: var(--thx-ink); --thx-cut: var(--thx-parch); }
.thx .thx-sec--parch { background: var(--thx-parch-2); color: var(--thx-ink); --thx-cut: var(--thx-parch-2); }
.thx .thx-sec--dawn { background: radial-gradient(900px 520px at 18% 0%, rgba(248, 205, 170, .42), transparent 70%), linear-gradient(var(--thx-dawn), var(--thx-parch)); color: var(--thx-ink); --thx-cut: var(--thx-dawn); }
.thx .thx-sec--map { background: linear-gradient(rgba(122, 90, 32, .045) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(90deg, rgba(122, 90, 32, .045) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(#f1e7d6, var(--thx-parch)); color: var(--thx-ink); --thx-cut: #f1e7d6; }
.thx .thx-sec--night { background: radial-gradient(1100px 480px at 80% 0%, rgba(74, 53, 87, .32), transparent 70%), linear-gradient(var(--thx-night-1), var(--thx-night-0)); color: var(--thx-bone); --thx-cut: var(--thx-night-1); }
.thx .thx-sec--plum { background: radial-gradient(900px 480px at 12% 8%, rgba(201, 163, 94, .13), transparent 70%), radial-gradient(800px 600px at 70% 60%, rgba(120, 80, 150, .16), transparent 70%), linear-gradient(var(--thx-plum-2), var(--thx-plum-1) 30%, var(--thx-plum-0)); color: var(--thx-bone); --thx-cut: var(--thx-plum-1); }
.thx-page--news .thx .thx-sec--paper:first-of-type, .thx-page--news .thx #latest { background: var(--thx-paper); }
.thx .thx-sec--night .thx-eyebrow, .thx .thx-sec--plum .thx-eyebrow { color: var(--thx-gold); }
.thx .thx-sec--night .thx-lead, .thx .thx-sec--plum .thx-lead { color: #d2cbdc; }
.thx .thx-sec--night .thx-meta, .thx .thx-sec--plum .thx-meta { color: var(--thx-bone-3); }
.thx .thx-sec--night .thx-mini-eyebrow, .thx .thx-sec--plum .thx-mini-eyebrow { color: var(--thx-gold); }
.thx .thx-sec-head { position: relative; max-width: 780px; margin-bottom: clamp(26px, 3vw, 40px); }
.thx .thx-knot { position: absolute; left: -58px; top: -6px; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid rgba(201, 163, 94, .45); background: var(--thx-cut, var(--thx-parch)); color: rgba(122, 90, 32, .6); transition: color .5s var(--thx-ease), border-color .5s var(--thx-ease), box-shadow .5s var(--thx-ease); }
.thx .thx-sec--night .thx-knot, .thx .thx-sec--plum .thx-knot { color: rgba(201, 163, 94, .6); }
.thx .thx-knot .thx-glyph { width: 20px; height: 20px; }
.thx .thx-sec.is-lit .thx-knot, html:not(.thx-js) .thx .thx-knot { color: var(--thx-gold-ink); border-color: var(--thx-gold); box-shadow: 0 0 0 5px rgba(201, 163, 94, .12), 0 0 24px rgba(227, 197, 140, .35); }
.thx .thx-sec--night.is-lit .thx-knot, .thx .thx-sec--plum.is-lit .thx-knot { color: var(--thx-gold-hi); }
@media (max-width: 1320px) { .thx .thx-knot { position: static; margin-bottom: 14px; width: 36px; height: 36px; } }

/* ---------- the journey: stations on one gold line ---------- */
.thx .thx-journey { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 0; counter-reset: thx-stop; }
.thx .thx-journey::before { content: ""; position: absolute; left: 28px; right: 28px; top: 27px; border-top: 1.5px solid var(--thx-gold); opacity: .7; }
.thx .thx-stop { position: relative; }
.thx .thx-stop > a, .thx .thx-stop > .thx-stop-mark { text-decoration: none; }
.thx .thx-stop > a, .thx .thx-stop { display: grid; align-content: start; gap: 6px; padding-right: 18px; color: inherit; }
.thx .thx-stop > a:hover b, .thx .thx-stop > a:focus-visible b { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(122, 90, 32, .5); }
.thx .thx-stop-mark { position: relative; z-index: 1; display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 8px; border-radius: 50%; border: 1.5px solid var(--thx-gold); background: var(--thx-night-1); color: var(--thx-moon); --thx-cut: var(--thx-night-1); transition: background-color .5s var(--thx-ease), box-shadow .5s var(--thx-ease); }
.thx .thx-stop-mark .thx-glyph { width: 24px; height: 24px; }
.thx .thx-stop-copy { display: grid; gap: 4px; }
.thx .thx-stop b { font: 450 1.12rem/1.25 var(--thx-display); color: var(--thx-ink); }
.thx .thx-stop i { justify-self: start; padding: 2px 9px; border-radius: 999px; background: rgba(201, 163, 94, .18); color: var(--thx-gold-ink); font: 700 11.5px/1.5 var(--thx-sans); font-style: normal; letter-spacing: .04em; }
.thx .thx-stop-copy > span { color: var(--thx-ink-2); font-size: 14.5px; line-height: 1.5; }
.thx .thx-stop.is-lit .thx-stop-mark { background: var(--thx-moon); color: var(--thx-night-1); --thx-cut: var(--thx-moon); box-shadow: 0 0 0 6px rgba(243, 234, 210, .12), 0 0 26px rgba(227, 197, 140, .3); }
.thx .thx-stop.is-empty .thx-stop-mark, .thx .thx-stop.is-pending .thx-stop-mark { border-style: dashed; background: transparent; color: var(--thx-gold-ink); box-shadow: none; }
.thx .thx-stop.is-empty b, .thx .thx-stop.is-empty .thx-stop-copy > span { color: var(--thx-ink-3); }
.thx .thx-stop.is-pending b::after { content: ""; display: inline-block; width: 7px; height: 7px; margin-left: 8px; border: 1.5px solid var(--thx-gold-deep); border-radius: 50%; vertical-align: middle; }
.thx .thx-sec--night .thx-stop b, .thx .thx-sec--plum .thx-stop b, .thx .thx-argument-path .thx-stop b { color: var(--thx-bone); }
.thx .thx-sec--night .thx-stop-copy > span, .thx .thx-sec--plum .thx-stop-copy > span { color: var(--thx-bone-2); }
/* vertical variants */
.thx .thx-journey--rail, .thx .thx-journey--steps { grid-auto-flow: row; gap: 16px; }
.thx .thx-journey--rail::before, .thx .thx-journey--steps::before { left: 17px; right: auto; top: 18px; bottom: 18px; border-top: 0; border-left: 1.5px solid var(--thx-gold); }
.thx .thx-journey--rail .thx-stop > a, .thx .thx-journey--rail .thx-stop, .thx .thx-journey--steps .thx-stop > a, .thx .thx-journey--steps .thx-stop { grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 0 14px; padding: 0; }
.thx .thx-journey--rail .thx-stop > a { display: grid; }
.thx .thx-journey--rail .thx-stop-mark, .thx .thx-journey--steps .thx-stop-mark { width: 36px; height: 36px; margin: 0; }
.thx .thx-journey--rail .thx-stop-mark .thx-glyph, .thx .thx-journey--steps .thx-stop-mark .thx-glyph { width: 17px; height: 17px; }
.thx .thx-journey--rail b { font-size: 1rem; }
.thx .thx-journey--rail .thx-stop-copy > span { font-size: 13.5px; }
.thx .thx-journey--steps .thx-stop-mark { width: 44px; height: 44px; }
.thx .thx-journey--steps b { font-size: 1.2rem; }
/* the road (Research): a dashed way ahead after the last lit stop */
.thx .thx-journey--road .thx-stop.is-pending::before { content: ""; position: absolute; left: -100%; right: 100%; top: 27px; border-top: 1.5px dashed var(--thx-gold-deep); }
.thx .thx-journey--road::before { right: calc(20% + 28px); }
/* the argument path (Debates): a compact bar */
.thx .thx-argument-path { padding: 26px 0; background: linear-gradient(var(--thx-plum-1), var(--thx-plum-0)); color: var(--thx-bone); }
.thx .thx-argument-path .thx-journey::before { top: 19px; }
.thx .thx-argument-path .thx-stop-mark { width: 40px; height: 40px; margin-bottom: 4px; }
.thx .thx-argument-path .thx-stop-mark .thx-glyph { width: 18px; height: 18px; }
.thx .thx-argument-path .thx-stop b { font-size: 1rem; }
.thx .thx-argument-path .thx-stop-copy > span { color: var(--thx-bone-3); font-size: 13px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.thx .thx-argument-path .thx-stop.is-empty .thx-stop-mark { color: var(--thx-gold); }
.thx .thx-argument-path .thx-stop > a:hover b { text-decoration-color: rgba(227, 197, 140, .6); }

/* Where this sits in Thought: a small diagram */
.thx .thx-place { margin: 0; padding: 22px 22px 18px; border: 1px solid var(--thx-rule); border-radius: 20px; background: var(--thx-paper); }
.thx .thx-place ol { position: relative; display: grid; gap: 14px; }
.thx .thx-place ol::before { content: ""; position: absolute; left: 13px; top: 18px; bottom: 18px; border-left: 1.5px solid var(--thx-gold); opacity: .6; }
.thx .thx-place li { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 2px 14px; align-items: start; }
.thx .thx-place .thx-glyph { grid-row: span 2; width: 28px; height: 28px; padding: 5px; border-radius: 50%; background: var(--thx-paper); box-shadow: 0 0 0 1.5px rgba(201, 163, 94, .6); color: var(--thx-gold-ink); --thx-cut: var(--thx-paper); }
.thx .thx-place b { font: 450 1.02rem/1.25 var(--thx-display); }
.thx .thx-place span { color: var(--thx-ink-2); font-size: 13.5px; line-height: 1.45; }
.thx .thx-place li.is-here .thx-glyph { background: var(--thx-ink); color: var(--thx-moon); box-shadow: 0 0 0 1.5px var(--thx-ink), 0 0 0 5px rgba(201, 163, 94, .2); --thx-cut: var(--thx-ink); }
.thx .thx-place li.is-apart { padding-top: 12px; }
.thx .thx-place li.is-apart::before { content: ""; position: absolute; left: 6px; top: -1px; width: 16px; border-top: 1.5px dashed var(--thx-conflict); }
.thx .thx-place li.is-apart .thx-glyph { box-shadow: 0 0 0 1.5px rgba(122, 90, 32, .35); color: var(--thx-ink-3); }
.thx .thx-place li.is-gate .thx-glyph { box-shadow: 0 0 0 1.5px var(--thx-gold-deep); border-radius: 8px; }
.thx .thx-place figcaption { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--thx-rule); font: 600 13.5px var(--thx-sans); }
.thx .thx-place figcaption a { color: var(--thx-gold-ink); text-decoration: none; }
.thx .thx-place figcaption a:hover { text-decoration: underline; text-underline-offset: 3px; }
.thx .thx-reading-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr); gap: clamp(28px, 5vw, 70px); align-items: start; }
.thx .thx-reading-side { display: grid; gap: 18px; }
.thx .thx-observed { display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-left: 2px solid var(--thx-gold); background: rgba(201, 163, 94, .08); border-radius: 0 12px 12px 0; color: var(--thx-ink-2); font-size: 14.5px; line-height: 1.5; }
.thx .thx-observed .thx-glyph { width: 18px; height: 18px; margin-top: 2px; color: var(--thx-gold-ink); }
.thx .thx-observed strong { color: var(--thx-ink); }
.thx .thx-journey-foot { max-width: 520px; margin-top: clamp(32px, 4vw, 48px); }

/* ---------- Follow the thread ---------- */
.thx .thx-follow { position: relative; padding: clamp(80px, 9vw, 120px) 0 clamp(70px, 8vw, 100px); text-align: center; background: radial-gradient(700px 340px at 50% 110%, rgba(243, 234, 210, .12), transparent 70%), linear-gradient(var(--thx-night-0), #0b1324); color: var(--thx-bone); --thx-cut: var(--thx-night-0); }
.thx .thx-follow-in { position: relative; max-width: 760px; margin: 0 auto; }
.thx .thx-follow-thread { position: absolute; left: 50%; top: calc(-1 * clamp(80px, 9vw, 120px)); width: 1.5px; height: clamp(56px, 6vw, 84px); background: linear-gradient(rgba(201, 163, 94, 0), var(--thx-gold)); }
.thx .thx-follow .thx-eyebrow { justify-content: center; color: var(--thx-gold); }
.thx .thx-follow h2 { color: var(--thx-bone); }
.thx .thx-follow-note { max-width: 56ch; margin: 12px auto 0; color: var(--thx-bone-3); font-size: 14px; line-height: 1.5; }
.thx .thx-follow-main { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; margin-top: 30px; padding: 22px 26px; border: 1px solid rgba(201, 163, 94, .45); border-radius: 22px; background: rgba(6, 10, 21, .5); color: var(--thx-bone); text-align: left; text-decoration: none; transition: border-color .2s, transform .2s var(--thx-ease), box-shadow .2s; }
.thx .thx-follow-main:hover { border-color: var(--thx-gold-hi); transform: translateY(-3px); box-shadow: 0 20px 60px -30px rgba(227, 197, 140, .6); }
.thx .thx-follow-mark { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; border: 1.5px solid var(--thx-gold); color: var(--thx-gold-hi); background: radial-gradient(circle, rgba(201, 163, 94, .18), transparent 70%); }
.thx .thx-follow-mark .thx-glyph { width: 26px; height: 26px; }
.thx .thx-follow-copy small { display: block; color: var(--thx-gold); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
.thx .thx-follow-copy strong { display: block; margin-top: 4px; font: 450 clamp(1.2rem, 1rem + .8vw, 1.6rem)/1.2 var(--thx-display); }
.thx .thx-follow-copy em { display: block; margin-top: 4px; color: var(--thx-bone-3); font: normal 14px/1.4 var(--thx-sans); }
.thx .thx-follow-go { color: var(--thx-gold-hi); font-size: 1.6rem; }
.thx .thx-follow-more { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 14px 28px; margin-top: 24px; text-align: left; }
.thx .thx-follow-more a { display: flex; align-items: flex-start; gap: 10px; color: var(--thx-bone-2); text-align: left; text-decoration: none; line-height: 1.35; }
.thx .thx-follow-more a .thx-glyph { margin-top: 3px; }
.thx .thx-follow-more a:hover { color: var(--thx-bone); }
.thx .thx-follow-more .thx-glyph { width: 16px; height: 16px; color: var(--thx-gold); --thx-cut: #0b1324; }
.thx .thx-follow-more small { display: block; color: var(--thx-bone-3); font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; }
.thx .thx-follow-more em { display: block; color: var(--thx-bone-3); font: normal 12.5px/1.4 var(--thx-sans); }

/* ---------- filters and pager ---------- */
.thx .thx-filters { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(4, minmax(110px, 1fr)) auto; gap: 10px; align-items: end; margin-bottom: clamp(22px, 3vw, 34px); padding: 16px; border: 1px solid var(--thx-rule); border-radius: 18px; background: var(--thx-paper); box-shadow: 0 16px 40px -32px rgba(40, 30, 20, .45); }
.thx-page--research .thx .thx-filters { grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(120px, 1fr)) auto; }
.thx .thx-field { display: grid; gap: 6px; margin: 0; min-width: 0; }
.thx .thx-field > span { color: var(--thx-ink-3); font: 700 11px/1.2 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-field input, .thx .thx-field select { width: 100%; min-height: 46px; margin: 0; padding: 0 12px; border: 1px solid #cfc4b0; border-radius: 10px; background: #fff; color: var(--thx-ink); font: 500 15px var(--thx-sans); }
.thx .thx-field input:focus, .thx .thx-field select:focus { border-color: var(--thx-ink); outline: none; box-shadow: 0 0 0 3px rgba(201, 163, 94, .3); }
.thx .thx-field--act { display: flex; align-items: center; gap: 14px; }
.thx .thx-filters .thx-btn { min-height: 46px; }
.thx .thx-count { margin-bottom: 16px; color: var(--thx-ink-2); font: 600 14px var(--thx-sans); }
.thx .thx-pager { margin-top: clamp(30px, 4vw, 48px); }
.thx .thx-pager ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.thx .thx-pager a, .thx .thx-pager span { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 14px; border: 1px solid var(--thx-rule); border-radius: 999px; color: var(--thx-ink); text-decoration: none; font: 650 14.5px var(--thx-sans); background: var(--thx-paper); }
.thx .thx-pager a:hover { border-color: var(--thx-ink); }
.thx .thx-pager .current { background: var(--thx-ink); border-color: var(--thx-ink); color: var(--thx-parch); }
.thx .thx-pager .dots { border: 0; background: none; }

/* ================= NewsDesk ================= */
.thx .thx-feature { display: grid; grid-template-columns: 170px minmax(0, 1fr) minmax(250px, 300px); gap: clamp(22px, 4vw, 48px); align-items: start; }
.thx .thx-feature-stamp { display: grid; gap: 8px; padding-top: 6px; border-top: 2px solid var(--thx-ink); color: var(--thx-ink-3); font: 600 13px/1.4 var(--thx-sans); }
.thx .thx-feature-stamp time { display: grid; gap: 4px; color: var(--thx-ink-2); }
.thx .thx-feature-stamp time b { font: 400 2.6rem/1 var(--thx-display); color: var(--thx-ink); letter-spacing: -.02em; }
.thx .thx-feature-stamp span { color: var(--thx-gold-ink); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
.thx .thx-feature-title { font-size: clamp(1.8rem, 1.1rem + 2.4vw, 3.1rem); line-height: 1.06; font-variation-settings: "SOFT" 60, "opsz" 96; }
.thx .thx-feature-title a { text-decoration: none; }
.thx .thx-feature-title a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; text-decoration-color: rgba(122, 90, 32, .5); }
.thx .thx-feature-dek { margin-top: 16px; max-width: 58ch; color: var(--thx-ink-2); font: 400 clamp(1.08rem, 1rem + .3vw, 1.22rem)/1.6 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 18; }
.thx .thx-prov { display: flex; gap: 8px; align-items: flex-start; margin-top: 16px; color: var(--thx-ink-3); font-size: 13.5px; line-height: 1.5; }
.thx .thx-prov .thx-glyph { width: 15px; height: 15px; margin-top: 2px; color: var(--thx-gold-ink); }
.thx .thx-feature-line { padding: 20px; border-radius: 20px; background: linear-gradient(160deg, #fbf4ea, #f3e7da); border: 1px solid #ead8c6; }
.thx .thx-dispatches { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-bottom: clamp(30px, 4vw, 48px); border-top: 2px solid var(--thx-ink); }
.thx .thx-dispatch { padding: 20px clamp(16px, 2vw, 26px) 4px; border-left: 1px solid var(--thx-rule); }
.thx .thx-dispatch:first-child { padding-left: 0; border-left: 0; }
.thx .thx-dispatch time { display: block; margin-bottom: 8px; color: var(--thx-gold-ink); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-dispatch h3 { font-size: clamp(1.2rem, 1rem + .6vw, 1.45rem); }
.thx .thx-dispatch h3 a, .thx .thx-ledger h3 a { text-decoration: none; }
.thx .thx-dispatch h3 a:hover, .thx .thx-ledger h3 a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; text-decoration-color: rgba(122, 90, 32, .5); }
.thx .thx-dispatch p { margin-top: 8px; color: var(--thx-ink-2); font-size: 15px; line-height: 1.55; }
.thx .thx-ledger-desk { color: var(--thx-ink-3) !important; font: 600 12px/1.4 var(--thx-sans) !important; letter-spacing: .04em; }
.thx .thx-ledger { position: relative; display: grid; gap: 0; }
.thx .thx-ledger::before { content: ""; position: absolute; left: 184px; top: 10px; bottom: 10px; border-left: 1.5px solid rgba(201, 163, 94, .55); }
.thx .thx-ledger-row { position: relative; display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 4px 34px; padding: 16px 0; border-bottom: 1px solid rgba(221, 211, 192, .7); }
.thx .thx-ledger-row > :not(.thx-ledger-dot, time) { grid-column: 2; }
.thx .thx-ledger-row time { grid-column: 1; grid-row: 1 / span 3; color: var(--thx-ink-3); font: 600 13px/1.4 var(--thx-sans); }
.thx .thx-ledger-dot { position: absolute; left: 179px; top: 22px; width: 11px; height: 11px; border-radius: 50%; background: var(--thx-paper); box-shadow: 0 0 0 1.5px var(--thx-gold); }
.thx .thx-ledger h3 { font-size: 1.16rem; }
.thx .thx-ledger p { color: var(--thx-ink-2); font-size: 15px; line-height: 1.55; }
.thx .thx-ledger-row:target { background: linear-gradient(90deg, rgba(201, 163, 94, .14), transparent 70%); }
.thx .thx-ledger-row:target .thx-ledger-dot { background: var(--thx-gold-hi); }
.thx .thx-desks { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 20px; }
.thx .thx-desk { position: relative; display: grid; gap: 12px; align-content: start; padding: 26px; border: 1px solid rgba(201, 163, 94, .35); border-radius: 22px; background: radial-gradient(420px 220px at 0% 0%, rgba(201, 163, 94, .1), transparent 70%), linear-gradient(180deg, rgba(18, 29, 54, .8), rgba(8, 13, 27, .8)); }
.thx .thx-desk-mark { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid var(--thx-gold); color: var(--thx-gold-hi); --thx-cut: var(--thx-night-1); }
.thx .thx-desk-mark .thx-glyph { width: 22px; height: 22px; }
.thx .thx-desk h3 { font-size: 1.5rem; }
.thx .thx-desk h3 a { color: var(--thx-bone); text-decoration: none; }
.thx .thx-desk p { color: var(--thx-bone-2); font-size: 15px; line-height: 1.55; }
.thx .thx-desk .thx-meta { color: var(--thx-bone-3); }
.thx .thx-desk .thx-btn { justify-self: start; }
.thx .thx-topics { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.thx .thx-topics li { position: relative; padding-left: 12px; color: var(--thx-gold-hi); font: 600 12.5px/1.4 var(--thx-sans); letter-spacing: .03em; }
.thx .thx-topics li::before { content: ""; position: absolute; left: 0; top: .55em; width: 4px; height: 4px; border-radius: 50%; background: currentColor; }
.thx .thx-topics--ink li { color: var(--thx-ink-2); }
/* the desk page: a reading line beside the discussion */
.thx .thx-story { padding: clamp(46px, 6vw, 80px) 0 clamp(56px, 7vw, 90px); background: var(--thx-paper); }
.thx .thx-story-grid { display: grid; grid-template-columns: 240px minmax(0, 1fr) 260px; gap: clamp(26px, 4vw, 56px); align-items: start; }
.thx .thx-story-rail, .thx .thx-story-side { position: sticky; top: 96px; }
.thx .thx-story-side { display: grid; gap: 22px; color: var(--thx-ink-2); font-size: 14.5px; line-height: 1.55; }
.thx .thx-story-head { margin-bottom: 28px; padding-bottom: 22px; border-bottom: 1px solid var(--thx-rule); }
.thx .thx-story-head h2 { font-size: clamp(1.8rem, 1.1rem + 2.1vw, 2.8rem); line-height: 1.08; }
.thx .thx-standfirst { margin-top: 16px; color: var(--thx-ink); font: 400 clamp(1.18rem, 1.05rem + .45vw, 1.42rem)/1.5 var(--thx-display); font-variation-settings: "SOFT" 60, "opsz" 30; }
.thx .thx-manuscript { max-width: 70ch; }
.thx .thx-reading-sec { position: relative; margin: 0 0 30px; padding-left: 44px; }
.thx .thx-reading-knot { position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid var(--thx-gold); color: var(--thx-gold-ink); background: var(--thx-paper); --thx-cut: var(--thx-paper); }
.thx .thx-reading-knot .thx-glyph { width: 15px; height: 15px; }
.thx .thx-reading-sec h3 { margin: 2px 0 10px; font-size: 1.32rem; }
.thx .thx-reading-sec.is-empty .thx-reading-knot { border-style: dashed; color: var(--thx-ink-3); }
.thx .thx-points { display: grid; gap: 10px; color: #2a2533; font: 400 clamp(1.04rem, 1rem + .2vw, 1.14rem)/1.72 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 16; }
.thx .thx-points li { position: relative; padding-left: 18px; }
.thx .thx-points li::before { content: ""; position: absolute; left: 0; top: .78em; width: 6px; height: 6px; border-radius: 50%; background: var(--thx-gold); }
.thx .thx-points--q li::before { width: 8px; height: 8px; top: .7em; background: none; border: 1.5px dashed var(--thx-gold-deep); }
.thx .thx-assess { margin-top: 36px; padding: 22px 24px; border: 1px solid var(--thx-rule); border-radius: 18px; background: var(--thx-parch); }
.thx .thx-assess h3 { font-size: 1.32rem; }
.thx .thx-assess dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; margin: 16px 0 0; }
.thx .thx-assess dt { color: var(--thx-gold-ink); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-assess dd { margin: 4px 0 0; color: var(--thx-ink-2); font-size: 15px; line-height: 1.55; }

/* ================= Research ================= */
.thx .thx-chip { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; font: 700 11px/1.4 var(--thx-sans); letter-spacing: .06em; text-transform: uppercase; }
.thx .thx-chip--seed { border: 1px dashed #b49563; color: #6d5226; background: rgba(201, 163, 94, .1); }
.thx .thx-hero .thx-chip--seed, .thx .thx-sec--night .thx-chip--seed { color: var(--thx-gold-hi); border-color: rgba(227, 197, 140, .55); background: rgba(6, 10, 21, .3); }
.thx .thx-status, .thx .thx-conf, .thx .thx-impact, .thx .thx-oc { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; font: 700 11.5px/1.4 var(--thx-sans); letter-spacing: .03em; background: rgba(29, 26, 38, .06); color: var(--thx-ink-2); }
.thx .thx-status::before, .thx .thx-conf::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.thx .thx-status.is-broad_consensus, .thx .thx-status.is-resolved, .thx .thx-status.is-completed, .thx .thx-status.is-leading { color: #2f6f4f; background: rgba(95, 180, 137, .15); }
.thx .thx-status.is-contested, .thx .thx-status.is-weakened, .thx .thx-status.is-disputed { color: #9a3f39; background: rgba(212, 114, 109, .15); }
.thx .thx-status.is-active, .thx .thx-status.is-emerging, .thx .thx-status.is-ongoing { color: #3b5f99; background: rgba(111, 155, 214, .15); }
.thx .thx-status.is-reassessed, .thx .thx-status.is-minority { color: #6a4f9e; background: rgba(161, 137, 207, .16); }
.thx .thx-conf.is-strong { color: #2f6f4f; background: rgba(95, 180, 137, .15); }
.thx .thx-conf.is-credible_preliminary { color: #8a5d1a; background: rgba(220, 171, 124, .2); }
.thx .thx-conf.is-disputed, .thx .thx-conf.is-retracted { color: #9a3f39; background: rgba(212, 114, 109, .15); }
.thx .thx-conf.is-weak, .thx .thx-conf.is-speculative { color: #6a4f9e; background: rgba(161, 137, 207, .16); }
.thx .thx-conf.is-superseded { color: var(--thx-ink-3); background: rgba(29, 26, 38, .07); text-decoration: line-through; }
.thx .thx-impact { background: transparent; border: 1px solid var(--thx-rule); }
.thx .thx-sec--night .thx-status, .thx .thx-hero .thx-status { background: rgba(241, 237, 228, .1); color: var(--thx-bone); }
.thx .thx-find-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--thx-ink-3); font: 600 12.5px/1.4 var(--thx-sans); }
.thx .thx-dossiers { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr)); gap: 20px; }
.thx .thx-dossier-card { position: relative; display: grid; gap: 12px; align-content: start; padding: 24px 24px 20px; border: 1px solid var(--thx-rule); border-radius: 22px; background: radial-gradient(300px 200px at 100% 0%, rgba(201, 163, 94, .1), transparent 70%), var(--thx-paper); box-shadow: 0 20px 50px -40px rgba(40, 30, 20, .5); transition: transform .25s var(--thx-ease), border-color .25s var(--thx-ease); }
.thx .thx-dossier-card::after { content: ""; position: absolute; right: 20px; top: 20px; width: 34px; height: 34px; border-radius: 50%; border: 1.5px dashed rgba(184, 137, 62, .55); pointer-events: none; }
.thx .thx-dossier-card:hover { border-color: var(--thx-gold); transform: translateY(-3px); }
.thx .thx-dossier-card h3 { padding-right: 44px; font-size: 1.45rem; }
.thx .thx-dossier-card h3 a, .thx .thx-find h3 a, .thx .thx-project h3 a { text-decoration: none; }
.thx .thx-dossier-card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: 22px; }
.thx .thx-dossier-card p { color: var(--thx-ink-2); font-size: 15px; line-height: 1.55; }
.thx .thx-dossier-card .thx-meta { padding-top: 12px; border-top: 1px solid var(--thx-rule); }
.thx .thx-bars { display: grid; gap: 8px; }
.thx .thx-bars li { display: grid; grid-template-columns: minmax(0, 1fr) 90px; grid-template-areas: "name val" "bar bar"; gap: 3px 10px; font-size: 13.5px; }
.thx .thx-bar-name { grid-area: name; color: var(--thx-ink); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.thx .thx-bar-val { grid-area: val; justify-self: end; color: var(--thx-ink-3); font-size: 12px; }
.thx .thx-bars .thx-bar { grid-area: bar; }
.thx .thx-bar { display: block; height: 6px; border-radius: 99px; background: rgba(29, 26, 38, .08); overflow: hidden; }
.thx .thx-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--thx-gold-deep), var(--thx-gold-hi)); transform-origin: 0 50%; }
.thx .thx-finds { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 18px; }
.thx .thx-find { position: relative; display: grid; gap: 10px; align-content: start; padding: 20px 22px; border-radius: 18px; background: var(--thx-paper); border: 1px solid var(--thx-rule); }
.thx .thx-find::before { content: ""; position: absolute; left: 22px; top: -1px; width: 46px; height: 3px; border-radius: 0 0 3px 3px; background: var(--thx-gold); }
.thx .thx-find h3 { font-size: 1.18rem; }
.thx .thx-find p { color: var(--thx-ink-2); font-size: 14.5px; line-height: 1.55; }
.thx .thx-find footer { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.thx .thx-find--lead { margin-bottom: 22px; padding: clamp(22px, 3vw, 32px); border-color: rgba(201, 163, 94, .55); background: radial-gradient(500px 240px at 0% 0%, rgba(240, 196, 106, .2), transparent 70%), var(--thx-paper); }
.thx .thx-find--lead h3 { font-size: clamp(1.4rem, 1.1rem + 1.1vw, 2rem); }
.thx .thx-find--lead p { max-width: 70ch; font-size: 16px; }
.thx .thx-tag { display: inline-flex; padding: 4px 10px; border-radius: 999px; background: rgba(29, 26, 38, .06); color: var(--thx-ink-2); font: 600 12px/1.3 var(--thx-sans); text-decoration: none; }
a.thx-tag:hover { background: rgba(201, 163, 94, .2); }
.thx .thx-tag--plain { background: transparent; border: 1px solid var(--thx-rule); }
.thx .thx-pressure { display: grid; gap: 0; border-top: 1px solid var(--thx-rule); }
.thx .thx-pressure li { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(120px, 1fr) auto; gap: 8px 28px; align-items: center; padding: 16px 4px; border-bottom: 1px solid var(--thx-rule); }
.thx .thx-pressure h3 { font-size: 1.15rem; }
.thx .thx-pressure a { color: var(--thx-ink-3); font: 600 13px var(--thx-sans); text-decoration: none; }
.thx .thx-pressure a:hover { text-decoration: underline; }
.thx .thx-pressure p { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px 12px; color: var(--thx-ink-3); font: 600 12.5px var(--thx-sans); }
.thx .thx-pressure .is-for { color: #2f6f4f; } .thx .thx-pressure .is-against { color: #9a3f39; }
.thx .thx-stars-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 30px; }
.thx .thx-stars-list a, .thx .thx-star-q { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 14px; align-items: start; padding: 16px 0; border-bottom: 1px solid rgba(241, 237, 228, .12); color: var(--thx-bone); text-decoration: none; }
.thx .thx-stars-list .thx-glyph { width: 30px; height: 30px; color: var(--thx-gold-hi); }
.thx .thx-stars-list strong { display: block; font: 450 1.12rem/1.35 var(--thx-display); }
.thx .thx-stars-list small { display: block; margin-top: 4px; color: var(--thx-bone-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-stars-list a:hover strong { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(227, 197, 140, .6); }
.thx .thx-prose { max-width: 72ch; color: var(--thx-ink-2); font: 400 clamp(1.04rem, 1rem + .2vw, 1.14rem)/1.75 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 16; }
.thx .thx-projects { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr)); gap: 20px; }
.thx .thx-project { display: grid; gap: 12px; align-content: start; padding: 24px; border: 1px solid rgba(201, 163, 94, .35); border-radius: 22px; background: linear-gradient(180deg, rgba(18, 29, 54, .85), rgba(8, 13, 27, .85)); }
.thx .thx-project h3 { font-size: 1.5rem; } .thx .thx-project h3 a { color: var(--thx-bone); }
.thx .thx-project p { color: var(--thx-bone-2); font-size: 15px; }
.thx .thx-project .thx-record { margin-top: 4px; }
.thx .thx-project-q { display: flex; gap: 10px; color: var(--thx-moon) !important; font: 450 1.06rem/1.4 var(--thx-display) !important; }
.thx .thx-project-q .thx-glyph { width: 20px; height: 20px; margin-top: 2px; color: var(--thx-gold-hi); }
.thx .thx-project .thx-btn { justify-self: start; }
.thx .thx-gatecard { display: grid; grid-template-columns: minmax(180px, 260px) minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); align-items: center; max-width: 900px; padding: clamp(22px, 3vw, 34px); border: 1px solid rgba(201, 163, 94, .35); border-radius: 24px; background: rgba(6, 10, 21, .45); }
.thx .thx-gatecard h3 { font-size: clamp(1.3rem, 1.1rem + .8vw, 1.8rem); color: var(--thx-bone); }
.thx .thx-gatecard p { margin-top: 10px; color: var(--thx-bone-2); line-height: 1.6; }
.thx .thx-gate-art { width: 100%; height: auto; overflow: visible; }
.thx .thx-gate-road { fill: none; stroke: var(--thx-gold); stroke-width: 1.6; }
.thx .thx-gate-road--ahead { stroke-dasharray: 4 6; opacity: .7; }
.thx .thx-gate-arch { fill: none; stroke: var(--thx-gold-hi); stroke-width: 2; }
.thx .thx-gate-bar { fill: none; stroke: rgba(227, 197, 140, .6); stroke-width: 1.4; }
.thx .thx-gate-star { fill: none; stroke: var(--thx-moon); stroke-width: 1.4; stroke-dasharray: 4 3.4; }
.thx .thx-gate-star-core { fill: #fff3cf; }
/* the subject: facts and the expedition map */
.thx .thx-facts { display: flex; flex-wrap: wrap; gap: 12px 30px; margin: 24px 0 0; padding-top: 16px; border-top: 1px solid rgba(241, 237, 228, .14); }
.thx .thx-facts dt { color: var(--thx-bone-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-facts dd { margin: 4px 0 0; color: var(--thx-bone); font: 500 1.02rem/1.3 var(--thx-sans); }
.thx .thx-xmap { position: relative; }
.thx .thx-xmap-route { position: absolute; left: 0; right: 0; top: -6px; width: 100%; height: 150px; overflow: visible; }
.thx .thx-xmap-path { fill: none; stroke: var(--thx-gold-deep); stroke-width: 1.6; stroke-dasharray: .006 .009; vector-effect: non-scaling-stroke; }
.thx .thx-xmap-stops { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(14px, 2vw, 26px); }
.thx .thx-xstop { position: relative; }
.thx .thx-xstop:nth-child(even) { margin-top: 58px; }
.thx .thx-xstop > a { display: grid; gap: 6px; padding: 16px; border-radius: 18px; background: rgba(255, 253, 248, .86); border: 1px solid var(--thx-rule); color: var(--thx-ink); text-decoration: none; box-shadow: 0 18px 40px -34px rgba(40, 30, 20, .55); transition: transform .2s var(--thx-ease), border-color .2s var(--thx-ease); }
.thx .thx-xstop > a:hover { transform: translateY(-3px); border-color: var(--thx-gold); }
.thx .thx-xstop .thx-stop-mark { width: 48px; height: 48px; margin: 0 0 4px; }
.thx .thx-xstop.is-lit .thx-stop-mark { background: var(--thx-moon); color: var(--thx-night-1); --thx-cut: var(--thx-moon); box-shadow: 0 0 0 6px rgba(201, 163, 94, .14), 0 0 24px rgba(227, 197, 140, .35); }
.thx .thx-xstop.is-empty .thx-stop-mark { border-style: dashed; background: transparent; color: var(--thx-gold-ink); }
.thx .thx-xstop b { font: 450 1.15rem/1.2 var(--thx-display); }
.thx .thx-xstop span { color: var(--thx-ink-2); font: 600 13.5px/1.4 var(--thx-sans); }
.thx .thx-xstop em { color: var(--thx-ink-2); font: italic 400 14px/1.45 var(--thx-display); }
.thx .thx-xstop-chips { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.thx .thx-xstop-chips .thx-conf { font-size: 10.5px; }
/* ================= Debates ================= */
/* the chamber: seats around one question */
.thx .thx-chamber { position: relative; width: min(100%, 460px); aspect-ratio: 1; margin: 0 auto; }
.thx .thx-chamber--md { width: min(100%, 420px); }
.thx .thx-chamber-floor { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.thx .thx-cf { fill: rgba(6, 10, 21, .35); stroke: rgba(201, 163, 94, .28); stroke-width: .3; }
.thx .thx-cf-ring { fill: none; stroke: rgba(201, 163, 94, .3); stroke-width: .25; }
.thx .thx-cf-ring--in { stroke-dasharray: 1 1.6; }
.thx .thx-cf-core { fill: rgba(240, 196, 106, .1); stroke: rgba(227, 197, 140, .55); stroke-width: .3; }
.thx .thx-cf-ticks { fill: none; stroke: rgba(201, 163, 94, .4); stroke-width: .25; }
.thx .thx-ray { fill: none; stroke: var(--thx-gold); stroke-width: .35; stroke-opacity: .7; }
.thx .thx-seat-node { position: absolute; left: var(--x); top: var(--y); z-index: 2; display: grid; justify-items: center; gap: 2px; width: 120px; transform: translate(-50%, -32%); color: var(--thx-bone); text-align: center; text-decoration: none; }
.thx .thx-seat-node img, .thx .thx-seat-blank { width: 76px; height: 76px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--thx-gold), 0 0 0 7px rgba(201, 163, 94, .14), 0 0 36px rgba(227, 197, 140, .3); background: var(--thx-night-2); }
.thx .thx-seat-blank { display: grid; place-items: center; color: var(--thx-gold-hi); }
.thx .thx-seat-node b { margin-top: 6px; font: 500 14px/1.2 var(--thx-sans); text-shadow: 0 1px 8px rgba(6, 10, 21, .9); }
.thx .thx-seat-node small { color: var(--thx-gold-hi); font: 700 11px/1.2 var(--thx-sans); letter-spacing: .06em; }
a.thx-seat-node:hover img, a.thx-seat-node:focus-visible img { box-shadow: 0 0 0 2px var(--thx-gold-hi), 0 0 0 9px rgba(227, 197, 140, .22), 0 0 40px rgba(227, 197, 140, .5); }
.thx .thx-chamber--md .thx-seat-node img, .thx .thx-chamber--md .thx-seat-blank { width: 62px; height: 62px; }
.thx .thx-chamber-core { position: absolute; left: 50%; top: 50%; z-index: 1; display: grid; justify-items: center; gap: 2px; width: 30%; transform: translate(-50%, -50%); color: var(--thx-gold-hi); text-align: center; }
.thx .thx-chamber-core .thx-glyph { width: 34px; height: 34px; filter: drop-shadow(0 0 10px rgba(240, 196, 106, .55)); }
.thx .thx-chamber-core span { color: var(--thx-bone-2); font: 700 10.5px/1.2 var(--thx-sans); letter-spacing: .14em; text-transform: uppercase; }
.thx .thx-chamber-core b { color: var(--thx-bone); font: 450 1rem/1.2 var(--thx-display); }
.thx .thx-chamber-chair { position: absolute; left: 50%; bottom: -12%; display: flex; align-items: center; gap: 10px; transform: translateX(-50%); padding: 6px 14px 6px 6px; border: 1px solid rgba(201, 163, 94, .35); border-radius: 999px; background: rgba(6, 10, 21, .6); color: var(--thx-bone); font: 500 13.5px/1.2 var(--thx-sans); white-space: nowrap; }
.thx .thx-chamber-chair img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; }
.thx .thx-chamber-chair small { display: block; color: var(--thx-gold); font: 700 10px/1.2 var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
/* the single debate's hero: words and the chamber side by side */
.thx .thx-debate-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 470px); gap: clamp(24px, 4vw, 60px); align-items: center; }
.thx .thx-debate-head .thx-hero-copy { max-width: 680px; }
.thx .thx-debate-chamber { padding: 40px 30px 70px; }
.thx .thx-status-line { margin-top: 18px; color: var(--thx-gold-hi); font: 650 13px/1.5 var(--thx-sans); letter-spacing: .04em; }
.thx .thx-terms { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.thx .thx-terms a { display: inline-flex; padding: 5px 12px; border: 1px solid rgba(201, 163, 94, .45); border-radius: 999px; color: var(--thx-gold-hi); font: 650 12.5px/1.2 var(--thx-sans); text-decoration: none; }
.thx .thx-terms a:hover { background: rgba(201, 163, 94, .14); }
.thx .thx-debate-actions { align-items: center; }
.thx .thx-share { display: flex; flex-wrap: wrap; gap: 10px; }
.thx .thx-choices { display: grid; gap: 4px; max-width: 60ch; margin-top: 16px; color: var(--thx-bone-3); font-size: 13.5px; line-height: 1.5; }
.thx .thx-choices b { color: var(--thx-bone); font-weight: 650; }
.thx .thx-timeline { padding: 14px 0; background: #1f1630; color: var(--thx-bone-2); font-size: 14px; line-height: 1.5; border-top: 1px solid rgba(201, 163, 94, .18); }
.thx .thx-timeline strong { color: var(--thx-bone); }
.thx .thx-timeline .thx-mini-eyebrow { display: inline; color: var(--thx-gold); }
.thx .thx-timeline small { color: var(--thx-bone-3); }
/* the listing: a sitting and the minutes */
.thx .thx-sitting { display: grid; grid-template-columns: minmax(300px, 440px) minmax(0, 1fr); gap: clamp(26px, 5vw, 70px); align-items: center; }
.thx .thx-sitting .thx-chamber { padding: 0; }
.thx .thx-sitting-copy h3 { margin-top: 8px; font-size: clamp(1.6rem, 1.1rem + 1.7vw, 2.5rem); line-height: 1.08; }
.thx .thx-sitting-copy h3 a { color: var(--thx-bone); text-decoration: none; }
.thx .thx-sitting-copy h3 a:hover { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; text-decoration-color: rgba(227, 197, 140, .6); }
.thx .thx-sitting-copy > p { margin-top: 12px; color: var(--thx-bone-2); line-height: 1.6; max-width: 60ch; }
.thx .thx-sitting-copy .thx-names { color: var(--thx-gold-hi); }
.thx .thx-names { margin-top: 6px; color: var(--thx-gold-ink); font: 650 13.5px/1.4 var(--thx-sans); }
.thx .thx-q-line { display: flex; gap: 9px; align-items: flex-start; margin-top: 12px; color: var(--thx-ink-2); font: italic 400 15px/1.5 var(--thx-display); }
.thx .thx-q-line .thx-glyph { width: 16px; height: 16px; margin-top: 3px; color: var(--thx-gold-deep); }
.thx .thx-sec--plum .thx-q-line, .thx .thx-sec--night .thx-q-line { color: var(--thx-bone-2); }
.thx .thx-sec--plum .thx-q-line .thx-glyph { color: var(--thx-gold-hi); }
.thx .thx-tally { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.thx .thx-oc { font-size: 11.5px; }
.thx .thx-oc.is-challenged { color: #9a3f39; background: rgba(212, 114, 109, .15); }
.thx .thx-oc.is-supported, .thx .thx-oc.is-survived { color: #2f6f4f; background: rgba(95, 180, 137, .15); }
.thx .thx-oc.is-revised { color: #6a4f9e; background: rgba(161, 137, 207, .16); }
.thx .thx-oc.is-converged { color: #2f6f4f; background: rgba(95, 180, 137, .22); }
.thx .thx-oc.is-introduced { color: #8a5d1a; background: rgba(220, 171, 124, .2); }
.thx .thx-sec--plum .thx-oc { background: rgba(241, 237, 228, .1); color: var(--thx-bone); }
.thx .thx-minutes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(26px, 4vw, 56px); border-top: 2px solid var(--thx-ink); }
.thx .thx-minute { border-bottom: 1px solid var(--thx-rule); }
.thx .thx-minute article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px; padding: 22px 0; }
.thx .thx-minute h3 { margin-top: 4px; font-size: 1.32rem; }
.thx .thx-minute h3 a { text-decoration: none; }
.thx .thx-minute h3 a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; text-decoration-color: rgba(122, 90, 32, .5); }
.thx .thx-minute-dek { margin-top: 8px; color: var(--thx-ink-2); font-size: 15px; line-height: 1.55; }
.thx .thx-minute:nth-child(4n + 1) h3, .thx .thx-minute:nth-child(4n + 4) h3 { font-size: 1.5rem; }
.thx .thx-stack { position: relative; display: block; width: 74px; height: 74px; }
.thx .thx-stack-face { position: absolute; width: 44px; height: 44px; border-radius: 50%; overflow: hidden; background: var(--thx-night-2); box-shadow: 0 0 0 2px var(--thx-parch), 0 0 0 3px rgba(201, 163, 94, .6); }
.thx .thx-stack-face img { width: 100%; height: 100%; object-fit: cover; }
.thx .thx-stack-face span { display: grid; place-items: center; width: 100%; height: 100%; color: var(--thx-moon); font: 500 1rem var(--thx-display); }
.thx .thx-stack-face:nth-child(1) { left: 0; top: 0; z-index: 3; }
.thx .thx-stack-face:nth-child(2) { left: 30px; top: 6px; z-index: 2; }
.thx .thx-stack-face:nth-child(3) { left: 12px; top: 30px; z-index: 1; }
.thx .thx-stack-face:nth-child(4) { left: 36px; top: 34px; z-index: 0; }
.thx .thx-minds { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 12px; }
.thx .thx-minds a { display: flex; align-items: center; gap: 12px; padding: 10px 14px 10px 10px; border: 1px solid rgba(201, 163, 94, .3); border-radius: 999px; color: var(--thx-bone); text-decoration: none; background: rgba(6, 10, 21, .35); transition: border-color .2s, background-color .2s; }
.thx .thx-minds a:hover { border-color: var(--thx-gold-hi); background: rgba(201, 163, 94, .1); }
.thx .thx-minds img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1.5px var(--thx-gold); }
.thx .thx-minds b { display: block; font: 500 15px/1.25 var(--thx-sans); }
.thx .thx-minds small { color: var(--thx-gold-hi); font: 600 12px var(--thx-sans); }
/* the exchange */
.thx .thx-exchange { padding: clamp(46px, 6vw, 80px) 0 clamp(30px, 4vw, 50px); background: var(--thx-paper); }
.thx .thx-exchange-grid { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(26px, 5vw, 70px); align-items: start; }
.thx .thx-exchange-side { align-self: stretch; } /* the sticky panel needs the whole row to travel in */
.thx .thx-exchange-sticky { position: sticky; top: 92px; display: grid; gap: 22px; }
.thx .thx-mini { display: grid; gap: 8px; }
.thx .thx-mini-seat { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 0 12px; align-items: center; padding: 6px; border-radius: 14px; opacity: .62; transition: opacity .3s var(--thx-ease), background-color .3s var(--thx-ease); }
.thx .thx-mini-seat img, .thx .thx-mini-seat > span { grid-row: span 2; width: 40px; height: 40px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--thx-seat, var(--thx-gold)); transition: box-shadow .3s var(--thx-ease); }
.thx .thx-mini-seat > span { display: grid; place-items: center; background: var(--thx-night-2); color: var(--thx-moon); font: 500 1rem var(--thx-display); }
.thx .thx-mini-seat b { font: 600 14px/1.25 var(--thx-sans); }
.thx .thx-mini-seat small { color: var(--thx-ink-3); font: 600 11.5px var(--thx-sans); }
.thx .thx-mini-seat.is-speaking, html:not(.thx-js) .thx .thx-mini-seat { opacity: 1; }
.thx .thx-mini-seat.is-speaking { background: rgba(201, 163, 94, .12); }
.thx .thx-mini-seat.is-speaking img, .thx .thx-mini-seat.is-speaking > span { box-shadow: 0 0 0 2px var(--thx-seat, var(--thx-gold)), 0 0 0 6px rgba(201, 163, 94, .2), 0 0 20px rgba(227, 197, 140, .5); }
.thx .thx-rounds ol { display: grid; gap: 2px; border-left: 1.5px solid var(--thx-rule); }
.thx .thx-rounds a { display: block; margin-left: -1.5px; padding: 6px 0 6px 14px; border-left: 1.5px solid transparent; color: var(--thx-ink-3); font: 600 13.5px/1.35 var(--thx-sans); text-decoration: none; }
.thx .thx-rounds a:hover { color: var(--thx-ink); }
.thx .thx-rounds a[aria-current="true"] { border-left-color: var(--thx-gold-deep); color: var(--thx-ink); }
.thx .thx-transcript { max-width: 780px; }
.thx .thx-round { margin-bottom: clamp(30px, 4vw, 48px); }
.thx .thx-round-head { margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--thx-rule); }
.thx .thx-round-head h2 { font-size: clamp(1.5rem, 1.15rem + 1.1vw, 2.1rem); }
.thx .thx-msg { --thx-seat: var(--thx-gold); display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 18px; padding: 18px 0 22px; border-bottom: 1px solid rgba(221, 211, 192, .6); }
.thx .thx-msg:last-child { border-bottom: 0; }
.thx .thx-seat-c0 { --thx-seat: var(--thx-s0); } .thx .thx-seat-c1 { --thx-seat: var(--thx-s1); } .thx .thx-seat-c2 { --thx-seat: var(--thx-s2); }
.thx .thx-seat-c3 { --thx-seat: var(--thx-s3); } .thx .thx-seat-c4 { --thx-seat: var(--thx-s4); } .thx .thx-seat-c5 { --thx-seat: var(--thx-s5); }
.thx .thx-msg-face { position: sticky; top: 96px; align-self: start; display: block; width: 56px; height: 56px; }
.thx .thx-msg-face img, .thx .thx-msg-blank { display: block; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2.5px var(--thx-seat), 0 0 0 6px color-mix(in srgb, var(--thx-seat) 18%, transparent); background: var(--thx-parch-2); }
.thx .thx-msg-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-bottom: 8px; }
.thx .thx-msg-head a, .thx .thx-msg-head strong { color: var(--thx-ink); font: 450 1.2rem/1.2 var(--thx-display); text-decoration: none; }
.thx .thx-msg-head a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(122, 90, 32, .5); }
.thx .thx-msg-head small { color: var(--thx-ink-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-msg-head .thx-msg-era { color: var(--thx-gold-ink); letter-spacing: .04em; }
.thx .thx-msg-text { color: #2a2533; font: 400 clamp(1.04rem, 1rem + .22vw, 1.15rem)/1.76 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 16; }
.thx .thx-msg-text p { margin: 0 0 1em; }
.thx .thx-msg-text p:last-child { margin-bottom: 0; }
.thx .thx-msg-text strong { color: var(--thx-ink); font-weight: 600; }
/* outcomes: the chair's close, the record of ideas */
.thx .thx-outcomes { padding: clamp(56px, 7vw, 96px) 0; background: var(--thx-parch); }
.thx .thx-close { max-width: 860px; margin-bottom: clamp(28px, 4vw, 44px); padding: clamp(18px, 3vw, 30px) clamp(18px, 3vw, 34px); border: 1px solid rgba(201, 163, 94, .5); border-radius: 24px; background: radial-gradient(500px 240px at 0% 0%, rgba(201, 163, 94, .12), transparent 70%), var(--thx-paper); box-shadow: 0 24px 60px -44px rgba(40, 30, 20, .55); }
.thx .thx-close .thx-msg { border-bottom: 0; padding: 10px 0 0; }
.thx .thx-msg--chair { --thx-seat: var(--thx-gold-deep); }
.thx .thx-msg--chair .thx-msg-face { position: static; }
.thx .thx-inquiry { max-width: 860px; margin-bottom: clamp(28px, 4vw, 44px); padding-left: 18px; border-left: 2px solid var(--thx-gold); }
.thx .thx-inquiry-title { margin: 4px 0 10px; font: 420 clamp(1.4rem, 1.1rem + 1vw, 2rem)/1.15 var(--thx-display); color: var(--thx-ink); }
.thx .thx-inquiry p:last-child { color: var(--thx-ink-2); font: 400 1.08rem/1.7 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 16; }
.thx .thx-map-block { margin-top: 10px; }
.thx .thx-map-title { font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem); }
.thx .thx-map-lead { max-width: 70ch; margin: 8px 0 22px; color: var(--thx-ink-2); }
.thx .thx-amap { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, 1fr); gap: clamp(22px, 4vw, 48px); align-items: start; }
.thx .thx-amap-svg { width: 100%; height: auto; overflow: visible; padding: 10px; border: 1px solid var(--thx-rule); border-radius: 22px; background: var(--thx-paper); }
.thx .thx-amap-svg text { fill: var(--thx-ink); font: 500 13px var(--thx-sans); }
.thx .thx-amap-svg .thx-am-out { fill: var(--thx-ink-3); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.thx .thx-am-link { fill: none; stroke-width: 1.6; transition: opacity .25s var(--thx-ease), stroke-width .25s var(--thx-ease); }
.thx .thx-am-link--for { stroke: var(--thx-gold-deep); }
.thx .thx-am-link--against { stroke: var(--thx-conflict); stroke-dasharray: 5 4; }
.thx .thx-am-link--conflict { stroke: var(--thx-conflict); stroke-opacity: .7; }
.thx .thx-am-link--converge { stroke: var(--thx-convergence); stroke-opacity: .8; }
.thx .thx-am-ring { fill: var(--thx-parch-2); stroke: var(--thx-gold); stroke-width: 1.6; }
.thx .thx-am-idea path { fill: var(--thx-leaves); stroke: var(--thx-paper); stroke-width: 1.5; }
.thx .thx-am-idea.is-challenged path { fill: var(--thx-conflict); }
.thx .thx-am-idea.is-supported path, .thx .thx-am-idea.is-survived path, .thx .thx-am-idea.is-converged path { fill: var(--thx-convergence); }
.thx .thx-am-idea.is-revised path { fill: var(--thx-tension); }
.thx .thx-amap.is-focus .thx-am-link { opacity: .12; }
.thx .thx-amap.is-focus .thx-am-link.is-on { opacity: 1; stroke-width: 2.4; }
.thx .thx-amap.is-focus .thx-am-person:not(.is-on), .thx .thx-amap.is-focus .thx-am-idea:not(.is-on) { opacity: .35; }
.thx .thx-am-person, .thx .thx-am-idea { cursor: default; transition: opacity .25s var(--thx-ease); }
.thx .thx-amap-legend { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 10px; color: var(--thx-ink-2); font: 600 12.5px var(--thx-sans); }
.thx .thx-amap-legend i { display: inline-block; width: 22px; margin-right: 6px; vertical-align: middle; border-top: 2px solid var(--thx-gold-deep); }
.thx .thx-amap-legend .is-against i { border-top: 2px dashed var(--thx-conflict); }
.thx .thx-amap-legend .is-conflict i { border-color: var(--thx-conflict); }
.thx .thx-amap-legend .is-converge i { border-color: var(--thx-convergence); }
.thx .thx-amap > .thx-amap-legend { grid-column: 1; }
.thx .thx-amap-list { grid-column: 2; grid-row: 1 / span 2; display: grid; gap: 14px; }
.thx .thx-amap:not(:has(svg)) .thx-amap-list { grid-column: 1 / -1; grid-row: auto; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.thx .thx-amap-list li { padding: 14px 16px; border: 1px solid var(--thx-rule); border-radius: 16px; background: var(--thx-paper); }
.thx .thx-amap-idea { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font: 450 1.08rem/1.3 var(--thx-display); }
.thx .thx-amap-idea .thx-glyph { width: 16px; height: 16px; color: var(--thx-gold-deep); }
.thx .thx-amap-idea a { color: var(--thx-ink); text-underline-offset: 3px; text-decoration-color: rgba(122, 90, 32, .45); }
.thx .thx-amap-who { margin-top: 6px; color: var(--thx-ink-2); font-size: 14px; line-height: 1.5; }
.thx .thx-amap-who span { color: var(--thx-ink-3); font: 700 11px var(--thx-sans); letter-spacing: .08em; text-transform: uppercase; }
.thx .thx-amap-who a { color: var(--thx-ink); }
.thx .thx-star-q { border-bottom: 1px solid rgba(241, 237, 228, .12); }
.thx .thx-star-q .thx-glyph { width: 30px; height: 30px; color: var(--thx-gold-hi); }
.thx .thx-star-q strong { font: 450 1.12rem/1.35 var(--thx-display); color: var(--thx-bone); }
/* existing sections other modules add (sources, research context, quotes, events), in a quiet frame */
.thx .thx-additive { padding: clamp(40px, 5vw, 70px) 0; background: var(--thx-parch); color: var(--thx-ink); font-family: var(--thx-sans); border-top: 1px solid var(--thx-rule); }
.thx .thx-additive h2 { font-family: var(--thx-display); font-weight: 420; color: var(--thx-ink); }
.thx .thx-additive section { margin: 0 0 32px; padding: 0; max-width: none; background: transparent; }
.thx .thx-additive section:last-child { margin-bottom: 0; }
.thx .thx-final { padding: clamp(60px, 7vw, 96px) 0; text-align: center; background: radial-gradient(700px 300px at 50% 100%, rgba(201, 163, 94, .16), transparent 70%), linear-gradient(var(--thx-plum-1), var(--thx-plum-0)); color: var(--thx-bone); }
.thx .thx-final h2 { color: var(--thx-bone); }
.thx .thx-final p { max-width: 52ch; margin: 12px auto 0; color: var(--thx-bone-2); }
.thx .thx-final .thx-actions { justify-content: center; }
.thx .thx-schools { max-width: 760px; margin: 34px auto 0; padding-top: 22px; border-top: 1px solid rgba(201, 163, 94, .25); }
.thx .thx-schools .thx-mini-eyebrow { color: var(--thx-gold); }
.thx .thx-schools .thx-terms { justify-content: center; }
.thx .thx-terms-more a { border-style: dashed; }

/* ---------- responsive ---------- */
@media (max-width: 1200px) {
	.thx .thx-story-grid { grid-template-columns: 220px minmax(0, 1fr); }
	.thx .thx-story-side { position: static; grid-column: 2; }
	.thx .thx-feature { grid-template-columns: 140px minmax(0, 1fr); }
	.thx .thx-feature-line { grid-column: 2; }
	.thx .thx-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.thx .thx-filters .thx-field--grow { grid-column: 1 / -1; }
	.thx-page--research .thx .thx-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
	.thx .thx-debate-head { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-debate-chamber { max-width: 480px; margin: 0 auto; padding: 30px 40px 64px; }
	.thx .thx-exchange-grid { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-exchange-side { display: none; }
	.thx .thx-amap { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-amap-list { grid-column: 1; grid-row: auto; }
	.thx .thx-sitting { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-sitting .thx-chamber { max-width: 380px; }
	.thx .thx-reading-grid { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-xmap-route { display: none; }
	.thx .thx-xmap-stops { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.thx .thx-xstop:nth-child(even) { margin-top: 0; }
	.thx .thx-xstop:last-child { grid-column: 1 / -1; }
}
@media (max-width: 860px) {
	.thx .thx-journey { grid-auto-flow: row; gap: 16px; }
	.thx .thx-journey::before { left: 27px; right: auto; top: 28px; bottom: 28px; border-top: 0; border-left: 1.5px solid var(--thx-gold); }
	.thx .thx-journey .thx-stop, .thx .thx-journey .thx-stop > a { grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 0 16px; padding: 0; }
	.thx .thx-journey .thx-stop-mark { margin: 0; }
	.thx .thx-journey--road .thx-stop.is-pending::before { display: none; }
	.thx .thx-journey--rail::before, .thx .thx-journey--steps::before { left: 17px; }
	.thx .thx-journey--steps::before { left: 21px; }
	.thx .thx-journey--bar { gap: 10px; }
	.thx .thx-journey--bar::before { left: 19px; top: 20px; bottom: 20px; }
	.thx .thx-journey--bar .thx-stop, .thx .thx-journey--bar .thx-stop > a { align-items: center; }
	.thx .thx-dispatches { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-dispatch { padding: 18px 0; border-left: 0; border-bottom: 1px solid var(--thx-rule); }
	.thx .thx-story-grid { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-story-rail { position: static; }
	.thx .thx-story-side { grid-column: 1; }
	.thx .thx-feature { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-feature-line { grid-column: 1; }
	.thx .thx-feature-stamp { grid-template-columns: auto 1fr; align-items: baseline; }
	.thx .thx-ledger::before, .thx .thx-ledger-dot { left: 0; }
	.thx .thx-ledger::before { left: 5px; }
	.thx .thx-ledger-row { grid-template-columns: minmax(0, 1fr); padding-left: 26px; }
	.thx .thx-ledger-row > :not(.thx-ledger-dot), .thx .thx-ledger-row time { grid-column: 1; grid-row: auto; }
	.thx .thx-minutes { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-stars-list { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-pressure li { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-pressure p { justify-content: flex-start; }
	.thx .thx-gatecard { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-gate-art { max-width: 240px; }
	.thx .thx-assess dl { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-filters, .thx-page--research .thx .thx-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.thx .thx-sky-toggle { top: 12px; right: 14px; padding: 0 10px; }
	.thx .thx-sky-toggle-tx { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.thx .thx-follow-main { grid-template-columns: auto minmax(0, 1fr); padding: 18px; }
	.thx .thx-follow-go { display: none; }
	.thx .thx-filters, .thx-page--research .thx .thx-filters { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-xmap-stops { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-seat-node { width: 96px; }
	.thx .thx-seat-node img, .thx .thx-seat-blank { width: 56px; height: 56px; }
	.thx .thx-seat-node b { font-size: 12.5px; }
	.thx .thx-chamber-core .thx-glyph { width: 26px; height: 26px; }
	.thx .thx-chamber-core b { font-size: .9rem; }
	.thx .thx-debate-chamber { padding: 24px 26px 60px; }
	.thx .thx-msg { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; }
	.thx .thx-msg-face, .thx .thx-msg-face img, .thx .thx-msg-blank { width: 44px; height: 44px; }
	.thx .thx-minute article { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.thx .thx-crumbs [aria-current] { max-width: 24ch; }
	.thx .thx-share .thx-btn, .thx .thx-debate-actions > .thx-btn { flex: 1 1 auto; }
}
@media (max-width: 380px) {
	.thx .thx-seat-node { width: 84px; }
	.thx .thx-seat-node img, .thx .thx-seat-blank { width: 48px; height: 48px; }
	.thx .thx-chamber-core span { display: none; }
}

/* ---------- motion: an opening sequence, a little life on listing skies, and meaning on the page ---------- */
@media (prefers-reduced-motion: no-preference) {
	.thx-js .thx .thx-hero .thx-stars circle { animation: thx-twinkle 2.4s var(--thx-ease) both; animation-delay: calc(var(--i) * 90ms + 120ms); }
	.thx-js .thx .thx-hero .thx-hero-in > * { animation: thx-rise .9s var(--thx-ease) both; }
	.thx-js .thx .thx-hero .thx-hero-in > :nth-child(2) { animation-delay: .1s; }
	.thx-js .thx .thx-hero .thx-signal-line, .thx-js .thx .thx-hero .thx-thread, .thx-js .thx .thx-hero .thx-ray { stroke-dasharray: 1; animation: thx-draw 1.4s var(--thx-ease) both; animation-delay: calc(var(--i) * 140ms + 600ms); }
	.thx-js .thx .thx-hero .thx-trail { animation: thx-arrive 1.6s var(--thx-ease) .5s both; }
	.thx-js .thx .thx-hero .thx-way, .thx-js .thx .thx-hero .thx-seat, .thx-js .thx .thx-hero .thx-seat-node, .thx-js .thx .thx-hero .thx-city { animation: thx-arrive .8s var(--thx-ease) both; animation-delay: calc(var(--i) * 120ms + 500ms); }
	.thx-js .thx .thx-hero .thx-limb { animation: thx-arrive 1.8s var(--thx-ease) .2s both; }
	/* listing skies: a little continuous life (5 fps steps), paused by the control, off screen, or in a hidden tab */
	.thx-js .thx .thx-hero[data-thx-live] .thx-st--tw { animation: thx-twinkle 2.4s var(--thx-ease) calc(var(--i) * 90ms + 120ms) both, thx-shimmer calc(2.6s + var(--i) * .4s) steps(14) calc(3s + var(--i) * .35s) infinite; }
	.thx-js .thx .thx-hero[data-thx-live] .thx-signal-pulse { animation: thx-pulse 5.6s steps(42) calc(var(--i) * .7s + 2.4s) infinite; }
	.thx-js .thx .thx-hero[data-thx-live] .thx-city-glow { animation: thx-breathe 6s steps(30) calc(var(--i) * -.8s) infinite; transform-box: fill-box; transform-origin: center; }
	.thx-js .thx .thx-hero[data-thx-live] .thx-lantern-glow { animation: thx-flicker 4.2s steps(21) 1.5s infinite; transform-box: fill-box; transform-origin: center; }
	.thx-js .thx .thx-hero[data-thx-live] .thx-quest-glow, .thx-js .thx .thx-hero[data-thx-live] .thx-core-glow, .thx-js .thx .thx-hero[data-thx-live] .thx-seat-halo { animation: thx-breathe 6.4s steps(32) calc(var(--i, 0) * -.9s) infinite; transform-box: fill-box; transform-origin: center; }
	.thx-js .thx .thx-hero.is-paused *, .thx-js .thx .thx-hero.is-offscreen * { animation-play-state: paused !important; }
	/* on the page: knots and journeys light as you arrive (dimmed, never hidden, until then) */
	.thx-js .thx .thx-sec[data-thx-sec]:not(.is-lit) .thx-journey .thx-stop { opacity: .4; }
	.thx-js .thx .thx-sec .thx-journey .thx-stop { transition: opacity .6s var(--thx-ease); transition-delay: calc(var(--i) * 140ms); }
	.thx-js .thx .thx-xmap-path { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 2.2s var(--thx-ease); vector-effect: none; }
	.thx-js .thx .thx-sec.is-lit .thx-xmap-path { stroke-dashoffset: 0; }
	.thx-js .thx .thx-sec .thx-bar i { transform: scaleX(.02); transition: transform 1.2s var(--thx-ease) .2s; }
	.thx-js .thx .thx-sec.is-lit .thx-bar i { transform: none; }
	html.thx-js:has(body.thx-page) { scroll-behavior: smooth; }
}
@keyframes thx-twinkle { 0% { opacity: .15; } 55% { opacity: 1; } 75% { opacity: .5; } 100% { opacity: 1; } }
@keyframes thx-shimmer { 0%, 100% { opacity: 1; } 40% { opacity: .2; } 55% { opacity: 1; } 75% { opacity: .5; } }
@keyframes thx-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes thx-arrive { from { opacity: 0; } to { opacity: 1; } }
@keyframes thx-rise { from { opacity: .001; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes thx-breathe { 0%, 100% { opacity: .45; transform: scale(1); } 50% { opacity: .85; transform: scale(1.12); } }
@keyframes thx-flicker { 0%, 100% { opacity: .85; } 20% { opacity: 1; } 35% { opacity: .7; } 55% { opacity: .95; } 80% { opacity: .78; } }
@keyframes thx-pulse { 0% { stroke-dashoffset: 1.04; opacity: 0; } 8% { opacity: 1; } 70% { stroke-dashoffset: .08; opacity: 1; } 80%, 100% { stroke-dashoffset: .04; opacity: 0; } }

/* ---------- no JS: nothing hidden, no dead controls ---------- */
html:not(.thx-js) .thx .thx-rounds a[aria-current] { border-left-color: transparent; }

@media (prefers-reduced-motion: reduce) {
	.thx *, .thx *::before, .thx *::after { animation: none !important; transition: none !important; }
	html:has(body.thx-page) { scroll-behavior: auto !important; }
}
@media print {
	.thx .thx-sky, .thx .thx-sky-toggle, .thx .thx-edge, .thx .thx-argument-path, .thx .thx-exchange-side, .thx .thx-follow, .thx .thx-final, .thx .thx-filters { display: none; }
	.thx .thx-hero, .thx .thx-sec--night, .thx .thx-sec--plum { background: #fff; color: #000; }
	.thx .thx-hero h1, .thx .thx-hero .thx-lead { color: #000; }
}

/* ================= Journey pages: chapters on one golden thread (the homepage's language) ================= */
.thx .thx-journeypage { position: relative; --thx-lane: 14px; }
.thx .thx-ch { position: relative; padding: 0 0 clamp(70px, 8vw, 116px); color: var(--thx-ink); }
.thx .thx-ch--map { background: linear-gradient(rgba(122, 90, 32, .045) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(90deg, rgba(122, 90, 32, .045) 1px, transparent 1px) 0 0 / 40px 40px, linear-gradient(#f1e7d6, var(--thx-parch)); --thx-cut: #f1e7d6; }
.thx .thx-ch--night { background: radial-gradient(1100px 520px at 78% 18%, rgba(74, 53, 87, .34), transparent 70%), linear-gradient(var(--thx-night-1), var(--thx-night-0)); color: var(--thx-bone); --thx-cut: var(--thx-night-1); }
.thx .thx-ch--archive { background: radial-gradient(900px 420px at 15% 10%, rgba(201, 163, 94, .12), transparent 70%), var(--thx-parch-2); --thx-cut: var(--thx-parch-2); }
.thx .thx-ch--paper { background: var(--thx-paper); --thx-cut: var(--thx-paper); }
.thx .thx-ch--plum { background: radial-gradient(900px 480px at 12% 8%, rgba(201, 163, 94, .13), transparent 70%), radial-gradient(800px 600px at 70% 60%, rgba(120, 80, 150, .16), transparent 70%), linear-gradient(var(--thx-plum-2), var(--thx-plum-1) 30%, var(--thx-plum-0)); color: var(--thx-bone); --thx-cut: var(--thx-plum-1); }
.thx .thx-ch--dawn { background: radial-gradient(900px 520px at 80% 0%, rgba(248, 205, 170, .42), transparent 70%), linear-gradient(var(--thx-dawn), var(--thx-parch)); --thx-cut: var(--thx-dawn); }
/* the seam: the edge a chapter grows out of, in the previous chapter's colour */
.thx .thx-seam { position: relative; height: clamp(96px, 10vw, 140px); margin-bottom: clamp(14px, 3vw, 34px); }
.thx .thx-from-ridge > .thx-seam { color: #0a1222; }
.thx .thx-from-map > .thx-seam, .thx .thx-from-dawn > .thx-seam { color: var(--thx-parch); }
.thx .thx-from-night > .thx-seam { color: var(--thx-night-0); }
.thx .thx-from-archive > .thx-seam { color: var(--thx-parch-2); }
.thx .thx-from-paper > .thx-seam { color: var(--thx-paper); }
.thx .thx-from-plum > .thx-seam { color: var(--thx-plum-0); }
.thx .thx-seam-edge { position: absolute; inset: -1px 0 0; display: block; width: 100%; height: calc(100% + 1px); }
.thx .thx-seam-edge path { fill: currentColor; }
.thx .thx-seam-fill { position: absolute; left: 0; right: 0; top: -1px; height: calc(100% - 41px); background: currentColor; }
.thx .thx-seam-arches { position: absolute; left: 0; right: 0; bottom: 0; height: 44px; background: radial-gradient(circle 40px at 50% 100%, transparent 98%, currentColor 100%) 50% 100% / 96px 44px repeat-x; }
.thx .thx-seal { position: absolute; left: 50%; top: 46%; z-index: 4; display: grid; place-items: center; width: 58px; height: 58px; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(circle at 50% 34%, #1f2a48, #0b1426 72%); box-shadow: 0 0 0 1.5px var(--thx-gold), 0 0 0 5px rgba(11, 20, 38, .9), 0 0 0 6px rgba(201, 163, 94, .45), 0 12px 30px -12px rgba(0, 0, 0, .7); color: var(--thx-gold-hi); transition: box-shadow .6s var(--thx-ease); }
.thx .thx-seal-n { display: grid; place-items: center; font: 500 19px/1 var(--thx-display); font-variation-settings: "opsz" 48, "SOFT" 50; letter-spacing: .02em; }
.thx .thx-spark { width: 18px; height: 18px; fill: currentColor; }
.thx .thx-seal.is-lit { box-shadow: 0 0 0 1.5px var(--thx-gold-hi), 0 0 0 5px rgba(11, 20, 38, .9), 0 0 0 6px rgba(227, 197, 140, .75), 0 0 34px 8px rgba(227, 197, 140, .38); }
.thx .thx-placename { position: absolute; left: 50%; bottom: 8px; z-index: 4; transform: translateX(-50%); color: var(--thx-gold-ink); font: 700 11.5px/1.2 var(--thx-sans); letter-spacing: .2em; text-transform: uppercase; white-space: nowrap; }
.thx .thx-ch--night .thx-placename, .thx .thx-ch--plum .thx-placename { color: var(--thx-gold); }
/* the chapter head: its mark (numeral, glyph, name), its title with one illuminated word */
.thx .thx-ch-in { position: relative; }
.thx .thx-ch-head { position: relative; max-width: 800px; margin-bottom: clamp(28px, 4vw, 48px); }
.thx .thx-mark { position: relative; display: flex; align-items: center; gap: .65em; margin: 0 0 20px; color: var(--thx-gold-ink); font: 700 12.5px/1.2 var(--thx-sans); letter-spacing: .17em; text-transform: uppercase; }
.thx .thx-ch--night .thx-mark, .thx .thx-ch--plum .thx-mark { color: var(--thx-gold); }
.thx .thx-num { padding-right: .7em; border-right: 1px solid currentColor; font: 500 15px/1 var(--thx-display); letter-spacing: .04em; }
.thx .thx-mark .thx-glyph { width: 18px; height: 18px; }
.thx .thx-lane-star { display: none; }
.thx .thx-ch-title { font-size: clamp(2.1rem, 1.2rem + 2.7vw, 3.7rem); line-height: 1.04; font-weight: 400; font-variation-settings: "SOFT" 70, "WONK" 0, "opsz" 144; letter-spacing: -.02em; }
.thx .thx-ch-title em { font-style: normal; color: var(--thx-gold-deep); font-variation-settings: "SOFT" 100, "WONK" 1, "opsz" 144; }
.thx .thx-ch--night .thx-ch-title em, .thx .thx-ch--plum .thx-ch-title em { color: var(--thx-gold-hi); }
.thx .thx-ch--night .thx-lead, .thx .thx-ch--plum .thx-lead { color: #d2cbdc; }
.thx .thx-ch--night .thx-mini-eyebrow, .thx .thx-ch--plum .thx-mini-eyebrow { color: var(--thx-gold); }
.thx .thx-ch--night .thx-empty-line, .thx .thx-ch--plum .thx-empty-line { color: var(--thx-bone-3); }
.thx .thx-ch-sub { margin: clamp(34px, 4vw, 52px) 0 18px; font-size: clamp(1.35rem, 1.1rem + .8vw, 1.75rem); }
.thx .thx-ch-foot { margin-top: 18px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.thx .thx-ch-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, 1fr); gap: clamp(28px, 5vw, 70px); align-items: start; }
.thx .thx-ch-side { display: grid; gap: 18px; }
/* I: questions as stars */
.thx .thx-qstars { display: grid; gap: 4px; }
.thx .thx-qstars li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 18px; align-items: start; padding: 18px 0; border-bottom: 1px solid rgba(241, 237, 228, .12); }
.thx .thx-qstar { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: radial-gradient(circle, rgba(243, 234, 210, .2), transparent 70%); color: var(--thx-moon); }
.thx .thx-qstar .thx-glyph { width: 30px; height: 30px; }
.thx .thx-qstars strong { display: block; color: var(--thx-bone); font: 420 clamp(1.25rem, 1.05rem + .65vw, 1.6rem)/1.3 var(--thx-display); font-variation-settings: "SOFT" 60, "opsz" 48; }
.thx .thx-qstars span { display: block; margin-top: 6px; color: var(--thx-bone-3); font-size: 14.5px; }
.thx .thx-why { padding: 22px 24px; border: 1px solid rgba(201, 163, 94, .45); border-radius: 22px; background: radial-gradient(400px 200px at 0% 0%, rgba(240, 196, 106, .14), transparent 70%), rgba(6, 10, 21, .45); }
.thx .thx-why p:last-child { color: var(--thx-bone); font: 400 1.14rem/1.6 var(--thx-display); font-variation-settings: "SOFT" 50, "opsz" 24; }
.thx .thx-context { padding: 4px 0 0 18px; border-left: 2px solid rgba(201, 163, 94, .45); color: var(--thx-bone-2); font-size: 15.5px; line-height: 1.65; }
.thx .thx-context p { margin: 0 0 .8em; }
/* II: the source ledger */
.thx .thx-ledger-table { border-top: 2px solid var(--thx-ink); }
.thx .thx-lt-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1.6fr) minmax(0, 1.1fr) minmax(0, .8fr); gap: 6px 22px; padding: 16px 4px; border-bottom: 1px solid var(--thx-rule); color: var(--thx-ink-2); font-size: 15px; line-height: 1.45; }
.thx .thx-lt-head { padding: 10px 4px; color: var(--thx-ink-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
.thx .thx-lt-row a { color: var(--thx-ink); font: 450 1.06rem/1.3 var(--thx-display); text-decoration-color: rgba(122, 90, 32, .45); text-underline-offset: 3px; }
.thx .thx-lt-row a.thx-lt-src { display: inline-block; margin-top: 4px; color: var(--thx-gold-ink); font: 650 13px var(--thx-sans); }
/* III: the timeline route */
.thx .thx-timeline-route { position: relative; display: grid; gap: 0; max-width: 860px; }
.thx .thx-timeline-route::before { content: ""; position: absolute; left: 150px; top: 14px; bottom: 14px; border-left: 1.5px dashed rgba(184, 137, 62, .6); }
.thx .thx-timeline-route li { position: relative; display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 40px; padding: 14px 0; }
.thx .thx-timeline-route li::after { content: ""; position: absolute; left: 145px; top: 22px; width: 11px; height: 11px; border-radius: 50%; background: var(--thx-paper); box-shadow: 0 0 0 1.5px var(--thx-gold-deep); }
.thx .thx-timeline-route li.is-discovery::after, .thx .thx-timeline-route li.is-publication::after { background: var(--thx-gold-hi); }
.thx .thx-timeline-route li.is-superseded::after { background: var(--thx-conflict); box-shadow: 0 0 0 1.5px var(--thx-conflict); }
.thx .thx-timeline-route time { color: var(--thx-ink); font: 450 1.06rem/1.3 var(--thx-display); text-align: right; }
.thx .thx-timeline-route p { color: var(--thx-ink-2); line-height: 1.55; }
.thx .thx-timeline-route .thx-mini-eyebrow { margin-bottom: 4px; }
.thx .thx-filters--slim { grid-template-columns: repeat(2, minmax(160px, 260px)) auto; justify-content: start; }
/* IV: interpretations in the chamber */
.thx .thx-theories { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); gap: 20px; }
.thx .thx-theory { display: grid; gap: 14px; align-content: start; padding: clamp(20px, 3vw, 28px); border: 1px solid rgba(201, 163, 94, .38); border-radius: 22px; background: radial-gradient(400px 200px at 0% 0%, rgba(201, 163, 94, .12), transparent 70%), rgba(13, 8, 20, .45); }
.thx .thx-theory > header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; }
.thx .thx-theory h3 { color: var(--thx-bone); font-size: 1.5rem; }
.thx .thx-theory > p { color: var(--thx-bone-2); line-height: 1.6; }
.thx .thx-ch--plum .thx-status { background: rgba(241, 237, 228, .1); color: var(--thx-bone); }
.thx .thx-ch--plum .thx-status.is-leading { color: #9fdcbc; } .thx .thx-ch--plum .thx-status.is-disputed, .thx .thx-ch--plum .thx-status.is-weakened { color: #f0b3ae; }
.thx .thx-meter { display: grid; gap: 6px; }
.thx .thx-meter .thx-bar { height: 8px; background: rgba(241, 237, 228, .12); }
.thx .thx-meter-label { color: var(--thx-bone-3); font: 600 12px var(--thx-sans); letter-spacing: .02em; }
.thx .thx-weigh { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.thx .thx-weigh > div { padding: 12px 14px; border-radius: 14px; background: rgba(241, 237, 228, .05); border-top: 2px solid; }
.thx .thx-weigh .is-for { border-color: var(--thx-convergence); } .thx .thx-weigh .is-against { border-color: var(--thx-conflict); }
.thx .thx-weigh h4 { margin: 0 0 8px; color: var(--thx-bone); font: 700 11.5px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-weigh li { margin-bottom: 6px; color: var(--thx-bone-2); font-size: 14px; line-height: 1.45; }
.thx .thx-weigh a { color: var(--thx-bone); text-decoration-color: rgba(227, 197, 140, .5); text-underline-offset: 3px; }
.thx .thx-objections summary { cursor: pointer; color: var(--thx-gold-hi); font: 650 13.5px var(--thx-sans); }
.thx .thx-objections ul { margin-top: 8px; padding-left: 18px; list-style: disc; color: var(--thx-bone-2); font-size: 14px; }
.thx .thx-advocates { color: var(--thx-bone-2); font-size: 14px; }
.thx .thx-advocates span { color: var(--thx-gold); font: 700 11px var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-advocates a { color: var(--thx-bone); }
/* V: what can be said */
.thx .thx-consensus { max-width: 820px; margin-bottom: clamp(30px, 4vw, 46px); }
.thx .thx-consensus .thx-prose { color: var(--thx-ink); font-size: clamp(1.1rem, 1rem + .4vw, 1.3rem); line-height: 1.7; }
.thx .thx-consensus .thx-prose p { margin: 0 0 1em; }
.thx .thx-claims { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.thx .thx-claim { padding: 20px 22px; border-radius: 20px; background: var(--thx-paper); border: 1px solid var(--thx-rule); border-top: 3px solid var(--thx-convergence); }
.thx .thx-claim.is-disputed { border-top-color: var(--thx-conflict); }
.thx .thx-claim.is-unknown { border-top: 3px dashed var(--thx-tension); }
.thx .thx-claim header { display: flex; align-items: center; gap: 10px; }
.thx .thx-claim header .thx-glyph { width: 22px; height: 22px; color: var(--thx-gold-deep); }
.thx .thx-claim h3 { font-size: 1.3rem; }
.thx .thx-claim ul { display: grid; gap: 10px; margin-top: 12px; }
.thx .thx-claim li { color: var(--thx-ink); font: 400 1.04rem/1.5 var(--thx-display); font-variation-settings: "SOFT" 40, "opsz" 16; }
.thx .thx-claim small { display: block; margin-top: 4px; color: var(--thx-ink-3); font: 400 13px/1.45 var(--thx-sans); }
.thx .thx-method { max-width: 820px; margin-top: clamp(30px, 4vw, 46px); padding: 18px 22px; border-left: 2px solid var(--thx-gold); background: rgba(255, 253, 248, .6); border-radius: 0 16px 16px 0; color: var(--thx-ink-2); font-size: 15px; line-height: 1.6; }
.thx .thx-xstop-n { justify-self: start; color: var(--thx-gold-ink); font: 500 13px/1 var(--thx-display); letter-spacing: .08em; }
.thx .thx-finds--lead { margin-bottom: 8px; }
/* the thread (drawn by worlds.js on wide screens) */
.thx .thx-thread { display: none; }
@media (min-width: 1100px) {
	.thx .thx-ch-in { padding-left: 64px; }
	.thx .thx-lane-star { display: block; position: absolute; left: calc(var(--thx-lane) - 64px); top: 50%; width: 16px; height: 16px; margin-top: -8px; transform: translateX(-50%) rotate(45deg); border-radius: 3px; background: var(--thx-night-1); box-shadow: 0 0 0 1.5px var(--thx-gold), 0 0 0 4px rgba(201, 163, 94, .14); transition: box-shadow .5s var(--thx-ease), background-color .5s var(--thx-ease); }
	.thx .thx-lane-star.is-lit { background: var(--thx-gold-hi); box-shadow: 0 0 0 1.5px var(--thx-gold-hi), 0 0 0 5px rgba(227, 197, 140, .25), 0 0 18px rgba(227, 197, 140, .6); }
	.thx .thx-journeypage.has-thread .thx-thread { display: block; position: absolute; left: 0; top: 0; z-index: 3; width: 100%; height: 100%; pointer-events: none; }
	.thx .thx-thread svg { position: absolute; left: 0; top: 0; overflow: visible; }
	.thx .thx-thread path { fill: none; stroke-linecap: round; stroke-linejoin: round; }
	.thx .thx-thread-base { stroke: rgba(201, 163, 94, .5); stroke-width: 1.3; stroke-dasharray: .5 7; }
	.thx .thx-thread-lit { position: absolute; left: 0; top: 0; width: 100%; overflow: hidden; }
	.thx .thx-thread-glow { stroke: rgba(227, 197, 140, .22); stroke-width: 7; }
	.thx .thx-thread-line { stroke: var(--thx-gold-hi); stroke-width: 1.7; }
	.thx .thx-thread-head { position: absolute; left: 0; top: 0; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #fff4d6; box-shadow: 0 0 0 3px rgba(227, 197, 140, .3), 0 0 16px 5px rgba(243, 214, 150, .55); will-change: transform; }
}
@media (max-width: 1023px) {
	.thx .thx-ch-grid { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-claims { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
	.thx .thx-seal { width: 48px; height: 48px; }
	.thx .thx-seal-n { font-size: 16px; }
	.thx .thx-placename { bottom: 6px; font-size: 10.5px; }
	.thx .thx-seam-arches { background-size: 72px 44px; }
	.thx .thx-lt-row { grid-template-columns: minmax(0, 1fr); gap: 4px; }
	.thx .thx-lt-head { display: none; }
	.thx .thx-timeline-route::before { left: 5px; }
	.thx .thx-timeline-route li { grid-template-columns: minmax(0, 1fr); gap: 2px; padding-left: 26px; }
	.thx .thx-timeline-route li::after { left: 0; }
	.thx .thx-timeline-route time { text-align: left; }
	.thx .thx-weigh { grid-template-columns: minmax(0, 1fr); }
	.thx .thx-filters--slim { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .thx .thx-thread-head { display: none; } }
@media print { .thx .thx-thread, .thx .thx-seam { display: none; } .thx .thx-ch { background: #fff !important; color: #000 !important; } }

/* ---------- a discovery's journey ---------- */
.thx .thx-banner { margin: 0 0 20px; padding: 12px 16px; border-radius: 14px; border: 1px solid rgba(212, 114, 109, .55); background: rgba(212, 114, 109, .14); color: var(--thx-bone); font-size: 14.5px; line-height: 1.5; }
.thx .thx-banner.is-superseded { border-color: rgba(166, 174, 192, .5); background: rgba(166, 174, 192, .12); }
.thx .thx-find-meta--hero { margin-top: 16px; }
.thx .thx-hero .thx-impact, .thx .thx-hero .thx-tag--plain { border-color: rgba(241, 237, 228, .25); color: var(--thx-bone-2); }
.thx .thx-hero .thx-conf { background: rgba(241, 237, 228, .1); }
.thx .thx-hero .thx-conf.is-strong { color: #9fdcbc; } .thx .thx-hero .thx-conf.is-credible_preliminary { color: #f0c995; } .thx .thx-hero .thx-conf.is-disputed, .thx .thx-hero .thx-conf.is-retracted { color: #f0b3ae; }
.thx .thx-hero .thx-conf.is-weak, .thx .thx-hero .thx-conf.is-speculative { color: #cdbdee; } .thx .thx-hero .thx-conf.is-superseded { color: var(--thx-bone-3); }
.thx .thx-facts a { color: var(--thx-bone); text-decoration-color: rgba(227, 197, 140, .5); text-underline-offset: 3px; }
.thx .thx-narrative { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: clamp(22px, 3vw, 40px); }
.thx .thx-narr { padding-top: 16px; border-top: 2px solid var(--thx-gold); }
.thx .thx-narr.is-previous { border-top-style: dashed; border-top-color: var(--thx-rule); }
.thx .thx-narr h3 { margin-bottom: 10px; font-size: 1.3rem; }
.thx .thx-narr .thx-prose p { margin: 0 0 .9em; }
.thx .thx-source-card { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 0; margin: 0; border-top: 2px solid var(--thx-ink); }
.thx .thx-source-card > div { padding: 16px 18px 16px 0; border-bottom: 1px solid var(--thx-rule); }
.thx .thx-source-card dt { color: var(--thx-ink-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
.thx .thx-source-card dd { margin: 6px 0 0; color: var(--thx-ink); font: 450 1.05rem/1.4 var(--thx-display); overflow-wrap: anywhere; }
.thx .thx-source-card a { color: var(--thx-ink); text-decoration-color: rgba(122, 90, 32, .45); text-underline-offset: 3px; }
.thx .thx-coverage { margin-top: 14px; }
.thx .thx-coverage span { color: var(--thx-gold-ink); font: 700 11px var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; margin-right: 6px; }
.thx .thx-coverage a { color: var(--thx-ink-2); }
.thx .thx-ch .thx-observed { margin-top: 18px; max-width: 760px; }
.thx .thx-overall { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; color: var(--thx-bone-2); font: 700 12px var(--thx-sans); letter-spacing: .12em; text-transform: uppercase; }
.thx .thx-overall .thx-conf { padding: 6px 14px; font-size: 14px; letter-spacing: .02em; text-transform: none; background: rgba(241, 237, 228, .1); color: var(--thx-bone); }
.thx .thx-overall .thx-conf.is-strong { color: #9fdcbc; } .thx .thx-overall .thx-conf.is-credible_preliminary { color: #f0c995; }
.thx .thx-dims { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); gap: 12px; margin: 0; }
.thx .thx-dims > div { position: relative; padding: 16px 18px 16px 22px; border-radius: 16px; background: rgba(241, 237, 228, .06); border: 1px solid rgba(201, 163, 94, .22); }
.thx .thx-dims > div::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; background: var(--thx-gold); }
.thx .thx-dims > .is-unknown::before { background: none; border-left: 2px dashed rgba(166, 174, 192, .7); }
.thx .thx-dims > .is-high::before, .thx .thx-dims > .is-strong::before, .thx .thx-dims > .is-direct::before, .thx .thx-dims > .is-peer_reviewed::before { background: var(--thx-convergence); }
.thx .thx-dims > .is-low::before, .thx .thx-dims > .is-weak::before, .thx .thx-dims > .is-significant::before, .thx .thx-dims > .is-retracted::before { background: var(--thx-conflict); }
.thx .thx-dims dt { color: var(--thx-bone-3); font: 700 11px/1.3 var(--thx-sans); letter-spacing: .1em; text-transform: uppercase; }
.thx .thx-dims dd { margin: 6px 0 0; color: var(--thx-bone); font: 450 1.12rem/1.3 var(--thx-display); text-transform: capitalize; }
.thx .thx-touches { display: grid; gap: 0; max-width: 900px; margin-bottom: 26px; border-top: 1px solid var(--thx-rule); }
.thx .thx-touches li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 14px; align-items: baseline; padding: 14px 0; border-bottom: 1px solid var(--thx-rule); }
.thx .thx-touches li > span:last-child:not(.thx-impact) { grid-column: 2; color: var(--thx-ink-2); font-size: 14.5px; }
.thx .thx-touches a, .thx .thx-touches b { color: var(--thx-ink); font: 450 1.12rem/1.3 var(--thx-display); text-decoration-color: rgba(122, 90, 32, .45); text-underline-offset: 3px; }
.thx .thx-impact.is-strengthens, .thx .thx-impact.is-supports, .thx .thx-impact.is-strengthened { color: #2f6f4f; border-color: rgba(95, 180, 137, .5); }
.thx .thx-impact.is-weakens, .thx .thx-impact.is-challenges, .thx .thx-impact.is-weakened { color: #9a3f39; border-color: rgba(212, 114, 109, .5); }
.thx .thx-connections { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 22px; }
.thx .thx-connections h3 { margin-bottom: 10px; font-size: 1.2rem; }
.thx .thx-connections li { margin-bottom: 10px; color: var(--thx-ink-2); line-height: 1.4; }
.thx .thx-connections a { color: var(--thx-ink); font-weight: 600; text-decoration-color: rgba(122, 90, 32, .45); text-underline-offset: 3px; }
.thx .thx-connections small { display: block; margin-top: 2px; color: var(--thx-ink-3); font-size: 13px; }
.thx .thx-limit { color: var(--thx-bone); font: 400 clamp(1.25rem, 1.05rem + .7vw, 1.65rem)/1.45 var(--thx-display); font-variation-settings: "SOFT" 60, "opsz" 48; }
.thx .thx-limit + .thx-why { margin-top: 26px; }
.thx .thx-history { position: relative; display: grid; gap: 14px; padding-left: 20px; border-left: 1.5px dashed rgba(201, 163, 94, .5); }
.thx .thx-history li { display: grid; gap: 2px; color: var(--thx-bone-2); font-size: 14.5px; line-height: 1.5; }
.thx .thx-history time { color: var(--thx-bone-3); font: 600 12.5px var(--thx-sans); }
.thx .thx-history b { color: var(--thx-bone); font: 450 1.05rem/1.3 var(--thx-display); }
.thx .thx-history .is-retracted b, .thx .thx-history .is-superseded b, .thx .thx-history .is-corrected b { color: #f0b3ae; }

.thx .thx-seam--arcade .thx-placename { padding: 3px 10px; border-radius: 999px; background: var(--thx-cut); }
.thx .thx-seal { top: 40%; }
/* sections other modules add, set flush inside a chapter */
.thx .thx-ch .thx-additive { margin-top: clamp(28px, 4vw, 44px); padding: clamp(24px, 3vw, 34px) 0 0; background: transparent; border-top: 1px solid var(--thx-rule); }
.thx .thx-ch .thx-additive > .thx-wrap { width: auto; }

@media (max-width: 640px) {
	.thx .thx-sky .thx-moon { display: none; }
	.thx .thx-hero--debate .thx-lead { font-size: 1rem; line-height: 1.55; }
}

/* ======================================================================
   Every page a journey (12 Oct 2026, owner): each section is a chapter in the homepage's language and the
   shared golden thread (thought/thread/, contract v1) runs hero → seals and lane stars → the shared ending
   (thought/finale/) → the footer coda. The seam takes the foot colour of the band above (--thx-from, set
   in PHP from the chapter state), so an absent section never leaves a wrong edge.
   ====================================================================== */
.thx { --thx-lane: 14px; }
.thx [data-thx-ch] > .thx-seam { color: var(--thx-from, var(--thx-night-0)); }
.thx .thx-sec--ch, .thx .thx-chband { padding-top: 0; }
.thx .thx-ch--parch { background: var(--thx-parch); --thx-cut: var(--thx-parch); }
.thx .thx-final { --thx-cut: var(--thx-plum-1); }
.thx .thx-sec--night .thx-mark, .thx .thx-sec--plum .thx-mark, .thx .thx-final .thx-mark { color: var(--thx-gold); }
.thx .thx-sec--night .thx-placename, .thx .thx-sec--plum .thx-placename, .thx .thx-final .thx-placename { color: var(--thx-gold); }
.thx .thx-mark--center { justify-content: center; }
.thx .thx-chband-head { margin-bottom: clamp(18px, 2.4vw, 28px); }
.thx .thx-chband-head .thx-mark { margin-bottom: 0; }
.thx .thx-exchange .thx-chband-head h2 { margin-top: 2px; }
/* Content paints above the thread layer (z 2); full bands the line crosses hide it behind their ground. */
.thx.th-has-thread .thx-ch-in, .thx.th-has-thread .thx-final-in { position: relative; z-index: 3; }
.thx.th-has-thread .thx-argument-path, .thx.th-has-thread .thx-timeline { position: relative; z-index: 3; }
/* The centred "Your turn" chapter: its lane star sits on the same lane as every other chapter (wrap left + lane). */
.thx .thx-final .thx-mark { max-width: none; margin: 0 0 20px; }
@media (min-width: 1100px) { .thx .thx-final .thx-lane-star { left: var(--thx-lane); } }
